RandomSamplingExtensions Class

Provides extension methods for sampling probability distributions.

Definition

Namespace: Numerics.NET.Statistics.Distributions
Assembly: Numerics.NET (in Numerics.NET.dll) Version: 10.3.0
C#
public static class RandomSamplingExtensions
Inheritance
Object  →  RandomSamplingExtensions

Remarks

These extensions make it easy to generate random samples from Numerics.NET probability distributions, including efficient span-based sampling APIs.

All methods require an explicit distribution parameter, ensuring clear intent and consistent API design. Methods delegate to the distribution's internal sampling implementation for optimal performance.

Methods

CorrelatedSamples(IRandomSource, Int32, Distribution[], SymmetricMatrix<Double>) Generates a series of random variables with the specified correlation matrix.
CorrelatedSamples(Random, Int32, Distribution[], SymmetricMatrix<Double>) Generates a series of random variables with the specified correlation matrix.
CorrelatedSamples<TGenerator>(IRandomSource<TGenerator>, Int32, Distribution[], SymmetricMatrix<Double>) Generates a series of random variables with the specified correlation matrix.
Fill(IRandomSource, Vector<Double>, ContinuousDistribution) Fills a vector with random samples from the specified continuous distribution.
Fill(IRandomSource, Span<Double>, ContinuousDistribution) Fills a span with random samples from the specified continuous distribution.
Fill(IRandomSource, Span<Int32>, DiscreteDistribution) Fills a span with random samples from the specified discrete distribution.
Fill(Random, Vector<Double>, ContinuousDistribution) Fills a vector with random samples from the specified continuous distribution.
Fill(Random, Span<Double>, ContinuousDistribution) Fills a span with random samples from the specified continuous distribution.
Fill(Random, Span<Int32>, DiscreteDistribution) Fills a span with random samples from the specified discrete distribution.
Fill<TGenerator>(IRandomSource<TGenerator>, Vector<Double>, ContinuousDistribution) Fills a vector with random samples from the specified continuous distribution.
Fill<TGenerator>(IRandomSource<TGenerator>, Vector<Int32>, DiscreteDistribution) Fills a vector with random samples from the specified continuous distribution.
Fill<TGenerator>(IRandomSource<TGenerator>, Span<Double>, ContinuousDistribution) Fills a span with random samples from the specified continuous distribution.
Fill<TGenerator>(IRandomSource<TGenerator>, Span<Int32>, DiscreteDistribution) Fills a span with random samples from the specified discrete distribution.
Next(IRandomSource, ContinuousDistribution) Generates a random sample from the specified continuous distribution.
Next(IRandomSource, DiscreteDistribution) Generates a random sample from the specified discrete distribution.
Next(Random, DiscreteDistribution) Generates a random sample from the specified discrete distribution.
Next(IRandomSource, ContinuousDistribution, Int32) Generates an array of random samples from the specified continuous distribution.
Next(IRandomSource, DiscreteDistribution, Int32) Generates an array of random samples from the specified discrete distribution.
Next(Random, ContinuousDistribution, Int32) Generates an array of random samples from the specified continuous distribution.
Next(Random, DiscreteDistribution, Int32) Generates an array of random samples from the specified discrete distribution.
Next<TGenerator>(IRandomSource<TGenerator>, ContinuousDistribution) Generates a random sample from the specified continuous distribution.
Next<TGenerator>(IRandomSource<TGenerator>, DiscreteDistribution) Generates a random sample from the specified discrete distribution.
Next<TGenerator>(IRandomSource<TGenerator>, ContinuousDistribution, Int32) Generates an array of random samples from the specified continuous distribution.
Next<TGenerator>(IRandomSource<TGenerator>, DiscreteDistribution, Int32) Generates an array of random samples from the specified discrete distribution.
NextDouble Generates a random sample from the specified continuous distribution.

See Also