Analyzing a system's stability properties
To use the following functionalities, you need to load ChoasTools.jl
and Attractors.jl
.
Fixed points
ChaosTools.fixedpoints
— Functionfixedpoints(
sys::CoupledSDEs,
bmin::Vector,
bmax::Vector
) -> Tuple{StateSpaceSet, Vector{Vector{ComplexF64}}, Vector{Bool}}
Returns fixed points, their eigenvalues and stability of the system sys
within the state space volume defined by bmin
and bmax
.
This is a wrapper around the
fixedpoints
function ofDynamicalSystems.jl
.
Input
bmin
(Vector): lower limits of the state space box to be considered, as a vector of coordinatesbmax
(Vector): upper limits- alternatively
box
(IntervalBox) can replacebmin
andbmax
Example:
fixedpoints(sys, [-2,-1,0], [2,1,1])
finds the fixed points of the 3D systemsys
in a cube defined by the intervals[-2,2] × [-1,1] × [0,1]
.
Output
[fp, eigs, stable]
fp
:StateSpaceSet
of fixed pointseigs
: vector of Jacobian eigenvalues of each fixed pointstable
: vector of booleans indicating the stability of each fixed point (true
=stable,false
=unstable)
Additional methods
fixedpoints(sys::CoupedSDEs, box)
Edge tracking
The edge tracking algorithm is a simple numerical method to find the edge state or (possibly chaotic) saddle on the boundary between two basins of attraction. It is first introduced by Battelino et al. (1988) and further described by Skufca et al. (2006).
Attractors.edgetracking
— Functionedgetracking(ds::CoupledSDEs, attractors::Dict; diffeq, kwars...)
Runs the edge tracking algorithm for the deterministic part of the CoupledSDEs ds
.
Keyword arguments
diffeq=(;alg = Vern9(), reltol=1e-11)
: ODE solver settingskwargs...
: all keyword arguments ofAttractors.edgetracking
Attractors.bisect_to_edge
— Functionbisect_to_edge(ds::CoupledSDEs, attractors::Dict;
u1, u2, bisect_thresh, diffeq, verbose, kwargs...)
Runs the bisect_to_edge
function for the deterministic part of the CoupledSDEs ds
.
Keyword arguments
u1
: State 1 (default: first state inattractors
)u2
: State 2 (default: second state inattractors
)bisect_thresh=1e-6
: distance thresholddiffeq=(;alg = Vern9(), reltol=1e-11)
: ODE solver settingsverbose=false
: Verbosity of outputϵ_mapper=nothing
: ϵ argument ofAttractors.AttractorsViaProximity
kwargs...
: Keyword arguments passed toAttractors.AttractorsViaProximity