Learn R Programming

LaplacesDemon (version 16.1.6)

dist.Multivariate.Cauchy.Cholesky: Multivariate Cauchy Distribution: Cholesky Parameterization

Description

These functions provide the density and random number generation for the multivariate Cauchy distribution, given the Cholesky parameterization.

Usage

dmvcc(x, mu, U, log=FALSE)
rmvcc(n=1, mu, U)

Arguments

x

This is either a vector of length \(k\) or a matrix with a number of columns, \(k\), equal to the number of columns in scale matrix \(\textbf{S}\).

n

This is the number of random draws.

mu

This is a numeric vector representing the location parameter, \(\mu\) (the mean vector), of the multivariate distribution It must be of length \(k\), as defined above.

U

This is the \(k \times k\) upper-triangular matrix that is Cholesky factor \(\textbf{U}\) of the positive-definite scale matrix \(\textbf{S}\).

log

Logical. If log=TRUE, then the logarithm of the density is returned.

Value

dmvcc gives the density and rmvcc generates random deviates.

Details

  • Application: Continuous Multivariate

  • Density: $$p(\theta) = \frac{\Gamma[(1+k)/2]}{\Gamma(1/2)1^{k/2}\pi^{k/2}|\Sigma|^{1/2}[1+(\theta-\mu)^{\mathrm{T}}\Sigma^{-1}(\theta-\mu)]^{(1+k)/2}}$$

  • Inventor: Unknown (to me, anyway)

  • Notation 1: \(\theta \sim \mathcal{MC}_k(\mu, \Sigma)\)

  • Notation 2: \(p(\theta) = \mathcal{MC}_k(\theta | \mu, \Sigma)\)

  • Parameter 1: location vector \(\mu\)

  • Parameter 2: positive-definite \(k \times k\) scale matrix \(\Sigma\)

  • Mean: \(E(\theta) = \mu\)

  • Variance: \(var(\theta) = \)

  • Mode: \(mode(\theta) = \mu\)

The multivariate Cauchy distribution is a multidimensional extension of the one-dimensional or univariate Cauchy distribution. The multivariate Cauchy distribution is equivalent to a multivariate t distribution with 1 degree of freedom. A random vector is considered to be multivariate Cauchy-distributed if every linear combination of its components has a univariate Cauchy distribution.

The Cauchy distribution is known as a pathological distribution because its mean and variance are undefined, and it does not satisfy the central limit theorem.

In practice, \(\textbf{U}\) is fully unconstrained for proposals when its diagonal is log-transformed. The diagonal is exponentiated after a proposal and before other calculations. Overall, the Cholesky parameterization is faster than the traditional parameterization. Compared with dmvc, dmvcc must additionally matrix-multiply the Cholesky back to the scake matrix, but it does not have to check for or correct the scale matrix to positive-definiteness, which overall is slower. Compared with rmvc, rmvcc is faster because the Cholesky decomposition has already been performed.

See Also

chol, dcauchy, dinvwishartc, dmvcpc, dmvtc, and dmvtpc.

Examples

Run this code
# NOT RUN {
library(LaplacesDemon)
x <- seq(-2,4,length=21)
y <- 2*x+10
z <- x+cos(y) 
mu <- c(1,12,2)
Sigma <- matrix(c(1,2,0,2,5,0.5,0,0.5,3), 3, 3)
U <- chol(Sigma)
f <- dmvcc(cbind(x,y,z), mu, U)

X <- rmvcc(1000, rep(0,2), diag(2))
X <- X[rowSums((X >= quantile(X, probs=0.025)) &
     (X <= quantile(X, probs=0.975)))==2,]
joint.density.plot(X[,1], X[,2], color=TRUE)
# }

Run the code above in your browser using DataLab