petal_decomposition/
lib.rs1#[cfg(any(feature = "intel-mkl-static", feature = "intel-mkl-system"))]
5extern crate intel_mkl_src as _src;
6
7#[cfg(any(feature = "netlib-static", feature = "netlib-system"))]
8extern crate netlib_src as _src;
9
10#[cfg(any(feature = "openblas-static", feature = "openblas-system"))]
11extern crate openblas_src as _src;
12
13mod ica;
14mod linalg;
15mod pca;
16
17pub use ica::{FastIca, FastIcaBuilder};
18pub use pca::{Pca, PcaBuilder, RandomizedPca, RandomizedPcaBuilder};
19use thiserror::Error;
20
21#[derive(Debug, Error)]
23pub enum DecompositionError {
24 #[error("invalid matrix: {0}")]
25 InvalidInput(String),
26 #[error("linear algerba operation failed: {0}")]
27 LinalgError(String),
28}