| dist.Multivariate.Cauchy.Cholesky {LaplacesDemon} | R Documentation |
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 |
n |
This is the number of random draws. |
mu |
This is a numeric vector representing the location parameter,
|
U |
This is the |
log |
Logical. If |
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
\muParameter 2: positive-definite
k \times kscale matrix\SigmaMean:
E(\theta) = \muVariance:
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.
Value
dmvcc gives the density and
rmvcc generates random deviates.
Author(s)
Statisticat, LLC. software@bayesian-inference.com
See Also
chol,
dcauchy,
dinvwishartc,
dmvcpc,
dmvtc, and
dmvtpc.
Examples
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)