├── .git_archival.txt ├── .gitattributes ├── .github └── workflows │ ├── draft-pdf.yml │ ├── release.yml │ └── run-tests.yml ├── .gitignore ├── .pre-commit-config.yaml ├── .readthedocs.yaml ├── LICENSE ├── README.rst ├── codecov.yml ├── docs ├── JOSS │ ├── Fig0.png │ ├── Fig1.png │ ├── Fig2.png │ ├── Fig3.png │ ├── codemeta.json │ ├── default.csl │ ├── drawing.svg │ ├── generate.rb │ ├── paper.bib │ └── paper.md ├── Makefile ├── conf.py ├── index.rst ├── make.bat ├── tutorial_compose_observables.ipynb ├── tutorial_compute_differentiation.ipynb ├── tutorial_dmd_failed_for_pde_examples.ipynb ├── tutorial_dmd_separating_two_mixed_signals_400d_system.ipynb ├── tutorial_dmd_succeeds_pde_examples.ipynb ├── tutorial_dmd_with_control_128d_system.ipynb ├── tutorial_dmd_with_control_2d_system.ipynb ├── tutorial_koopman_edmd_with_rbf.ipynb ├── tutorial_koopman_edmdc_for_chaotic_duffing_oscillator.ipynb ├── tutorial_koopman_edmdc_for_vdp_system.ipynb ├── tutorial_koopman_eigenfunction_model_slow_manifold.ipynb ├── tutorial_koopman_hankel_dmdc_for_vdp_system.ipynb ├── tutorial_koopman_havok_3d_lorenz.ipynb ├── tutorial_koopman_kdmd_on_slow_manifold.ipynb ├── tutorial_koopman_nndmd_examples.ipynb ├── tutorial_linear_random_control_system.ipynb ├── tutorial_linear_system_koopman_eigenfunctions_with_edmd_and_nndmd.ipynb └── tutorial_sparse_modes_selection_2d_linear_system.ipynb ├── pyproject.toml ├── requirements-dev.txt ├── requirements-torch.txt ├── requirements.txt ├── setup.cfg ├── src └── pykoopman │ ├── __init__.py │ ├── analytics │ ├── __init__.py │ ├── _base_analyzer.py │ ├── _ms_pd21.py │ └── _pruned_koopman.py │ ├── common │ ├── __init__.py │ ├── cqgle.py │ ├── examples.py │ ├── ks.py │ ├── nlse.py │ ├── validation.py │ └── vbe.py │ ├── differentiation │ ├── __init__.py │ ├── _derivative.py │ └── _finite_difference.py │ ├── koopman.py │ ├── koopman_continuous.py │ ├── observables │ ├── __init__.py │ ├── _base.py │ ├── _custom_observables.py │ ├── _identity.py │ ├── _polynomial.py │ ├── _radial_basis_functions.py │ ├── _random_fourier_features.py │ └── _time_delay.py │ └── regression │ ├── __init__.py │ ├── _base.py │ ├── _base_ensemble.py │ ├── _dmd.py │ ├── _dmdc.py │ ├── _edmd.py │ ├── _edmdc.py │ ├── _havok.py │ ├── _kdmd.py │ └── _nndmd.py └── test ├── __init__.py ├── analytics └── test_analytics.py ├── conftest.py ├── differentiation └── test_differentiation.py ├── observables └── test_observables.py ├── regression └── test_regressors.py ├── test_koopman.py └── test_koopman_continuous.py /.git_archival.txt: -------------------------------------------------------------------------------- 1 | ref-names: HEAD -> master 2 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/.gitattributes -------------------------------------------------------------------------------- /.github/workflows/draft-pdf.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/.github/workflows/draft-pdf.yml -------------------------------------------------------------------------------- /.github/workflows/release.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/.github/workflows/release.yml -------------------------------------------------------------------------------- /.github/workflows/run-tests.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/.github/workflows/run-tests.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/.gitignore -------------------------------------------------------------------------------- /.pre-commit-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/.pre-commit-config.yaml -------------------------------------------------------------------------------- /.readthedocs.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/.readthedocs.yaml -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/LICENSE -------------------------------------------------------------------------------- /README.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/README.rst -------------------------------------------------------------------------------- /codecov.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/codecov.yml -------------------------------------------------------------------------------- /docs/JOSS/Fig0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/docs/JOSS/Fig0.png -------------------------------------------------------------------------------- /docs/JOSS/Fig1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/docs/JOSS/Fig1.png -------------------------------------------------------------------------------- /docs/JOSS/Fig2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/docs/JOSS/Fig2.png -------------------------------------------------------------------------------- /docs/JOSS/Fig3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/docs/JOSS/Fig3.png -------------------------------------------------------------------------------- /docs/JOSS/codemeta.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/docs/JOSS/codemeta.json -------------------------------------------------------------------------------- /docs/JOSS/default.csl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/docs/JOSS/default.csl -------------------------------------------------------------------------------- /docs/JOSS/drawing.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/docs/JOSS/drawing.svg -------------------------------------------------------------------------------- /docs/JOSS/generate.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/docs/JOSS/generate.rb -------------------------------------------------------------------------------- /docs/JOSS/paper.bib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/docs/JOSS/paper.bib -------------------------------------------------------------------------------- /docs/JOSS/paper.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/docs/JOSS/paper.md -------------------------------------------------------------------------------- /docs/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/docs/Makefile -------------------------------------------------------------------------------- /docs/conf.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/docs/conf.py -------------------------------------------------------------------------------- /docs/index.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/docs/index.rst -------------------------------------------------------------------------------- /docs/make.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/docs/make.bat -------------------------------------------------------------------------------- /docs/tutorial_compose_observables.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/docs/tutorial_compose_observables.ipynb -------------------------------------------------------------------------------- /docs/tutorial_compute_differentiation.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/docs/tutorial_compute_differentiation.ipynb -------------------------------------------------------------------------------- /docs/tutorial_dmd_failed_for_pde_examples.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/docs/tutorial_dmd_failed_for_pde_examples.ipynb -------------------------------------------------------------------------------- /docs/tutorial_dmd_separating_two_mixed_signals_400d_system.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/docs/tutorial_dmd_separating_two_mixed_signals_400d_system.ipynb -------------------------------------------------------------------------------- /docs/tutorial_dmd_succeeds_pde_examples.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/docs/tutorial_dmd_succeeds_pde_examples.ipynb -------------------------------------------------------------------------------- /docs/tutorial_dmd_with_control_128d_system.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/docs/tutorial_dmd_with_control_128d_system.ipynb -------------------------------------------------------------------------------- /docs/tutorial_dmd_with_control_2d_system.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/docs/tutorial_dmd_with_control_2d_system.ipynb -------------------------------------------------------------------------------- /docs/tutorial_koopman_edmd_with_rbf.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/docs/tutorial_koopman_edmd_with_rbf.ipynb -------------------------------------------------------------------------------- /docs/tutorial_koopman_edmdc_for_chaotic_duffing_oscillator.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/docs/tutorial_koopman_edmdc_for_chaotic_duffing_oscillator.ipynb -------------------------------------------------------------------------------- /docs/tutorial_koopman_edmdc_for_vdp_system.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/docs/tutorial_koopman_edmdc_for_vdp_system.ipynb -------------------------------------------------------------------------------- /docs/tutorial_koopman_eigenfunction_model_slow_manifold.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/docs/tutorial_koopman_eigenfunction_model_slow_manifold.ipynb -------------------------------------------------------------------------------- /docs/tutorial_koopman_hankel_dmdc_for_vdp_system.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/docs/tutorial_koopman_hankel_dmdc_for_vdp_system.ipynb -------------------------------------------------------------------------------- /docs/tutorial_koopman_havok_3d_lorenz.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/docs/tutorial_koopman_havok_3d_lorenz.ipynb -------------------------------------------------------------------------------- /docs/tutorial_koopman_kdmd_on_slow_manifold.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/docs/tutorial_koopman_kdmd_on_slow_manifold.ipynb -------------------------------------------------------------------------------- /docs/tutorial_koopman_nndmd_examples.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/docs/tutorial_koopman_nndmd_examples.ipynb -------------------------------------------------------------------------------- /docs/tutorial_linear_random_control_system.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/docs/tutorial_linear_random_control_system.ipynb -------------------------------------------------------------------------------- /docs/tutorial_linear_system_koopman_eigenfunctions_with_edmd_and_nndmd.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/docs/tutorial_linear_system_koopman_eigenfunctions_with_edmd_and_nndmd.ipynb -------------------------------------------------------------------------------- /docs/tutorial_sparse_modes_selection_2d_linear_system.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/docs/tutorial_sparse_modes_selection_2d_linear_system.ipynb -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/pyproject.toml -------------------------------------------------------------------------------- /requirements-dev.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/requirements-dev.txt -------------------------------------------------------------------------------- /requirements-torch.txt: -------------------------------------------------------------------------------- 1 | torch == 2.1.0+cu121 2 | torchvision 3 | lightning 4 | -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/requirements.txt -------------------------------------------------------------------------------- /setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/setup.cfg -------------------------------------------------------------------------------- /src/pykoopman/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/__init__.py -------------------------------------------------------------------------------- /src/pykoopman/analytics/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/analytics/__init__.py -------------------------------------------------------------------------------- /src/pykoopman/analytics/_base_analyzer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/analytics/_base_analyzer.py -------------------------------------------------------------------------------- /src/pykoopman/analytics/_ms_pd21.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/analytics/_ms_pd21.py -------------------------------------------------------------------------------- /src/pykoopman/analytics/_pruned_koopman.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/analytics/_pruned_koopman.py -------------------------------------------------------------------------------- /src/pykoopman/common/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/common/__init__.py -------------------------------------------------------------------------------- /src/pykoopman/common/cqgle.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/common/cqgle.py -------------------------------------------------------------------------------- /src/pykoopman/common/examples.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/common/examples.py -------------------------------------------------------------------------------- /src/pykoopman/common/ks.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/common/ks.py -------------------------------------------------------------------------------- /src/pykoopman/common/nlse.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/common/nlse.py -------------------------------------------------------------------------------- /src/pykoopman/common/validation.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/common/validation.py -------------------------------------------------------------------------------- /src/pykoopman/common/vbe.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/common/vbe.py -------------------------------------------------------------------------------- /src/pykoopman/differentiation/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/differentiation/__init__.py -------------------------------------------------------------------------------- /src/pykoopman/differentiation/_derivative.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/differentiation/_derivative.py -------------------------------------------------------------------------------- /src/pykoopman/differentiation/_finite_difference.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/differentiation/_finite_difference.py -------------------------------------------------------------------------------- /src/pykoopman/koopman.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/koopman.py -------------------------------------------------------------------------------- /src/pykoopman/koopman_continuous.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/koopman_continuous.py -------------------------------------------------------------------------------- /src/pykoopman/observables/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/observables/__init__.py -------------------------------------------------------------------------------- /src/pykoopman/observables/_base.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/observables/_base.py -------------------------------------------------------------------------------- /src/pykoopman/observables/_custom_observables.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/observables/_custom_observables.py -------------------------------------------------------------------------------- /src/pykoopman/observables/_identity.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/observables/_identity.py -------------------------------------------------------------------------------- /src/pykoopman/observables/_polynomial.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/observables/_polynomial.py -------------------------------------------------------------------------------- /src/pykoopman/observables/_radial_basis_functions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/observables/_radial_basis_functions.py -------------------------------------------------------------------------------- /src/pykoopman/observables/_random_fourier_features.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/observables/_random_fourier_features.py -------------------------------------------------------------------------------- /src/pykoopman/observables/_time_delay.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/observables/_time_delay.py -------------------------------------------------------------------------------- /src/pykoopman/regression/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/regression/__init__.py -------------------------------------------------------------------------------- /src/pykoopman/regression/_base.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/regression/_base.py -------------------------------------------------------------------------------- /src/pykoopman/regression/_base_ensemble.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/regression/_base_ensemble.py -------------------------------------------------------------------------------- /src/pykoopman/regression/_dmd.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/regression/_dmd.py -------------------------------------------------------------------------------- /src/pykoopman/regression/_dmdc.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/regression/_dmdc.py -------------------------------------------------------------------------------- /src/pykoopman/regression/_edmd.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/regression/_edmd.py -------------------------------------------------------------------------------- /src/pykoopman/regression/_edmdc.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/regression/_edmdc.py -------------------------------------------------------------------------------- /src/pykoopman/regression/_havok.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/regression/_havok.py -------------------------------------------------------------------------------- /src/pykoopman/regression/_kdmd.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/regression/_kdmd.py -------------------------------------------------------------------------------- /src/pykoopman/regression/_nndmd.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/src/pykoopman/regression/_nndmd.py -------------------------------------------------------------------------------- /test/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /test/analytics/test_analytics.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/test/analytics/test_analytics.py -------------------------------------------------------------------------------- /test/conftest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/test/conftest.py -------------------------------------------------------------------------------- /test/differentiation/test_differentiation.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/test/differentiation/test_differentiation.py -------------------------------------------------------------------------------- /test/observables/test_observables.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/test/observables/test_observables.py -------------------------------------------------------------------------------- /test/regression/test_regressors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/test/regression/test_regressors.py -------------------------------------------------------------------------------- /test/test_koopman.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/test/test_koopman.py -------------------------------------------------------------------------------- /test/test_koopman_continuous.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dynamicslab/pykoopman/HEAD/test/test_koopman_continuous.py --------------------------------------------------------------------------------