CosmoBolognaLib
Free Software C++/Python libraries for cosmological calculations
cbl::random::UniformRandomNumbers_Int Class Reference

The class UniformRandomNumbers_Int. More...

#include <RandomNumbers.h>

Inheritance diagram for cbl::random::UniformRandomNumbers_Int:
Collaboration diagram for cbl::random::UniformRandomNumbers_Int:

Public Member Functions

 UniformRandomNumbers_Int (double MinVal, const double MaxVal, const int seed)
 constructor More...
 
 ~UniformRandomNumbers_Int ()=default
 default destructor
 
double operator() ()
 extract number from the distribution More...
 
- Public Member Functions inherited from cbl::random::RandomNumbers
 RandomNumbers ()=default
 default constructor
 
 RandomNumbers (const int seed, const double MinVal=par::defaultDouble, const double MaxVal=-par::defaultDouble)
 constructor More...
 
virtual ~RandomNumbers ()=default
 default destructor
 
void set_seed (const int seed)
 set the random number generator seed More...
 
void set_range (const double MinVal, const double MaxVal)
 set the range for the random number extraction More...
 
void set_value (const double value)
 set the value for constant distribution More...
 
virtual void set_mean (const double mean)
 set the mean for Poisson distribution More...
 
virtual void set_mean_sigma (const double mean, const double sigma)
 set parameters for Normal distribution More...
 
virtual void set_discrete_values (const std::vector< double > values, const std::vector< double > weights)
 set parameters for Discrete distribution More...
 
virtual void set_interpolated_distribution (const std::vector< double > values, const std::vector< double > weights)
 set the parameters for the interpolated distribution More...
 
virtual void set_custom_distribution (const distribution_func func, const std::shared_ptr< void > modelInput, const std::vector< double > parameter)
 set parameters for interpolated distribution More...
 

Protected Attributes

std::shared_ptr< std::uniform_int_distribution< int > > m_distribution
 uniform distribution
 
- Protected Attributes inherited from cbl::random::RandomNumbers
std::mt19937_64 m_generator
 pseudo-random numbers generator
 
int m_seed
 seed
 
double m_MinVal
 minimum value to generate
 
double m_MaxVal
 maximum value to generate
 

Detailed Description

The class UniformRandomNumbers_Int.

"Headers/RandomNumbers.h"

The base class to generate random integers on a interval

Definition at line 295 of file RandomNumbers.h.

Constructor & Destructor Documentation

◆ UniformRandomNumbers_Int()

cbl::random::UniformRandomNumbers_Int::UniformRandomNumbers_Int ( double  MinVal,
const double  MaxVal,
const int  seed 
)

constructor

Parameters
MinVallower limit of the random numbers range; the corresponding lower limit will be ceil(MinVal)
MaxValupper limit of the random numbers range; the corresponding upper limit will be floor(MaxVal)
seedthe random number generator seed

Definition at line 93 of file RandomNumbers.cpp.

Member Function Documentation

◆ operator()()

double cbl::random::UniformRandomNumbers_Int::operator() ( )
virtual

extract number from the distribution

Returns
random values

Implements cbl::random::RandomNumbers.

Definition at line 102 of file RandomNumbers.cpp.


The documentation for this class was generated from the following files: