Random number generator (Random number generator)
More...
Data Structures |
struct | VlRand |
| Random numbber generator state. More...
|
Functions |
void | vl_rand_permute_indexes (VlRand *self, vl_index *array, vl_size size) |
| Randomly permute and array of indexes.
|
|
void | vl_rand_init (VlRand *self) |
| Initialise random number generator.
|
void | vl_rand_seed (VlRand *self, vl_uint32 s) |
| Seed the state of the random number generator.
|
void | vl_rand_seed_by_array (VlRand *self, vl_uint32 const key[], vl_size keySize) |
| Seed the state of the random number generator by an array.
|
|
vl_uint64 | vl_rand_uint64 (VlRand *self) |
| Generate a random UINT64.
|
vl_int64 | vl_rand_int63 (VlRand *self) |
| Generate a random INT63.
|
vl_uint32 | vl_rand_uint32 (VlRand *self) |
| Generate a random UINT32.
|
vl_int32 | vl_rand_int31 (VlRand *self) |
| Generate a random INT31.
|
double | vl_rand_real1 (VlRand *self) |
| Generate a random number in [0,1].
|
double | vl_rand_real2 (VlRand *self) |
| Generate a random number in [0,1)
|
double | vl_rand_real3 (VlRand *self) |
| Generate a random number in (0,1)
|
double | vl_rand_res53 (VlRand *self) |
| Generate a random number in [0,1) with 53-bit resolution.
|
vl_uindex | vl_rand_uindex (VlRand *self, vl_uindex range) |
| Generate a random index in a given range.
|
Detailed Description
- Author:
- Andrea Vedaldi
- See also:
- Random number generator
Function Documentation
void vl_rand_init |
( |
VlRand * |
self | ) |
|
- Parameters:
-
self | random number generator. |
- Returns:
- a random number in [0, 0x7fffffff].
- Parameters:
-
self | random number generator. |
- Returns:
- a random number in [0, 0x7fffffffffffffff].
- Parameters:
-
self | random number generator. |
array | array of indexes. |
size | number of element in the array. |
The function uses Algorithm P, also known as Knuth shuffle.
double vl_rand_real1 |
( |
VlRand * |
self | ) |
|
|
inline |
- Parameters:
-
self | random number generator. |
- Returns:
- a random number.
double vl_rand_real2 |
( |
VlRand * |
self | ) |
|
|
inline |
- Parameters:
-
self | random number generator. |
- Returns:
- a random number.
double vl_rand_real3 |
( |
VlRand * |
self | ) |
|
|
inline |
- Parameters:
-
self | random number generator. |
- Returns:
- a random number.
double vl_rand_res53 |
( |
VlRand * |
self | ) |
|
|
inline |
- Parameters:
-
self | random number generator. |
- Returns:
- a random number.
- Parameters:
-
self | random number generator. |
s | seed. |
- Parameters:
-
self | random number generator. |
key | array of numbers. |
keySize | length of the array. |
- Parameters:
-
self | random number generator. |
range | range. |
- Returns:
- an index sampled uniformly at random in the interval [0,
range
- 1]
- Parameters:
-
self | random number generator. |
- Returns:
- a random number in [0, 0xffffffff].
- Parameters:
-
self | random number generator. |
- Returns:
- a random number in [0, 0xffffffffffffffff].