73 return minV + (maxV - minV) *
rand();
77 static inline int rand(
int maxV) {
82 static inline int rand(
int minV,
int maxV) {
83 return minV +
rand(maxV - minV);
87 static inline long long int rand(
long long int maxV) {
92 static inline long long int rand(
long long int minV,
long long int maxV) {
93 return minV +
rand(maxV - minV);
105 const double v = rng->randExc(2.0) - 1;
107 }
while (q == 0.0 || q >= 1.0);
108 return (
SUMOReal)(mean + variance * u * sqrt(-2 * log(q) / q));
113 static inline const T&
115 assert(v.size() > 0);
116 return v[
rand((
int)v.size())];
static const T & getRandomFrom(const std::vector< T > &v)
Returns a random element from the given vector.
static SUMOReal randNorm(SUMOReal mean, SUMOReal variance, MTRand *rng=0)
Access to a random number from a normal distribution.
static void insertRandOptions()
Initialises the given options container with random number options.
static long long int rand(long long int maxV)
Returns a random 64 bit integer in [0, maxV-1].
static long long int rand(long long int minV, long long int maxV)
Returns a random 64 bit integer in [minV, maxV-1].
static SUMOReal rand()
Returns a random real number in [0, 1)
Utility functions for using a global, resetable random number generator.
static void initRandGlobal(MTRand *which=0)
Reads the given random number options and initialises the random number generator in accordance...
static int rand(int maxV)
Returns a random integer in [0, maxV-1].
static SUMOReal rand(SUMOReal maxV)
Returns a random real number in [0, maxV)
static SUMOReal rand(SUMOReal minV, SUMOReal maxV)
Returns a random real number in [minV, maxV)
uint64 randInt64(const uint64 &n)
static MTRand myRandomNumberGenerator
the random number generator to use
A storage for options typed value containers)
static int rand(int minV, int maxV)
Returns a random integer in [minV, maxV-1].