SKHiPPR documentation

Contents

SKHiPPR documentation#

SKHiPPR logo: A skipper on a boat riding the Duffing frequency response curve

SKHiPPR (/ˈski-pr/) is a Python toolbox with focus on Stability using the Koopman-Hill Projection method for Periodic solutions and Resonance curves.

SKHiPPR is a continuation toolbox developed by Fabia Bayer as part of a research project in close cooperation with Remco Leine at the Institute for Nonlinear Mechanics, University of Stuttgart, Germany. The main focus of the project is the Koopman-based Hill stability method for periodic solutions.

For more information about the Koopman-Hill projection method, please see the following references:

This toolbox is object-oriented and modularized. It can generate continuation curves along arbitrary (differentiable) systems of algebraic equations and also branches of periodic solutions with stability information. This requires the following workflow:

  1. The user provides a first-order ordinary differential equation as a concrete subclass of AbstractODE.

  2. Using the ODE, a Fourier object for configuration of the FFT, and optionally a AbstractStabilityHBM object, a HBMSystem object is instantiated to encode the harmonic balance problem.

  3. A NewtonSolver (or subclasses) instance can solve the HBMSystem immediately and determine stability.

  4. The pseudo_arclength_continuator() iterates through a solution branch along a specified continuation parameter.

The main purpose of SKHiPPR is to provide a framework for comparing various stability analysis methods for periodic solutions and resonance curves in dynamical systems based on the Harmonic Balance method. For stability determination based on the Hill matrix (Jacobian of the HBM problem), the following classes are available and can be used interchangeably:

The modular framework enables easy addition of new problem formulations and comparison of stability methods.

To install SKHiPPR locally on your machine, take a look at the installation guide. To get started, check out the Examples or the Usage – Classes and functions section.

Contents#