>  You had mentioned an algorithm for computing limits using estimation
>  theory. It would be very helpful to provide intermediate output for
>  this since sometimes one  is not as interested in the ultimate value
>  of the limit as in the intermediate functions for approximation.

Could you ellaborate on this please? I was talking about symolic limits, like

limit(sin(x)/x, x, 0)

But I don't know what you mean by the  intermediate functions of
approximation. Like before substituting w = 0 in the series?
I.e. just expanding it in terms of the most varied subexpression, but
leaving it in the series form?

>  In the remote past, Mathematica came with OptimizeExpression whose
>  purpose was to unwind complicated functions and produce expressions
>  optimized for evaluation in C, Matlab, or FORTRAN. For example, it
>  produced:
>  Q1 = -1.*lambda;Q2 = 1. + Q1;Q3 = 0.017453292519943295.*lat1;
>  Q4 = cos(Q3);Q5 = 0.017453292519943295.*lon1;Q6 = cos(Q5);
>  Q7 = (Q4).^(2);Q8 = 4.0680631590769e13.*Q7;Q9 = sin(Q3);
>  Q10 = (Q9).^(2);Q11 = 4.040829993069033e13.*Q10;Q12 = Q11 + Q8;
>  Q13 = sqrt(Q12);Q14 = 1./Q13;Q15 = 4.0680631590769e13.*Q14;Q16 = h1 + Q15;
>  Q17 = Q16.*Q2.*Q4.*Q6;Q18 = 0.017453292519943295.*lat2;Q19 = cos(Q18);
>  Q20 = 0.017453292519943295.*lon2;Q21 = cos(Q20);Q22 = (Q19).^(2);
>  Q23 = 4.0680631590769e13.*Q22;Q24 = sin(Q18);Q25 = (Q24).^(2);
>  Q26 = 4.040829993069033e13.*Q25;Q27 = Q23 + Q26;Q28 = sqrt(Q27);
>  Q29 = 1./Q28;Q30 = 4.0680631590769e13.*Q29;Q31 = h2 + Q30;
>  Q32 = lambda.*Q19.*Q21.*Q31;Q33 = Q17 + Q32;Q34 = (Q33).^(2);
>  Q35 = sin(Q5);Q36 = Q16.*Q2.*Q35.*Q4;Q37 = sin(Q20);
>  Q38 = lambda.*Q19.*Q31.*Q37;Q39 = Q36 + Q38;Q40 = (Q39).^(2);
>  Q41 = Q34 + Q40;Q42 = sqrt(Q41);Q43 = 6.35675231e6.*Q42;
>  Q44 = 4.040829993069033e13.*Q14;Q45 = h1 + Q44;Q46 = Q2.*Q45.*Q9;
>  Q47 = 4.040829993069033e13.*Q29;Q48 = h2 + Q47;Q49 = lambda.*Q24.*Q48;
>  Q50 = Q46 + Q49;Q51 = 6.378137e6.*Q50;Q52 = ArcTan(Q43,Q51);
>  Q53 = cos(Q52);Q54 = (Q53).^(2);Q55 = Q53.*Q54;
>  Q56 = -42697.68116907364.*Q55;Q57 = Q42 + Q56;Q58 = sin(Q52);
>  Q59 = (Q58).^(2);Q60 = Q58.*Q59;Q61 = 42841.32003228421.*Q60;
>  Q62 = Q46 + Q49 + Q61;Q63 = ArcTan(Q57,Q62);Q64 = (sin(Q63)).^(2);Q65
>  = sqrt(1. - 0.006694381316844346.*Q64);
>
>  Notice how the intermediate definitions avoid reevaluating the
>  transcendental functions repeatedly? It also tries to make these
>  definitions in a way that is efficient for the ultimate computation.

Nice idea. I created a new issue for that:

http://code.google.com/p/sympy/issues/detail?id=735

>  Keep up the great work!

Please keep reporting bugs/feature requests.

Ondrej

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/sympy?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to