Skip to main content

kipe

CI Documentation Python 3.12+ License: MIT

Kalman-based identifiability and parameter estimation

kipe estimates the parameters of dynamical models, e.g., PDE models, from time series of measurements, with the reduced-order unscented Kalman filter (ROUKF). The filter needs only forward runs of your model, no derivatives, through a lean interface. Around the estimation, kipe generates synthetic measurement data for twin experiments, from a run of the model or from the checkpoints of an earlier run, and will analyze the identifiability of the parameters with the Fisher information (planned).

Key features

  • Solver-agnostic: Connect your model through a small forward-solver interface
  • Derivative-free: Optimizer is based on the reduced-order unscented Kalman filter (ROUKF) and hence it needs only forward runs.
  • Modular observation operators: New observation operators can be implemented easily by extending the library.
  • Twin experiments: Generate synthetic measurements from a model run.
  • Reproducible runs: Keep results, logs, and run provenance together.

Status: early development. The core works (ROUKF estimation, synthetic data, plotting, run provenance), as does a first FEniCSx backend for measurements on finite element meshes, but the study file format and the Python API may still change. Feedback is very welcome: please open an issue.

Installation

kipe needs Python ≥ 3.12 and an MPI library (for mpi4py):

pip install kipe
pip install mpich  # only if there is no MPI library on your system

For FEniCSx models, install kipe into your FEniCSx (dolfinx 0.9) environment.

Quick start

A twin experiment with the FitzHugh–Nagumo model: synthetic data from the true parameters, then the estimation from a wrong initial guess.

git clone https://github.com/cardiomath/kipe
cd kipe/examples/fitzhugh_nagumo
kipe synthesis study.yaml
kipe estimation study.yaml
kipe plot study.yaml --truth  # --terminal without a display

Documentation

cardiomath.github.io/kipe: getting started, running a study, measurements, the study file reference, the theory, and how to extend kipe.

Development

git clone https://github.com/cardiomath/kipe
cd kipe
pip install -e ".[dev]"
pre-commit install --hook-type pre-commit --hook-type commit-msg
pytest

See Development in the documentation.

License

MIT, see LICENSE. If you use kipe, please cite it as described in CITATION.cff.

Metadata

Release files for kipe 0.4.0

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

Source distribution (sdist)

Source distribution for kipe 0.4.0
File Size Uploaded
kipe-0.4.0.tar.gz 113.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for kipe 0.4.0
File Interpreter ABI Platform
kipe-0.4.0-py3-none-any.whl Python 3 none any Details

Total release size: 178.9 kB

Release files / kipe-0.4.0.tar.gz

Download URL kipe-0.4.0.tar.gz
Size 113.2 kB
Tags Source
SHA-256 checksum
How to use checksums
d1cf2ddba2dcd0d07f5233819090c6eb224890e0dd05717303cb1481490cae38
BLAKE2b-256 checksum
How to use checksums
7d51d880ac815b9eafb29da809da26c742a97d11616df7e0b6437c246bbb81b2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / kipe-0.4.0-py3-none-any.whl

Download URL kipe-0.4.0-py3-none-any.whl
Size 65.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6bae30a9632282a669bd1bf91cb4689d1344b1b5ce79095c37f9818f02e0b9b5
BLAKE2b-256 checksum
How to use checksums
73754b5dd4cbbc621c09b9303a9430a274e6efee3e0544f2b88e350663cd6d26
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.4.0 This release

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.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