Click or drag to resize

RandEcuyerMRG63k3a Class

Note: This API is now obsolete.

Pierre L'Ecuyer's 1999 MRG63k3a random number generator. The class remains in this library as a historical reference.
Inheritance Hierarchy
SystemObject
  SystemRandom
    Orthogonal.Common.Basic.PRNGRandCustomBase
      Orthogonal.Common.Basic.PRNGRandEcuyerMRG63k3a

Namespace: Orthogonal.Common.Basic.PRNG
Assembly: Orthogonal.Common.Basic (in Orthogonal.Common.Basic.dll) Version: 2024-04-15 18:00 GMT+10.f27da1471008deaf16b803c17e24a5955690aef1
Syntax
C#
[ObsoleteAttribute("This legacy PRNG algorithm should replaced with a more modern and effective one")]
public class RandEcuyerMRG63k3a : RandCustomBase

The RandEcuyerMRG63k3a type exposes the following members.

Constructors
 NameDescription
Public methodRandEcuyerMRG63k3aInitializes a new instance of the RandEcuyerMRG63k3a class
Public methodRandEcuyerMRG63k3a(Int64, Int64, Int64, Int64, Int64, Int64)Initializes a new instance of the RandEcuyerMRG63k3a class
Top
Remarks

See: Good Parameter Sets for Combined Multiple Recursive Random Number Generators.

Long running tests have observed the expected minimum values Next 0 (0x0) from Core 0.000000000270468 and the expected maximum Next 2147483646 (0x7FFFFFFE) from Core 0.999999999924479.

A Core 0.0 is unlikely to be seen because there is a vanishing chance of seeing the limit values of 0x0000000000000000 and 0xFFFFFFFFFFFFFFFF in a flat random distribution of 64 bit values.

See Also