SST  13.1.0
Structural Simulation Toolkit
SST::RNG::GaussianDistribution Class Reference

Creates a Gaussian (normal) distribution for which to sample. More...

#include "sst/core/rng/gaussian.h"

Inheritance diagram for SST::RNG::GaussianDistribution:
SST::RNG::RandomDistribution

Public Member Functions

 GaussianDistribution (double mn, double sd)
 Creates a new distribution with a predefined random number generator with a specified mean and standard deviation. More...
 
 GaussianDistribution (double mn, double sd, SST::RNG::Random *baseRNG)
 Creates a new distribution with a predefined random number generator with a specified mean and standard deviation. More...
 
 ~GaussianDistribution ()
 Destroys the Gaussian distribution.
 
double getNextDouble ()
 Gets the next double value in the distribution. More...
 
double getMean ()
 Gets the mean of the distribution. More...
 
double getStandardDev ()
 Gets the standard deviation of the distribution. More...
 
- Public Member Functions inherited from SST::RNG::RandomDistribution
virtual ~RandomDistribution ()
 Destroys the distribution.
 
 RandomDistribution ()
 Creates the base (abstract) class of a distribution.
 

Protected Attributes

double mean
 The mean of the Gaussian distribution.
 
double stddev
 The standard deviation of the Gaussian distribution.
 
SST::RNG::RandombaseDistrib
 The base random number generator for the distribution.
 
double unusedPair
 Random numbers for the distribution are read in pairs, this stores the second of the pair.
 
bool usePair
 Random numbers for the distribution are read in pairs, this tells the code to use the second of the pair.
 
bool deleteDistrib
 Controls whether the destructor deletes the distribution (we need to ensure we do this IF we created the distribution)
 

Detailed Description

Creates a Gaussian (normal) distribution for which to sample.

Constructor & Destructor Documentation

◆ GaussianDistribution() [1/2]

SST::RNG::GaussianDistribution::GaussianDistribution ( double  mn,
double  sd 
)
inline

Creates a new distribution with a predefined random number generator with a specified mean and standard deviation.

Parameters
mnThe mean of the Gaussian distribution
sdThe standard deviation of the Gaussian distribution

◆ GaussianDistribution() [2/2]

SST::RNG::GaussianDistribution::GaussianDistribution ( double  mn,
double  sd,
SST::RNG::Random baseRNG 
)
inline

Creates a new distribution with a predefined random number generator with a specified mean and standard deviation.

Parameters
mnThe mean of the Gaussian distribution
sdThe standard deviation of the Gaussian distribution
baseRNGThe random number generator as the base of the distribution

Member Function Documentation

◆ getMean()

double SST::RNG::GaussianDistribution::getMean ( )
inline

Gets the mean of the distribution.

Returns
The mean of the Guassian distribution

◆ getNextDouble()

double SST::RNG::GaussianDistribution::getNextDouble ( )
inlinevirtual

Gets the next double value in the distribution.

Returns
The next double value of the distribution (in this case a Gaussian distribution)

Implements SST::RNG::RandomDistribution.

◆ getStandardDev()

double SST::RNG::GaussianDistribution::getStandardDev ( )
inline

Gets the standard deviation of the distribution.

Returns
The standard deviation of the Gaussian distribution

The documentation for this class was generated from the following file: