ROOT logo
AliRoot » STEER » STEER » AliMC

class AliMC: public TVirtualMCApplication

Function Members (Methods)

public:
AliMC()
AliMC(const char* name, const char* title)
virtual~AliMC()
voidTObject::AbstractMethod(const char* method) const
virtual voidAddDigit(Int_t id, Int_t* tracks, Int_t* digits) const
voidAddEnergyDeposit(Int_t id, Float_t edep)
virtual voidAddHit(Int_t id, Int_t track, Int_t* vol, Float_t* hits) const
virtual voidAddHitList(TCollection* hitList)
virtual voidTVirtualMCApplication::AddIons()
virtual voidAddParticles()
AliTrackReference*AddTrackReference(Int_t label, Int_t id = -999)
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidBeginEvent()
virtual voidBeginPrimary()
virtual voidTObject::Browse(TBrowser* b)
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 voidConstructGeometry()
virtual voidConstructOpGeometry()
virtual voidTNamed::Copy(TObject& named) const
virtual voidDecayLimits(Float_t rmin = -1., Float_t rmax = -1., Int_t pdg = 0)
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Int_tDetFromMate(Int_t i) const
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
virtual voidDumpPart(Int_t i) const
virtual voidDumpPStack() const
virtual voidEnergySummary()
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 voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual voidTVirtualMCApplication::Field(const Double_t* x, Double_t* b) const
virtual voidTNamed::FillBuffer(char*& buffer)
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
virtual voidFinishEvent()
virtual voidFinishPrimary()
virtual voidFinishRun()
virtual voidFixParticleDecaytime()
virtual voidFlagTrack(Int_t track) const
virtual voidTVirtualMCApplication::GeaneStepping()
virtual voidGeneratePrimaries()
virtual AliGenerator*Generator() const
Int_tGetCurrentTrackNumber() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
TList*GetHitLists() const
virtual const char*TObject::GetIconName() const
virtual const char*TNamed::GetName() const
Int_tGetNtrack() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
virtual Int_tGetPrimary(Int_t track) const
virtual const char*TNamed::GetTitle() const
AliTransportMonitor*GetTransportMonitor() 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 voidInit()
virtual voidInitGeometry()
virtual voidTObject::Inspect() constMENU
static TVirtualMCApplication*TVirtualMCApplication::Instance()
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tIsGeometryFromCDB() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTNamed::IsSortable() const
Bool_tTObject::IsZombie() const
virtual voidKeepTrack(Int_t itra) const
virtual voidTNamed::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
virtual voidMediaTable()
virtual Bool_tMisalignGeometry()
virtual Bool_tTObject::Notify()
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
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)
virtual voidTObject::Paint(Option_t* option = "")
TParticle*Particle(Int_t i) const
const TObjArray*Particles() const
virtual voidTObject::Pop()
virtual voidPostTrack()
virtual voidPreTrack()
virtual voidTNamed::Print(Option_t* option = "") const
virtual voidPushTrack(Int_t done, Int_t parent, Int_t pdg, const Float_t* pmom, const Float_t* vpos, const Float_t* polar, Float_t tof, TMCProcess mech, Int_t& ntr, Float_t weight = 1, Int_t is = 0) const
virtual voidPushTrack(Int_t done, Int_t parent, Int_t pdg, Double_t px, Double_t py, Double_t pz, Double_t e, Double_t vx, Double_t vy, Double_t vz, Double_t tof, Double_t polx, Double_t poly, Double_t polz, TMCProcess mech, Int_t& ntr, Float_t weight = 1, Int_t is = 0) const
virtual Int_tTObject::Read(const char* name)
virtual voidReadTransPar()
virtual voidTObject::RecursiveRemove(TObject* obj)
virtual voidRemapTrackReferencesIDs(const Int_t* map)
voidTObject::ResetBit(UInt_t f)
virtual voidResetDigits()
virtual voidResetGenerator(AliGenerator* generator)
virtual voidResetHits()
virtual voidResetSDigits()
virtual voidResetTrackReferences()
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
virtual voidSetAllAlignableVolumes()
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidSetCurrentTrack(Int_t track) const
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
virtual voidSetGenerator(AliGenerator* generator)
voidSetGeometryFromCDB()
virtual voidSetHighWaterMark(Int_t nt) const
virtual voidTNamed::SetName(const char* name)MENU
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
static voidTObject::SetObjectStat(Bool_t stat)
voidSetReadRndmStatus(Bool_t value)
voidSetRndmFileName(const TString& fileName)
voidSetSaveRndmStatus(Bool_t value)
voidSetSaveRndmStatusPerEvent(Bool_t value)
virtual voidTNamed::SetTitle(const char* title = "")MENU
virtual voidSetTransPar(const char* filename = "$(ALICE_ROOT)/data/galice.cuts")
virtual voidTObject::SetUniqueID(UInt_t uid)
voidSetUseMonitoring(Bool_t flag = kTRUE)
virtual voidShowMembers(TMemberInspector&)
virtual Int_tTNamed::Sizeof() const
virtual voidStepping()
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_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 voidTrackingLimits(Float_t rmax = 1.e10, Float_t zmax = 1.e10)
virtual Double_tTrackingRmax() const
virtual Double_tTrackingZmax() const
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
protected:
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()

Data Members

protected:
TStringTNamed::fNameobject identifier
TStringTNamed::fTitleobject title
private:
Int_tfDecayPdgPDG code of particle with forced decay length
TArrayFfEventEnergy! Energy deposit for current event
AliGenerator*fGeneratorGenerator used in the MC
TList*fHitLists! Lists of hits to be remapped by PurifyKine
TArrayI*fImedia! Array of correspondence between media and detectors
AliTransportMonitor*fMonitor! Transport monitoring tool
Float_tfRDecayMaxMaximum radius for decay
Float_tfRDecayMinMinimum radius for decay
Bool_tfReadRndmStatus! Options to read random engine status
TStringfRndmFileName! The file name of random engine status to be read in
Bool_tfSaveRndmEventStatus! Options to save random engine status for each event
Bool_tfSaveRndmStatus! Options to save random engine status
TArrayFfSum2Energy! Energy squared per event in each volume
TArrayFfSummEnergy! Energy per event in each volume
TFile*fTmpFileTR! Temporary track reference file
TClonesArrayfTmpTrackReferences! Temporary list of track references - for one primary track only
TTree*fTmpTreeTR! Temporary track reference tree
Float_tfTrRmaxMaximum radius for tracking
Float_tfTrZmaxMaximu z for tracking
TClonesArrayfTrackReferences! List of track references - for one primary track only
TStringfTransParNameName of the transport parameters file
Bool_tfUseMonitoring! Activate monitoring

Class Charts

Inheritance Chart:
TVirtualMCApplication
AliMC

Function documentation

AliMC()
default constructor
AliMC(const char* name, const char* title)
constructor
 Set transport parameters
~AliMC()
destructor
void ConstructGeometry()
 Either load geometry from file or create it through usual
 loop on detectors. In the first case the method
 AliModule::CreateMaterials() only builds fIdtmed and is postponed
 at InitGeometry().

Bool_t MisalignGeometry()
 Call misalignment code if AliSimulation object was defined.
void ConstructOpGeometry()
 Loop all detector modules and call DefineOpticalProperties() method

void AddParticles()
 Add particles (not present in Geant3 or Geant4)

void InitGeometry()
 Initialize detectors

void SetGeometryFromCDB()
 Set the loading of geometry from cdb instead of creating it
 A default CDB storage needs to be set before this method is called
Bool_t IsGeometryFromCDB() const
void SetAllAlignableVolumes()
 Add alignable volumes (TGeoPNEntries) looping on all
 active modules

void GeneratePrimaries()
 Generate primary particles and fill them in the stack.

void SetGenerator(AliGenerator* generator)
 Load the event generator

void ResetGenerator(AliGenerator* generator)
 Load the event generator

void FinishRun()
 Clean generator information
void BeginPrimary()
 Called  at the beginning of each primary track

void PreTrack()
 Actions before the track's transport
void Stepping()
 Called at every step during transport

verbose.Stepping();
void EnergySummary()
e
 Print summary of deposited energy

void BeginEvent()
 Clean-up previous event
 Energy scores
void ResetHits()
  Reset all Detectors hits

void ResetDigits()
  Reset all Detectors digits

void ResetSDigits()
  Reset all Detectors digits

void PostTrack()
 Posts tracks for each module
void FinishPrimary()
 Called  at the end of each primary track

void RemapHits()
 Remaps the track labels of the hits
void FinishEvent()
 Called at the end of the event.

void Init()
 MC initialization
void MediaTable()
 Built media table to get from the media number to
 the detector id

void ReadTransPar()
 Read filename to set the transport parameters

void SetTransPar(const char* filename = "$(ALICE_ROOT)/data/galice.cuts")
 Sets the file name for transport parameters

void AddHit(Int_t id, Int_t track, Int_t* vol, Float_t* hits) const
  Add a hit to detector id

void AddDigit(Int_t id, Int_t* tracks, Int_t* digits) const
 Add digit to detector id

Int_t GetCurrentTrackNumber() const
 Returns current track

void DumpPart(Int_t i) const
 Dumps particle i in the stack

void DumpPStack() const
 Dumps the particle stack

Int_t GetNtrack() const
 Returns number of tracks in stack

Int_t GetPrimary(Int_t track) const
 return number of primary that has generated track

TParticle* Particle(Int_t i) const
 Returns the i-th particle from the stack taking into account
 the remaping done by PurifyKine
const TObjArray* Particles() const
 Returns pointer to Particles array

void PushTrack(Int_t done, Int_t parent, Int_t pdg, const Float_t* pmom, const Float_t* vpos, const Float_t* polar, Float_t tof, TMCProcess mech, Int_t& ntr, Float_t weight = 1, Int_t is = 0) const
 Delegate to stack

void PushTrack(Int_t done, Int_t parent, Int_t pdg, Double_t px, Double_t py, Double_t pz, Double_t e, Double_t vx, Double_t vy, Double_t vz, Double_t tof, Double_t polx, Double_t poly, Double_t polz, TMCProcess mech, Int_t& ntr, Float_t weight = 1, Int_t is = 0) const
 Delegate to stack

void SetHighWaterMark(Int_t nt) const
 Set high water mark for last track in event
void KeepTrack(Int_t itra) const
 Delegate to stack

void FlagTrack(Int_t track) const
 Delegate to stack

void SetCurrentTrack(Int_t track) const
 Set current track number

AliTrackReference* AddTrackReference(Int_t label, Int_t id = -999)
 add a trackrefernce to the list
void ResetTrackReferences()
  Reset all  references

void RemapTrackReferencesIDs(const Int_t* map)
 Remapping track reference
 Called at finish primary

void FixParticleDecaytime()
 Fix the particle decay time according to rmin and rmax for decays

void MakeTmpTrackRefsTree()
 Make the temporary track reference tree
void ReorderAndExpandTreeTR()
  Reorder and expand the temporary track reference tree in order to match the kinematics tree

AliMC()
Double_t TrackingZmax() const
{return fTrZmax;}
Double_t TrackingRmax() const
{return fTrRmax;}
Int_t DetFromMate(Int_t i) const
{ return (*fImedia)[i];}
void AddEnergyDeposit(Int_t id, Float_t edep)
{fEventEnergy[id]+=edep;}
void TrackingLimits(Float_t rmax = 1.e10, Float_t zmax = 1.e10)
{fTrRmax=rmax; fTrZmax=zmax;}
void DecayLimits(Float_t rmin = -1., Float_t rmax = -1., Int_t pdg = 0)
{fRDecayMin = rmin; fRDecayMax = rmax; fDecayPdg = pdg;}
void AddHitList(TCollection* hitList)
{if (hitList) fHitLists->Add(hitList);}
TList* GetHitLists() const
{return fHitLists ;}
void SetUseMonitoring(Bool_t flag = kTRUE)
 Monitor transport
{ fUseMonitoring = flag; }
AliTransportMonitor * GetTransportMonitor() const
 Random number generator status
{ return fMonitor; }
void SetSaveRndmStatus(Bool_t value)
{ fSaveRndmStatus = value; }
void SetSaveRndmStatusPerEvent(Bool_t value)
void SetReadRndmStatus(Bool_t value)
{ fReadRndmStatus = value; }
void SetRndmFileName(const TString& fileName)
{ fRndmFileName = fileName; }
AliMC& operator=(const AliMC& )