Skip to main content

A Rust library for solving initial value problems (IVPs) for ordinary differential equations (ODEs).

Project description

ivp

crates.io docs.rs

Documentation | Examples | GitHub | Crates.io


A library of numerical methods for solving initial value problems (IVPs)
for the Rust programming language.


This library provides a pure rust implementation of SciPy's solve_ivp function with slight modifications to the API to better fit Rust's design patterns.

Currently implemented solvers:

  • DOP853: An 8th order Dormand-Prince method with step-size control and dense output.
  • DOPRI5: A 5th order Dormand-Prince method with step-size control and dense output.
  • RK4: The classic 4th order Runge-Kutta method with fixed step-size and cubic Hermite interpolation for dense output.
  • RK23: A 3rd order Runge-Kutta method with 2nd order error estimate for step-size control.
  • Radau: A 5th order implicit Runge-Kutta method of Radau IIA type with step-size control and dense output.
  • BDF: A variable-order (1 to 5) Backward Differentiation Formula method for stiff ODEs with adaptive step-size control and dense output.

Note: This crate uses dynamically sized arrays (Vec) internally to provide flexibility and to simplify Python bindings. For workloads that require maximal performance with statically sized arrays (compile-time sizes), consider the differential-equations project, which provides additional solvers and features (SDEs, DDEs, DAEs). This crate targets users seeking a Rust implementation of SciPy's solve_ivp with a familiar API.

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

ivp_rs-0.1.1.tar.gz (136.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ivp_rs-0.1.1-cp39-abi3-win_arm64.whl (286.5 kB view details)

Uploaded CPython 3.9+Windows ARM64

File details

Details for the file ivp_rs-0.1.1.tar.gz.

File metadata

  • Download URL: ivp_rs-0.1.1.tar.gz
  • Upload date:
  • Size: 136.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.10.2

File hashes

Hashes for ivp_rs-0.1.1.tar.gz
Algorithm Hash digest
SHA256 c5e0ca34e77a2b3e15565d8c0cfdc53408cd3075e1875aa702fa8f23564e18b7
MD5 1498c0a23e9b9c31ea84cda8e2ca92d6
BLAKE2b-256 56f455b913b6997070680c67afd03adbd5bd9fa56df89ce0799b5623fa79082d

See more details on using hashes here.

File details

Details for the file ivp_rs-0.1.1-cp39-abi3-win_arm64.whl.

File metadata

  • Download URL: ivp_rs-0.1.1-cp39-abi3-win_arm64.whl
  • Upload date:
  • Size: 286.5 kB
  • Tags: CPython 3.9+, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.10.2

File hashes

Hashes for ivp_rs-0.1.1-cp39-abi3-win_arm64.whl
Algorithm Hash digest
SHA256 a5034363256b0c5574892426db580217aeed0dea45156731630ee73dcd5ee662
MD5 d4fc3df60b34a2d676646f1ca1de76b3
BLAKE2b-256 615a16362ccd225dcb12897f605c43578dbf0ad0aa935f97d55c72b7fefcb5a0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page