Skip to main content

dynamodels

Dynamical-system models with pre-allocated history tracking and pluggable time integrators — the modelling core split out of romda so it can be reused on its own. Torch-free; depends only on numpy, scipy, matplotlib, typeguard and multiprocess.

Tutorial: tutorial_dynamodels.ipynb | Interface documentation: model protocol

Install

pip install dynamodels            # once released; until then:
pip install "dynamodels @ git+https://github.com/andreanovoa/dynamodels"

Quickstart

from dynamodels.physical import Lorenz63

model = Lorenz63(rho=28., dt=0.01)
psi, t = model.time_integrate(Nt=1000)   # (Nt, Nphi, m) states, (Nt,) times
model.update_history(psi, t)
y = model.get_observable_hist()          # (Nt, Nq, m) observables
model.visualize_history()
model.close()                            # release the integrator's pool

A model composes a HistoryTracker (state/time buffer behind hist, hist_t, update_history()) with an Integrator strategy; subclasses supply obs_labels plus either time_derivative(t, psi, **params) (continuous) or time_step(Nt) (discrete map). m-member ensembles are supported natively (init_ensemble). Included physical models (dynamodels.physical): Lorenz63, Lorenz96, VdP, Rijke, Annular, KS — the lorenz63, lorenz96 and rijke modules carry measured dominant-Lyapunov tables (module-level _LAM1_MEASURED; _LAM1_MEASURED_NX10 for Lorenz96) from which instances set t_lyap.

Ecosystem

  • ntsa — nonlinear time-series analysis for any dynamodels-style model (docs).
  • romda — bias-aware ensemble data assimilation built on top.

Development

pip install -e ".[dev]"
python -m pytest tests/
ruff check dynamodels/ tests/

Releases publish to PyPI via trusted publishing on version tags (.github/workflows/release.yml).

License

MIT

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dynamodels-0.1.0.tar.gz (45.5 kB view details)

Uploaded Source

Built Distribution

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

dynamodels-0.1.0-py3-none-any.whl (50.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: dynamodels-0.1.0.tar.gz
  • Upload date:
  • Size: 45.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for dynamodels-0.1.0.tar.gz
Algorithm Hash digest
SHA256 39a1acc5b3a379612ebcbc40705b0ef8f0b8b47d807f50855d394c516002ad5a
MD5 fac2affa744b615fd0e26fb0cb1f1d11
BLAKE2b-256 ca90c8287d3bed4cc58b4c744e138c1484c7826be9209507fdfb479329d264ff

See more details on using hashes here.

Provenance

The following attestation bundles were made for dynamodels-0.1.0.tar.gz:

Publisher: release.yml on andreanovoa/dynamodels

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dynamodels-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: dynamodels-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 50.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for dynamodels-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f916e511601b9eeb6bea467d191ccb4beb4f4cff6f042240196bf74be79ae992
MD5 cc31210376d9b921159298e7bfe29b80
BLAKE2b-256 21cf898a1e6257c9b9983fc5dd7d60331fb2067a5d07b1c1deb3e2d4bbf76ede

See more details on using hashes here.

Provenance

The following attestation bundles were made for dynamodels-0.1.0-py3-none-any.whl:

Publisher: release.yml on andreanovoa/dynamodels

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.4.1

2 files

0.3.3

2 files

0.3.2

2 files

0.2.1

2 files

0.2.0

2 files

This release

0.1.0 This release

2 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