# dist.Multivariate.t.Precision.Cholesky: Multivariate t Distribution: Precision-Cholesky... In LaplacesDemon: Complete Environment for Bayesian Inference

## Description

These functions provide the density and random number generation for the multivariate t distribution, otherwise called the multivariate Student distribution. These functions use the precision and Cholesky parameterization.

## Usage

 ```1 2``` ```dmvtpc(x, mu, U, nu=Inf, log=FALSE) rmvtpc(n=1, mu, U, nu=Inf) ```

## 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 precision matrix Omega. `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 (equal to the expected value when `df > 1`, otherwise represented as nu > 1). It must be of length k, as defined above. `U` This is a k x k upper-triangular of the precision matrix that is Cholesky fator U of precision matrix Omega. `nu` This is the degrees of freedom nu, which must be positive. `log` Logical. If `log=TRUE`, then the logarithm of the density is returned.

## Details

• Application: Continuous Multivariate

• Density:

p(theta) = (Gamma((nu+k)/2) / (Gamma(nu/2)*nu^(k/2)*pi^(k/2))) * |Omega|^(1/2) * (1 + (1/nu) (theta-mu)^T Omega (theta-mu))^(-(nu+k)/2)

• Inventor: Unknown (to me, anyway)

• Notation 1: theta ~ t[k](mu, Omega^(-1), nu)

• Notation 2: p(theta) = t[k](theta | mu, Omega^(-1), ν)

• Parameter 1: location vector mu

• Parameter 2: positive-definite k x k precision matrix Omega

• Parameter 3: degrees of freedom nu > 0

• Mean: E(theta) = mu, for nu > 1, otherwise undefined

• Variance: var(theta) = (nu / (nu - 2))*Omega^(-1), for nu> 2

• Mode: mode(theta) = mu

The multivariate t distribution, also called the multivariate Student or multivariate Student t distribution, is a multidimensional extension of the one-dimensional or univariate Student t distribution. A random vector is considered to be multivariate t-distributed if every linear combination of its components has a univariate Student t-distribution.

It is usually parameterized with mean and a covariance matrix, or in Bayesian inference, with mean and a precision matrix, where the precision matrix is the matrix inverse of the covariance matrix. These functions provide the precision parameterization for convenience and familiarity. It is easier to calculate a multivariate t density with the precision parameterization, because a matrix inversion can be avoided. The precision matrix is replaced with an upper-triangular k x k matrix that is Cholesky factor U, as per the `chol` function for Cholesky decomposition.

This distribution has a mean parameter vector mu of length k, and a k x k precision matrix Omega, which must be positive-definite. When degrees of freedom nu=1, this is the multivariate Cauchy distribution.

In practice, 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 `dmvtp`, `dmvtpc` must additionally matrix-multiply the Cholesky back to the precision matrix, but it does not have to check for or correct the precision matrix to positive-definiteness, which overall is slower. Compared with `rmvtp`, `rmvtpc` is faster because the Cholesky decomposition has already been performed.

## Value

`dmvtpc` gives the density and `rmvtpc` generates random deviates.

## Author(s)

Statisticat, LLC. software@bayesian-inference.com

`chol`, `dwishartc`, `dmvc`, `dmvcp`, `dmvtc`, `dst`, `dstp`, and `dt`.
 ``` 1 2 3 4 5 6 7 8 9 10 11``` ```library(LaplacesDemon) x <- seq(-2,4,length=21) y <- 2*x+10 z <- x+cos(y) mu <- c(1,12,2) Omega <- matrix(c(1,2,0,2,5,0.5,0,0.5,3), 3, 3) U <- chol(Omega) nu <- 4 f <- dmvtpc(cbind(x,y,z), mu, U, nu) X <- rmvtpc(1000, c(0,1,2), U, 5) joint.density.plot(X[,1], X[,2], color=TRUE) ```