Learn R Programming

SpatialExtremes (version 2.1-0)

rmaxlin: Simulation from max-linear models

Description

This function generates realisations from a max-linear model.

Usage

rmaxlin(n, coord, cov.mod = "gauss", dsgn.mat, grid = FALSE, p = 500,
...)

Arguments

n

Integer. The number of observations.

coord

A vector or matrix that gives the coordinates of each location. Each row corresponds to one location - if any. May be missing if dsgn.mat is specified.

cov.mod

A character string that specifies the max-linear model. Currently only the discretized Smith model is implemented, i.e., cov.mod = "gauss".

dsgn.mat

The design matrix of the max-linear model --- see Section Details. May be missing if coord and cov.mod are given.

grid

Logical. Does coord defines a grid?

p

An integer corresponding to the number of unit Frechet random variable used in the max-linear model --- see Section Details.

The parameters of the max-stable model --- see Section Details.

Value

A matrix containing observations from the max-linear model. Each column represents one stations. If grid = TRUE, the function returns an array of dimension nrow(coord) x nrow(coord) x n.

Details

A max-linear process \(\{Y(x)\}\) is defined by $$Y(x) = \max_{j=1, \ldots, p} f_j(x) Z_j, \qquad x \in R^d,$$ where \(p\) is a positive integer, \(f_j\) are non negative functions and \(Z_j\) are independent unit Frechet random variables. Most often, the max-linear process will be generated at locations \(x_1, \ldots, x_k \in R^d\) and an alternative but equivalent formulation is $$\bf{Y} = A \odot \bf{Z},$$ where \(\mathbf{Y} = \{Y(x_1), \ldots, Y(x_k)\}\), \(\mathbf{Z} = (Z_1, \ldots, Z_p)\), \(\odot\) is the max-linear operator, see the first equation, and \(A\) is the design matrix of the max-linear model. The design matrix \(A\) is a \(k \times p\) matrix with non negative entries and whose \(i\)-th row is \(\{f_1(x_i), \ldots, f_p(x_i)\}\).

Currently only the discretized Smith model is implemented for which \(f_j(x) = c(p) \varphi(x - u_j ; \Sigma)\) where \(\varphi(\cdot; \Sigma)\) is the zero mean (multivariate) normal density with covariance matrix \(\Sigma\), \(u_j\) is a sequence of deterministic points appropriately chosen and \(c(p)\) is a constant ensuring unit Frechet margins. Hence if this max-linear model is used, users must specify var for one dimensional processes, and cov11, cov12, cov22 for two dimensional processes.

References

Wang, Y. and Stoev, S. A. (2011) Conditional Sampling for Max-Stable Random Fields. Advances in Applied Probability.

See Also

condrmaxlin, rmaxstab

Examples

Run this code
# NOT RUN {
## A one dimensional simulation from a design matrix. This design matrix
## corresponds to a max-moving average process MMA(alpha)
n.site <- 250
x <- seq(-10, 10, length = n.site)

## Build the design matrix
alpha <- 0.8
dsgn.mat <- matrix(0, n.site, n.site)
dsgn.mat[1,1] <- 1

for (i in 2:n.site){
dsgn.mat[i,1:(i-1)] <- alpha * dsgn.mat[i-1,1:(i-1)]
dsgn.mat[i,i] <- 1 - alpha
}

data <- rmaxlin(3, dsgn.mat = dsgn.mat)
matplot(x, t(log(data)), pch = 1, type = "l", lty = 1, ylab =
expression(log(Y(x))))

## One realisation from the discretized Smith model (2d sim)
x <- y <- seq(-10, 10, length = 100)
data <- rmaxlin(1, cbind(x, y), cov11 = 3, cov12 = 1, cov22 = 4, grid =
TRUE, p = 2000)
image(x, y, log(data), col = heat.colors(64))
# }

Run the code above in your browser using DataLab