lambda
and omega
.
It also allows sampling from the truncated distribution.
[Special Generator] -- Sampling Function: GIG (generalized inverse Gaussian).urgig(n, lambda, omega, lb=1.e-12, ub=Inf)
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 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$.
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.
runif
and .Random.seed
about random number
generation and unuran
for the UNU.RAN class.## Create a sample of size 1000
x <- urgig(n=1000,lambda=2,omega=3)
Run the code above in your browser using DataLab