C# Class RandomOps.XorShift

Pseudo-Random Number Generator (PRNG) based on XorShift as described in the paper: G. Marsaglia, Random Number Generators, Journal of Modern Applied Statistical Methods, 2003, vol. 2, no. 1, p. 2-13. Period of this PRNG is about 2^160. Not thread-safe.
This is a translation of the C source-code published 2003-05-13 in the newsgroup comp.lang.c by George Marsaglia, published here with Marsaglia's authorization under the license in license.txt
Inheritance: RanUInt32Array
Mostra file Open project: DanWBR/dwsim3

Public Properties

Property Type Description
SeedDefault System.UInt32[]

Public Methods

Method Description
Rand ( ) : UInt32

Draw a random number in inclusive range {0, .., RandMax}

Seed ( UInt32 seed ) : void

Seed with an array.

XorShift ( ) : System

Constructs the PRNG-object without a seed. Remember to seed it before drawing random numbers.

XorShift ( Random rand ) : System

Constructs the PRNG-object and uses another RNG for seeding.

XorShift ( UInt32 seed ) : System

Constructs the PRNG-object using the designated seed. This is useful if you want to repeat experiments with the same sequence of pseudo-random numbers.

Method Details

Rand() public final method

Draw a random number in inclusive range {0, .., RandMax}
public final Rand ( ) : UInt32
return System.UInt32

Seed() public final method

Seed with an array.
public final Seed ( UInt32 seed ) : void
seed System.UInt32
return void

XorShift() public method

Constructs the PRNG-object without a seed. Remember to seed it before drawing random numbers.
public XorShift ( ) : System
return System

XorShift() public method

Constructs the PRNG-object and uses another RNG for seeding.
public XorShift ( Random rand ) : System
rand Random
return System

XorShift() public method

Constructs the PRNG-object using the designated seed. This is useful if you want to repeat experiments with the same sequence of pseudo-random numbers.
public XorShift ( UInt32 seed ) : System
seed System.UInt32
return System

Property Details

SeedDefault public_oe static_oe property

Default seed.
public static UInt32[],System SeedDefault
return System.UInt32[]