pseudo random number generator
More...
#include <gnuradio/random.h>
|
| random (uint64_t seed=0, int64_t min_integer=0, int64_t max_integer=2) |
|
| ~random () |
|
void | reseed (uint64_t seed) |
| Change the seed for the initialized number generator. seed = 0 initializes the random number generator with the system time. More...
|
|
void | set_integer_limits (int64_t minimum, int64_t maximum) |
|
int64_t | ran_int () |
|
float | ran1 () |
| Uniform random numbers in the range [0.0, 1.0) More...
|
|
float | gasdev () |
| Normally distributed random numbers (Gaussian distribution with zero mean and variance 1) More...
|
|
float | laplacian () |
| Laplacian distributed random numbers with zero mean and variance 1. More...
|
|
float | rayleigh () |
| Rayleigh distributed random numbers (zero mean and variance 1 for the underlying Gaussian distributions) More...
|
|
float | impulse (float factor) |
| Exponentially distributed random numbers with values less than or equal to factor replaced with zero. The underlying exponential distribution has mean sqrt(2) and variance 2. More...
|
|
gr_complex | rayleigh_complex () |
| Normally distributed random numbers with zero mean and variance 1 on real and imaginary part. This results in a Rayleigh distribution for the amplitude and an uniform distribution for the phase. More...
|
|
pseudo random number generator
◆ random()
gr::random::random |
( |
uint64_t |
seed = 0 , |
|
|
int64_t |
min_integer = 0 , |
|
|
int64_t |
max_integer = 2 |
|
) |
| |
◆ ~random()
◆ gasdev()
float gr::random::gasdev |
( |
| ) |
|
Normally distributed random numbers (Gaussian distribution with zero mean and variance 1)
◆ impulse()
float gr::random::impulse |
( |
float |
factor | ) |
|
Exponentially distributed random numbers with values less than or equal to factor replaced with zero. The underlying exponential distribution has mean sqrt(2) and variance 2.
◆ laplacian()
float gr::random::laplacian |
( |
| ) |
|
Laplacian distributed random numbers with zero mean and variance 1.
◆ ran1()
float gr::random::ran1 |
( |
| ) |
|
Uniform random numbers in the range [0.0, 1.0)
◆ ran_int()
int64_t gr::random::ran_int |
( |
| ) |
|
Uniform random integers in the range set by 'set_integer_limits' [min, max).
◆ rayleigh()
float gr::random::rayleigh |
( |
| ) |
|
Rayleigh distributed random numbers (zero mean and variance 1 for the underlying Gaussian distributions)
◆ rayleigh_complex()
Normally distributed random numbers with zero mean and variance 1 on real and imaginary part. This results in a Rayleigh distribution for the amplitude and an uniform distribution for the phase.
◆ reseed()
void gr::random::reseed |
( |
uint64_t |
seed | ) |
|
Change the seed for the initialized number generator. seed = 0 initializes the random number generator with the system time.
◆ set_integer_limits()
void gr::random::set_integer_limits |
( |
int64_t |
minimum, |
|
|
int64_t |
maximum |
|
) |
| |
set minimum and maximum for integer random number generator. Limits are [minimum, maximum) Default: [0, std::numeric_limits< IntType >::max)]
◆ d_gauss_stored
bool gr::random::d_gauss_stored |
|
protected |
◆ d_gauss_value
float gr::random::d_gauss_value |
|
protected |
◆ d_integer_dis
std::uniform_int_distribution<int64_t> gr::random::d_integer_dis |
|
protected |
◆ d_rng
◆ d_seed
◆ d_uniform
std::uniform_real_distribution<float> gr::random::d_uniform |
|
protected |
The documentation for this class was generated from the following file: