Generates pseudorandom numbers using the Ziggurat method.

Namespace: Imsl.Stat
Assembly: ImslCS (in ImslCS.dll) Version: 6.5.0.0

Syntax

C#
public virtual double NextZigguratNormalAR()
Visual Basic (Declaration)
Public Overridable Function NextZigguratNormalAR As Double
Visual C++
public:
virtual double NextZigguratNormalAR()

Return Value

A double containing the random normal deviate.

Remarks

The NextZigguratNormalAR method cuts the density into many small pieces. For each random number generated, an interval is chosen at random and a random normal is generated from the chosen interval. In this implementation, the density is cut into 256 pieces, but symmetry is used so that only 128 pieces are needed by the computation. Following Doornik (2005), different uniform random deviates are used to determine which slice to use and to determine the normal deviate from the slice.

See Also