Accelerating the pace of engineering and science

• Trials

# copularnd

Copula random numbers

## Syntax

U = copularnd('Gaussian',rho,N)
U = copularnd('t',rho,NU,N)
U = copularnd('family',alpha,N)

## Description

U = copularnd('Gaussian',rho,N) returns N random vectors generated from a Gaussian copula with linear correlation parameters rho. If rho is a p-by-p correlation matrix, U is an n-by-p matrix. If rho is a scalar correlation coefficient, copularnd generates U from a bivariate Gaussian copula. Each column of U is a sample from a Uniform(0,1) marginal distribution.

U = copularnd('t',rho,NU,N) returns N random vectors generated from a t copula with linear correlation parameters rho and degrees of freedom NU. If rho is a p-by-p correlation matrix, U is an n-by-p matrix. If rho is a scalar correlation coefficient, copularnd generates U from a bivariate t copula. Each column of U is a sample from a Uniform(0,1) marginal distribution.

U = copularnd('family',alpha,N) returns N random vectors generated from the bivariate Archimedean copula determined by family, with scalar parameter alpha. family is Clayton, Frank, or Gumbel. U is an n-by-2 matrix. Each column of U is a sample from a Uniform(0,1) marginal distribution.

## Examples

Determine the linear correlation parameter corresponding to a bivariate Gaussian copula having a rank correlation of -0.5.

```tau = -0.5
rho = copulaparam('gaussian',tau)
rho =
-0.7071

% Generate dependent beta random values using that copula
u = copularnd('gaussian',rho,100);
b = betainv(u,2,2);

% Verify that the sample has a rank correlation
% approximately equal to tau
tau_sample = corr(b,'type','kendall')
tau_sample =
1.0000   -0.4537
-0.4537    1.0000```