Skip to main content

Numerous ODE solver

Project description

A jitable object-oriented ODE solver for numerical simulations

Overview:

Numerous solver is a fast, jitable, highly customizable, and object-oriented ODE (ordinary differential equations) solver.

How to get started

Install the package via pip install numerous-solver, or clone the git repository and install using the setup.py file.

Documentation

Please see the gitlab pages site for documentation.

Design philosophy

The numerous solver is the choice of ODE (ordinary differential equations) solver for numerous engine (https://github.com/fossilfree/numerous). It is developed following a set of principles:

  • Object-oriented: A python-based solver should take advantage of the class structure of python. Numerous solver uses "models" and "interfaces" to manage the state-flow between the numerical model and the numerical solver.
  • Customizable: Using "solver events", the solver can be customized to break the solver loop in order to read external data, save outputs to database, print status messages etc. This allows a great degree of customization.
  • Support time- and state-events: Built-in support for time- and state-events to support advanced models, controllers and physics discontinuities.
  • Jitable: Numerous solver may be compiled with numba (https://numba.pydata.org/) to, in some cases, increase speed. The build-in toolchain can assist the user to write (njit) compilable models.
  • Extendable: Numerous solver currently supports 3 methods (RK45, BDF, Euler) and can be extended with new solve methods.
  • Open-source: The code base is open for contributions.

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

numerous-solver-3.1.1.tar.gz (39.8 kB view details)

Uploaded Source

Built Distribution

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

numerous_solver-3.1.1-py3-none-any.whl (48.3 kB view details)

Uploaded Python 3

File details

Details for the file numerous-solver-3.1.1.tar.gz.

File metadata

  • Download URL: numerous-solver-3.1.1.tar.gz
  • Upload date:
  • Size: 39.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.10.13

File hashes

Hashes for numerous-solver-3.1.1.tar.gz
Algorithm Hash digest
SHA256 35fee338c4245d318af76e516f22dc547561b4119b24df5943f4726018f1598b
MD5 998fd1b0d8a81c224b60544393d8a5e2
BLAKE2b-256 e221e9d2bc17fea8ef497b7fa9a5b5c66034244389879495559e20662521a63b

See more details on using hashes here.

File details

Details for the file numerous_solver-3.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for numerous_solver-3.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 0ec643c13a7d1302a734ecbdc977ec008bc88592b6768f6736e66b56ad132d54
MD5 69a72da39a2f006b153f8d4bc4b20448
BLAKE2b-256 84ddafe08cc725c986e58bbc320380d4091fae6dc90bc4e26cea8113dc5ca679

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