# rmvn: Generate from or evaluate multivariate normal or t densities. In mgcv: Mixed GAM Computation Vehicle with Automatic Smoothness Estimation

 rmvn R Documentation

## Generate from or evaluate multivariate normal or t densities.

### Description

Generates multivariate normal or t random deviates, and evaluates the corresponding log densities.

### Usage

```rmvn(n,mu,V)
r.mvt(n,mu,V,df)
dmvn(x,mu,V,R=NULL)
d.mvt(x,mu,V,df,R=NULL)
```

### Arguments

 `n` number of simulated vectors required. `mu` the mean of the vectors: either a single vector of length `p=ncol(V)` or an `n` by `p` matrix. `V` A positive semi definite covariance matrix. `df` The degrees of freedom for a t distribution. `x` A vector or matrix to evaluate the log density of. `R` An optional Cholesky factor of V (not pivoted).

### Details

Uses a ‘square root’ of `V` to transform standard normal deviates to multivariate normal with the correct covariance matrix.

### Value

An `n` row matrix, with each row being a draw from a multivariate normal or t density with covariance matrix `V` and mean vector `mu`. Alternatively each row may have a different mean vector if `mu` is a vector.

For density functions, a vector of log densities.

### Author(s)

Simon N. Wood simon.wood@r-project.org

`ldTweedie`, `Tweedie`

### Examples

```library(mgcv)
V <- matrix(c(2,1,1,2),2,2)
mu <- c(1,3)
n <- 1000
z <- rmvn(n,mu,V)
crossprod(sweep(z,2,colMeans(z)))/n ## observed covariance matrix
colMeans(z) ## observed mu
dmvn(z,mu,V)
```

mgcv documentation built on March 7, 2023, 8:29 p.m.