pub struct WaveletLeaderScaling {
pub moments: Vec<f64>,
pub scales: Vec<usize>,
pub structure_functions: Vec<Vec<f64>>,
pub scaling_exponents: Vec<f64>,
}Expand description
Raw wavelet-leader scaling data.
This exposes the intermediate quantities used by the WLMF method:
structure functions S(j, q) and scaling exponents ζ(q) obtained
from linear regressions of ln S(j, q) against scale j.
Fields§
§moments: Vec<f64>Moments q used in the analysis.
scales: Vec<usize>Scales j used (decomposition levels).
structure_functions: Vec<Vec<f64>>Structure functions S(j, q) for each moment. Outer index: moment index, inner index: scale index.
scaling_exponents: Vec<f64>Scaling exponents ζ(q) for each moment q.
Implementations§
Source§impl WaveletLeaderScaling
impl WaveletLeaderScaling
Sourcepub fn multifractality_score(&self) -> Option<f64>
pub fn multifractality_score(&self) -> Option<f64>
Compute a simple multifractality score based on curvature of ζ(q) near q = 0.
This uses a discrete second difference around q = 0:
ζ’’(0) ≈ ζ(1) − 2ζ(0) + ζ(−1)
and returns |ζ''(0)|. For monofractal processes, ζ(q) is
approximately linear in q so this score is close to 0, while
strongly multifractal processes exhibit larger curvature and
thus larger scores.
Returns None if the moment set does not contain q = −1, 0, 1.
Sourcepub fn linearity_r2(&self) -> Option<f64>
pub fn linearity_r2(&self) -> Option<f64>
Compute the R² of the best linear fit ζ(q) ≈ a·q + b.
This provides a simple monofractality score: values close to 1.0 indicate that ζ(q) is well-approximated by a straight line in q, while significantly smaller values indicate nonlinear scaling (and hence multifractality).
Returns None if fewer than two distinct q-values are available.
Trait Implementations§
Source§impl Clone for WaveletLeaderScaling
impl Clone for WaveletLeaderScaling
Source§fn clone(&self) -> WaveletLeaderScaling
fn clone(&self) -> WaveletLeaderScaling
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 WaveletLeaderScaling
impl RefUnwindSafe for WaveletLeaderScaling
impl Send for WaveletLeaderScaling
impl Sync for WaveletLeaderScaling
impl Unpin for WaveletLeaderScaling
impl UnwindSafe for WaveletLeaderScaling
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<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more