ODE systems
cubie.odesystems
The create_ODE_system() helper is the main entry point. It consumes
symbolic sympy equations and creates SymbolicODE instances that
inherit CUDA compilation behaviour from cubie.CUDAFactory.
BaseODE sets the abstract requirements, and SymbolicODE is
currently its concrete implementation. Base classes and data containers expose
the precision-aware metadata required by integrator factories.
Subpackages
Core API
create_ODE_system – builds
SymbolicODEinstances from SymPy expressions.SymbolicODE – concrete
BaseODEsubclass for symbolic systems.BaseODE – abstract base exposing CUDA compilation helpers.
Data containers and caches
ODEData – captures compile-time metadata such as precision and state sizes.
SystemValues – runtime container for system-specific constants.
SystemSizes – records shape information for state and observable vectors.
ODECache – caches compiled device functions and solver helpers.
Dependencies
SymbolicODEsubclassescubie.CUDAFactoryso integrator loops can request compiled CUDA device functions directly.Precision handling relies on
cubie._utilshelpers andcubie.cuda_simsafeto provide simulator-safe coercions.Generated kernels are consumed by
cubie.integratorsfactories during loop construction.