Skip to main content

kriging_rs/
error.rs

1use crate::Real;
2use thiserror::Error;
3
4/// Errors returned by kriging, variogram, and dataset operations in this crate.
5#[derive(Error, Debug)]
6pub enum KrigingError {
7    #[error("Insufficient data: need at least {0} observations")]
8    InsufficientData(usize),
9    #[error("Dimension mismatch: {0}")]
10    DimensionMismatch(String),
11    #[error("Invalid coordinate: lat={lat}, lon={lon}")]
12    InvalidCoordinate { lat: Real, lon: Real },
13    #[error("Matrix operation failed: {0}")]
14    MatrixError(String),
15    #[error("Variogram fitting failed: {0}")]
16    FittingError(String),
17    #[error("Invalid binomial data: {0}")]
18    InvalidBinomialData(String),
19    #[error("Backend unavailable: {0}")]
20    BackendUnavailable(String),
21}