The dynamic mode decomposition (DMD) is a simple and powerful data-driven modeling technique that is capable of revealing coherent spatiotemporal patterns from data. The method's linear algebra-based formulation additionally allows for a variety of optimizations and extensions that make the algorithm practical and viable for real-world data analysis. As a result, DMD has grown to become a leading method for dynamical system analysis across multiple scientific disciplines. PyDMD is a Python package that implements DMD and several of its major variants. In this work, we expand the PyDMD package to include a number of cutting-edge DMD methods and tools specifically designed to handle dynamics that are noisy, multiscale, parameterized, prohibitively high-dimensional, or even strongly nonlinear. We provide a complete overview of the features available in PyDMD as of version 1.0, along with a brief overview of the theory behind the DMD algorithm, information for developers, tips regarding practical DMD usage, and introductory coding examples. All code is available at https://github.com/PyDMD/PyDMD .
翻译:动态模式分解(DMD)是一种简单而强大的数据驱动建模技术,能够从数据中揭示连贯的时空模式。该方法基于线性代数的公式化使其能够实现多种优化与扩展,从而在真实世界数据分析中具备实用性与可行性。因此,DMD已成为跨多个科学学科的动力系统分析领先方法。PyDMD是一个实现了DMD及其多种主要变体的Python工具包。本研究将PyDMD扩展至包含一系列前沿DMD方法与工具,这些方法专为处理噪声、多尺度、参数化、维度过高甚至强非线性动力学而设计。我们完整概述了PyDMD 1.0版本的所有功能,简要介绍了DMD算法的理论基础,提供了开发者信息、DMD实际应用技巧及入门编程示例。完整代码发布于https://github.com/PyDMD/PyDMD。