FastRK, a generator of fast jit-compiled code for ODE propagation by ERK methods with adaptive step and events
Project description
FastRK
- developed as fast alternative for subset of scipy.integrate.ode methods (i.e.
DOP853
); - is a python code generator for Ordinary Differential Equations (ODE) propagation;
- uses explicit embedded Runge-Kutta (ERK) methods adaptive step technique;
- calculates events using event functions (like scipy.integrate.solve_ivp);
- is jit-compiled by
Numba
;- compiled code cached on SSD/HDD to prevent unnecessary recompilation;
- OS-independent (to the same extent as
Numba
); - contains Butcher Tables for several ERK methods:
- Dormand and Prince 6(5)8M;
- Dormand and Prince 8(7)13M;
- ~2-3x faster than
DOP853
fromscipy.integrate.ode
- ~2-3x faster than
- Verner's 8(9)16;
- user-defined Butcher Tables also supported;
- generated code is open and user-modifiable;
Butcher Tables was adapted from TrackerComponentLibrary.
Installation
pip install fastrk
Examples
TBD
Core Developer
Stanislav Bober, MIEM NRU HSE, IKI RAS
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
fastrk-0.0.1.tar.gz
(12.3 kB
view hashes)
Built Distribution
fastrk-0.0.1-py3-none-any.whl
(13.0 kB
view hashes)