Learn R Programming

Runuran (version 0.40)

urgig: UNU.RAN Generalized Inverse Gaussian Distribution variate generator

Description

UNU.RAN random variate generator for the Generalized Inverse Gaussian Distribution with parameters lambda and omega. It also allows sampling from the truncated distribution.

[Special Generator] -- Sampling Function: GIG (generalized inverse Gaussian).

Usage

urgig(n, lambda, omega, lb=1.e-12, ub=Inf)

Arguments

n

size of required sample.

lambda

(strictly positive) shape parameter.

omega

(strictly positive) shape parameter.

lb

lower bound of (truncated) distribution

ub

upper bound of (truncated) distribution

Author

Josef Leydold and Wolfgang H\"ormann unuran@statmath.wu.ac.at.

Details

The Generalized Inverse Gaussian distribution with parameters lambda \(=\lambda\) and omega \(=\omega\) has a density proportional to $$ f(x) \sim x^{\lambda-1}\exp(-(\omega/2)(x+1/x)) $$ for \(x \ge 0\), \(\lambda > 0\) and \(\omega > 0\).

The generation algorithm uses transformed density rejection ‘TDR’. The parameters lb and ub can be used to generate variates from the distribution truncated to the interval (lb,ub).

The generation algorithm works for \(\lambda \ge 1\) and \(\omega>0\) and for \(\lambda>0\) and \(\omega \ge 0.5\).

References

W. H\"ormann, J. Leydold, and G. Derflinger (2004): Automatic Nonuniform Random Variate Generation. Springer-Verlag, Berlin Heidelberg.

N.L. Johnson, S. Kotz, and N. Balakrishnan (1994): Continuous Univariate Distributions, Volume 1. 2nd edition, John Wiley & Sons, Inc., New York. Chap.15, p.284.

See Also

runif and .Random.seed about random number generation and unuran for the UNU.RAN class.

Examples

Run this code
## Create a sample of size 1000
x <- urgig(n=1000,lambda=2,omega=3)

Run the code above in your browser using DataLab