DiscreteUniformDistribution.Sample Method

Definition

Namespace: Numerics.NET.Statistics.Distributions
Assembly: Numerics.NET (in Numerics.NET.dll) Version: 10.3.0

Overload List

Sample() Returns a random sample from the distribution.
Sample(Int32) Returns a vector containing the specified number of independent random samples drawn from this distribution.
Sample(IRandomSource) Returns a random sample from the distribution using an IRandomSource instance.
Sample(Random) Returns a random sample from the distribution using a Random instance.
Sample(Int32, IRandomSource) Returns a vector containing the specified number of independent random samples drawn from this distribution using the provided IRandomSource.
Sample(Int32, Random) Returns a vector of random samples from the distribution.
Sample(IRandomSource, Int32[]) Fills an Int32 array with random numbers.
Obsolete
Sample(IRandomSource, Int32) Returns a single random sample from a discrete uniform distribution using a typed generator.
Sample(Random, Int32[]) Fills an Int32 array with random numbers.
Obsolete
Sample(Random, Int32) Gets a single sample from the uniform distribution over the specified interval.
Sample(IRandomSource, Int32, Int32) Returns a single random sample from a discrete uniform distribution using a typed generator.
Sample(Random, Int32, Int32) Gets a single sample from the uniform distribution over the specified interval.
Sample(IRandomSource, Int32[], Int32, Int32) Fills an Int32 array with random numbers from this DiscreteDistribution.
Obsolete
Sample(Random, Int32[], Int32, Int32) Fills an Int32 array with random numbers from this DiscreteDistribution.
Obsolete
Sample<TGenerator>(IRandomSource<TGenerator>) Returns a random sample from the distribution using the supplied IRandomSource<TGenerator>.
Sample<TGenerator>(TGenerator) Returns a random sample from the distribution using the provided generator.
Sample<TGenerator>(TGenerator) Returns a random sample from the distribution using the provided generator.
Sample<TGenerator>(Int32, IRandomSource<TGenerator>) Returns a vector containing the specified number of independent random samples drawn from this distribution using the supplied IRandomSource<TGenerator>.

Sample<TGenerator>(TGenerator)

Returns a random sample from the distribution using the provided generator.
C#
protected override int Sample<TGenerator>(
	ref TGenerator generator
)
where TGenerator : struct, new(), IRandomGenerator

Parameters

generator  TGenerator
A reference to a struct implementing IRandomGenerator used to produce uniform variates.

Type Parameters

TGenerator
The underlying generator type of the random source, used to enable optimizations like inlining.

Return Value

Int32
A signed 32-bit integer random variate.

Remarks

Implementations may override this method to provide a more efficient or specialized sampling algorithm that consumes raw uniform variates from generator.

Sample(IRandomSource, Int32)

Returns a single random sample from a discrete uniform distribution using a typed generator.
C#
public static int Sample(
	IRandomSource random,
	int maxValue
)

Parameters

random  IRandomSource
 
maxValue  Int32
Maximum value (exclusive).

Return Value

Int32
A sample drawn from the discrete uniform distribution.

Sample(Random, Int32)

Gets a single sample from the uniform distribution over the specified interval.
C#
public static int Sample(
	Random random,
	int maxValue
)

Parameters

random  Random
The Random derived random number generator used to generate the sample.
maxValue  Int32
The upper bound (one larger than the largest possible value) of the interval.

Return Value

Int32
A 32-bit integer sample from the uniform distribution over the specified interval.

Remarks

The lower bound of the interval is zero. The upper bound is exclusive: only values strictly less than maxValue will be returned.

This method is useful when only a single random sample is required, or if the parameters of the distribution change often. To obtain a large number of samples from a distribution with identical parameters, create an instance of the class and call the Sample() method repeatedly.

Exceptions

ArgumentNullException

random is null.

ArgumentOutOfRangeException

maxValue is less than 0.

Sample(IRandomSource, Int32, Int32)

Returns a single random sample from a discrete uniform distribution using a typed generator.
C#
public static int Sample(
	IRandomSource random,
	int minValue,
	int maxValue
)

Parameters

random  IRandomSource
 
minValue  Int32
Minimum value (inclusive).
maxValue  Int32
Maximum value (exclusive).

Return Value

Int32
A sample drawn from the discrete uniform distribution.

Sample(Random, Int32, Int32)

Gets a single sample from the uniform distribution over the specified interval.
C#
public static int Sample(
	Random random,
	int minValue,
	int maxValue
)

Parameters

random  Random
The Random derived random number generator used to generate the sample.
minValue  Int32
The minimum value (inclusive).
maxValue  Int32
The maximum value (exclusive).

Return Value

Int32
A 32-bit integer sample from the uniform distribution over the specified interval.

Remarks

The upper bound is exclusive: only values strictly less than maxValue will be returned.

This method is useful when only a single random sample is required, or if the parameters of the distribution change often. To obtain a large number of samples from a distribution with identical parameters, create an instance of the class and call the Sample() method repeatedly.

Exceptions

ArgumentNullException

random is null.

ArgumentOutOfRangeException

maxValue is less than minValue.

See Also