GaussianFields: Methods for Gaussian Random Fields

Description Implemented models Computing demand for simulations Computing demand for interpolation Computing demand for conditional simulation References See Also Examples

Description

Here, all the methods (models) for simulating Gaussian random fields are listed.

Implemented models

RPcirculant simulation by circulant embedding
RPcutoff simulation by a variant of circulant embedding
RPcoins simulation by random coin / shot noise
RPdirect through the square root of the covariance matrix
RPgauss generic model that chooses automatically among the specific methods
RPhyperplane simulation by hyperplane tessellation
RPintrinsic simulation by a variant of circulant embedding
RPnugget simulation of (anisotropic) nugget effects
RPsequential sequential method
RPspecific model specific methods (very advanced)
RPspectral spectral method
RPtbm turning bands

Computing demand for simulations

Assume at n locations in d dimensions a v-variate field has to be simulated. Let

f(n, d) = 2^d * n * log(n)

The following table gives in particular the time and memory needed for the specific simulation method.

grid v d time memory comments
RPcirculant yes any <=13 O(v^3f(n, d)) O(v^2f(n, d))
no any <=13 O(v^3 f(k, d)) O(v^2f(k, d)) k ~ approx_step^{-d}
RPcutoff see RPcirculant above
RPcoins yes 1 <=4 O(k * n) O(n) k ~ (lattice spacing)^{-d}
no 1 <=4 O(k * n) O(n) k depends on the geometry
RPdirect any any any O(v^2 * n^2) O(v^2 * n^2) effort to investigate the covariance matrix, if matrix_methods is not specified (default)
O(v * n) O(v * n) covariance matrix is diagonal
see spam O(z + v * n) covariance matrix is sparse matrix with z non-zeros
O(v^3 * n^3) O(v^2*n^2) arbitrary covariance matrix (preparation)
O(v^2*n^2) O(v^2*n^2) arbitrary covariance matrix (simulation)
RPgauss any any any O(1)..O(v^3*n^3) O(1)..O(n^2) only the selection process; O(1) if first method tried is successful
RPhyperplane any 1 2 O(n / s^d) O(n / s^d) s = scale
RPintrinsic see RPcirculant above
RPnugget any any any O(v n) O(v n)
RPsequential any 1 any O(S^3 * b^3) O(S^2*b^2) n = S * T; S and T the number of spatial and temporal locations, respectively; b = back_steps (preparation)
O(n * S * b^2) O(n) (simulation)
RPspectral any 1 <=2 O(C(d) * n) O(n) C(d) : large constant increasing in d
RPtbm any 1 <=4 O(C(d) * (n + L)) O(n + L) C(d) : large constant increasing in d; L is the effort needed to simulate on a line (or plane)
RPspecific only the specific part
* * RMplus any any any O(v n) O(v n)
* * RMS any any any O(1) O(v n)
* * RMmult any any any O(v n) O(v n)

Computing demand for interpolation

Assume v-variate data are given at n locations in d dimensions. To interpolate at k locations RandomFields needs

grid v d time memory comments
any any any O(v^2 * n^2) O(v^2 * n^2) effort to investigate the covariance matrix, if matrix_methods is not specified (default)
O(v^2 * n k) O(v * (n + k)) covariance matrix is diagonal
see spam+ O(v^2nk) O(z + v * (n + k)) covariance matrix is sparse matrix with z non-zeros
O(v^3*n^3 + v^2*n*k) O(v^2*n^2 + v*k) arbitrary covariance matrix

Computing demand for conditional simulation

Assume v-variate data are given at n locations x_1,...,x_n in d dimensions. To conditionally simulate at k locations y_1,...,y_k, the computing demand equals the sum of the demand for interpolating and the demand for simulating on the k+n locations. (Grid algorithms for simulating will apply if the k locations y_1,...,y_k are defined by a grid and the n locations x_1,...,x_n are a subset of y_1,...,y_k, a situation typical in image analysis.)

References

See Also

RP, Other models, RMmodel, RFgetMethodNames, RFsimulateAdvanced.

Examples

1
2
3
4
5
6
7
RFoptions(seed=0) ## *ANY* simulation will have the random seed 0; set
##                   RFoptions(seed=NA) to make them all random again

set.seed(1)
x <- runif(90, 0, 500)
z <- RFsimulate(RMspheric(), x)
z <- RFsimulate(RMspheric(), x, max_variab=10000)

Example output

Loading required package: sp
Loading required package: RandomFieldsUtils

Attaching package: 'RandomFields'

The following object is masked from 'package:RandomFieldsUtils':

    RFoptions

The following objects are masked from 'package:base':

    abs, acosh, asin, asinh, atan, atan2, atanh, cos, cosh, exp, expm1,
    floor, gamma, lgamma, log, log1p, log2, logb, max, min, round, sin,
    sinh, sqrt, tan, tanh, trunc

NOTE: simulation is performed with fixed random seed 0.
Set 'RFoptions(seed=NA)' to make the seed arbitrary.
New output format of RFsimulate: S4 object of class 'RFsp';
for a bare, but faster array format use 'RFoptions(spConform=FALSE)'.
NOTE: simulation is performed with fixed random seed 0.
Set 'RFoptions(seed=NA)' to make the seed arbitrary.

RandomFields documentation built on Jan. 19, 2022, 1:06 a.m.