A declarative language describing ordinary differential equations
Project description
gotranx
gotranx
is the next generation General ODE translator and is an attempt to a full rewrite of gotran.
The general idea is that you write your ODE in a high level markup language and use gotranx
to generate code for solving the ODE in different programming languages.
At the moment we only support Python and C, but we plan to support a wide range of programming languages in the future.
gotranx
uses sympy
to generate the numerical schemes.
- Source code: https://github.com/finsberg/gotranx
- Documentation: https://finsberg.github.io/gotranx/
Install
Install with pip
python3 -m pip install gotranx
or for the development version
python3 -m pip install git+https://github.com/finsberg/gotranx
Quick start
Check out the demos in the documentation and the examples in the repository.
Road map
The plan is to have all the features from the old gotran implemented in gotranx
(and some more). This includes
- More numerical schemes
- Forward Euler
- Rush Larsen
- Generalized Rush Larsen
- Hybrid Generalized Rush Larsen
- Simplified Implicit Euler
- Newton's method for implicit schemes
- Code generation for more languages
- Python
- C
- C++
- Julia
- CUDA
- OpenCL
- Rust
- Latex
- Markdown
- Converters between commonly used ODE markup languages
If you have additional feature requests, please open an issue
Contributing
Contributions are very welcomed, but please read the contributing guide first
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.