OrdinaryKrigingInterpolator

Aliases:

  • petres.interpolators.OKInterpolator


class petres.interpolators.OrdinaryKrigingInterpolator[source]

Bases: BasePyKrigeInterpolator

Interpolate scalar values using ordinary kriging in 2D or 3D.

This wrapper selects pykrige.ok.OrdinaryKriging for 2D inputs and pykrige.ok3d.OrdinaryKriging3D for 3D inputs.

Parameters:
  • variogram_model ({"linear", "power", "gaussian", "spherical", "exponential", "hole-effect", "custom"}, default="linear") – Variogram model name forwarded to the selected PyKrige class.

  • variogram_parameters (dict[str, Any] or Sequence[float] or None, default=None) – Variogram parameters. If None, PyKrige infers them.

  • variogram_function (callable or None, default=None) – Custom variogram function used only for variogram_model="custom".

  • nlags (int, default=6) – Number of lag bins for variogram fitting.

  • weight (bool, default=False) – Whether semivariances are weighted in variogram fitting.

  • verbose (bool, default=False) – Whether PyKrige emits logs.

  • enable_plotting (bool, default=False) – Whether PyKrige plots variogram fits.

  • exact_values (bool, default=True) – Whether interpolation reproduces training values exactly.

  • pseudo_inv (bool, default=False) – Whether to use pseudo-inverse for solving the kriging system.

  • pseudo_inv_type ({"pinv", "pinvh"}, default="pinv") – Pseudo-inverse implementation name.

  • backend ({"vectorized", "loop", "C"}, default="vectorized") – Execution backend used by PyKrige execute.

  • anisotropy_scaling (float or tuple[float, float], default=1.0) – 2D uses a single scalar. 3D accepts one scalar or (scaling_y, scaling_z).

  • anisotropy_angle (float or tuple[float, float, float], default=0.0) – 2D uses a single scalar. 3D accepts one scalar or (angle_x, angle_y, angle_z).

  • coordinates_type ({"euclidean", "geographic"}, default="euclidean") – Coordinate interpretation for 2D ordinary kriging.

Initialize an ordinary kriging interpolator.

Raises:

ValueError – If coordinates_type is invalid.

__init__(variogram_model='linear', variogram_parameters=None, variogram_function=None, nlags=6, weight=False, verbose=False, enable_plotting=False, exact_values=True, pseudo_inv=False, pseudo_inv_type='pinv', backend='vectorized', anisotropy_scaling=1.0, anisotropy_angle=0.0, coordinates_type='euclidean')[source]

Initialize an ordinary kriging interpolator.

Raises:

ValueError – If coordinates_type is invalid.