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.0.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.0-cp39-abi3-win_amd64.whl (304.0 kB view details)

Uploaded CPython 3.9+Windows x86-64

File details

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

File metadata

  • Download URL: ivp_rs-0.1.0.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.0.tar.gz
Algorithm Hash digest
SHA256 61c0575994d94f1381ed1b31ad6c483872680332718dc8a414cfd9df44e6ade5
MD5 ddc76cca57267c5496b28da1456b6147
BLAKE2b-256 daea52fd86abd91436d34f4859a3ab9d710664b7463e93e33ecfa2a90e903531

See more details on using hashes here.

File details

Details for the file ivp_rs-0.1.0-cp39-abi3-win_amd64.whl.

File metadata

  • Download URL: ivp_rs-0.1.0-cp39-abi3-win_amd64.whl
  • Upload date:
  • Size: 304.0 kB
  • Tags: CPython 3.9+, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.10.2

File hashes

Hashes for ivp_rs-0.1.0-cp39-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 2da38e3374af628557f35c566f6cd4c3b880c9efe836d1656324f1cd97b31faa
MD5 b56d59195ff3ac5b33b198331674c8aa
BLAKE2b-256 d387682f3c11a51138fda740cbe1c924edf0a853f216934f0b350a5a6d68af2d

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