This class generates the quasi-random (aka "low discrepancy") sequence for dimensions up to 12 using the Niederreiter base 2 algorithm described in Bratley, Fox, Niederreiter, ACM Trans. Model. Comp. Sim. 2, 195 (1992). This implementation was adapted from the 0.9 beta release of the GNU scientific library. Quasi-random number sequences are useful for improving the convergence of a Monte Carlo integration.
RooQuasiRandomGenerator() | |
RooQuasiRandomGenerator(const RooQuasiRandomGenerator&) | |
virtual | ~RooQuasiRandomGenerator() |
static TClass* | Class() |
Bool_t | generate(UInt_t dimension, Double_t* vector) |
virtual TClass* | IsA() const |
RooQuasiRandomGenerator& | operator=(const RooQuasiRandomGenerator&) |
void | reset() |
virtual void | ShowMembers(TMemberInspector& insp) |
virtual void | Streamer(TBuffer& b) |
void | StreamerNVirtual(TBuffer& b) |
Int_t | add(Int_t x, Int_t y) const |
void | calculateCoefs(UInt_t dimension) |
void | calculateV(const int* px, int px_degree, int* pb, int* pb_degree, int* v, int maxv) |
Int_t | mul(Int_t x, Int_t y) const |
void | polyMultiply(const int* pa, int pa_degree, const int* pb, int pb_degree, int* pc, int* pc_degree) |
Int_t | sub(Int_t x, Int_t y) const |
Perform one-time initialization of our static coefficient array if necessary and initialize our workspace.
Generate the next number in the sequence for the specified dimension. The maximum dimension supported is 12.
Internal function
Internal function