library: libCore
#include "TRandom1.h"

TRandom1


class description - header file - source file
viewCVS header - viewCVS source

class TRandom1: public TRandom

Inheritance Inherited Members Includes Libraries
Class Charts

Function Members (Methods)

Display options:
Show inherited
Show non-public
public:
TRandom1()
TRandom1(const TRandom1&)
TRandom1(UInt_t seed, Int_t lux = 3)
TRandom1(Int_t rowIndex, Int_t colIndex, Int_t lux)
virtual~TRandom1()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual Int_tTRandom::Binomial(Int_t ntot, Double_t prob)
virtual Double_tTRandom::BreitWigner(Double_t mean = 0, Double_t gamma = 1)
virtual voidTObject::Browse(TBrowser* b)
virtual voidTRandom::Circle(Double_t& x, Double_t& y, Double_t r)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTNamed::Clear(Option_t* option = "")
virtual TObject*TNamed::Clone(const char* newname = "") const
virtual Int_tTNamed::Compare(const TObject* obj) const
virtual voidTNamed::Copy(TObject& named) const
virtual voidTObject::Delete(Option_t* option = "")
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() const
virtual TObject*TObject::DrawClone(Option_t* option = "") const
virtual voidTObject::Dump() const
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual Double_tTRandom::Exp(Double_t tau)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual voidTNamed::FillBuffer(char*& buffer)
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
virtual Double_tTRandom::Gaus(Double_t mean = 0, Double_t sigma = 1)
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual const char*TObject::GetIconName() const
virtual Int_tGetLuxury() const
virtual const char*TNamed::GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
virtual UInt_tTRandom::GetSeed()
static voidGetTableSeeds(UInt_t* seeds, Int_t index)
const UInt_t*GetTheSeeds() const
virtual const char*TNamed::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTNamed::Hash() const
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidTObject::Inspect() const
virtual UInt_tTRandom::Integer(UInt_t imax)
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTNamed::IsSortable() const
Bool_tTObject::IsZombie() const
virtual Double_tTRandom::Landau(Double_t mean = 0, Double_t sigma = 1)
virtual voidTNamed::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
virtual Bool_tTObject::Notify()
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
TRandom&TRandom::operator=(const TRandom&)
virtual voidTObject::Paint(Option_t* option = "")
virtual Int_tTRandom::Poisson(Double_t mean)
virtual Double_tTRandom::PoissonD(Double_t mean)
virtual voidTObject::Pop()
virtual voidTNamed::Print(Option_t* option = "") const
virtual voidTRandom::Rannor(Float_t& a, Float_t& b)
virtual voidTRandom::Rannor(Double_t& a, Double_t& b)
virtual Int_tTObject::Read(const char* name)
virtual voidTRandom::ReadRandom(const char* filename)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
virtual Double_tRndm(Int_t i = 0)
virtual voidRndmArray(Int_t size, Float_t* vect)
virtual voidRndmArray(Int_t size, Double_t* vect)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") const
virtual voidTObject::SavePrimitive(ostream& out, Option_t* option = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidTObject::SetDrawOption(Option_t* option = "")
static voidTObject::SetDtorOnly(void* obj)
virtual voidTNamed::SetName(const char* name)
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidSetSeed(UInt_t seed)
virtual voidSetSeed2(UInt_t seed, Int_t lux = 3)
virtual voidSetSeeds(const UInt_t* seeds, Int_t lux = 3)
virtual voidTNamed::SetTitle(const char* title = "")
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector& insp, char* parent)
virtual Int_tTNamed::Sizeof() const
virtual voidTRandom::Sphere(Double_t& x, Double_t& y, Double_t& z, Double_t r)
virtual voidStreamer(TBuffer& b)
voidStreamerNVirtual(TBuffer& b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
virtual Double_tTRandom::Uniform(Double_t x1 = 1)
virtual Double_tTRandom::Uniform(Double_t x1, Double_t x2)
virtual voidTObject::UseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = "0", Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = "0", Int_t option = 0, Int_t bufsize = 0) const
virtual voidTRandom::WriteRandom(const char* filename)
protected:
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()

Data Members

public:
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
protected:
Int_tfNskip
Int_tfLuxury
Int_tfIlag
Int_tfJlag
Int_tfCount24
Float_tfFloatSeedTable[24]
Float_tfCarry
const Int_tfIntModulus
static Int_tfgNumEngines
static Int_tfgMaxIndex
const UInt_t*fTheSeeds
const Double_tfMantissaBit24
const Double_tfMantissaBit12
UInt_tTRandom::fSeedRandom number generator seed
TStringTNamed::fNameobject identifier
TStringTNamed::fTitleobject title

Class Description


 TRandom1

 The Ranlux Random number generator class

 The algorithm for this random engine has been taken from the original
 implementation in FORTRAN by Fred James as part of CLHEP.

 The initialisation is carried out using a Multiplicative Congruential
 generator using formula constants of L'Ecuyer as described in "F.James,
 Comp. Phys. Comm. 60 (1990) 329-344".


TRandom1(UInt_t seed, Int_t lux)
 Luxury level is set in the same way as the original FORTRAN routine.
  level 0  (p=24): equivalent to the original RCARRY of Marsaglia
           and Zaman, very long period, but fails many tests.
  level 1  (p=48): considerable improvement in quality over level 0,
           now passes the gap test, but still fails spectral test.
  level 2  (p=97): passes all known tests, but theoretically still
           defective.
  level 3  (p=223): DEFAULT VALUE.  Any theoretically possible
           correlations have very small chance of being observed.
  level 4  (p=389): highest possible luxury, all 24 bits chaotic.
TRandom1()
default constructor
TRandom1(int rowIndex, int colIndex, int lux)
constructor
~TRandom1()
destructor
void GetTableSeeds(UInt_t* seeds, Int_t index)
static function returning the table of seeds
Double_t Rndm(Int_t)
return a random number in ]0,1]
void RndmArray(const Int_t size, Float_t *vect)
return an array of random numbers in ]0,1]
void RndmArray(const Int_t size, Double_t *vect)
return an array of random numbers in ]0,1]
void SetSeeds(const UInt_t *seeds, int lux)
set seeds
void SetSeed2(UInt_t seed, int lux)
 The initialisation is carried out using a Multiplicative
 Congruential generator using formula constants of L'Ecuyer
 as described in "A review of pseudorandom number generators"
 (Fred James) published in Computer Physics Communications 60 (1990)
 pages 329-344

 modified for the case of seed = 0. In that case a random 64 bits seed based on 
 TUUID (using TRandom3(0) ) is generated in order to have a unique seed 

void SetSeed(UInt_t seed)
 Set RanLux seed using default luxury level
TRandom1()
Int_t GetLuxury()
 Gets the current seed.
{return fLuxury;}
const UInt_t * GetTheSeeds()
 Gets the current array of seeds.
{return fTheSeeds;}

Author: Rene Brun from CLHEP & CERNLIB 04/05/2006
Last update: root/base:$Name: $:$Id: TRandom1.cxx,v 1.6 2006/05/30 11:53:50 brun Exp $


ROOT page - Class index - Class Hierarchy - Top of the page

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.