Python package for computing data-driven approximations to the Koopman operator.
Project description
PyKoopman is a Python package for computing data-driven approximations to the Koopman operator. TODO: improve description
Installation
Installing with pip
If you are using Linux or macOS you can install PyKoopman with pip:
pip install pykoopman
Installing from source
First clone this repository:
git clone https://github.com/dynamicslab/pykoopman
Then, to install the package, run
pip install .
If you do not have pip you can instead use
python setup.py install
If you do not have root access, you should add the --user option to the above lines.
Documentation
The documentation for PyKoopman is hosted on Read the Docs.
Community guidelines
Contributing code
We welcome contributions to PyKoopman. To contribute a new feature please submit a pull request. To get started we recommend installing the packages in requirements-dev.txt via
pip install -r requirements-dev.txt
This will allow you to run unit tests and automatically format your code. To be accepted your code should conform to PEP8 and pass all unit tests. Code can be tested by invoking
pytest
We recommed using pre-commit to format your code. Once you have staged changes to commit
git add path/to/changed/file.py
you can run the following to automatically reformat your staged code
pre-commit -a -v
Note that you will then need to re-stage any changes pre-commit made to your code.
Reporting issues or bugs
If you find a bug in the code or want to request a new feature, please open an issue.
References
TODO: Add appropriate references
Williams, Matthew O., Ioannis G. Kevrekidis, and Clarence W. Rowley. “A data–driven approximation of the koopman operator: Extending dynamic mode decomposition.” Journal of Nonlinear Science 25, no. 6 (2015): 1307-1346. [DOI]
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for pykoopman-0.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 655f90911cd70824681af27e275679efe4219cb5f4344580417e9c7f7aa29955 |
|
MD5 | 452a16a9a5d0a4f938c87b4946c0e945 |
|
BLAKE2b-256 | 4e61837d703aef5201e4916b70445568b6c7eb8ad01af93d74cdb777965581d2 |