Kooplearn#
A Python library for Koopman and Transfer operator learning
Installation#
To install the core version of kooplearn
, without optional the dependencies Torch and Lightning, run
pip install kooplearn
To install the full version of kooplearn
, including Neural-Network models, run
pip install "kooplearn[full]"
To install the development version of kooplearn
, run
pip install --upgrade git+https://github.com/Machine-Learning-Dynamical-Systems/kooplearn.git
Features#
Kooplearn offers a diverse range of state of the art algorithms tailored for learning Koopman and Transfer operators of deterministic and stochastic dynamical systems, respectively. Check out kooplearn’s model zoo for a complete list of available algorithms.
Kooplearn is designed with extensibility in mind. In kooplearn.abc
we expose simple abstract base classes which allow you to quickly build kooplearn-compatible components and models.
Unlock deeper insights into your dynamical systems using spectral analysis. Every model in kooplearn implements eig
and modes
methods returning the spectral and mode decompositions of the learned operator. This can be used for a number of downstream tasks, such as control, system identification, and more.
Kooplearn implements many neural-network models to learn the Koopman/transfer operators. Kooplearn’s Deep-Learning models are based upon Pytorch Lightning for fast and easy training on CPU, GPU, and multi-GPU systems.