Probabilistic numerical ODE solvers
Project description
probdiffeq
Probabilistic solvers for differential equations in JAX
ProbDiffEq implements adaptive probabilistic numerical solvers for initial value problems.
It inherits automatic differentiation, vectorisation, and GPU capability from JAX. Features include:
- Stable implementation
- Calibration, step-size adaptation, and checkpointing
- State-space model factorisations
- Dense output and posterior sampling
- Filtering, smoothing, and many other backends
- Custom information operators
- Physics-enhanced regression
- Compatibility with other JAX-based libraries such as Optax or BlackJAX.
and many more.
- QUICKSTART: LINK
- EXAMPLES: LINK
- CHOOSING A SOLVER: LINK
- API DOCUMENTATION: LINK
- ISSUE TRACKER: LINK
- BENCHMARKS: LINK
Installation
Get the most recent stable version from PyPi:
pip install probdiffeq
This installation assumes that JAX is already available.
To install ProbDiffEq with jax[cpu]
, run
pip install probdiffeq[cpu]
What's next?
There are examples and there are advanced examples.
Consult the examples first. They show how to interact with the API, and explain some useful facts about probabilistic numerical solvers.
The advanced examples show applications of probabilistic numerical solvers, often in conjunction with external libraries. For example, this notebook shows how to combine ProbDiffEq with Optax, and this notebook does the same with BlackJAX.
Proceed with the quickstart and the examples before moving to the advanced examples and the API documentation.
Contributing
Contributions are absolutely welcome! Start with checking the existing issues for a "good first issue" and have a look at the developer documentation.
If you have a feature that you would like to see implemented, create an issue!
Similar projects
Check out how to transition from those packages: link.
Anything missing in this list? Please open an issue or make a pull request.
You might also like
- diffeqzoo: A library for example implementations of differential equations in NumPy and JAX
- probfindiff: Probabilistic numerical finite differences, in JAX.
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.
Source Distributions
Built Distribution
Hashes for probdiffeq-0.1.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ae51cc4970435783d8e75591c4f41fd29c4b39cc99f15aa588f0be428a698678 |
|
MD5 | b752953e47665533c2d2a073013cbf98 |
|
BLAKE2b-256 | d31e81109b9bab8a455850b7a67f670ddf2b6eca3ef088b3fccb2d97d7fe93a9 |