On Tue, Jul 3, 2012 at 2:09 AM, [email protected]
<[email protected]> wrote:
>>> However, while we can generate Fortran code, compile it and use
>>> that for plotting, in many cases it is an overkill and a simple approach
>>> 1) or 2) provides enough speed to get the job done.
>>
>>
>> I'm not sure that this is the right kind of overkill we're looking at here.
>
> There is one more thing. If a user is **not** relying at least on
> numpy for evaluation of arrays or on autowrap for evaluation of many
> unpredictable points, he is just doing it wrong.
>
> The one exception is code inside sympy which was agreed at some point,
> should not require more than a python interpreter. However, if you are
> using nsolve with lambdify you are again doing it wrong, because the
> only advantage that our nsolve has over scipy is that it can work in
> arbitrary precision. If you don't need it, just work in scipy, do not
> kill precision for performance inside sympy. The other example is
> plotting, however because of matplotlib this already requires numpy.

There is a difference between calling matplotlib, numpy or scipy,
and having a working fortran or C compiler working at your machine.

In particular, in scipy ODE, you can provide a simple Python function
to get the ODE integrated. I am pretty sure that our approach 1)
will be quite faster than high level eval_to_numpy().

Having to require a working C/Fortran compiler to do any plotting
or ODE solving is an overkill in my opinion and it will make
things more complicated for the end user.

(Allowing to also use C/Fortran is of course great for advanced
users.)

>
> Hence, with all the other stuff that needs refactoring in sympy, it
> does not seem wise IMO to spend time on complicated AST using module,
> when we already have low-performance evalf and easy-to-implement high
> performance eval_to_numpy idea.

We should implement this eval_to_numpy(), that shouldn't be too difficult.

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