| RFempiricalcovariance {RandomFields} | R Documentation |
Calculates the empirical (cross-)covariance function. The empirical (cross-)covariance function of two random fields X and Y is given by
γ(r):=1/N(r) ∑_{(t_{i},t_{j})|t_{i,j}=r} (X(t_{i})Y(t_{j})) - m_{X} m_{Y}
where t_{i,j}:=t_{i}-t_{j}, N(r) denotes the number of pairs of data points with distancevector t_{i,j}=r and where m_{X} := \frac{1}{N(r)} ∑_{(t_{i},t_{j})|t_{i,j}=r} X_{t_{i}} and m_{Y} := 1/N(r) ∑_{(t_{i},t_{j})|t_{i,j}=r} Y_{t_{i}} denotes the mean of data points with distancevector t_{i,j}=r.
RFempiricalcovariance(x, y = NULL, z = NULL, T = NULL, data, grid, bin=NULL, phi=NULL, theta=NULL, deltaT=NULL, distances, vdim, ...)
x |
matrix of coordinates, or vector of x coordinates, or object
of class |
y |
optional vector of y coordinates, ignored if |
z |
optional vector of z coordinates, ignored if |
T |
optional vector of time coordinates,
|
grid |
logical; determines whether the vectors |
data |
matrix, data.frame or object of class
|
bin |
a vector giving the borders of the bins; If not specified an array describing the empirical (pseudo-)(cross-) covariance function in every direction is returned. |
phi |
an integer defining the number of sectors one half of the X/Y plane shall be devided into. If not specified, either an array is returned (if bin missing) or isotropy is assumed (if bin specified) |
theta |
an integer defining the number of sectors one half of the X/Z plane shall be devided into. Use only for dimension d=3 if phi is already specified |
deltaT |
vector of length 2, specifying the temporal bins.
The internal bin vector becomes |
distances |
object of class |
vdim |
the number of variables of a multivariate data set.
If not given and NOTE: still the argument |
... |
further options and control arguments for the simulation
that are passed to and processed by |
RFempiricalcovariance computes the empirical
cross-covariance function for given (multivariate) spatial data.
The spatial coordinates x, y, z
should be vectors. For random fields of
spatial dimension d > 3 write all vectors as colums of matrix x. In
this case do neither use y, nor z and write the colums in
gridtriple notation.
If the data is spatially located on a grid a fast algorithm based on
the fast Fourier transformed (fft) will be used.
As advanced option the calculation method can also be changed for grid
data (see RFoptions.)
It is also possible to use RFempiricalcovariance to calulate
the pseudocovariance function (see RFoptions).
RFempiricalcovariance returns objects of class
RFempVariog.
Jonas Auel, jauel@mail.uni-mannheim.de Sebastian Engelke, sebastian.engelke@unil.ch Johannes Martini, jmartin2@uni-goettingen.de Martin Schlather, schlather@math.uni-mannheim.de http://ms.math.uni-mannheim.de/de/publications/software
Gelfand, A. E., Diggle, P., Fuentes, M. and Guttorp, P. (eds.) (2010) Handbook of Spatial Statistics. Boca Raton: Chapman & Hall/CRL.
Stein, M. L. (1999) Interpolation of Spatial Data. New York: Springer-Verlag
RFempiricalvariogram
RFempiricalmadogram
RMstable,
RMmodel,
RFsimulate,
RFfit.
RFoptions(seed=0) ## *ANY* simulation will have the random seed 0; set
## RFoptions(seed=NA) to make them all random again
n <- 1 ## use n <- 2 for better results
## isotropic model
model <- RMexp()
x <- seq(0, 10, 0.02)
z <- RFsimulate(model, x=x, n=n)
emp.vario <- RFempiricalcovariance(data=z)
plot(emp.vario, model=model)
## anisotropic model
model <- RMexp(Aniso=cbind(c(2,1), c(1,1)))
x <- seq(0, 10, 0.05)
z <- RFsimulate(model, x=x, y=x, n=n)
emp.vario <- RFempiricalcovariance(data=z, phi=4)
plot(emp.vario, model=model)
## space-time model
model <- RMnsst(phi=RMexp(), psi=RMfbm(alpha=1), delta=2)
x <- seq(0, 10, 0.05)
T <- c(0, 0.1, 100)
z <- RFsimulate(x=x, T=T, model=model, n=n)
emp.vario <- RFempiricalcovariance(data=z, deltaT=c(10, 1))
plot(emp.vario, model=model, nmax.T=3)
## multivariate model
model <- RMbiwm(nudiag=c(1, 2), nured=1, rhored=1, cdiag=c(1, 5),
s=c(1, 1, 2))
x <- seq(0, 20, 0.1)
z <- RFsimulate(model, x=x, y=x, n=n)
emp.vario <- RFempiricalcovariance(data=z)
plot(emp.vario, model=model)
## multivariate and anisotropic model
model <- RMbiwm(A=matrix(c(1,1,1,2), nc=2),
nudiag=c(0.5,2), s=c(3, 1, 2), c=c(1, 0, 1))
x <- seq(0, 20, 0.1)
data <- RFsimulate(model, x, x, n=n)
ev <- RFempiricalcovariance(data=data, phi=4)
plot(ev, model=model, boundaries=FALSE)