Overview of capabilities
Main features
- Newton-Krylov solver with generic linear / eigen preconditioned solver. Idem for the arc-length continuation.
- Newton-Krylov solver with nonlinear deflation and preconditioner. It can be used for branch switching for example. It is used for deflated continuation.
- Continuation written as an iterator
- Monitoring user functions along curves computed by continuation, see events
- Continuation methods: PALC, Moore Penrose, Multiple, Polynomial, Deflated continuation, ANM, ...
- Bifurcation points located with bisection
Capabilities related to equilibria
- Detection of Branch, Fold, Hopf bifurcation points of stationary solutions and computation of their normal form.
- Automatic branch switching at branch points (whatever the dimension of the kernel) to equilibria
- Automatic computation of bifurcation diagrams of equilibria
- Fold / Hopf continuation based on Minimally Augmented formulation, with Matrix Free / Sparse / Dense Jacobian.
- Detection of all codim 2 bifurcations of equilibria and computation of the normal forms of Bogdanov-Takens, Bautin and Cusp
- Branching from Bogdanov-Takens / Zero-Hopf / Hopf-Hopf points to Fold / Hopf curve
Note that you can combine most solvers, like use Deflation for Periodic orbit computation or Fold of periodic orbits family.
Custom state means, we can use something else than
AbstractArray
, for example your ownstruct
.
Features | Matrix Free | Custom state | Tutorial | GPU |
---|---|---|---|---|
(Deflated) Krylov-Newton | Yes | Yes | link | Yes |
Continuation PALC (Natural, Secant, Tangent, Polynomial) | Yes | Yes | All | Yes |
Deflated Continuation | Yes | Yes | link | Yes |
Bifurcation / Fold / Hopf point detection | Yes | Yes | All / All / link | Yes |
Fold Point continuation | Yes | Yes | link, link, ODE | Yes |
Hopf Point continuation | Yes | AbstractArray | ODE | |
Branch point / Fold / Hopf normal form | Yes | Yes | Yes | |
Branch switching at Branch points | Yes | AbstractArray | link | Yes |
Automatic bifurcation diagram computation of equilibria | Yes | AbstractArray | link | |
Bogdanov-Takens / Bautin / Cusp / Zero-Hopf / Hopf-Hopf point detection | Yes | Yes | ODE | |
Bogdanov-Takens / Bautin / Cusp normal forms | Yes | AbstractArray | ODE | Yes |
Branching from Bogdanov-Takens / Zero-Hopf / Hopf-Hopf to Fold / Hopf curve | Yes | AbstractArray | ODE |
Capabilities related to Periodic orbits
- Periodic orbit computation and continuation using parallel (Standard or Poincaré) Shooting, Finite Differences or Orthogonal Collocation.
- Automatic branch switching at simple Hopf points to periodic orbits
- Detection of Branch, Fold, Neimark-Sacker, Period Doubling bifurcation points of periodic orbits.
- Continuation of Fold of periodic orbits
Legend for the table: Standard shooting (SS), Poincaré shooting (PS), Orthogonal collocation (OC), trapezoid (T).
Features | Method | Matrix Free | Custom state | Tutorial | GPU |
---|---|---|---|---|---|
Branch switching at Hopf points | SS/PS/OC/T | See each | link | ||
Newton / continuation | T | Yes | AbstractVector | link, link | Yes |
Newton / continuation | OC | AbstractVector | link | ||
Newton / continuation | SS | Yes | AbstractArray | link | Yes |
Newton / continuation | PS | Yes | AbstractArray | link | Yes |
Fold, Neimark-Sacker, Period doubling detection | SS/PS/OC/T | See each | AbstractVector | link | |
Branch switching at Branch point | SS/PS/OC/T | See each | link | ||
Branch switching at PD point | SS/PS/OC/T | See each | link | ||
Continuation of Fold points | SS/PS/OC/T | See each | AbstractVector | link | Yes |
Continuation of Period-doubling points | SS/OC | AbstractVector | link | ||
Continuation of Neimark-Sacker points | SS/OC | AbstractVector | link | ||
detection of codim 2 bifurcations of periodic orbits | SS/OC | AbstractVector | link | ||
Branch switching at Bautin point to curve of Fold of periodic orbits | SS/OC | AbstractVector | |||
Branch switching at ZH/HH point to curve of NS of periodic orbits | SS/OC | AbstractVector |
Capabilities related to Homoclinic orbits
This is available through the plugin HclinicBifurcationKit.jl. Please see the specific docs for more information.
- compute Homoclinic to Hyperbolic Saddle Orbits (HomHS) using Orthogonal collocation or Standard shooting
- compute bifurcation of HomHS
- start HomHS from a direct simulation
- automatic branch switching to HomHS from Bogdanov-Takes bifurcation point