%matplotlib widget
import matplotlib.pyplot as plt
plt.ioff()
# turn of warnings
import warnings
warnings.filterwarnings('ignore')
Ordinary kriging will estimate an appropriate mean of the field, based on the given observations/conditions and the covariance model used.
The resulting system of equations for is given by:
Here, is the directional covariance of the given observations and is a Lagrange multiplier to minimize the kriging error and estimate the mean.
Example¶
Here we use ordinary kriging in 1D (for plotting reasons) with 5 given observations/conditions.
The estimated mean can be accessed by krig.mean
.
import numpy as np
import gstools as gs
# condtions
cond_pos = [0.3, 1.9, 1.1, 3.3, 4.7]
cond_val = [0.47, 0.56, 0.74, 1.47, 1.74]
# resulting grid
gridx = np.linspace(0.0, 15.0, 151)
# spatial random field class
model = gs.Gaussian(dim=1, var=0.5, len_scale=2)
krig = gs.Krige(model, cond_pos=cond_pos, cond_val=cond_val, unbiased=True)
field, var = krig(gridx)
ax = krig.plot()
ax.scatter(cond_pos, cond_val, color="k", zorder=10, label="Conditions")
ax.legend()
Loading...
krig.get_mean()
array(0.39077137)