Skip to main content

fdars_core/tolerance/
mod.rs

1//! Tolerance bands for functional data.
2//!
3//! This module provides methods for constructing regions expected to contain
4//! a given fraction of individual curves in a population — the functional
5//! analogue of classical tolerance intervals.
6//!
7//! # Methods
8//!
9//! - [`fpca_tolerance_band`] — FPCA + bootstrap tolerance band (pointwise or simultaneous)
10//! - [`elastic_tolerance_band`] — Amplitude-only band after elastic alignment
11//! - [`phase_tolerance_band`] — Phase band on warping functions via tangent-space FPCA
12//! - [`elastic_tolerance_band_with_config`] — Joint amplitude + phase bands (single alignment)
13//! - [`conformal_prediction_band`] — Distribution-free conformal prediction band
14//! - [`scb_mean_degras`] — Simultaneous confidence band for the mean (Degras method)
15//! - [`exponential_family_tolerance_band`] — Tolerance band for exponential family data
16
17mod conformal;
18mod conformal_anomaly;
19mod degras;
20mod elastic;
21mod equivalence;
22mod exponential;
23pub(crate) mod fpca;
24pub(crate) mod helpers;
25mod types;
26
27#[cfg(test)]
28mod tests;
29
30// Re-export all public items so lib.rs doesn't change
31pub use conformal::conformal_prediction_band;
32pub use conformal_anomaly::{
33    elastic_conformal_anomaly, elastic_nonconformity, ConformalAnomalyConfig,
34    ConformalAnomalyResult,
35};
36pub use degras::scb_mean_degras;
37pub use elastic::{
38    elastic_tolerance_band, elastic_tolerance_band_with_config, phase_tolerance_band,
39};
40pub use equivalence::{equivalence_test, equivalence_test_one_sample};
41pub use exponential::exponential_family_tolerance_band;
42pub use fpca::fpca_tolerance_band;
43pub use types::{
44    BandType, ElasticToleranceBandResult, ElasticToleranceConfig, EquivalenceBootstrap,
45    EquivalenceTestResult, ExponentialFamily, MultiplierDistribution, NonConformityScore,
46    PhaseToleranceBand, ToleranceBand,
47};