|
SST 15.0
Structural Simulation Toolkit
|
Creates an exponential distribution for use within SST. More...
#include "sst/core/rng/expon.h"
Public Member Functions | |
| ExponentialDistribution (const double mn) | |
| Creates an exponential distribution with a specific lambda. | |
| ExponentialDistribution (const double mn, Random *baseDist) | |
| Creates an exponential distribution with a specific lambda and a base random number generator. | |
| ~ExponentialDistribution () | |
| Destroys the exponential distribution. | |
| double | getNextDouble () override |
| Gets the next (random) double value in the distribution. | |
| double | getLambda () |
| Gets the lambda with which the distribution was created. | |
| ExponentialDistribution () | |
| Default constructor. | |
| void | serialize_order (SST::Core::Serialization::serializer &ser) override |
| Serialization function for checkpoint. | |
Public Member Functions inherited from SST::RNG::RandomDistribution | |
| virtual | ~RandomDistribution () |
| Destroys the distribution. | |
| RandomDistribution () | |
| Creates the base (abstract) class of a distribution. | |
| virtual void | serialize_order (SST::Core::Serialization::serializer &UNUSED(ser)) override |
Public Member Functions inherited from SST::Core::Serialization::serializable_base | |
| virtual const char * | cls_name () const =0 |
| virtual uint32_t | cls_id () const =0 |
| virtual std::string | serialization_name () const =0 |
Data Fields | |
| ImplementSerializable(SST::RNG::ExponentialDistribution) protected Random * | baseDistrib |
| Serialization macro. | |
| bool | deleteDistrib |
| Controls whether the base distribution should be deleted when this class is destructed. | |
Additional Inherited Members | |
Static Public Attributes inherited from SST::Core::Serialization::serializable | |
| static constexpr uint32_t | NullClsId = std::numeric_limits<uint32_t>::max() |
Static Public Attributes inherited from SST::Core::Serialization::serializable_base | |
| static constexpr uint32_t | NullClsId = std::numeric_limits<uint32_t>::max() |
Protected Types inherited from SST::Core::Serialization::serializable_base | |
| enum | cxn_flag_t { ConstructorFlag } |
Static Protected Member Functions inherited from SST::Core::Serialization::serializable_base | |
| static void | serializable_abort (uint32_t line, const char *file, const char *func, const char *obj) |
Creates an exponential distribution for use within SST.
This distribution is the same across platforms and compilers.
|
inlineexplicit |
Creates an exponential distribution with a specific lambda.
| mn | The lambda of the exponential distribution |
References baseDistrib, deleteDistrib, and SST::RNG::RandomDistribution::RandomDistribution().
|
inline |
Creates an exponential distribution with a specific lambda and a base random number generator.
| mn | The lambda of the exponential distribution |
| baseDist | The base random number generator to take the distribution from. |
References baseDistrib, deleteDistrib, and SST::RNG::RandomDistribution::RandomDistribution().
|
inline |
Default constructor.
FOR SERIALIZATION ONLY.
References SST::RNG::RandomDistribution::RandomDistribution().
|
inline |
Gets the lambda with which the distribution was created.
|
inlineoverridevirtual |
Gets the next (random) double value in the distribution.
Implements SST::RNG::RandomDistribution.
References baseDistrib.
|
inlineoverridevirtual |
Serialization function for checkpoint.
Implements SST::Core::Serialization::serializable_base.
References baseDistrib, and deleteDistrib.
| ImplementSerializable (SST::RNG::ExponentialDistribution) protected Random* SST::RNG::ExponentialDistribution::baseDistrib |
Serialization macro.
Sets the lambda of the exponential distribution. Sets the base random number generator for the distribution.
Referenced by ExponentialDistribution(), ExponentialDistribution(), getNextDouble(), serialize_order(), and ~ExponentialDistribution().