Metadata-Version: 2.4
Name: kalman_inversion_lib
Version: 0.0.9
Summary: The package implements various Kalman Inversion algorithms in Python.
Author-email: Konstantin Ibadullaev <konstantin.ibadullaev.post@gmail.com>
License-Expression: MIT
Project-URL: Homepage, https://github.com/K-Ibadullaev/kalman-inversion-lib.git
Classifier: Programming Language :: Python :: 3
Classifier: Operating System :: OS Independent
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: numpy>=2.0.0
Requires-Dist: scipy>=1.12.0
Requires-Dist: tqdm>=4.3.0
Dynamic: license-file

# KALMAN-INVERSION-LIB PACKAGE
## Intro
Welcome to the page of the **kalman-inversion-lib** package! This package contains Python implementations of Kalman Inversion algorithms.

**The package is currently under development**. The project structure undergoes changes.

Currently, the following algorithms are available:
- Ensemble Kalman Inversion, *EKI*
- Unscented Kalman Inversion, *UKI*
- Ensemble Kalman Sampler, *EKS*

The documentation is available for each class and its methods via **help()**, e.g. ```python help(EnsembleKalmanInversion)```.
Later Wiki pages with a more thorough description for each algorithm are going to be published 

## Installation
```shell
$ python -m pip install kalman-inversion-lib
```

## How to use
The directory **examples** contains Jupyter notebooks, which demonstrate the workflow for each available algorithm.
For some notebooks one might need to install extra packages, e.g. **ipympl** for interactive plots.


## List of the core packages
- NumPy https://numpy.org/
- SciPy https://scipy.org/
- tqdm  https://tqdm.github.io/


## References
The list below contains references to the articles and insightful resources about Kalman Inversion methods.

- Daniel Zhengyu Huang, Tapio Schneider, and Andrew M. Stuart. "Iterated Kalman Methodology For Inverse Problems / Unscented Kalman Inversion."
- Daniel Zhengyu Huang, Jiaoyang Huang, Sebastian Reich, and Andrew M. Stuart. "Efficient Derivative-free Bayesian Inference for Large-Scale Inverse Problems."
- Alfredo Garbuno-Inigo, Nikolas Nüsken and Sebastian Reich. "Affine Invariant Interacting Langevin Dynamics for Bayesian Inference."
- Alfredo Garbuno-Inigo, Franca Hoffmann, Wuchen Li, and Andrew M. Stuart. "Interacting Langevin Diffusions: Gradient Structure and Ensemble Kalman Sampler."
- Marco Iglesias and Yuchen Yang 2021 Inverse Problems 37. "Adaptive regularisation for ensemble Kalman inversion."
- https://github.com/PKU-CMEGroup/InverseProblems.jl/tree/master
- https://github.com/PKU-CMEGroup/InverseProblems.jl/blob/master/Lectures/KalmanInversionPartII.ipynb

## Acknowledgements
This package is developed as a part of the research project "Intelligent Geosystems" (100693905) supported by ESF funding

![alt text](https://github.com/K-Ibadullaev/kalman-inversion-lib/blob/main/ESFICON.png)
