Implements a 32-bit (2^31-2 cycle length) linear congruential random number generator.
Source: Raj Jain: The Art of Computer Systems Performance Analysis (John Wiley & Sons, 1991) pp 441-444, 455.
Public Member Functions | |
virtual std::string | str () const override |
virtual void | initialize (int seedSet, int rngId, int numRngs, int parsimProcId, int parsimNumPartitions, cConfiguration *cfg) override |
virtual void | selfTest () override |
virtual uint32_t | intRand () override |
virtual uint32_t | intRandMax () override |
virtual uint32_t | intRand (uint32_t n) override |
virtual double | doubleRand () override |
virtual double | doubleRandNonz () override |
virtual double | doubleRandIncl1 () override |
![]() | |
virtual uint64_t | getNumbersDrawn () const |
double | doubleRandNonzIncl1 () |
![]() | |
cObject () | |
cObject (const cObject &other)=default | |
virtual | ~cObject () |
virtual const char * | getClassName () const |
virtual const char * | getName () const |
bool | isName (const char *s) const |
virtual const char * | getFullName () const |
virtual std::string | getFullPath () const |
virtual std::string | getClassAndFullName () const |
virtual std::string | getClassAndFullPath () const |
const cObject * | getThisPtr () const |
virtual std::ostream & | printOn (std::ostream &os) const |
virtual cObject * | dup () const |
virtual void | parsimPack (cCommBuffer *buffer) const |
virtual void | parsimUnpack (cCommBuffer *buffer) |
virtual cObject * | getOwner () const |
virtual bool | isOwnedObject () const |
virtual bool | isSoftOwner () const |
virtual void | forEachChild (cVisitor *v) |
cObject * | findObject (const char *name, bool deep=true) |
virtual cClassDescriptor * | getDescriptor () const |
void | copyNotSupported () const |
Additional Inherited Members | |
![]() | |
virtual void | take (cOwnedObject *obj) |
virtual void | drop (cOwnedObject *obj) |
void | dropAndDelete (cOwnedObject *obj) |
|
overridevirtual |
Returns a brief, one-line description of the object. The returned string does (should) NOT include the object's name and class. This method is used to display object information at several places in the Qtenv GUI, among others.
Reimplemented from cObject.
|
overridevirtual |
Sets up the RNG.
Implements cRNG.
|
overridevirtual |
Tests correctness of the RNG
Implements cRNG.
|
overridevirtual |
Random integer in the range [0,intRandMax()]
Implements cRNG.
|
overridevirtual |
|
overridevirtual |
Random integer in [0,n), n < intRandMax()
Implements cRNG.
|
overridevirtual |
Random double on the [0,1) interval
Implements cRNG.
|
overridevirtual |
Random double on the (0,1) interval
Implements cRNG.
|
overridevirtual |
Random double on the [0,1] interval
Implements cRNG.