Algo\(\left(\alpha>1\right)\)
- Set \(b=\alpha-1,\ a=\alpha+b\ \ \)and \(s\ =\ a^{\frac{1}{2}}\).
- Generate \(U\). Set \(t=s\ \tan\left(\pi\left(U-0.5\right)\right)\) and \(x=b+t\).
- If \(x<0\) go to 2.
- Generate \(v\). If \(v>e^{\left(b\ \ln\left(\frac{x}{b}\right)-t+\ln\left(1+t^{\frac{2}{a}}\right)\right)}\) go to 2(rejection), Otherwise deliver \(x\).
Algorithm GN\citep*{Ahrens1974}
In order to reduce the number of rejection Dieter. He proposed a highly efficient algorithm combining a normal envelope \(g\left(x\right)\) around the bulk of gamma distribution with an exponential cover \(h\left(x\right)\) above the tail. \(\)