pub struct AdvancedExtrapolator<T: Float> {
pub base_extrapolator: Extrapolator<T>,
pub confidence_config: Option<ConfidenceExtrapolationConfig<T>>,
pub ensemble_config: Option<EnsembleExtrapolationConfig<T>>,
pub adaptive_config: Option<AdaptiveExtrapolationConfig>,
pub autoregressive_config: Option<AutoregressiveExtrapolationConfig<T>>,
pub historical_data: Option<(Array1<T>, Array1<T>)>,
}
Expand description
Advanced extrapolator with ensemble, adaptive, and statistical capabilities
Fields§
§base_extrapolator: Extrapolator<T>
Basic extrapolator for standard methods
confidence_config: Option<ConfidenceExtrapolationConfig<T>>
Configuration for confidence-based extrapolation
ensemble_config: Option<EnsembleExtrapolationConfig<T>>
Configuration for ensemble extrapolation
adaptive_config: Option<AdaptiveExtrapolationConfig>
Configuration for adaptive extrapolation
autoregressive_config: Option<AutoregressiveExtrapolationConfig<T>>
Configuration for autoregressive extrapolation
historical_data: Option<(Array1<T>, Array1<T>)>
Historical data for advanced methods (when available)
Implementations§
Source§impl<T: Float + Display + Default + AddAssign> AdvancedExtrapolator<T>
impl<T: Float + Display + Default + AddAssign> AdvancedExtrapolator<T>
Sourcepub fn new(base_extrapolator: Extrapolator<T>) -> Self
pub fn new(base_extrapolator: Extrapolator<T>) -> Self
Create a new advanced extrapolator
Sourcepub fn with_confidence(self, config: ConfidenceExtrapolationConfig<T>) -> Self
pub fn with_confidence(self, config: ConfidenceExtrapolationConfig<T>) -> Self
Enable confidence-based extrapolation
Sourcepub fn with_ensemble(self, config: EnsembleExtrapolationConfig<T>) -> Self
pub fn with_ensemble(self, config: EnsembleExtrapolationConfig<T>) -> Self
Enable ensemble extrapolation
Sourcepub fn with_adaptive(self, config: AdaptiveExtrapolationConfig) -> Self
pub fn with_adaptive(self, config: AdaptiveExtrapolationConfig) -> Self
Enable adaptive extrapolation
Sourcepub fn with_autoregressive(
self,
config: AutoregressiveExtrapolationConfig<T>,
) -> Self
pub fn with_autoregressive( self, config: AutoregressiveExtrapolationConfig<T>, ) -> Self
Enable autoregressive extrapolation
Sourcepub fn with_historical_data(self, x_data: Array1<T>, y_data: Array1<T>) -> Self
pub fn with_historical_data(self, x_data: Array1<T>, y_data: Array1<T>) -> Self
Set historical data for advanced methods
Sourcepub fn extrapolate_advanced(&self, x: T) -> InterpolateResult<T>
pub fn extrapolate_advanced(&self, x: T) -> InterpolateResult<T>
Perform advanced extrapolation at a point
Sourcepub fn extrapolate_with_confidence(
&self,
x: T,
) -> InterpolateResult<ConfidenceExtrapolationResult<T>>
pub fn extrapolate_with_confidence( &self, x: T, ) -> InterpolateResult<ConfidenceExtrapolationResult<T>>
Perform confidence-based extrapolation
Sourcepub fn extrapolate_ensemble(&self, x: T) -> InterpolateResult<T>
pub fn extrapolate_ensemble(&self, x: T) -> InterpolateResult<T>
Perform ensemble extrapolation
Sourcepub fn extrapolate_adaptive(&self, x: T) -> InterpolateResult<T>
pub fn extrapolate_adaptive(&self, x: T) -> InterpolateResult<T>
Perform adaptive extrapolation
Sourcepub fn extrapolate_autoregressive(&self, x: T) -> InterpolateResult<T>
pub fn extrapolate_autoregressive(&self, x: T) -> InterpolateResult<T>
Perform autoregressive extrapolation
Sourcepub fn base(&self) -> &Extrapolator<T>
pub fn base(&self) -> &Extrapolator<T>
Get access to the base extrapolator
Sourcepub fn base_mut(&mut self) -> &mut Extrapolator<T>
pub fn base_mut(&mut self) -> &mut Extrapolator<T>
Get mutable access to the base extrapolator
Sourcepub fn has_confidence(&self) -> bool
pub fn has_confidence(&self) -> bool
Check if confidence estimation is enabled
Sourcepub fn has_ensemble(&self) -> bool
pub fn has_ensemble(&self) -> bool
Check if ensemble methods are enabled
Sourcepub fn has_adaptive(&self) -> bool
pub fn has_adaptive(&self) -> bool
Check if adaptive selection is enabled
Sourcepub fn has_autoregressive(&self) -> bool
pub fn has_autoregressive(&self) -> bool
Check if autoregressive modeling is enabled
Sourcepub fn has_historical_data(&self) -> bool
pub fn has_historical_data(&self) -> bool
Check if historical data is available
Sourcepub fn ar_model_order(&self) -> Option<usize>
pub fn ar_model_order(&self) -> Option<usize>
Get the number of available AR coefficients
Sourcepub fn extrapolate_batch(&self, x_values: &[T]) -> Vec<InterpolateResult<T>> ⓘ
pub fn extrapolate_batch(&self, x_values: &[T]) -> Vec<InterpolateResult<T>> ⓘ
Perform multiple extrapolations efficiently
Sourcepub fn recommend_methods(&self, x: T) -> Vec<ExtrapolationMethod>
pub fn recommend_methods(&self, x: T) -> Vec<ExtrapolationMethod>
Get extrapolation method recommendations based on data characteristics
Trait Implementations§
Source§impl<T: Clone + Float> Clone for AdvancedExtrapolator<T>
impl<T: Clone + Float> Clone for AdvancedExtrapolator<T>
Source§fn clone(&self) -> AdvancedExtrapolator<T>
fn clone(&self) -> AdvancedExtrapolator<T>
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreAuto Trait Implementations§
impl<T> Freeze for AdvancedExtrapolator<T>where
T: Freeze,
impl<T> RefUnwindSafe for AdvancedExtrapolator<T>where
T: RefUnwindSafe,
impl<T> Send for AdvancedExtrapolator<T>where
T: Send,
impl<T> Sync for AdvancedExtrapolator<T>where
T: Sync,
impl<T> Unpin for AdvancedExtrapolator<T>where
T: Unpin,
impl<T> UnwindSafe for AdvancedExtrapolator<T>where
T: UnwindSafe + RefUnwindSafe,
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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
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.