73 return minV + (maxV - minV) *
rand();
77 static inline size_t rand(
size_t maxV) {
82 static inline int rand(
int maxV) {
87 static inline int rand(
int minV,
int maxV) {
88 return minV +
rand(maxV - minV);
100 const double v = rng->randExc(2.0) - 1;
102 }
while (q == 0.0 || q >= 1.0);
103 return (
SUMOReal)(mean + variance * u * sqrt(-2 * log(q) / q));
110 assert(v.size() > 0);
111 return v[
rand(v.size())];
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 SUMOReal rand()
Returns a random real number in [0, 1)
static T getRandomFrom(const std::vector< T > &v)
Returns a random element from the given vector.
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 size_t rand(size_t 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)
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].