Hi,
since I can't post to the thread
http://groups.google.com/group/sympy/browse_thread/thread/135ed5dc84d87dd5/18b2d34a997b3139?#18b2d34a997b3139
anymore, here is a summary/continuation of the discussion:
Thank you very much for your help.
I have a differential equation such as
ddq = B^-1(q) * ( T - rest(q,dq))
which I want to numerically evaluate
where ddq is a 7x1 sympy matrix, B 7x7 (can not invert it symbolically
anymore) and q, dq are the supplied input variables.
So far I used lambdify successfully with ddq (2x1), B (2x2) (can
invert sym.).
To summarize (correct me if I'm wrong / sth. missing) and current
states:
- symbolic simplification has been primarily discussed. (I will open a
new thread for this)
- expand + rewrite(exp) + expand + rewrite(cos) works but takes
too much memory for larger expressions (especially the 2nd expand)
- with disabled cache it uses much less memory but becomes too
slow
- my calculations are done in sympy, but I export to Mathematica,
simplify, and reimport to sympy at the moment
- I also tried the improved trigsimp which has been posted to the
mailing list recently (was not more successful)
- cse is an option
- there were problems with solve (in which repo is your version,
smichr?) and chop (I use the function you supplied)
To get back to the original topic (Numerical Evaluation):
- I want to use results I obtained with sympy for simulations using
scipy's ode integrators.
A fast numerical evaluation is therefore desireable.
It would be nice to save the conversion results accross program
executions.
- is it a good idea to use lambdify for large matrices?
- it is quite slow and since I get a function I can't pickle
it, it has to be done each run
- what about generating a py file with function evaluating the
expression with numpy?
- afaik, lambdify replaces functions / operators for e.g.
numpy. could one get the actual expression (to save it, make a
module)?
- what about evalf(var1=1234.....)?
- what about using autowrap / binary_function?
- see e.g.
http://ojensen.wordpress.com/2010/08/10/fast-ufunc-ish-hydrogen-solutions/
.I got the example working, but I am not sure if this would help me
(element-wise application)
- What about http://code.google.com/p/numexpr/ ? What would be a
way to convert my sympy expressions so they can be evaluated with
numexpr
I appreciate if you could comment and share your experiences regarding
similar problems.
Vinzenz
PS: Google Groups is funny, hides the list answer buttons without any
hint. @Chris Smith: Sorry for writing directly to you. Also, google
search does not show messages from this mailing list, but 3rd party
sites (which also show the complete mail addresses).
--
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.