Definition at line 140 of file RandomFunctions.h.
Public Member Functions | |
RandomFunctions (Engine &rng) | |
~RandomFunctions () | |
destructor (no op) we do not mantain the engine) | |
double | Beta (double, double) |
int | Binomial (int ntot, double prob) |
Generate binomial numbers. | |
double | BreitWigner (double mean, double gamma) |
Return a number distributed following a BreitWigner function with mean and gamma. | |
double | ChiSquare (double) |
void | Circle (double &x, double &y, double r) |
Generates random vectors, uniformly distributed over a circle of given radius. | |
double | Exp (double tau) |
Returns an exponential deviate. | |
double | FDist (double, double) |
double | Gamma (double, double) |
methods which are only for GSL random generators | |
double | Gaus (double mean, double sigma) |
generate Gaussian number using defqault method | |
double | GausACR (double mean, double sigma) |
generate random numbers according to the Accemptance-Complemet-Ratio method | |
double | GausBM (double mean, double sigma) |
generate Gaussian number using Box-Muller method | |
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 ) | |
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 | |
double | Pareto (double, double) |
int | Poisson (double mean) |
Generates a random integer N according to a Poisson law. | |
double | PoissonD (double mean) |
void | Rannor (double &a, double &b) |
Generate numbers distributed following a gaussian with mean=0 and sigma=1. | |
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. | |
double | tDist (double) |
double | Uniform (double a) |
generate random numbers following a Uniform distribution in the [0,a] interval | |
double | Uniform (double a, double b) |
generate random numbers following a Uniform distribution in the [a,b] interval | |
Protected Member Functions | |
double | Rndm_impl () |
Internal impelmentation to return random number Since this one is not a virtual function is faster than Rndm. | |
Engine & | Rng () |
Private Attributes | |
Engine * | fEngine |
RandomFunctionsImpl< EngineBaseType > | fImpl |
random number generator engine | |
#include <Math/RandomFunctions.h>
|
inline |
Definition at line 147 of file RandomFunctions.h.
|
inline |
destructor (no op) we do not mantain the engine)
Definition at line 152 of file RandomFunctions.h.
|
inline |
Definition at line 253 of file RandomFunctions.h.
|
inline |
Generate binomial numbers.
Definition at line 160 of file RandomFunctions.h.
|
inline |
Return a number distributed following a BreitWigner function with mean and gamma.
Definition at line 165 of file RandomFunctions.h.
|
inline |
Definition at line 261 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 172 of file RandomFunctions.h.
|
inline |
|
inline |
Definition at line 277 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 248 of file RandomFunctions.h.
|
inline |
generate Gaussian number using defqault method
Definition at line 228 of file RandomFunctions.h.
|
inline |
generate random numbers according to the Accemptance-Complemet-Ratio method
Definition at line 188 of file RandomFunctions.h.
|
inline |
generate Gaussian number using Box-Muller method
Definition at line 183 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 195 of file RandomFunctions.h.
|
inline |
Definition at line 269 of file RandomFunctions.h.
|
inline |
Definition at line 257 of file RandomFunctions.h.
|
inline |
Definition at line 289 of file RandomFunctions.h.
|
inline |
Definition at line 285 of file RandomFunctions.h.
|
inline |
non-virtual method
Definition at line 156 of file RandomFunctions.h.
|
inline |
Definition at line 273 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 201 of file RandomFunctions.h.
|
inline |
Definition at line 202 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 206 of file RandomFunctions.h.
|
inline |
Definition at line 265 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 301 of file RandomFunctions.h.
|
inlineprotected |
Definition at line 297 of file RandomFunctions.h.
|
inline |
Generates random vectors, uniformly distributed over the surface of a sphere of given radius.
Definition at line 212 of file RandomFunctions.h.
|
inline |
Definition at line 281 of file RandomFunctions.h.
|
inline |
generate random numbers following a Uniform distribution in the [0,a] interval
Definition at line 222 of file RandomFunctions.h.
|
inline |
generate random numbers following a Uniform distribution in the [a,b] interval
Definition at line 217 of file RandomFunctions.h.
|
private |
Definition at line 306 of file RandomFunctions.h.
|
private |
random number generator engine
Definition at line 307 of file RandomFunctions.h.