17#ifndef ROOT_Math_Random
18#define ROOT_Math_Random
38 template <
class Engine>
147 double FDist(
double nu1,
double nu2) {
171 void Sphere(
double &
x,
double &
y,
double &z,
double r = 1) {
179 unsigned int Binomial(
unsigned int ntot,
double prob) {
197 std::vector<unsigned int>
Multinomial(
unsigned int ntot,
const std::vector<double> & p ) {
Documentation for the Random class.
double Logistic(double a)
Logistic distribution.
double Beta(double a, double b)
Beta distribution.
double tDist(double nu)
t student distribution
double FDist(double nu1, double nu2)
F-distribution.
double ChiSquare(double nu)
chi-square
void Circle(double &x, double &y, double r=1)
generate random numbers in a 2D circle of radious 1
unsigned int Poisson(double mu)
Poisson distribution.
double Rayleigh(double sigma)
Rayleigh distribution.
double Pareto(double a, double b)
Pareto distribution.
Engine::BaseType EngineBaseType
std::vector< unsigned int > Multinomial(unsigned int ntot, const std::vector< double > &p)
Multinomial distribution.
std::string Type() const
Return the type (name) of the used generator.
double Gamma(double a, double b)
Gamma distribution.
RandomFunctions< Engine, EngineBaseType > RndmFunctions
void RndmArray(int n, double *array)
Generate an array of random numbers between ]0,1] 0 is excluded and 1 is included Function to preserv...
unsigned int Binomial(unsigned int ntot, double prob)
discrete distributions
double LogNormal(double zeta, double sigma)
Log-normal distribution.
void Sphere(double &x, double &y, double &z, double r=1)
generate random numbers in a 3D sphere of radious 1
double Exp(double tau)
Exponential distribution.
double BreitWigner(double mean=0., double gamma=1)
Breit Wigner distribution.
double Uniform(double a, double b)
double Uniform(double a=1.0)
double Landau(double m=0, double s=1)
Landau distribution.
unsigned int NegativeBinomial(double n, double prob)
Negative Binomial distribution First parameter is n, second is probability To be consistent with Rand...
Random(unsigned int seed)
unsigned int EngineSize() const
Return the size of the generator state.
double Uniform2(double a, double b)
RandomFunctions< Engine, EngineBaseType > & Functions()
double Gaus(double mean=0, double sigma=1)
Namespace for new Math classes and functions.
Random< ROOT::Math::StdEngine< std::mt19937_64 > > RandomMT64
Random< ROOT::Math::StdEngine< std::ranlux48 > > RandomRanlux48
Random< ROOT::Math::MixMaxEngine< 240, 0 > > RandomMixMax
Useful typedef definitions.
Random< ROOT::Math::MersenneTwisterEngine > RandomMT19937
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...
static constexpr double s
Short_t Max(Short_t a, Short_t b)