Definition at line 139 of file RandomFunctions.h.
Public Member Functions | |
RandomFunctions (Engine &rng) | |
~RandomFunctions () | |
destructor (no op) we do not mantain the engine) More... | |
double | Beta (double, double) |
int | Binomial (int ntot, double prob) |
Generate binomial numbers. More... | |
double | BreitWigner (double mean, double gamma) |
Return a number distributed following a BreitWigner function with mean and gamma. More... | |
double | ChiSquare (double) |
void | Circle (double &x, double &y, double r) |
Generates random vectors, uniformly distributed over a circle of given radius. More... | |
double | Exp (double tau) |
Returns an exponential deviate. More... | |
double | FDist (double, double) |
double | Gamma (double, double) |
methods which are only for GSL random generators More... | |
double | Gaus (double mean, double sigma) |
generate Gaussian number using defqault method More... | |
double | GausACR (double mean, double sigma) |
generate random numbers according to the Accemptance-Complemet-Ratio method More... | |
double | GausBM (double mean, double sigma) |
generate Gaussian number using Box-Muller method More... | |
double | Landau (double mu, double sigma) |
Generate a random number following a Landau distribution with location parameter mu and scale parameter sigma: Landau( (x-mu)/sigma ) More... | |
double | Logistic (double) |
double | LogNormal (double, double) |
std::vector< unsigned int > | MultiNomial (unsigned int, const std::vector< double > &) |
unsigned int | NegativeBinomial (double, double) |
double | operator() () |
non-virtual method More... | |
double | Pareto (double, double) |
int | Poisson (double mean) |
Generates a random integer N according to a Poisson law. More... | |
double | PoissonD (double mean) |
void | Rannor (double &a, double &b) |
Generate numbers distributed following a gaussian with mean=0 and sigma=1. More... | |
double | Rayleigh (double) |
void | Sphere (double &x, double &y, double &z, double r) |
Generates random vectors, uniformly distributed over the surface of a sphere of given radius. More... | |
double | tDist (double) |
double | Uniform (double a) |
generate random numbers following a Uniform distribution in the [0,a] interval More... | |
double | Uniform (double a, double b) |
generate random numbers following a Uniform distribution in the [a,b] interval More... | |
Protected Member Functions | |
double | Rndm_impl () |
Internal impelmentation to return random number Since this one is not a virtual function is faster than Rndm. More... | |
Engine & | Rng () |
Private Attributes | |
Engine * | fEngine |
RandomFunctionsImpl< EngineBaseType > | fImpl |
random number generator engine More... | |
#include <Math/RandomFunctions.h>
|
inline |
Definition at line 146 of file RandomFunctions.h.
|
inline |
destructor (no op) we do not mantain the engine)
Definition at line 151 of file RandomFunctions.h.
|
inline |
Definition at line 252 of file RandomFunctions.h.
|
inline |
Generate binomial numbers.
Definition at line 159 of file RandomFunctions.h.
|
inline |
Return a number distributed following a BreitWigner function with mean and gamma.
Definition at line 164 of file RandomFunctions.h.
|
inline |
Definition at line 260 of file RandomFunctions.h.
|
inline |
Generates random vectors, uniformly distributed over a circle of given radius.
Input : r = circle radius Output: x,y a random 2-d vector of length r
Definition at line 171 of file RandomFunctions.h.
|
inline |
|
inline |
Definition at line 276 of file RandomFunctions.h.
|
inline |
methods which are only for GSL random generators
Gamma functions (not implemented here, requires a GSL random engine)
Definition at line 247 of file RandomFunctions.h.
|
inline |
generate Gaussian number using defqault method
Definition at line 227 of file RandomFunctions.h.
|
inline |
generate random numbers according to the Accemptance-Complemet-Ratio method
Definition at line 187 of file RandomFunctions.h.
|
inline |
generate Gaussian number using Box-Muller method
Definition at line 182 of file RandomFunctions.h.
|
inline |
Generate a random number following a Landau distribution with location parameter mu and scale parameter sigma: Landau( (x-mu)/sigma )
Definition at line 194 of file RandomFunctions.h.
|
inline |
Definition at line 268 of file RandomFunctions.h.
|
inline |
Definition at line 256 of file RandomFunctions.h.
|
inline |
Definition at line 288 of file RandomFunctions.h.
|
inline |
Definition at line 284 of file RandomFunctions.h.
|
inline |
non-virtual method
Definition at line 155 of file RandomFunctions.h.
|
inline |
Definition at line 272 of file RandomFunctions.h.
|
inline |
Generates a random integer N according to a Poisson law.
Prob(N) = exp(-mean)*mean^N/Factorial(N)
Definition at line 200 of file RandomFunctions.h.
|
inline |
Definition at line 201 of file RandomFunctions.h.
|
inline |
Generate numbers distributed following a gaussian with mean=0 and sigma=1.
Using the Box-Muller method
Definition at line 205 of file RandomFunctions.h.
|
inline |
Definition at line 264 of file RandomFunctions.h.
|
inlineprotected |
Internal impelmentation to return random number Since this one is not a virtual function is faster than Rndm.
Definition at line 300 of file RandomFunctions.h.
|
inlineprotected |
Definition at line 296 of file RandomFunctions.h.
|
inline |
Generates random vectors, uniformly distributed over the surface of a sphere of given radius.
Definition at line 211 of file RandomFunctions.h.
|
inline |
Definition at line 280 of file RandomFunctions.h.
|
inline |
generate random numbers following a Uniform distribution in the [0,a] interval
Definition at line 221 of file RandomFunctions.h.
|
inline |
generate random numbers following a Uniform distribution in the [a,b] interval
Definition at line 216 of file RandomFunctions.h.
|
private |
Definition at line 305 of file RandomFunctions.h.
|
private |
random number generator engine
Definition at line 306 of file RandomFunctions.h.