24 #include <trng/mrg2.hpp> 25 #include <trng/uniform01_dist.hpp> 26 #include <trng/uniform_int_dist.hpp> 35 return 1 - exp(-rate);
41 Random(
const unsigned long seed = 0) {
51 unsigned int operator()(
unsigned int max = std::numeric_limits<unsigned int>::max()) {
52 trng::uniform_int_dist dis(0, max);
void setState(std::string state)
double rateToProbability(double rate)
friend std::ostream & operator<<(std::ostream &os, const Random &random)
Time Dependent Person DataType.
bool hasContact(double contact_rate)
Check if two individuals have contact.
bool hasContactAndTransmission(double contact_rate, double transmission_rate)
bool hasTransmission(double transmission_rate)
Check if two individuals have transmission.
Random(const unsigned long seed=0)
trng::mrg2 m_engine
The random number engine.
trng::uniform01_dist< double > m_uniform_dist
The random distribution.
The random number generator.
unsigned int operator()(unsigned int max=std::numeric_limits< unsigned int >::max())
Get random unsigned int from [0, max[.