pub struct AttractorAnalysis {
pub data: Vec<Vec<f64>>,
}Expand description
Tools for characterising attractors from time-series data.
Fields§
§data: Vec<Vec<f64>>The embedded time-series (each inner Vec is one point in phase space).
Implementations§
Source§impl AttractorAnalysis
impl AttractorAnalysis
Sourcepub fn find_fixed_points<F>(&self, f: F, tol: f64) -> Vec<Vec<f64>>
pub fn find_fixed_points<F>(&self, f: F, tol: f64) -> Vec<Vec<f64>>
Find approximate fixed points: points where |f(x) − x| < tol.
f is the map applied once.
Sourcepub fn find_periodic_orbits<F>(
&self,
f: &F,
period: usize,
tol: f64,
) -> Vec<Vec<f64>>
pub fn find_periodic_orbits<F>( &self, f: &F, period: usize, tol: f64, ) -> Vec<Vec<f64>>
Detect periodic orbits of period p: points where |f^p(x) − x| < tol.
Sourcepub fn correlation_dimension(&self, n_radii: usize) -> Vec<(f64, f64)>
pub fn correlation_dimension(&self, n_radii: usize) -> Vec<(f64, f64)>
Estimate the correlation dimension via the Grassberger–Procaccia algorithm.
Computes C(r) for a range of radii and returns (log_r, log_C) pairs
from which the slope gives the correlation dimension.
Sourcepub fn rosenstein_lyapunov(&self, horizon: usize) -> Vec<f64>
pub fn rosenstein_lyapunov(&self, horizon: usize) -> Vec<f64>
Estimate the largest Lyapunov exponent from the data via the Rosenstein method.
Finds the nearest neighbour for each point, tracks divergence over horizon
steps and returns the mean log-divergence as a function of time.
Sourcepub fn is_strange_attractor(&self) -> bool
pub fn is_strange_attractor(&self) -> bool
Check whether the attractor looks strange by testing if the correlation dimension estimate is fractional (> 1.5).
Trait Implementations§
Source§impl Clone for AttractorAnalysis
impl Clone for AttractorAnalysis
Source§fn clone(&self) -> AttractorAnalysis
fn clone(&self) -> AttractorAnalysis
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for AttractorAnalysis
impl RefUnwindSafe for AttractorAnalysis
impl Send for AttractorAnalysis
impl Sync for AttractorAnalysis
impl Unpin for AttractorAnalysis
impl UnsafeUnpin for AttractorAnalysis
impl UnwindSafe for AttractorAnalysis
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.