RanLux24 Class

Represents a RanLux pseudo-random number generator

Definition

Namespace: Extreme.Mathematics.Random
Assembly: Extreme.Numerics (in Extreme.Numerics.dll) Version: 8.1.23
C#
public class RanLux24 : ExtendedRandom
Inheritance
Object  →  Random  →  ExtendedRandom  →  RanLux24

Remarks

Use the RanLux class to represent a pseudo-random number generator based on M. Luescher's second generation version of the RANLUX random number generator.

The RanLux generator produces random blocks of 24 bits. It has a period of over 10166.

RanLux can be used in place of the Random class to obtain pseudo-random numbers of a higher quality.

References:

  • M. Leuscher, "A portable high-quality random number random for lattice field theory calculations", Computer Physics Communications, 79 (1994) 100-110.
  • F. James, "RANLUX: A Fortran implementation of the high-quality pseudo-random number generator of Leuscher", Computer Physics Communications, 79 (1994) 111-114.

Constructors

RanLux24() Constructs a new RanLux random number generator using the default seed and luxury level.
RanLux24(Int32) Constructs a new RanLux random number generator using the specified seed and the default luxury level.
RanLux24(RanLuxLuxuryLevel) Constructs a new RanLux random number generator using the default seed and the specified luxury level.
RanLux24(Int32, RanLuxLuxuryLevel) Constructs a new RanLux random number generator using the specified seed and custom luxury level.

Properties

LuxuryLevel Gets the luxury level for the random number generator.

Methods

EqualsDetermines whether the specified object is equal to the current object.
(Inherited from Object)
FinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object)
GetHashCodeServes as the default hash function.
(Inherited from Object)
GetItems``1(UMP[], Int32)Creates an array populated with items chosen at random from the provided set of choices.
(Inherited from Random)
GetItems``1(ReadOnlySpan<UMP>, Int32)Creates an array populated with items chosen at random from the provided set of choices.
(Inherited from Random)
GetItems``1(ReadOnlySpan<UMP>, Span<UMP>)Fills the elements of a specified span with items chosen at random from the provided set of choices.
(Inherited from Random)
GetTypeGets the Type of the current instance.
(Inherited from Object)
MemberwiseCloneCreates a shallow copy of the current Object.
(Inherited from Object)
Next() Returns a nonnegative random number.
(Overrides Random.Next())
Next(Int32)Returns a non-negative random integer that is less than the specified maximum.
(Inherited from Random)
Next(Int32, Int32)Returns a random integer that is within a specified range.
(Inherited from Random)
NextBytes(Byte[]) Fills the elements of a specified array of bytes with random numbers.
(Overrides Random.NextBytes(Byte[]))
NextBytes(Span<Byte>)Fills the elements of a specified span of bytes with random numbers.
(Inherited from Random)
NextDoubleReturns a random floating-point number that is greater than or equal to 0.0, and less than 1.0.
(Inherited from Random)
NextInt64()Returns a non-negative random integer.
(Inherited from Random)
NextInt64(Int64)Returns a non-negative random integer that is less than the specified maximum.
(Inherited from Random)
NextInt64(Int64, Int64)Returns a random integer that is within a specified range.
(Inherited from Random)
NextSingleReturns a random floating-point number that is greater than or equal to 0.0, and less than 1.0.
(Inherited from Random)
Restart() Restarts the random number generator using the original seed.
(Overrides ExtendedRandom.Restart())
Restart(Int32) Restarts the random number generator using the specified seed.
(Overrides ExtendedRandom.Restart(Int32))
Sample Returns a random number between 0 and 1.
(Overrides Random.Sample())
Shuffle``1(UMP[])Performs an in-place shuffle of an array.
(Inherited from Random)
Shuffle``1(Span<UMP>)Performs an in-place shuffle of a span.
(Inherited from Random)
ToStringReturns a string that represents the current object.
(Inherited from Object)

Extension Methods

AsParallel Returns a thread-safe version of this random number generator.
(Defined by RandomExtensions)
CorrelatedSamples Generates a series of random variables with the specified correlation matrix.
(Defined by RandomExtensions)
Fill Fills a Double array with random numbers.
(Defined by RandomExtensions)
Fill Fills an Int32 array with random numbers.
(Defined by RandomExtensions)
Fill Fills a Double array with random samples from the specified distribution.
(Defined by RandomExtensions)
Fill Fills an Int32 array with random samples from the specified distribution.
(Defined by RandomExtensions)
Fill Fills a vector with random samples from the specified distribution.
(Defined by RandomExtensions)
Fill Fills a vector with random samples from the specified distribution.
(Defined by RandomExtensions)
Fill Fills a Double array with random samples from the specified distribution.
(Defined by RandomExtensions)
Fill Fills a Double array with random numbers.
(Defined by RandomExtensions)
Fill Fills an Int32 array with random numbers.
(Defined by RandomExtensions)
Fill Fills an Int32 array with random samples from the specified distribution.
(Defined by RandomExtensions)
Fill Fills a Double array with random samples from the specified distribution.
(Defined by RandomExtensions)
Fill Fills an Int32 array with random samples from the specified distribution.
(Defined by RandomExtensions)
FillNormal Fills a list with normal random numbers with zero mean and unit standard deviation.
(Defined by RandomExtensions)
FillNormal Fills a list with normal random numbers with zero mean and unit standard deviation.
(Defined by RandomExtensions)
Next Returns a sample from the specified distribution.
(Defined by RandomExtensions)
NextDouble Returns a sample from the specified distribution.
(Defined by RandomExtensions)

See Also