Click or drag to resize

RandXoroshiro256PlusPlus Class

An implementation of the xoroshiro256++ PRNG which stores state in 4 x 64-bit numbers.
Inheritance Hierarchy
SystemObject
  SystemRandom
    Orthogonal.Common.Basic.PRNGRandCustomBase
      Orthogonal.Common.Basic.PRNGRandXoroshiro256PlusPlus

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#
public class RandXoroshiro256PlusPlus : RandCustomBase

The RandXoroshiro256PlusPlus type exposes the following members.

Constructors
 NameDescription
Public methodRandXoroshiro256PlusPlusInitializes a new instance of the RandXoroshiro256PlusPlus class
Public methodRandXoroshiro256PlusPlus(Int64, Int64, Int64, Int64)Initializes a new instance of the RandXoroshiro256PlusPlus class
Top
Methods
 NameDescription
Public methodNextInt64
(Overrides RandCustomBaseNextInt64)
Top
Remarks

For more information see xoshiro / xoroshiro generators and the PRNG shootout.

Long running tests have observed the minimum values Next 0 (0x0) for Core 0.000000000085086 and the maximum Next 2147483646 (0x7FFFFFFE) from Core 0.999999999706094.

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