I had a brief look at the tides and spokes. My impression was that it was 
well presented.

I am curious on the large expressions for which you used subexpression 
elimination and wonder if you have tried `lambdify(..., cse=True)` on them 
with any favorable results.

I look forward to spending some more time looking at what you have done.

Best regards,
/c

On Wednesday, September 29, 2021 at 4:23:17 PM UTC-5 [email protected] 
wrote:

> Hello,
>
> we just released the latest version of our Taylor integrator heyoka.py:
>
> https://github.com/bluescarni/heyoka.py
>
> heyoka.py is an implementation of Taylor's method for the numerical 
> integration of systems of ODEs based on automatic differentiation and 
> just-in-time compilation via LLVM.
>
> Current features include:
>
> - support for both double-precision and extended-precision floating-point 
> types,
> - the ability to maintain machine precision accuracy over tens of billions 
> of timesteps,
> - high-precision zero-cost dense output,
> - accurate and reliable event detection,
> - excellent performance,
> - batch mode integration to harness the power of modern SIMD instruction 
> sets.
>
> heyoka.py needs to represent the ODEs symbolically in order to apply the 
> automatic differentiation rules necessary for an efficient implementation 
> of Taylor's method. For this purpose, heyoka.py uses its own expression 
> system, but in recent versions we added the ability to convert heyoka.py's 
> symbolic expressions to/from SymPy. Here's a simple example of 
> interoperability between heyoka.py and SymPy:
>
> https://bluescarni.github.io/heyoka.py/notebooks/sympy_interop.html
>
> Here instead is a non-trivial example where the equations of motion are 
> formulated via SymPy's classical mechanics module and then integrated via 
> heyoka.py:
>
> https://bluescarni.github.io/heyoka.py/notebooks/tides_spokes.html
>
> This second example also shows how the common subexpression elimination 
> capabilities of heyoka.py were able to drastically simplify highly-complex 
> Lagrangian equations.
>
> As a long-time observer/user of SymPy, I thought that other SymPy users 
> might find this project interesting. I am also looking for feedback on our 
> SymPy conversions facilities, as this is my first time digging into the 
> SymPy expression system internals.
>
> Thanks and kind regards,
>
>   Francesco
>

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sympy/d607d3af-4b4d-4e10-a291-e3790df8bc05n%40googlegroups.com.

Reply via email to