heyoka 0.20.0
Pre-releaseThis new heyoka release comes with a big new feature and several small fixes and additions.
Arbitrary-precision computations ➗
Taylor integrators shine in high-accuracy applications, and now, with heyoka, you can get as accurate as you want!
In addition to double and extended-precision computations, heyoka now also supports computations in arbitrary precision. In other words, you can perform numerical integrations with an arbitrarily high accuracy, limited in principle only by the available memory.
Arbitrary-precision computations require heyoka to be built with support for the mp++ multiprecision library (see the installation instructions for more details). A tutorial illustrating how to set up numerical integrations in arbitrary precision is available in the documentation.
LLVM improvements 💻
heyoka now supports the recently-released LLVM 15.
In addition, options have been added in the build system to force static linking to LLVM and to hide LLVM symbols when linking statically. These two options can be activated to prevent potential symbol collisions when using heyoka in conjunction with other libraries that might link to LLVM versions different from the one in use by heyoka. See the installation instructions for more details.
Fixes 🐞
- prevent the accidental indirect inclusion of
quadmath.h
(this could cause build issues with clang); - prevent callbacks from changing the time coordinate of the integrator. This was never supported and could lead to crashes and/or hangs in the
propagate_*()
functions.
The full changelog, as usual, is available here: