pub fn experimental_variogram<T: Float>(
coordinates: &ArrayView2<'_, T>,
values: &ArrayView1<'_, T>,
n_lags: usize,
lag_tolerance: Option<T>,
) -> SpatialResult<(Array1<T>, Array1<T>)>Expand description
Compute experimental (empirical) variogram from spatial data
§Arguments
coordinates- Spatial coordinates of observations (n × d array)values- Observed values at each location (n-vector)n_lags- Number of lag distance binslag_tolerance- Tolerance for binning distances (None for automatic)
§Returns
- Tuple of (lag distances, variogram values)
§Examples
use scirs2_core::ndarray::array;
use scirs2_spatial::variogram::experimental_variogram;
let coords = array![[0.0, 0.0], [1.0, 0.0], [0.0, 1.0], [1.0, 1.0]];
let values = array![1.0, 2.0, 1.5, 2.5];
let (lags, gamma) = experimental_variogram(&coords.view(), &values.view(), 10, None)
.expect("Failed to compute variogram");