  We propose a new generator for the generalized inverse Gaussian (GIG)
distribution by decomposing the density of GIG into two components. The first
component is a truncated inverse Gamma density, in order to sample from which
we improve the traditional inverse CDF method. The second component is the
product of an exponential pdf and an inverse Gamma CDF. In order to sample from
this quasi-density, we develop a rejection sampling procedure that adaptively
adjusts the piecewise proposal density according to the user-specified
rejection rate or the desired number of cutoff points. The resulting complete
algorithm enjoys controllable rejection rate and moderate setup time. It
preserves efficiency for both parameter varying case and large sample case.
