Skip to content

Experimental Variography Analysis🍋

variogram(object, attribute, region, geographic_azimuth, dip, pitch, lags, tol, atol=45.0, slice_width=None, slice_height=None, weights_attribute=None, chunk_size=None, backend=GeostatsBackend.PYTHON) 🍋

Given boundary input arguments (lag and its associated tolerance, angular reference and its associated tolerance), compute the variogram for a set of points (value associated with cartesian coordinates for a specific point)

Parameters:

Name Type Description Default
object GeoRefObject

Geo-ref Object.

required
attribute str

Object attribute to compute variography on.

required
region Optional[str]

Object region or condition to select data from.

required
geographic_azimuth float

Azimuth angle, in degrees, comprised between 0 and 360.

required
dip float

Dip angle, in degrees, comprised between 0 and 90.

required
pitch float

Pitch angle, in degrees, comprised between -90 and 90.

required
lags Vector

List of lags (in the same unit as the object, e.g. meters).

required
tol Union[float, Vector]

Lag tolerance (in the same unit as the object, e.g. meters). Tolerance can be a Vector of tolerances or a single value used for each lag.

required
atol float

Angular tolerance in degrees.

45.0
slice_width Optional[float]

Slicing width (in the same unit as the object, e.g. meters).

None
slice_height Optional[float]

Slicing height (in the same unit as the object, e.g. meters).

None
weights_attribute Optional[str]

Weights attribute for ponderation, generally coming from declustering.

None
chunk_size Optional[int]

The sought maximum number of points per distance matrix chunks. 1 Mb of RAM allows about 130 000 points in the computation matrix, corresponding to roughly 360 data points.

None
backend GeostatsBackend

Computational backend used, for large number of lags, setting to JULIA will lead to faster results.

GeostatsBackend.PYTHON

Returns:

Type Description
pd.DataFrame

A variogram dataframe, Isatis compliant output (rank, number of pairs, input lag, average distance, variogram value and indices)

generate_lags(lag, plag, nlags) 🍋

Generate lags array to be used with variogram

Parameters:

Name Type Description Default
lag float

Calculation lag

required
plag float

Tolerance (percentage of lag)

required
nlags int

Length of array to be generated

required

Returns:

Type Description
Tuple[np.ndarray, float]

An array of lags and the tolerance.

generate_lags_from_interval(lag_intervals) 🍋

Generate lags array to be used with variogram.

Parameters:

Name Type Description Default
lag_intervals Vector

Boundary of each lag interval.

required

Raises:

Type Description
ValueError

Intervals are not defined by 2 values (min and max).

Returns:

Type Description
Tuple[np.ndarray, np.ndarray]

An array of lags and the tolerance.