Skip to main content
Latest Version License Python Versions https://github.com/hgrecco/numbakit-ode/workflows/CI/badge.svg?branch=main https://github.com/hgrecco/numbakit-ode/workflows/Lint/badge.svg?branch=main https://coveralls.io/repos/github/hgrecco/numbakit-ode/badge.svg?branch=main Docs

numbakit-ode: leveraging numba to speed up ODE integration

numbakit-ode (nbkode) is a Python package to solve ordinary differential equations (ODE) that uses Numba to compile code and therefore speed up calculations.

The API is very similar to scipy’s integrate module therefore allowing for easy migration.

It runs in Python 3.7+ depending on NumPy, SciPy and Numba. It is licensed under BSD.

It is extremely easy and natural to use:

>>> import nbkode
>>> def func(t, y):
...     return -0.1 * y
>>> t0 = 0.
>>> y0 = 1.
>>> solver = nbkode.ForwardEuler(func, t0, y0)
>>> ts, ys = solver.run([0., 5., 10.])

You can get a list of all solvers:

>>> import nbkode
>>> nbkode.get_solvers() #doctest: +SKIP

or filter by characteristics or group name (or names).

>>> nbkode.get_solvers(implicit=False, fixed_step=True) #doctest: +SKIP
>>> nbkode.get_solvers('euler', 'adam-bashforth') #doctest: +SKIP

Quick Installation

To install numbakit-ode, simply (soon):

$ pip install numbakit-ode

or utilizing conda, with the conda-forge channel (soon):

$ conda install -c conda-forge numbakit-ode

and then simply enjoy it!

Design principles

Fast: We love Numba. It allows you to write clean Python code that translates to optimized machine code at runtime. We aim to be able to leverage this power to solve a system of ordinary differential equations.

Simple but useful API: Solvers are classes easy to instantiate, with sensible defaults and convenient methods.

Correctness: We check against established libraries like SciPy that our implementation match those of established libraries using automated testing.

Data driven development: We take decisions based on data, and for this purpose we measure the performance of each part of the package, and the effect of each change we make.


numbakit-ode is maintained by a community. See AUTHORS for a complete list.

To review an ordered list of notable changes for each version of a project, see CHANGES

Metadata

Release files for numbakit-ode 0.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for numbakit-ode 0.5
File Size Uploaded
numbakit-ode-0.5.tar.gz 71.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for numbakit-ode 0.5
File Interpreter ABI Platform
numbakit_ode-0.5-py2.py3-none-any.whl Python 3, Python 2 none any Details

Total release size: 120.9 kB

Release files / numbakit-ode-0.5.tar.gz

Download URL numbakit-ode-0.5.tar.gz
Size 71.2 kB
Tags Source
SHA-256 checksum
How to use checksums
78b2d79bdd78df8ead67c51a556a34f44a020ccbb6692d4665427593dd7c8a19
BLAKE2b-256 checksum
How to use checksums
d541bc64e4a0ee1c1304e5ace9d38245330368af564a203e8dd5b57232d796e3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.8.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.7

Release files / numbakit_ode-0.5-py2.py3-none-any.whl

Download URL numbakit_ode-0.5-py2.py3-none-any.whl
Size 49.8 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
addb4691b7f455dcddcc14131bd90fb2fce2335847a1c2d4a05ebb5d8b00c8ab
BLAKE2b-256 checksum
How to use checksums
7b37f45206c080b91fc338697944927c703d12af56bde45b8606552769f33924
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.8.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.7

Release history Release notifications | RSS feed

This release

0.5 This release

2 release files

0.4

2 release files

0.3

2 release files

0.2

2 release files

0.1

2 release files

0.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page