PySINDy

image

PySINDy [1] is a sparse regression package with several implementations for the Sparse Identification of Nonlinear Dynamical systems method introduced in Brunton et al. [2]. Along with the original SINDy algorithm, it includes the unified optimization approach of Champion et al [3], SINDy with control from Brunton et al. [4] and various other implementations. A comprehensive literature review is given in de Silva et al. [1]. This Python package is being continuously developed by Ph.D. students and postdoctoral researchers working with Steven Brunton, Nathan Kutz and myself. For more details, please visit the dedicated GitHub repo or the example page from the documentation.

References

[1] de Silva, Brian M., Kathleen Champion, Markus Quade, Jean-Christophe Loiseau, J. Nathan Kutz, and Steven L. Brunton. PySINDy: a Python package for the sparse identification of nonlinear dynamics from data. arXiv preprint arXiv:2004.08424 (2020)

[2] Brunton, Steven L., Joshua L. Proctor, and J. Nathan Kutz. Discovering governing equations from data by sparse identification of nonlinear dynamical systems. Proceedings of the National Academy of Sciences 113.15 (2016): 3932-3937.

[3] Champion, Kathleen, Peng Zheng, Aleksandr Y. Aravkin, Steven L. Brunton, and J. Nathan Kutz. A unified sparse optimization framework to learn parsimonious physics-informed models from data. arXiv preprint arXiv:1906.10612 (2019).

[4] Brunton, Steven L., Joshua L. Proctor, and J. Nathan Kutz. Sparse identification of nonlinear dynamics with control (SINDYc). IFAC-PapersOnLine 49.18 (2016): 710-715.