(references and links) |
|||
Line 3: | Line 3: | ||
[[file:Logo_pydmd.png|200px|right|PyDMD logo]] |
[[file:Logo_pydmd.png|200px|right|PyDMD logo]] |
||
− | [https://github.com/mathLab/PyDMD PyDMD] is a Python package that uses Dynamic Mode Decomposition (DMD) for a data-driven model simplification based on spatiotemporal coherent structures. DMD is a model reduction algorithm developed by Schmid |
+ | [https://github.com/mathLab/PyDMD PyDMD] is a Python package that uses Dynamic Mode Decomposition (DMD) for a data-driven model simplification based on spatiotemporal coherent structures. DMD is a model reduction algorithm developed by Schmid <ref name="schmid"/>. Since then has emerged as a powerful tool for analyzing the dynamics of nonlinear systems. DMD relies only on the high-fidelity measurements, like experimental data and numerical simulations, so it is an equation-free algorithm. Its popularity is also due to the fact that it does not make any assumptions about the underlying system. See <ref name="kutz"/> for a comprehensive overview of the algorithm and its connections to the Koopman-operator analysis, initiated in <ref name="koopman"/>, along with examples in computational fluid dynamics. |
− | |||
In PyDMD we implemented the majority of the variants mentioned above with a user friendly interface. Moreover, we generated examples and tutorials to show the software capabilities. |
In PyDMD we implemented the majority of the variants mentioned above with a user friendly interface. Moreover, we generated examples and tutorials to show the software capabilities. |
||
Line 10: | Line 9: | ||
== Features == |
== Features == |
||
The following DMD versions are available in the latest release of the software (as of January 2019): |
The following DMD versions are available in the latest release of the software (as of January 2019): |
||
− | * Standard DMD |
+ | * Standard DMD |
− | * Multi-resolution DMD |
+ | * Multi-resolution DMD |
− | * Compressed DMD |
+ | * Compressed DMD |
− | * DMD with control |
+ | * DMD with control |
− | * Forward-backward DMD |
+ | * Forward-backward DMD |
− | * Higher order DMD |
+ | * Higher order DMD |
(Exact DMD, projected DMD and optimized DMD are available for all the versions) |
(Exact DMD, projected DMD and optimized DMD are available for all the versions) |
||
− | |||
The following features are also available: |
The following features are also available: |
||
Line 24: | Line 22: | ||
* Several tutorials to show typical usecases. |
* Several tutorials to show typical usecases. |
||
− | == |
+ | == Citation == |
+ | |||
⚫ | |||
+ | If you use this package in your publications please cite the package as follows: |
||
+ | |||
⚫ | |||
+ | |||
+ | Or if you use LaTeX: |
||
+ | |||
+ | @article{demo18pydmd, |
||
+ | Author = { Demo, Nicola and Tezzele, Marco and Rozza, Gianluigi }, |
||
+ | Title = { PyDMD: Python Dynamic Mode Decomposition }, |
||
+ | Journal = { The Journal of Open Source Software }, |
||
+ | Volume = { 3 }, |
||
+ | Number = { 22 }, |
||
+ | Pages = { 530 }, |
||
+ | Year = { 2018 }, |
||
+ | Doi = { <span class="plainlinks">[https://doi.org/10.21105/joss.00530: https://doi.org/10.21105/joss.00530]</span> } |
||
+ | } |
||
== Links == |
== Links == |
||
− | * |
+ | * <span class="plainlinks">[https://github.com/mathLab/PyDMD: Official software page]</span> |
− | * |
+ | * <span class="plainlinks">[https://mathlab.github.io/PyDMD: Online documentation]</span> |
+ | |||
+ | == References == |
||
+ | <references> |
||
+ | |||
+ | <ref name="schmid">P. Schmid, "<span class="plainlinks">[https://doi.org/10.1017/S0022112010001217: Dynamic mode decomposition of numerical and experimental data]</span>", Journal of Fluid Mechanics, 656, 5-28, 2010</ref> |
||
+ | |||
+ | <ref name="kutz">J. N. Kutz, S. L. Brunton, B. W. Brunton, and J. L. Proctor, "<span class="plainlinks">[https://doi.org/10.1137/1.9781611974508: Dynamic Mode Decomposition: Data-Driven Modeling of Complex Systems]</span>", SIAM, 2016</ref> |
||
+ | |||
+ | <ref name="koopman">B. O. Koopman, "<span class="plainlinks">[https://doi.org/10.1073/pnas.17.5.315: Hamiltonian Systems and Transformation in Hilbert Space]</span>", PNAS, 17 (5), 315-318, 1931 </ref> |
||
+ | |||
+ | <ref name="pydmd">N. Demo, M. Tezzele, G. Rozza, "<span class="plainlinks">[https://doi.org/10.21105/joss.00530: Python Dynamic Mode Decomposition. ]</span>", Journal of Open Source Software, 3(22), 530, 2018</ref> |
||
+ | |||
+ | </references> |
||
== Contact == |
== Contact == |
Revision as of 19:26, 21 January 2019
Note: This page has not been verified by our editors.
PyDMD is a Python package that uses Dynamic Mode Decomposition (DMD) for a data-driven model simplification based on spatiotemporal coherent structures. DMD is a model reduction algorithm developed by Schmid [1]. Since then has emerged as a powerful tool for analyzing the dynamics of nonlinear systems. DMD relies only on the high-fidelity measurements, like experimental data and numerical simulations, so it is an equation-free algorithm. Its popularity is also due to the fact that it does not make any assumptions about the underlying system. See [2] for a comprehensive overview of the algorithm and its connections to the Koopman-operator analysis, initiated in [3], along with examples in computational fluid dynamics.
In PyDMD we implemented the majority of the variants mentioned above with a user friendly interface. Moreover, we generated examples and tutorials to show the software capabilities.
Features
The following DMD versions are available in the latest release of the software (as of January 2019):
- Standard DMD
- Multi-resolution DMD
- Compressed DMD
- DMD with control
- Forward-backward DMD
- Higher order DMD
(Exact DMD, projected DMD and optimized DMD are available for all the versions)
The following features are also available:
- Manipulation of the temporal window for the reconstructed system, allowing to interpolate/extrapolate the system dynamics;
- Options for SVD truncation and total least square denoising;
- Several tutorials to show typical usecases.
Citation
If you use this package in your publications please cite the package as follows:
- Nicola Demo, Marco Tezzele, Gianluigi Rozza (2018). PyDMD: Python Dynamic Mode Decomposition. Journal of Open Source Software, 3(22), 530 [4]
Or if you use LaTeX:
@article{demo18pydmd,
Author = { Demo, Nicola and Tezzele, Marco and Rozza, Gianluigi },
Title = { PyDMD: Python Dynamic Mode Decomposition },
Journal = { The Journal of Open Source Software },
Volume = { 3 },
Number = { 22 },
Pages = { 530 },
Year = { 2018 },
Doi = { https://doi.org/10.21105/joss.00530 }
}
Links
References
- ↑ P. Schmid, "Dynamic mode decomposition of numerical and experimental data", Journal of Fluid Mechanics, 656, 5-28, 2010
- ↑ J. N. Kutz, S. L. Brunton, B. W. Brunton, and J. L. Proctor, "Dynamic Mode Decomposition: Data-Driven Modeling of Complex Systems", SIAM, 2016
- ↑ B. O. Koopman, "Hamiltonian Systems and Transformation in Hilbert Space", PNAS, 17 (5), 315-318, 1931
- ↑ N. Demo, M. Tezzele, G. Rozza, "Python Dynamic Mode Decomposition. ", Journal of Open Source Software, 3(22), 530, 2018