rmstable_tree: Sampling of a multivariate max-stable distribution on a tree

View source: R/simulation_functions.R

rmstable_treeR Documentation

Sampling of a multivariate max-stable distribution on a tree

Description

Simulates exact samples of a multivariate max-stable distribution that is an extremal graphical model on a tree as defined in \insertCiteeng2019;textualgraphicalExtremes.

Usage

rmstable_tree(n, model = c("HR", "logistic", "dirichlet")[1], tree, par)

Arguments

n

Number of simulations.

model

The parametric model type; one of:

  • HR (default),

  • logistic,

  • dirichlet.

tree

Graph object from igraph package. This object must be a tree, i.e., an undirected graph that is connected and has no cycles.

par

Respective parameter for the given model, that is,

  • \eGamma

    , numeric \dxd variogram matrix, where only the entries corresponding to the edges of the tree are used, if model = HR. Alternatively, can be a vector of length d-1 containing the entries of the variogram corresponding to the edges of the given tree.

  • \theta \in (0, 1), vector of length d-1 containing the logistic parameters corresponding to the edges of the given tree, if model = logistic.

  • a matrix of size (d - 1) \times 2, where the rows contain the parameter vectors \alpha of size 2 with positive entries for each of the edges in tree, if model = dirichlet.

Details

The simulation follows a combination of the extremal function algorithm in \insertCitedom2016;textualgraphicalExtremes and the theory in \insertCiteeng2019;textualgraphicalExtremes to sample from a single extremal function. For details on the parameters of the Huesler-Reiss, logistic and negative logistic distributions see \insertCitedom2016;textualgraphicalExtremes, and for the Dirichlet distribution see \insertCitecoles1991modelling;textualgraphicalExtremes.

Value

Numeric \nxd matrix of simulations of the multivariate max-stable distribution.

References

\insertAllCited

See Also

Other sampling functions: rmpareto_tree(), rmpareto(), rmstable()

Examples

## A 4-dimensional HR tree model

my_tree <- igraph::graph_from_adjacency_matrix(rbind(
  c(0, 1, 0, 0),
  c(1, 0, 1, 1),
  c(0, 1, 0, 0),
  c(0, 1, 0, 0)
),
mode = "undirected"
)
n <- 10
Gamma_vec <- c(.5, 1.4, .8)
rmstable_tree(n, "HR", tree = my_tree, par = Gamma_vec)

## A 4-dimensional Dirichlet model with asymmetric edge distributions

alpha <- cbind(c(.2, 1, .5), c(1.5, .6, .8))
rmstable_tree(n, model = "dirichlet", tree = my_tree, par = alpha)

graphicalExtremes documentation built on Nov. 14, 2023, 1:07 a.m.