Namespaces

Types in MathNet.Numerics.Random

Type Palf

Namespace MathNet.Numerics.Random

Parent RandomSource

Represents a Parallel Additive Lagged Fibonacci pseudo-random number generator.
The Palf type bases upon the implementation in the. It uses the modulus 2 and by default the "lags" 418 and 1279. Some popular pairs are presented on.

Constructors

Static Functions

Methods

Properties

Public Constructors

Palf(int seed, bool threadSafe, int shortLag, int longLag)

Initializes a new instance of the Palf class.
Parameters
int seed

The seed value.

bool threadSafe

if set to true , the class is thread safe.

int shortLag

The ShortLag value

int longLag

TheLongLag value

Palf(int seed)

Initializes a new instance of the Palf class.
If the seed value is zero, it is set to one. Uses the value of ThreadSafeRandomNumberGenerators to set whether the instance is thread safe.
Parameters
int seed

The seed value.

Palf(bool threadSafe)

Initializes a new instance of the Palf class using a seed based on time and unique GUIDs.
Parameters
bool threadSafe

if set to true , the class is thread safe.

Palf()

Initializes a new instance of the Palf class using a seed based on time and unique GUIDs.
If the seed value is zero, it is set to one. Uses the value of ThreadSafeRandomNumberGenerators to set whether the instance is thread safe.

Palf(int seed, bool threadSafe)

Initializes a new instance of the Palf class.
Parameters
int seed

The seed value.

bool threadSafe

if set to true , the class is thread safe.

Public Static Functions

void Doubles(Double[] values, int seed)

Fills an array with random numbers greater than or equal to 0.0 and less than 1.0.
Supports being called in parallel from multiple threads.

Double[] Doubles(int length, int seed)

Returns an array of random numbers greater than or equal to 0.0 and less than 1.0.
Supports being called in parallel from multiple threads.

IEnumerable<double> DoubleSequence(int seed)

Returns an infinite sequence of random numbers greater than or equal to 0.0 and less than 1.0.
Supports being called in parallel from multiple threads, but the result must be enumerated from a single thread each.

Public Methods

bool Equals(object obj)

int GetHashCode()

Type GetType()

void NextBytes(Byte[] buffer)

Fills the elements of a specified array of bytes with random numbers.
Parameters
Byte[] buffer

An array of bytes to contain random numbers.

double NextDouble()

void NextDoubles(Double[] values)

Fills an array with uniform random numbers greater than or equal to 0.0 and less than 1.0.
Parameters
Double[] values

The array to fill with random values.

Double[] NextDoubles(int count)

Returns an array of uniform random numbers greater than or equal to 0.0 and less than 1.0.
Parameters
int count

The size of the array to fill.

IEnumerable<double> NextDoubleSequence()

Returns an infinite sequence of uniform random numbers greater than or equal to 0.0 and less than 1.0.

void NextInt32s(Int32[] values, int minInclusive, int maxExclusive)

Fills an array with random numbers within a specified range.
Parameters
Int32[] values

The array to fill with random values.

int minInclusive

The inclusive lower bound of the random number returned.

int maxExclusive

The exclusive upper bound of the random number returned. Range: maxExclusive > minExclusive.

Int32[] NextInt32s(int count, int minInclusive, int maxExclusive)

Returns an array with random 32-bit signed integers within the specified range.
Parameters
int count

The size of the array to fill.

int minInclusive

The inclusive lower bound of the random number returned.

int maxExclusive

The exclusive upper bound of the random number returned. Range: maxExclusive > minExclusive.

Int32[] NextInt32s(int count, int maxExclusive)

Returns an array with random 32-bit signed integers within the specified range.
Parameters
int count

The size of the array to fill.

int maxExclusive

The exclusive upper bound of the random number returned. Range: maxExclusive ≥ 1.

void NextInt32s(Int32[] values, int maxExclusive)

Fills an array with random numbers within a specified range.
Parameters
Int32[] values

The array to fill with random values.

int maxExclusive

The exclusive upper bound of the random number returned. Range: maxExclusive ≥ 1.

Int32[] NextInt32s(int count)

Returns an array with random 32-bit signed integers greater than or equal to zero and less than MaxValue.
Parameters
int count

The size of the array to fill.

void NextInt32s(Int32[] values)

Fills an array with random 32-bit signed integers greater than or equal to zero and less than MaxValue.
Parameters
Int32[] values

The array to fill with random values.

IEnumerable<int> NextInt32Sequence()

Returns an infinite sequence of random 32-bit signed integers greater than or equal to zero and less than MaxValue.

IEnumerable<int> NextInt32Sequence(int minInclusive, int maxExclusive)

Returns an infinite sequence of random numbers within a specified range.
Parameters
int minInclusive

The inclusive lower bound of the random number returned.

int maxExclusive

The exclusive upper bound of the random number returned. Range: maxExclusive > minExclusive.

string ToString()

Public Properties

int LongLag get; set;

Gets the long lag of the Lagged Fibonacci pseudo-random number generator.

int ShortLag get; set;

Gets the short lag of the Lagged Fibonacci pseudo-random number generator.