pseudo random number generator
More...
#include <gnuradio/random.h>
|
| random (unsigned int seed=0, int min_integer=0, int max_integer=2) |
|
| ~random () |
|
void | reseed (unsigned int seed) |
| Change the seed for the initialized number generator. seed = 0 initializes the random number generator with the system time. Note that a fast initialization of various instances can result in the same seed. More...
|
|
void | set_integer_limits (const int minimum, const int maximum) |
|
int | 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 |
( |
unsigned int |
seed = 0 , |
|
|
int |
min_integer = 0 , |
|
|
int |
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()
int 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 |
( |
unsigned int |
seed | ) |
|
Change the seed for the initialized number generator. seed = 0 initializes the random number generator with the system time. Note that a fast initialization of various instances can result in the same seed.
◆ set_integer_limits()
void gr::random::set_integer_limits |
( |
const int |
minimum, |
|
|
const int |
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_generator
boost::variate_generator<boost::mt19937&, boost::uniform_real<float> >* gr::random::d_generator |
|
protected |
◆ d_integer_dis
boost::uniform_int* gr::random::d_integer_dis |
|
protected |
◆ d_integer_generator
boost::variate_generator<boost::mt19937&, boost::uniform_int<> >* gr::random::d_integer_generator |
|
protected |
◆ d_rng
boost::mt19937* gr::random::d_rng |
|
protected |
◆ d_seed
◆ d_uniform
boost::uniform_real<float>* gr::random::d_uniform |
|
protected |
The documentation for this class was generated from the following file: