Combined Multiple-Recursive Generator MRG32k3a. More...
#include <rng-stream.h>
Public Member Functions | |
RngStream (uint32_t seed, uint64_t stream, uint64_t substream) | |
RngStream (const RngStream &) | |
double | RandU01 (void) |
Private Member Functions | |
void | AdvanceNthBy (uint64_t nth, int by, double state[6]) |
Private Attributes | |
double | m_currentState [6] |
Combined Multiple-Recursive Generator MRG32k3a.
This class is the combined multiple-recursive random number generator called MRG32k3a. The ns3::RandomVariableBase class holds a static instance of this class. The details of this class are explained in: http://www.iro.umontreal.ca/~lecuyer/myftp/papers/streams00.pdf
Definition at line 39 of file rng-stream.h.
double ns3::RngStream::RandU01 | ( | void | ) |
Generate the next random number for this stream. Uniformly distributed between 0 and 1.
Definition at line 262 of file rng-stream.cc.
Referenced by ns3::ErlangRandomVariable::GetExponentialValue(), ns3::GammaRandomVariable::GetNormalValue(), ns3::UniformVariableImpl::GetValue(), ns3::UniformRandomVariable::GetValue(), ns3::ExponentialRandomVariable::GetValue(), ns3::ExponentialVariableImpl::GetValue(), ns3::ParetoRandomVariable::GetValue(), ns3::ParetoVariableImpl::GetValue(), ns3::WeibullVariableImpl::GetValue(), ns3::WeibullRandomVariable::GetValue(), ns3::NormalVariableImpl::GetValue(), ns3::NormalRandomVariable::GetValue(), ns3::EmpiricalVariableImpl::GetValue(), ns3::LogNormalRandomVariable::GetValue(), ns3::LogNormalVariableImpl::GetValue(), ns3::GammaRandomVariable::GetValue(), ns3::GammaVariableImpl::GetValue(), ns3::TriangularVariableImpl::GetValue(), ns3::ZipfVariableImpl::GetValue(), ns3::TriangularRandomVariable::GetValue(), ns3::ZetaVariableImpl::GetValue(), ns3::ZipfRandomVariable::GetValue(), ns3::ZetaRandomVariable::GetValue(), and ns3::EmpiricalRandomVariable::GetValue().