Expand description
Geostatistical kriging library with ordinary and binomial kriging, variogram fitting, and optional WASM and GPU support.
This crate provides spatial interpolation via ordinary kriging and prevalence-surface
estimation via binomial kriging. It includes empirical variogram computation, parametric
model fitting, and Haversine-based geographic coordinates. Build with wasm for browser
bindings or gpu for GPU-accelerated batch prediction.
§Quick example
use kriging_rs::{GeoCoord, GeoDataset, OrdinaryKrigingModel, VariogramModel, VariogramType};
let coords = vec![
GeoCoord::try_new(0.0, 0.0)?,
GeoCoord::try_new(0.0, 1.0)?,
GeoCoord::try_new(1.0, 0.0)?,
];
let values = vec![1.0, 2.0, 1.5];
let dataset = GeoDataset::new(coords, values)?;
let variogram = VariogramModel::new(0.01, 2.0, 300.0, VariogramType::Exponential)?;
let model = OrdinaryKrigingModel::new(dataset, variogram)?;
let prediction = model.predict(GeoCoord::try_new(0.3, 0.3)?)?;§Module organization
kriging— Ordinary kriging (OrdinaryKrigingModel,Prediction) and binomial kriging (BinomialKrigingModel,BinomialObservation, etc.) for spatial interpolation and prevalence surfaces.variogram— Empirical variogram (compute_empirical_variogram), fitting (fit_variogram), and parametric models (VariogramModel,VariogramType).distance—GeoCoordand Haversine distance.geo_dataset— Coordinate–value datasets (GeoDataset).error—KrigingError.wasm(optional,wasmfeature) — Browser-facing WASM bindings.gpu(optional,gpufeature) — GPU backend and batch covariance helpers.
§Features
Default build has no WASM or GPU. Enable with:
wasm— WASM bindings and browser support.gpu— WebGPU-based batch prediction (native and web).gpu-blocking— Blocking GPU helpers on native (includesgpu).
Re-exports§
pub use utils::Probability;pub use utils::clamp_probability;pub use utils::logistic;pub use utils::logit;pub use utils::logit_clamped;pub use distance::GeoCoord;pub use error::KrigingError;pub use geo_dataset::GeoDataset;pub use kriging::binomial::BinomialKrigingModel;pub use kriging::binomial::BinomialObservation;pub use kriging::binomial::BinomialPrediction;pub use kriging::binomial::BinomialPrior;pub use kriging::ordinary::OrdinaryKrigingModel;pub use kriging::ordinary::Prediction;pub use variogram::fitting::FitResult;pub use variogram::fitting::fit_variogram;pub use variogram::models::VariogramModel;pub use variogram::models::VariogramType;pub use variogram::PositiveReal;pub use variogram::VariogramConfig;pub use variogram::compute_empirical_variogram;
Modules§
- distance
- error
- geo_
dataset - Coordinate–value datasets for kriging (pairs of locations and observed values).
- kriging
- Kriging models for spatial interpolation and prevalence surfaces.
- matrix
- utils
- variogram
- Variogram computation, fitting, and parametric models.
Type Aliases§
- Real
- Floating-point type used for coordinates, values, and variogram parameters; currently
f32.