Skip to main content

Multidimensional implementation of Kalman Filter algorithms

Project description

GitHub tag (latest by date) GitHub code size in bytes GitHub issues workflow doc

The Kalman filter is an optimal estimation algorithm: it estimates the true state of a signal given that this signal is noisy and/or incomplete. This package provides a multidimensional implementation of:

  • Standard Kalman Filter: if the noises are drawn from a gaussian distribution and the underlying system is governed by linear equations, the filter will output the best possible estimate of the signal's true state.

  • Extended Kalman Filter: can deal with nonlinear systems, but it does not guarantee the optimal estimate. It works by linearizing the function locally using the Jacobian matrix.

Installation

Normal user

pip install kalmankit

Developer

git clone https://github.com/Xylambda/kalmankit.git
pip install -e "kalmankit/.[dev]"

Tests

To run tests you must install the library as a developer.

cd kalmankit/
pytest -v tests/

Usage

The library provides 5 examples of usage:

  1. Moving Average
  2. Market Beta estimation
  3. Pendulum estimation with EKF
  4. Standard RTS smoothing for constant-velocity tracking
  5. Extended RTS smoothing for a nonlinear pendulum

Install the examples extra to run the examples:

pip install -e ".[examples]"

References

Cite

If you've used this library for your projects please cite it:

@misc{alejandro2021kalmankit,
  title={kalmankit - Multidimensional implementation of Kalman Filter algorithms},
  author={Alejandro Pérez-Sanjuán},
  year={2021},
  howpublished={\url{https://github.com/Xylambda/kalmankit}},
}

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

kalmankit-2.0.0.tar.gz (713.5 kB view details)

Uploaded Source

Built Distribution

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

kalmankit-2.0.0-py3-none-any.whl (19.7 kB view details)

Uploaded Python 3

File details

Details for the file kalmankit-2.0.0.tar.gz.

File metadata

  • Download URL: kalmankit-2.0.0.tar.gz
  • Upload date:
  • Size: 713.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for kalmankit-2.0.0.tar.gz
Algorithm Hash digest
SHA256 90e7190f88e764447030111eb0312c2711f1df905cb6e574b4bd687e590a82c3
MD5 6f1a2e6428126e36f4aa26b93235f01a
BLAKE2b-256 5d43ddec16ee43a243242d22b5300a7239204e947892184879e50b0ee1d413d8

See more details on using hashes here.

Provenance

The following attestation bundles were made for kalmankit-2.0.0.tar.gz:

Publisher: deploy.yml on Xylambda/kalmankit

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

File details

Details for the file kalmankit-2.0.0-py3-none-any.whl.

File metadata

  • Download URL: kalmankit-2.0.0-py3-none-any.whl
  • Upload date:
  • Size: 19.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for kalmankit-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 15ab1fe84b841d93b882c977cdc74090d3089cace2d048b1dd07f084a93132f6
MD5 1909889cdd8effbb606401d093f7ce96
BLAKE2b-256 96ecbb2ec3107f59c4c453a8409c7acfa95599e4d34c8ae772070889fc89ca10

See more details on using hashes here.

Provenance

The following attestation bundles were made for kalmankit-2.0.0-py3-none-any.whl:

Publisher: deploy.yml on Xylambda/kalmankit

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

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