Struct EMDResult
pub struct EMDResult {
pub imfs: Vec<IMF>,
pub residue: Vec<f64>,
pub iterations: Vec<usize>,
}Expand description
EMD result containing all IMFs and the residue
Fields§
§imfs: Vec<IMF>The extracted IMFs (from highest to lowest frequency)
residue: Vec<f64>The residue (trend component)
iterations: Vec<usize>Number of sifting iterations for each IMF
Implementations§
§impl EMDResult
impl EMDResult
pub fn reconstruct(&self) -> Vec<f64>
pub fn reconstruct(&self) -> Vec<f64>
Reconstruct the original signal from IMFs and residue
pub fn get_trend(&self, n_components: usize) -> Vec<f64>
pub fn get_trend(&self, n_components: usize) -> Vec<f64>
Get the trend component (sum of low-frequency IMFs and residue)
pub fn validate_imfs(&self) -> Vec<bool>
pub fn validate_imfs(&self) -> Vec<bool>
Validate the quality of extracted IMFs
Returns a vector of booleans indicating which IMFs satisfy the IMF conditions
pub fn all_imfs_valid(&self) -> bool
pub fn all_imfs_valid(&self) -> bool
Check if all IMFs are valid
§impl EMDResult
impl EMDResult
pub fn orthogonality_index(&self) -> f64
pub fn orthogonality_index(&self) -> f64
Huang index of orthogonality (IO) for the IMF set, per Huang et al. 1998 §5 Eq 5.5:
IO = Σ_i Σ_{j ≠ i} |⟨IMFᵢ, IMFⱼ⟩| / ‖x‖²The per-term absolute value matters — summing signed inner products
first and taking .abs() once at the end lets positive and negative
cross-correlations cancel, masking non-orthogonality.
EMDResult doesn’t carry the original input signal, so the
denominator uses reconstruct() as a stand-in. For a well-behaved
decomposition the reconstructed signal equals the input within
machine precision; for a pathological one the difference is itself
a non-orthogonality signal and the IO will be conservatively large.
pub fn orthogonality_matrix(&self) -> Vec<Vec<f64>>
pub fn orthogonality_matrix(&self) -> Vec<Vec<f64>>
Pairwise normalized orthogonality matrix between IMFs.
pub fn imf_compliance(&self, window_len: usize) -> Vec<f64>
pub fn imf_compliance(&self, window_len: usize) -> Vec<f64>
Fraction of windows in each IMF satisfying local IMF conditions.
pub fn mode_mixing_index(&self) -> Vec<f64>
pub fn mode_mixing_index(&self) -> Vec<f64>
Normalized Welch-PSD overlap between adjacent IMFs.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for EMDResult
impl RefUnwindSafe for EMDResult
impl Send for EMDResult
impl Sync for EMDResult
impl Unpin for EMDResult
impl UnwindSafe for EMDResult
Blanket Implementations§
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
clone_to_uninit)§impl<T> IntoEither for T
impl<T> IntoEither for T
§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 more§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§impl<T> Pointable for T
impl<T> Pointable for T
§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read more§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).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.