18 #ifndef ROOT_Math_TUnuranBaseDist 115 bool Init(
const std::string & distr,
const std::string & method);
169 bool InitPoisson(
double mu,
const std::string & method =
"dstd");
179 bool InitBinomial(
unsigned int ntot,
double prob,
const std::string & method =
"dstd");
224 void SetSeed(
unsigned int seed);
266 std::unique_ptr<TUnuranBaseDist>
fDist;
TRandom * GetRandom()
return instance of the random engine used
double dist(Rotation3D const &r1, Rotation3D const &r2)
bool InitBinomial(unsigned int ntot, double prob, const std::string &method="dstd")
Initialize method for the Binomial distribution Used to generate poisson numbers for a constant param...
double Sample()
Sample 1D distribution User is responsible for having previously correctly initialized with TUnuran::...
bool ReInitDiscrDist(unsigned int npar, double *params)
Reinitialize UNURAN by changing the distribution parameters but mantaining same distribution and meth...
TUnuran & operator=(const TUnuran &rhs)
Assignment operator.
int SampleDiscr()
Sample discrete distributions User is responsible for having previously correctly initialized with TU...
bool SampleMulti(double *x)
Sample multidimensional distributions User is responsible for having previously correctly initialized...
bool SetLogLevel(unsigned int iflag=1)
set log level
This is the base class for the ROOT Random number generators.
bool InitPoisson(double mu, const std::string &method="dstd")
Initialize method for the Poisson distribution Used to generate poisson numbers for a constant parame...
void SetSeed(unsigned int seed)
set the seed for the random number generator
TUnuranDiscrDist class for one dimensional discrete distribution.
bool SetMultiDistribution(const TUnuranMultiContDist &dist)
TUnuranEmpDist class for describing empiral distributions.
bool SetLogStream()
set stream for log and error (not yet implemented)
bool SetContDistribution(const TUnuranContDist &dist)
struct unur_urng UNUR_URNG
const std::string & MethodName() const
used Unuran method
TUnuranMultiContDist class describing multi dimensional continuous distributions. ...
TUnuran(TRandom *r=0, unsigned int log=0)
Constructor with a generator instance and given level of log output.
bool SetMethodAndInit()
change the method and initialize Unuran with the previously given distribution
bool SetDiscreteDistribution(const TUnuranDiscrDist &dist)
bool SetRandomGenerator()
TUnuranContDist class describing one dimensional continuous distribution.
bool Init(const std::string &distr, const std::string &method)
initialize with Unuran string interface
struct unur_distr UNUR_DISTR
std::unique_ptr< TUnuranBaseDist > fDist
bool SetEmpiricalDistribution(const TUnuranEmpDist &dist)
void SetRandom(TRandom *r)
set the random engine.