Sampling transitions
CriticalTransitions.TransitionEnsemble — Typestruct TransitionEnsemble{SSS, T, ES}Ensemble of transition paths between two points in a state space.
Fields
paths::Vector: paths sampled from the transition processtimes::Array{Vector{T}, 1} where T: coresponsing times of the pathsstats::CriticalTransitions.TransitionStatistics: statistics of the ensemblesciml_ensemble::Any: original ensemble solution of the SciML Ensemble problem
Constructors
TransitionEnsemble(sim, success_rate)defined at /home/runner/work/CriticalTransitions.jl/CriticalTransitions.jl/src/trajectories/TransitionEnsemble.jl:55.
CriticalTransitions.TransitionStatistics — Typestruct TransitionStatistics{T}Statistics of the ensemble of transition paths between two points in a state space.
Fields
success_rate::Any: success rate of the transition processresidence_time::Any: mean residence time of the transition processtransition_time::Any: mean transition time of the transition processrareness::Any: rareness of the transition process
Constructors
TransitionStatistics(sim, success_rate)defined at /home/runner/work/CriticalTransitions.jl/CriticalTransitions.jl/src/trajectories/TransitionEnsemble.jl:23.
... by direct simulation
These functions generate noise-induced transitions between an initial and final state.
CriticalTransitions.transition — Functiontransition(
sys::CoupledSDEs,
x_i,
x_f;
radii,
tmax,
radius_directions,
cut_start,
kwargs...
) -> Tuple{Any, Any, Bool}
Generates a sample transition from point x_i to point x_f.
This function simulates sys in time, starting from initial condition x_i, until entering a ball of given radius around x_f. If a seed was given to sys the solver is initialized with this seed. To change the seed you can pass a new seed to the seed keyword.
Keyword arguments
radii=(0.1, 0.1): radius of the ball aroundx_iandx_f, respectivelytmax=1e3: maximum time until the simulation stops evenx_fhas not been reachedradius_directions=1:length(sys.u): the directions in phase space to consider when calculating the radiirad_iandrad_f. Defaults to all directions. To consider only a subspace of state space, insert a vector of indices of the dimensions to be included.cut_start=true: iffalse, returns the whole trajectory up to the transitionkwargs...: keyword arguments passed toCommonSolve.solve
Output
[path, times, success]
path(Matrix): transition path (size [dim × N], where N is the number of time points)times(Vector): time values (since start of simulation) of the path points (size N)success(bool): iftrue, a transition occured (i.e. the ball aroundx_fhas been reached), elsefalse
See also transitions, trajectory.
CriticalTransitions.transitions — Functiontransitions(
sys::CoupledSDEs,
x_i,
x_f;
...
) -> CriticalTransitions.TransitionEnsemble{_A, _B, EnsembleSolution{T, N, S}} where {_A, _B, T, N, S}
transitions(
sys::CoupledSDEs,
x_i,
x_f,
N::Int64;
radii,
tmax,
Nmax,
cut_start,
radius_directions,
show_progress,
EnsembleAlg,
kwargs...
) -> CriticalTransitions.TransitionEnsemble{_A, _B, EnsembleSolution{T, N, S}} where {_A, _B, T, N, S}
Generates an ensemble of N transition samples of sys from point x_i to point x_f. The transitions is by default simulated using threading. To sample the transitions in serial, GPU or Distrubuted enverionment, pass the desired SciMLBase.EnsembleAlgorithm to the EnsembleAlg algorithm.
Keyword arguments
radii=(0.1, 0.1): radius of the ball aroundx_iandx_f, respectivelyNmax: number of attempts before the algorithm stops even if less thanNtransitions occurred.tmax=1e3: maximum time when the simulation stops evenx_fhas not been reachedradius_directions=1:length(sys.u): the directions in phase space to consider when calculating the radiirad_iandrad_f. Defaults to all directions. To consider only a subspace of state space, insert a vector of indices of the dimensions to be included.cut_start=true: iffalse, returns the whole trajectory up to the transitionshow_progress=true: shows a progress bar with respect toNmaxkwargs...: keyword arguments passed toCommonSolve.solve
See also transition.
Returns a TransitionEnsemble object.
... in pathspace
Coming soon...