use thiserror::Error;
#[derive(Debug, Error)]
pub enum ManifoldsError {
#[error("perplexity ({perplexity}) must be strictly less than the kNN size ({k})")]
PerplexityTooLarge {
perplexity: f64,
k: usize,
},
#[error("tSNE only supports n_dim = 2. Chosen dim = {n_dim}")]
IncorrectDim {
n_dim: usize,
},
#[error("The faer SVD failed - please verify the data")]
FaerSvdError,
#[error("The faer Eigen decomposition failed - please verify the data")]
FaerEigenError,
}