APS Logo

PyKoopman: A Python Package for Data-Driven Approximation of the Koopman Operator

ORAL

Abstract

PyKoopman is a Python package for the data-driven approximation of the Koopman operator in dynamical systems. The Koopman operator has emerged as a principled linear embedding of nonlinear dynamics and facilitates the prediction, estimation, and control of strongly nonlinear dynamics using linear systems theory. In particular, PyKoopman provides tools for data-driven system identification for unforced and actuated systems that build on the equation-free dynamic mode decomposition (DMD) and its nonlinear variants including EDMD, KDMD, time delayed DMD, scalable KDMD, and a neural network version. In this work, we provide a brief description of the mathematical underpinnings of the Koopman operator, an overview and demonstration of the features implemented in PyKoopman (with code examples), practical advice for users, and a list of potential extensions to PyKoopman. Software is also available on Github.

Presenters

  • Shaowu Pan

    Rensselaer Polytechnic Institute

Authors

  • Shaowu Pan

    Rensselaer Polytechnic Institute

  • Eurika Kaiser

    University of Washington

  • Nathan Kutz

    University of Washington, University of Washington, Department of Applied Mathematics, UW

  • Steven L Brunton

    University of Washington, University of Washington, Department of Mechanical Engineering