heyoka 4.0.0 #400
bluescarni
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Breaking changes
Version 4 of heyoka introduces several backwards-incompatible changes, most of which have been prompted by user feedback. The updated heyoka API should be more streamlined, easier to use and more difficult to misuse.
The detailed list of breaking changes is available at the following page, along with instructions on how to update your code for the API modifications:
https://bluescarni.github.io/heyoka/breaking_changes.html#bchanges-4-0-0
If you have questions, please do not hesitate to ask.
New compiled functions class
A new class that facilitates the creation and use of compiled functions, called
cfunc
, has been introduced. This class has been available for a while in the Python bindings, and it now makes its official debut in the C++ API. A tutorial illustrating the use of this class is available here:https://bluescarni.github.io/heyoka/tut_cfunc.html#tut-cfunc
Support for Lagrangian and Hamiltonian mechanics
heyoka is now able to automatically generate (and solve) the equations of motion from user-supplied Lagrangians and Hamiltonians. The Python bindings provide a tutorial illustrating this new feature:
https://bluescarni.github.io/heyoka.py/notebooks/lagrangian.html#lagham-tut
Enhancements to the step callback API
It is now possible to pass a range of step callbacks as an optional argument to the
propagate_*()
functions. The callbacks will be automatically composed into a callback set and they will be executed at the end of each integration step.Performance improvements
The substitution primitive
subs()
has been substantially sped up.The full changelog, as usual, is available here:
https://bluescarni.github.io/heyoka/changelog.html
This discussion was created from the release heyoka 4.0.0.
Beta Was this translation helpful? Give feedback.
All reactions