73 if (
this == &eng)
return *
this;
112 return (status == 0);
119 for (
unsigned int i = 0; i <
n; ++i ) {
120 status |= gsl_qrng_get(
fQRng->
Rng(), &xtmp[0] );
129 for (
double * itr = begin; itr != end; itr+=
fQRng->
Dimension() ) {
130 status |= gsl_qrng_get(
fQRng->
Rng(), itr );
142 if (!name)
return std::string();
143 return std::string( name);
150 return gsl_qrng_size(
fQRng->
Rng() );
double operator()() const
Generate a random number between ]0,1[.
Namespace for new ROOT classes and functions.
void Allocate(unsigned int dimension)
unsigned int Size() const
return the state size of generator
GSLQuasiRandomEngine & operator=(const GSLQuasiRandomEngine &eng)
Assignment operator : make a deep copy of the contained GSL generator.
bool Skip(unsigned int n) const
Skip the next n random numbers.
void SetType(GSLQRngWrapper *r)
internal method used by the derived class to set the type of generators
unsigned int NDim() const
return the dimension of generator
void Initialize(unsigned int dimension)
initialize the generator giving the dimension of the sequence If no rng is present the default one ba...
virtual ~GSLQuasiRandomEngine()
call Terminate()
unsigned int Dimension() const
void Terminate()
delete pointer to contained rng
Namespace for new Math classes and functions.
GSLQRngWrapper class to wrap gsl_qrng structure.
GSLQuasiRandomEngine Base class for all GSL quasi random engines, normally user instantiate the deriv...
std::string Name() const
return name of generator
GSLQuasiRandomEngine()
default constructor.
bool GenerateArray(double *begin, double *end) const
Generate an array of quasi random numbers The iterators points to the random numbers.