# dmvt: Fast computation of the multivariate Student's t density. In mvnfast: Fast Multivariate Normal and Student's t Methods

## Description

Fast computation of the multivariate Student's t density.

## Usage

 `1` ```dmvt(X, mu, sigma, df, log = FALSE, ncores = 1, isChol = FALSE) ```

## Arguments

 `X` matrix n by d where each row is a d dimensional random vector. Alternatively `X` can be a d-dimensional vector. `mu` vector of length d, representing the mean of the distribution. `sigma` scale matrix (d x d). Alternatively it can be the cholesky decomposition of the scale matrix. In that case isChol should be set to TRUE. Notice that ff the degrees of freedom (the argument `df`) is larger than 2, the `Cov(X)=sigma*df/(df-2)`. `df` a positive scalar representing the degrees of freedom. `log` boolean set to true the logarithm of the pdf is required. `ncores` Number of cores used. The parallelization will take place only if OpenMP is supported. `isChol` boolean set to true is `sigma` is the cholesky decomposition of the covariance matrix.

## Details

There are many candidates for the multivariate generalization of Student's t-distribution, here we use the parametrization described here https://en.wikipedia.org/wiki/Multivariate_t-distribution. NB: at the moment the parallelization does not work properly on Solaris OS when `ncores>1`. Hence, `dmvt()` checks if the OS is Solaris and, if this the case, it imposes `ncores==1`.

## Value

A vector of length n where the i-the entry contains the pdf of the i-th random vector.

## Author(s)

Matteo Fasiolo <[email protected]>

## Examples

 ``` 1 2 3 4 5 6 7 8 9 10 11``` ```N <- 100 d <- 5 mu <- 1:d df <- 4 X <- t(t(matrix(rnorm(N*d), N, d)) + mu) tmp <- matrix(rnorm(d^2), d, d) mcov <- tcrossprod(tmp, tmp) + diag(0.5, d) myChol <- chol(mcov) head(dmvt(X, mu, mcov, df = df), 10) head(dmvt(X, mu, myChol, df = df, isChol = TRUE), 10) ```

mvnfast documentation built on Feb. 1, 2018, 1:04 a.m.