Probilistic covariance/semivariogram indeference

This chapter documents how to use SIPPI to infer properties of a covariance/semivariogram model from noisy data (both data of point support and linear average data can be considered)

To perform probabilistic inference of covariance model parameters one must

  1. define the data and associated uncertainty (if any),

  2. define a prior model of the covariance model parameters that one wish to infer information about, and

  3. define the linear forward operator (only applicable if data are not of point support).

The methodology is published in [HCM15].

Specification of covariance model parameters

The following covariance model properties can be defined, that allow defining an isotropic or an-isotropic covariance model in 1D, 2D, or 3D:

type                % covariance model type (1->Sph, 2->Exp, 3->Gau)
m0                  % the mean
sill                % the variance
nugget_fraction     % percentage of the variance assigned to a Nugget
range_1             % range in primary direction
range_2             % range in secondary direction
range_3             % range in tertiary direction
ang_1               % first angle of rotation 
ang_2               % second angle of rotation 
ang_3               % third angle of rotation 

Inference of a full 1D covariance model requires defining [type,sill,nugget_fraction,range_1].

Inference of a full 2D covariance model requires defining [type,sill,nugget_fraction,range_1,range_2,ang_1].

Inference of a full 3D covariance model requires defining [type,sill,nugget_fraction,range_1,range_2,range_3,ang_1,ang_2,ang_3].

In order to define which of the covariance model parameters to infer information about, simply define a prior structure for any of these parameters, as 1D type SIPPI prior model.

For example, to simple infer information about the range in the primary direction, with a priori distribution of the range as U[0,3] use

forward.Cm='1 Sph(10)';

im=1;
prior{im}.type='uniform';
prior{im}.name='range_1'; % the 'name' field is used to identify the covariance model parameter!
prior{im}.min=0;
prior{im}.max=3;

In this case an range_1 refers to the isotropic range in the covariance model defined in the forward.Cm field

If, instead

forward.Cm='1 Sph(10,90,.25)';

then range_1 would refer to the range in the direction of maximum continuity (90 degrees from North). range_2 will in this case be fixed.

As described above, the covariance model type can be considered as a unknown parameter, that can be inferred during inversion. This may pose some problems as discussed in [HCM15].

To infer the covariance model type, a prior 1D structure should be defined as e.g.

im=1;
prior{im}.type='uniform';
prior{im}.name='type'; % 
prior{im}.min=0;
prior{im}.max=3;

Any value between 0 and 1 defines a spherical type covariance. Any value between 1 and 2 defines an exponential type covariance. Any value between 3 and 3 defines a Gaussian type covariance.

Thus no prior should be defined for the 'type' prior that can provide values below 0, and above 3. In the case above, all three covariance model types has the sane a priori probability.

A detailed description of how to parameterize the inverse covariance model parameter problem, can be found in sippi_forward_covariance_inference.