Logo ROOT  
Reference Guide
TRandom3.h
Go to the documentation of this file.
1 // @(#)root/mathcore:$Id$
2 // Author: Peter Malzacher 31/08/99
3 
4 /*************************************************************************
5  * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
6  * All rights reserved. *
7  * *
8  * For the licensing terms see $ROOTSYS/LICENSE. *
9  * For the list of contributors see $ROOTSYS/README/CREDITS. *
10  *************************************************************************/
11 
12 #ifndef ROOT_TRandom3
13 #define ROOT_TRandom3
14 
15 
16 
17 //////////////////////////////////////////////////////////////////////////
18 // //
19 // TRandom3 //
20 // //
21 // random number generator class: Mersenne Twister //
22 // //
23 //////////////////////////////////////////////////////////////////////////
24 
25 #include "TRandom.h"
26 
27 class TRandom3 : public TRandom {
28 
29 private:
30  UInt_t fMt[624];
32 
33 public:
34  TRandom3(UInt_t seed=4357);
35  virtual ~TRandom3();
36  // get the current seed (only first element of the seed table)
37  virtual UInt_t GetSeed() const { return fMt[0];}
38  using TRandom::Rndm;
39  virtual Double_t Rndm( );
40  virtual void RndmArray(Int_t n, Float_t *array);
41  virtual void RndmArray(Int_t n, Double_t *array);
42  virtual void SetSeed(ULong_t seed=0);
43 
44  ClassDef(TRandom3,2) //Random number generator: Mersenne Twister
45 };
46 
48 
49 #endif
n
const Int_t n
Definition: legend1.C:16
TRandom3::TRandom3
TRandom3(UInt_t seed=4357)
Default constructor If seed is 0, the seed is automatically computed via a TUUID object.
Definition: TRandom3.cxx:80
gRandom
R__EXTERN TRandom * gRandom
Definition: TRandom3.h:47
TRandom3::RndmArray
virtual void RndmArray(Int_t n, Float_t *array)
Return an array of n random numbers uniformly distributed in ]0,1].
Definition: TRandom3.cxx:143
TRandom.h
Float_t
float Float_t
Definition: RtypesCore.h:57
Int_t
int Int_t
Definition: RtypesCore.h:45
TRandom
This is the base class for the ROOT Random number generators.
Definition: TRandom.h:27
TRandom3
Random number generator class based on M.
Definition: TRandom3.h:27
TRandom3::SetSeed
virtual void SetSeed(ULong_t seed=0)
Set the random generator sequence if seed is 0 (default value) a TUUID is generated and used to fill ...
Definition: TRandom3.cxx:206
TRandom3::fCount624
Int_t fCount624
Definition: TRandom3.h:31
TRandom3::GetSeed
virtual UInt_t GetSeed() const
Definition: TRandom3.h:37
TRandom::Rndm
virtual Double_t Rndm()
Machine independent random number generator.
Definition: TRandom.cxx:541
ULong_t
unsigned long ULong_t
Definition: RtypesCore.h:55
unsigned int
TRandom3::fMt
UInt_t fMt[624]
Definition: TRandom3.h:30
Double_t
double Double_t
Definition: RtypesCore.h:59
TRandom3::~TRandom3
virtual ~TRandom3()
Default destructor.
Definition: TRandom3.cxx:90
TRandom3::Rndm
virtual Double_t Rndm()
Machine independent random number generator.
Definition: TRandom3.cxx:99
ClassDef
#define ClassDef(name, id)
Definition: Rtypes.h:325
R__EXTERN
#define R__EXTERN
Definition: DllImport.h:27
int