1#![allow(clippy::needless_range_loop)]
61#![allow(clippy::too_many_arguments)]
62#![allow(clippy::type_complexity)]
63
64pub mod error;
65pub(crate) mod linalg;
66pub mod matrix;
67pub mod parallel;
68
69pub use error::FdarError;
70
71#[cfg(test)]
72pub(crate) mod test_helpers;
73
74pub mod alignment;
75pub mod andrews;
76
77pub mod basis;
79pub mod boosting_regression;
80pub mod classification;
81pub mod clustering;
82pub mod clustering_advanced;
83pub mod coclustering;
84pub mod concurrent_regression;
85pub mod cv;
86pub mod density_fda;
87pub mod depth;
88pub mod detrend;
89pub mod dim;
90pub mod distance;
91pub(crate) mod distributions;
92pub mod famm;
93pub mod fdata;
94pub mod fem_smoothing;
95pub mod fof_regression;
96pub mod fpca_variants;
97pub mod frechet;
98pub mod fts;
99pub mod function_on_scalar;
100pub mod function_on_scalar_2d;
101pub mod gmm;
102pub mod helpers;
103pub mod inference;
104pub mod irreg_fdata;
105pub mod kernel_kmeans;
106pub mod kshape;
107pub mod landmark;
108pub mod metric;
109pub mod optimal_design;
110pub mod outliers;
111pub mod peer;
112pub mod regression;
113pub mod scalar_on_function;
114pub mod seasonal;
115pub mod shapelet;
116pub mod simulation;
117pub mod smoothing;
118pub mod streaming_depth;
119pub mod tolerance;
120pub mod utility;
121pub mod validation;
122pub mod warping;
123pub mod wavelet;
124pub mod wire;
125
126pub mod covariance;
128
129pub mod spm;
131
132pub mod conformal;
134pub mod elastic;
135pub mod elastic_changepoint;
136pub mod elastic_explain;
137pub mod elastic_fpca;
138pub mod elastic_pfi;
139pub mod elastic_regression;
140pub mod explain;
141pub mod explain_generic;
142pub mod jfpca_model;
143pub mod multi_fdata;
144pub mod pace_fpca;
145pub mod pda;
146pub(crate) mod permutation_test;
147pub mod prelude;
148pub mod scoring;
149pub mod smooth_basis;
150
151#[doc(hidden)]
160pub mod __equivalence_test_support {
161 pub mod current {
165 #[inline]
166 pub fn chi_square_sf(x: f64, k: usize) -> f64 {
167 crate::inference::dist::chi_square_sf(x, k)
168 }
169 #[inline]
170 pub fn chi_square_sf_df(x: f64, df: f64) -> f64 {
171 crate::inference::dist::chi_square_sf_df(x, df)
172 }
173 #[inline]
174 pub fn f_sf(f: f64, d1: f64, d2: f64) -> f64 {
175 crate::inference::dist::f_sf(f, d1, d2)
176 }
177 #[inline]
178 pub fn chi2_cdf(x: f64, k: usize) -> f64 {
179 crate::spm::chi_squared::chi2_cdf(x, k)
180 }
181 #[inline]
182 pub fn chi2_quantile(p: f64, k: usize) -> f64 {
183 crate::spm::chi_squared::chi2_quantile(p, k)
184 }
185 #[inline]
186 pub fn regularized_gamma_p(a: f64, x: f64) -> f64 {
187 crate::spm::chi_squared::regularized_gamma_p(a, x)
188 }
189 }
190
191 pub mod distributions {
194 #[inline]
195 pub fn chi2_sf(x: f64, df: f64) -> f64 {
196 crate::distributions::chi2_sf(x, df)
197 }
198 #[inline]
199 pub fn chi2_cdf(x: f64, k: usize) -> f64 {
200 crate::distributions::chi2_cdf(x, k)
201 }
202 #[inline]
203 pub fn chi2_quantile(p: f64, k: usize) -> f64 {
204 crate::distributions::chi2_quantile(p, k)
205 }
206 #[inline]
207 pub fn reg_gamma_p(a: f64, x: f64) -> f64 {
208 crate::distributions::reg_gamma_p(a, x)
209 }
210 #[inline]
211 pub fn reg_gamma_q(a: f64, x: f64) -> f64 {
212 crate::distributions::reg_gamma_q(a, x)
213 }
214 #[inline]
215 pub fn ln_gamma(x: f64) -> f64 {
216 crate::distributions::ln_gamma(x)
217 }
218 }
219
220 pub mod helpers {
225 #[inline]
230 pub fn seed_for_thread_draws(seed: u64, k: usize, n: usize) -> Vec<u64> {
231 use rand::RngCore;
232 let mut rng = crate::helpers::seed_for_thread(seed, k);
233 (0..n).map(|_| rng.next_u64()).collect()
234 }
235 }
236}
237
238pub use matrix::{FdCurveSet, FdMatrix};
240
241pub use multi_fdata::{FdComponent, MultiFunData};
243
244pub use pda::{principal_differential_analysis, Lfd, PdaResult};
246
247pub use density_fda::{
249 inverse_lqd, lqd_fpca, lqd_transform, normalize_density, wasserstein_barycenter, LqdFpcaResult,
250};
251
252pub use frechet::{
254 frechet_anova, frechet_anova_space, frechet_global_reg, frechet_global_reg_space,
255 frechet_local_reg, frechet_local_reg_space, frechet_mean, frechet_variance,
256 wasserstein2_distance, CorrelationMatrixSpace, FrechetAnovaResult, FrechetGlobalRegResult,
257 FrechetLocalRegResult, MetricSpace, NetworkSpace, PointProcessSpace, SpdMatrixSpace, SpdMetric,
258 SphericalSpace, WassersteinDensitySpace,
259};
260
261pub use andrews::{andrews_loadings, andrews_transform, AndrewsLoadings, AndrewsResult};
263
264pub use covariance::{
266 covariance_matrix, generate_gaussian_process, CovKernel, GaussianProcessResult,
267};
268
269pub use alignment::{
271 align_to_target, alignment_quality, amplitude_distance, amplitude_self_distance_matrix,
272 bayesian_align_pair, compose_warps, curve_geodesic, curve_geodesic_nd, cut_dendrogram,
273 diagnose_alignment, diagnose_pairwise, elastic_align_pair, elastic_align_pair_closed,
274 elastic_align_pair_constrained, elastic_align_pair_multires, elastic_align_pair_nd,
275 elastic_align_pair_penalized, elastic_align_pair_with_landmarks, elastic_cross_distance_matrix,
276 elastic_cross_distance_matrix_banded, elastic_cross_distance_matrix_with_band,
277 elastic_decomposition, elastic_depth, elastic_distance, elastic_distance_closed,
278 elastic_distance_nd, elastic_outlier_detection, elastic_partial_match,
279 elastic_self_distance_matrix, elastic_self_distance_matrix_banded,
280 elastic_self_distance_matrix_with_band, gauss_model, hierarchical_from_distances, horiz_fpns,
281 invert_warp, joint_gauss_model, karcher_covariance_nd, karcher_mean, karcher_mean_banded,
282 karcher_mean_closed, karcher_mean_nd, karcher_mean_with_band, karcher_median,
283 kmedoids_from_distances, lambda_cv, least_squares_score, least_squares_shift_registration,
284 orbit_representative, pairwise_consistency, pairwise_correlation_score, pca_nd,
285 peak_persistence, phase_boxplot, phase_distance_pair, phase_self_distance_matrix,
286 reparameterize_curve, robust_karcher_mean, shape_confidence_interval, shape_distance,
287 shape_mean, shape_self_distance_matrix, sobolev_least_squares_score, srsf_inverse,
288 srsf_inverse_nd, srsf_transform, srsf_transform_nd, transfer_alignment, tsrvf_from_alignment,
289 tsrvf_from_alignment_with_method, tsrvf_inverse, tsrvf_transform, tsrvf_transform_with_method,
290 warp_complexity, warp_inverse_error, warp_smoothness, warp_statistics, AlignmentDiagnostic,
291 AlignmentDiagnosticSummary, AlignmentQuality, AlignmentResult, AlignmentResultNd,
292 AlignmentSetResult, BayesianAlignConfig, BayesianAlignmentResult, ClosedAlignmentResult,
293 ClosedKarcherMeanResult, ConstrainedAlignmentResult, DecompositionResult, Dendrogram,
294 DiagnosticConfig, ElasticDepthResult, ElasticOutlierConfig, ElasticOutlierResult, FpnsResult,
295 GenerativeModelResult, GeodesicPath, GeodesicPathNd, KMedoidsConfig, KMedoidsResult,
296 KarcherMeanResult, KarcherMeanResultNd, LambdaCvConfig, LambdaCvResult, Linkage,
297 MultiresConfig, OrbitRepresentative, PartialMatchConfig, PartialMatchResult, PcaNdResult,
298 PersistenceDiagramResult, PhaseBoxplot, RobustKarcherConfig, RobustKarcherResult,
299 ShapeCiConfig, ShapeCiResult, ShapeDistanceResult, ShapeMeanResult, ShapeQuotient,
300 ShiftRegistrationResult, TransferAlignConfig, TransferAlignResult, TransportMethod,
301 TsrvfResult, WarpPenaltyType, WarpStatistics,
302};
303
304pub use helpers::{
306 aic, bandwidth_candidates_from_dists, bic, cumulative_trapz, extract_curves, fdata_interpolate,
307 fdata_interpolate_with_policy, gaussian_kernel, gradient, gradient_nonuniform,
308 gradient_uniform, impute_missing_values, l2_distance, linear_interp, quantile_sorted,
309 r_squared, r_squared_adj, simpsons_weights, simpsons_weights_2d, spline_interpolate,
310 spline_interpolate_with_policy, trapz, ExtrapolationPolicy, ImputationMethod,
311 InterpolationMethod, DEFAULT_CONVERGENCE_TOL, NUMERICAL_EPS,
312};
313
314pub use warping::{
316 exp_map_sphere, gam_to_psi, gam_to_psi_smooth, inner_product_l2, inv_exp_map_sphere,
317 invert_gamma, l2_norm_l2, normalize_warp, phase_distance, psi_to_gam,
318};
319
320pub use seasonal::{
322 autoperiod, autoperiod_fdata, cfd_autoperiod, cfd_autoperiod_fdata, hilbert_transform, sazed,
323 sazed_fdata, AutoperiodCandidate, AutoperiodResult, CfdAutoperiodResult, ChangeDetectionResult,
324 ChangePoint, ChangeType, DetectedPeriod, InstantaneousPeriod, Peak, PeakDetectionResult,
325 PeriodEstimate, SazedComponents, SazedResult, StrengthMethod,
326};
327
328pub use landmark::{
330 detect_and_register, detect_landmarks, landmark_register, Landmark, LandmarkKind,
331 LandmarkResult,
332};
333
334pub use detrend::{DecomposeResult, StlConfig, StlResult, TrendResult};
336
337pub use simulation::{sim_farma, sim_fvarma, EFunType, EValType, FarmaResult, FvarmaResult};
339
340pub use irreg_fdata::{IrregFdata, KernelType};
342pub use irreg_fdata::{face_covariance, face_trajectory, mface_covariance, MfaceCovResult};
344
345pub use tolerance::{
347 conformal_prediction_band, elastic_conformal_anomaly, elastic_nonconformity,
348 elastic_tolerance_band, elastic_tolerance_band_with_config, equivalence_test,
349 equivalence_test_one_sample, exponential_family_tolerance_band, fpca_tolerance_band,
350 phase_tolerance_band, scb_mean_degras, BandType, ConformalAnomalyConfig,
351 ConformalAnomalyResult, ElasticToleranceBandResult, ElasticToleranceConfig,
352 EquivalenceBootstrap, EquivalenceTestResult, ExponentialFamily, MultiplierDistribution,
353 NonConformityScore, PhaseToleranceBand, ToleranceBand,
354};
355
356pub use inference::{
358 f_perm_test, flm_f_test, flm_gof_test, itp_flm, itp_one_pop, itp_two_pop, mean_scb,
359 oneway_anova_vstat, scb_two_sample_test, t_perm_test, two_sample_mean_test, ItpResult,
360 TestResult, DEFAULT_N_PERM,
361};
362
363pub use fts::{
366 dpca, dpca_reconstruct, fplsr, ftsm, ftsm_forecast, ftsm_forecast_multistep, ftsm_update,
367 functional_acf, functional_difference, functional_pacf, long_run_covariance, spectral_density,
368 stationarity_test, ArModelResult, DpcaReconstruction, DpcaResult, FacfResult, FplsrResult,
369 FtsmForecastResult, FtsmResult, LongRunCovResult, SpectralDensityResult, StationarityResult,
370};
371
372pub use famm::{
374 dense_flmm, fast_fmm, fmm, fmm_predict, fmm_test_fixed, multi_famm, DenseFlmmConfig,
375 DenseFlmmResult, FastFmmConfig, FastFmmResult, FmmResult, FmmTestResult, MultiFammConfig,
376 MultiFammResult,
377};
378
379pub use concurrent_regression::{concurrent_regression, ConcurrentRegrResult};
381
382pub use pace_fpca::{pace_fpca, PaceFpcaConfig, PaceFpcaResult};
384
385pub use fof_regression::{
387 fof_cv, fof_re_regression, fof_regression, predict_fof, predict_fof_re, FofCvResult,
388 FofReConfig, FofReResult, FofResult,
389};
390
391#[allow(deprecated)]
395pub use function_on_scalar::{
396 fanova, fanova_seeded, fosr, fosr_fpc, predict_fosr, FanovaResult, FosrFpcResult, FosrResult,
397};
398pub use function_on_scalar_2d::{fosr_2d, predict_fosr_2d, FosrResult2d, Grid2d};
399
400pub use scalar_on_function::{
402 bootstrap_ci_fregre_lm, bootstrap_ci_functional_logistic, fam, fregre_basis_cv, fregre_cv,
403 fregre_gkam, fregre_gsam, fregre_huber, fregre_l1, fregre_lm, fregre_lm_multi,
404 fregre_lm_multi_cv, fregre_np_cv, fregre_np_from_distances, fregre_np_mixed, fregre_pls,
405 functional_glm, functional_logistic, history_index, model_selection_ncomp,
406 permutation_test_fam, predict_fregre_lm, predict_fregre_lm_multi, predict_fregre_np,
407 predict_fregre_np_from_distances, predict_fregre_pls, predict_fregre_robust,
408 predict_functional_glm, predict_functional_logistic, variable_selection, BootstrapCiResult,
409 FamConfig, FamResult, FregreBasisCvResult, FregreCvResult, FregreLmResult, FregreNpCvResult,
410 FregreNpResult, FregreRobustResult, FunctionalGlmResult, FunctionalLogisticResult, GkamConfig,
411 GkamResult, GlmFamily, GsamConfig, GsamResult, HistoryIndexConfig, HistoryIndexResult,
412 ModelSelectionResult, MultiCvResult, MultiFregreLmResult, PermTestConfig, PermTestResult,
413 PermTestStatistic, PlsRegressionResult, SelectionCriterion, VarSelectConfig, VarSelectPenalty,
414 VarSelectResult,
415};
416
417pub use explain_generic::{
419 generic_ale, generic_anchor, generic_conditional_permutation_importance,
420 generic_counterfactual, generic_domain_selection, generic_friedman_h, generic_lime,
421 generic_pdp, generic_permutation_importance, generic_prototype_criticism, generic_saliency,
422 generic_shap_values, generic_sobol_indices, generic_stability, generic_vif, FpcPredictor,
423 TaskType,
424};
425
426pub use elastic_explain::{elastic_pcr_attribution, ElasticAttributionResult};
428pub use explain::{
429 anchor_explanation, anchor_explanation_logistic, beta_decomposition,
430 beta_decomposition_logistic, calibration_diagnostics, conditional_permutation_importance,
431 conditional_permutation_importance_logistic, conformal_prediction_residuals,
432 counterfactual_logistic, counterfactual_regression, dfbetas_dffits, domain_selection,
433 domain_selection_logistic, expected_calibration_error, explanation_stability,
434 explanation_stability_logistic, fpc_ale, fpc_ale_logistic, fpc_permutation_importance,
435 fpc_permutation_importance_logistic, fpc_shap_values, fpc_shap_values_logistic, fpc_vif,
436 fpc_vif_logistic, friedman_h_statistic, friedman_h_statistic_logistic, functional_pdp,
437 functional_pdp_logistic, functional_saliency, functional_saliency_logistic,
438 influence_diagnostics, lime_explanation, lime_explanation_logistic, loo_cv_press,
439 pointwise_importance, pointwise_importance_logistic, prediction_intervals, prototype_criticism,
440 regression_depth, regression_depth_logistic, significant_regions, significant_regions_from_se,
441 sobol_indices, sobol_indices_logistic, AleResult, AnchorCondition, AnchorResult, AnchorRule,
442 BetaDecomposition, CalibrationDiagnosticsResult, ConditionalPermutationImportanceResult,
443 ConformalPredictionResult, CounterfactualResult, DepthType, DfbetasDffitsResult,
444 DomainSelectionResult, EceResult, FpcPermutationImportance, FpcShapValues, FriedmanHResult,
445 FunctionalPdpResult, FunctionalSaliencyResult, ImportantInterval, InfluenceDiagnostics,
446 LimeResult, LooCvResult, PointwiseImportanceResult, PredictionIntervalResult,
447 PrototypeCriticismResult, RegressionDepthResult, SignificanceDirection, SignificantRegion,
448 SobolIndicesResult, StabilityAnalysisResult, VifResult,
449};
450
451pub use classification::{
453 fclassif_cv, fclassif_cv_with_config, fclassif_dd, fclassif_kernel, fclassif_knn,
454 fclassif_knn_fit, fclassif_lda, fclassif_lda_fit, fclassif_qda, fclassif_qda_fit,
455 kernel_classify_from_distances, knn_classify_from_distances, ClassifCvConfig, ClassifCvResult,
456 ClassifFit, ClassifMethod, ClassifResult,
457};
458
459pub use shapelet::{
461 discover_shapelets, shapelet_classifier_fit, shapelet_distance, shapelet_transform,
462 shapelet_transform_fit, z_normalize_into, z_normalize_window, QualityMeasure, Shapelet,
463 ShapeletClassifier, ShapeletClassifierConfig, ShapeletClassifierFit, ShapeletDiscoveryConfig,
464 ShapeletSet, ShapeletTransformFit,
465};
466
467pub use conformal::{
469 conformal_classif, conformal_elastic_logistic, conformal_elastic_pcr,
470 conformal_elastic_pcr_with_config, conformal_elastic_regression,
471 conformal_elastic_regression_with_config, conformal_fregre_lm, conformal_fregre_np,
472 conformal_generic_classification, conformal_generic_regression, conformal_logistic,
473 cv_conformal_classification, cv_conformal_regression, jackknife_plus_regression,
474 ClassificationScore, ConformalClassificationResult, ConformalConfig, ConformalMethod,
475 ConformalRegressionResult,
476};
477
478pub use gmm::{
480 funhddC_cluster, gmm_cluster, gmm_cluster_with_config, gmm_em, predict_gmm, CovType,
481 FunHddcConfig, FunHddcResult, GmmClusterConfig, GmmClusterResult, GmmResult,
482};
483
484pub use streaming_depth::{
486 FullReferenceState, RollingReference, SortedReferenceState, StreamingBd, StreamingDepth,
487 StreamingFraimanMuniz, StreamingMbd,
488};
489
490pub use fem_smoothing::{
492 assemble_fem_matrices, fem_basis_eval, fem_predict, fem_smooth, fem_smooth_gcv, FemSmoothResult,
493};
494
495pub use smooth_basis::{
497 basis_nbasis_cv, basis_nbasis_cv_with_config, bspline_penalty_matrix, fourier_penalty_matrix,
498 smooth_basis, smooth_basis_aic, smooth_basis_gcv, smooth_basis_gcv_with_config,
499 smooth_monotone, smooth_positive, BasisCriterion, BasisNbasisCvConfig, BasisNbasisCvResult,
500 BasisType, FdPar, SmoothBasisGcvConfig, SmoothBasisResult, SmoothMonotoneResult,
501 SmoothPositiveResult,
502};
503
504pub use elastic_fpca::{
506 horiz_fpca, horiz_fpca_from_alignment, joint_fpca, joint_fpca_from_alignment, vert_fpca,
507 vert_fpca_from_alignment, HorizFpcaResult, JointFpcaResult, VertFpcaResult,
508};
509
510pub use jfpca_model::{jfpca_fit, JfpcaModel, JfpcaTransform};
512
513pub use elastic_pfi::{
515 elastic_pfi, veesa_pipeline, ElasticPfiResult, PfiMetric, VeesaPipelineResult,
516};
517pub use jfpca_model::PrincipalDirections;
518
519pub use elastic_regression::{
521 elastic_logistic, elastic_logistic_with_config, elastic_multinomial, elastic_pcr,
522 elastic_pcr_with_config, elastic_regression, elastic_regression_with_config,
523 predict_elastic_logistic, predict_elastic_multinomial, predict_elastic_regression,
524 predict_scalar_on_shape, scalar_on_shape, ElasticConfig, ElasticLogisticResult,
525 ElasticMultinomialResult, ElasticPcrConfig, ElasticPcrResult, ElasticRegressionResult,
526 IndexMethod, PcaMethod, ScalarOnShapeConfig, ScalarOnShapeResult,
527};
528
529pub use spm::{
531 arl0_ewma_t2, arl0_spe, arl0_t2, arl1_t2, elastic_spm_monitor, elastic_spm_phase1,
532 evaluate_rules, ewma_scores, frcc_monitor, frcc_phase1, hotelling_t2, hotelling_t2_regularized,
533 mf_spm_monitor, mf_spm_phase1, mfpca, nelson_rules, profile_monitor, profile_phase1,
534 select_ncomp, spe_contributions, spe_control_limit, spe_limit_robust,
535 spe_moment_match_diagnostic, spe_multivariate, spe_univariate, spm_amewma_monitor,
536 spm_cusum_monitor, spm_cusum_monitor_with_restart, spm_ewma_monitor, spm_mewma_monitor,
537 spm_monitor, spm_monitor_from_fields, spm_monitor_partial, spm_monitor_partial_batch,
538 spm_phase1, spm_phase1_iterative, t2_contributions, t2_contributions_mfpca, t2_control_limit,
539 t2_limit_robust, t2_pc_contributions, t2_pc_significance, western_electric_rules, AmewmaConfig,
540 AmewmaMonitorResult, ArlConfig, ArlResult, ChartRule, ControlLimit, ControlLimitMethod,
541 CusumConfig, CusumMonitorResult, DomainCompletion, ElasticSpmChart, ElasticSpmConfig,
542 ElasticSpmMonitorResult, EwmaConfig, EwmaMonitorResult, FrccChart, FrccConfig,
543 FrccMonitorResult, IterativePhase1Config, IterativePhase1Result, MewmaConfig,
544 MewmaMonitorResult, MfSpmChart, MfpcaConfig, MfpcaResult, NcompMethod, PartialDomainConfig,
545 PartialMonitorResult, ProfileChart, ProfileMonitorConfig, ProfileMonitorResult, RuleViolation,
546 SpmChart, SpmConfig, SpmMonitorResult,
547};
548
549pub use elastic_changepoint::{
551 elastic_amp_changepoint, elastic_fpca_changepoint, elastic_ph_changepoint, ChangepointResult,
552 ChangepointType, FpcaChangepointMethod,
553};
554
555pub use cv::{
557 classification_metrics, create_folds, create_stratified_folds, cv_fdata, cv_fdata_with_metrics,
558 fold_indices, metric_accuracy, metric_f1, metric_mae, metric_precision, metric_r_squared,
559 metric_recall, metric_rmse, regression_metrics, subset_rows, subset_vec, CvFdataResult,
560 CvMetrics, CvSelectionResult, CvType, MetricFn,
561};
562
563pub use distance::{
565 cross_distance_matrix, euclidean_distance_matrix, l2_distance_matrix, pairwise_distance_matrix,
566};
567
568pub use validation::{
570 validate_dist_mat, validate_fdata, validate_labels, validate_ncomp, validate_response,
571};
572
573pub use smoothing::{
575 aic_smoother, cv_smoother, gcv_smoother, knn_gcv, knn_lcv, optim_bandwidth, CvCriterion,
576 KnnCvResult, OptimBandwidthResult,
577};
578
579pub use regression::{fdata_to_pc_1d, fdata_to_pls_1d, FpcaResult, PlsResult};
581pub use fpca_variants::{
583 cross_covariance, dynamical_correlation, fpca_der, fsvd, ssvd, FsvdResult,
584};
585#[cfg(feature = "linalg")]
586pub use regression::{ridge_regression_fit, RidgeResult};
587
588pub use coclustering::{
590 co_cluster, co_cluster_select, BlockParams, CoClusterConfig, CoClusterResult,
591 CoClusterSelectResult,
592};
593
594pub use clustering::{
596 calinski_harabasz, calinski_harabasz_from_distances, fuzzy_cmeans_fd, kmeans_fd,
597 silhouette_score, silhouette_score_from_distances, FuzzyCmeansResult, KmeansResult,
598};
599
600pub use kernel_kmeans::{kernel_kmeans_fd, KernelKmeansConfig, KernelKmeansResult};
602
603pub use kshape::{kshape_fd, sbd_kmedoids, KShapeConfig, KShapeResult};
605
606pub use optimal_design::{
608 design_criterion, optimal_design, DesignCriterion, OptDesConfig, OptDesResult, OptimalityKind,
609};
610
611pub use peer::{
613 lpeer, peer, LambdaChoice, LambdaMethod, LpeerResult, PeerConfig, PeerPenalty, PeerResult,
614};
615
616pub use wavelet::regression::{wcr, wnet, WcrConfig, WcrMethod, WcrResult, WnetConfig, WnetResult};
618pub use wavelet::{
619 decompose, decompose_matrix, max_level, reconstruct, BoundaryMode, WaveletCoeffs, WaveletFamily,
620};
621
622pub use clustering_advanced::{
624 align_cluster_fd, dbscan_fd, funfem_cluster, kcfc_cluster, AlignClusterConfig,
625 AlignClusterResult, DbscanConfig, DbscanResult, FunFemConfig, FunFemResult, KcfcConfig,
626 KcfcResult,
627};
628
629pub use metric::{
631 dtw_cross_1d, dtw_distance, dtw_self_1d, fourier_cross_1d, fourier_self_1d, gak,
632 gak_gram_matrix, gak_gram_predict, gak_gram_train, hausdorff_3d, hausdorff_cross_1d,
633 hausdorff_cross_2d, hausdorff_self_1d, hausdorff_self_2d, hshift_cross_1d, hshift_self_1d,
634 lp_cross_1d, lp_cross_2d, lp_self_1d, lp_self_2d, sbd, sbd_distance_matrix, sigma_gak,
635 soft_dtw_barycenter, soft_dtw_cross_1d, soft_dtw_distance, soft_dtw_div_cross_1d,
636 soft_dtw_div_self_1d, soft_dtw_divergence, soft_dtw_self_1d, GakConfig, GakGramTrain,
637 SbdResult, SoftDtwBarycenterResult,
638};
639
640pub use dim::Dim;
643
644#[allow(deprecated)]
647pub use depth::{
648 band_1d, epigraph_index_1d, extremal_depth_1d, extreme_rank_length_depth_1d, fraiman_muniz,
649 fraiman_muniz_1d, fraiman_muniz_2d, functional_boxplot, functional_depth,
650 functional_spatial_1d, functional_spatial_2d, half_region_depth_1d, hypograph_index_1d,
651 kernel_functional_spatial_1d, kernel_functional_spatial_2d, linfinity_depth_1d, modal,
652 modal_1d, modal_2d, modified_band_1d, modified_epigraph_index_1d,
653 modified_half_region_depth_1d, modified_hypograph_index_1d, random_projection,
654 random_projection_1d, random_projection_1d_seeded, random_projection_2d, random_tukey,
655 random_tukey_1d, random_tukey_1d_seeded, random_tukey_2d, total_variation_depth_1d,
656 DepthMethod, FunctionalBoxplotResult, TvdMssResult,
657};
658
659pub use outliers::{
661 depthgram, detect_outliers_lrt, magnitude_shape_outlyingness, muod, outliergram,
662 outliers_threshold_lrt, outliers_threshold_lrt_with_dist, sequential_transform_outliers,
663 tvdmss, DepthgramConfig, DepthgramResult, MagnitudeShapeResult, MuodConfig, MuodResult,
664 OutligramResult, SeqTransform, SeqTransformConfig, SeqTransformOutliers, TvdMssConfig,
665 TvdMssOutliers,
666};
667
668pub use utility::{
670 compute_adot, inner_product, inner_product_matrix, integrate_simpson, knn_loocv, knn_predict,
671 pcvm_statistic, rp_stat, RpStatResult,
672};
673
674#[allow(deprecated)]
677pub use fdata::{
678 center_1d, depth_based_median, deriv_1d, deriv_2d, functional_covariance, functional_std,
679 functional_variance, geometric_median_1d, geometric_median_2d, mean, mean_1d, mean_2d,
680 norm_lp_1d, normalize, normalize_with_argvals, trim_mean, Deriv2DResult, NormalizationMethod,
681};
682
683pub use basis::{
685 basis_to_fdata, basis_to_fdata_1d, bspline_basis, bspline_basis_from_knots, constant_basis,
686 construct_bspline_knots, difference_matrix, exponential_basis, fdata_to_basis,
687 fdata_to_basis_1d, fourier_basis, fourier_basis_with_period, fourier_fit_1d, monomial_basis,
688 polygonal_basis, power_basis, pspline_evaluate, pspline_fit_1d, pspline_fit_gcv,
689 select_basis_auto_1d, select_fourier_nbasis_gcv, BasisAutoSelectionResult,
690 BasisProjectionResult, BasisSystem, FourierFitResult, ProjectionBasisType, PsplineFitResult,
691 SingleCurveSelection,
692};
693
694pub use scoring::{
696 functional_explained_variance, functional_mae, functional_mape, functional_mse, functional_msle,
697};
698
699pub use boosting_regression::{
701 bayesian_fosr, boost_fofr, boost_fosr, gamlss_fosr, stability_selection, BayesianConfig,
702 BayesianFosrResult, BoostFofrResult, BoostFosrResult, BoostingConfig, GamlssResult,
703 StabilityConfig, StabilityResult,
704};