ROOT logo
AliRoot » EVGEN » AliDecayerExodus

class AliDecayerExodus: public TVirtualMCDecayer


 Generate electron-pair mass distributions for Dalitz decays according
 to the Kroll-Wada parametrization: N. Kroll, W. Wada: Phys. Rev 98(1955)1355
 and generate electron-pair mass distributions for resonances according
 to the Gounaris-Sakurai parametrization: G.J. Gounaris, J.J. Sakurai: Phys.Rev.Lett. 21(1968)244

 For the electromagnetic form factor the parameterization from
 Lepton-G is used: L.G. Landsberg et al.: Phys. Rep. 128(1985)301

 Ralf Averbeck (R.Averbeck@gsi.de)
 Irem Erdemir  (irem.erdemir@cern.ch)


Function Members (Methods)

public:
AliDecayerExodus()
~AliDecayerExodus()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTObject::Clear(Option_t* = "")
virtual TObject*TObject::Clone(const char* newname = "") const
virtual Int_tTObject::Compare(const TObject* obj) const
virtual voidCopy(TObject&) const
virtual voidDecay(TClonesArray* array)
virtual voidDecay(Int_t idpart, TLorentzVector* pparent)
virtual voidTObject::Delete(Option_t* option = "")MENU
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 TH1F*ElectronPairMassHistoEta()
virtual TH1F*ElectronPairMassHistoEtaPrime()
virtual TH1F*ElectronPairMassHistoJPsi()
virtual TH1F*ElectronPairMassHistoOmega()
virtual TH1F*ElectronPairMassHistoOmegaDalitz()
virtual TH1F*ElectronPairMassHistoPhi()
virtual TH1F*ElectronPairMassHistoPhiDalitz()
virtual TH1F*ElectronPairMassHistoPion()
virtual TH1F*ElectronPairMassHistoRho()
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 TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
virtual voidForceDecay()
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual const char*TObject::GetIconName() const
virtual Float_tGetLifetime(Int_t)
virtual const char*TObject::GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
virtual Float_tGetPartialBranchingRatio(Int_t)
virtual const char*TObject::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTObject::Hash() const
virtual Int_tImportParticles(TClonesArray* particles)
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 voidTObject::Inspect() constMENU
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_tTObject::IsSortable() const
Bool_tTObject::IsZombie() const
virtual voidTObject::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
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 = "")
virtual voidTObject::Pop()
virtual voidTObject::Print(Option_t* option = "") const
virtual const TLorentzVector*Products_eta() const
virtual const TLorentzVector*Products_etaprime() const
virtual const TLorentzVector*Products_jpsi() const
virtual const TLorentzVector*Products_omega() const
virtual const TLorentzVector*Products_omega_dalitz() const
virtual const TLorentzVector*Products_phi() const
virtual const TLorentzVector*Products_phi_dalitz() const
virtual const TLorentzVector*Products_pion() const
virtual const TLorentzVector*Products_rho() const
virtual Int_tTObject::Read(const char* name)
virtual voidReadDecayTable()
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
virtual voidSetForceDecay(Int_t)
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector&)
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 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()
private:
AliDecayerExodus(const AliDecayerExodus& decayer)
Double_tGounarisSakurai(Float_t mass, Double_t vmass, Double_t vwidth, Double_t emass)
Double_tLorentz(Float_t mass, Double_t vmass, Double_t vwidth)
AliDecayerExodus&operator=(const AliDecayerExodus& rhs)
virtual voidRot(Double_t* pin, Double_t* pout, Double_t costheta, Double_t sintheta, Double_t cosphi, Double_t sinphi) const

Data Members

protected:
TH1F*fEPMassEta
TH1F*fEPMassEtaPrime
TH1F*fEPMassJPsi
TH1F*fEPMassOmega
TH1F*fEPMassOmegaDalitz
TH1F*fEPMassPhi
TH1F*fEPMassPhiDalitz
TH1F*fEPMassPion
TH1F*fEPMassRho
Bool_tfInit
TLorentzVectorfProducts_eta[3]
TLorentzVectorfProducts_etaprime[3]
TLorentzVectorfProducts_jpsi[2]
TLorentzVectorfProducts_omega[2]
TLorentzVectorfProducts_omega_dalitz[3]
TLorentzVectorfProducts_phi[2]
TLorentzVectorfProducts_phi_dalitz[3]
TLorentzVectorfProducts_pion[3]
TLorentzVectorfProducts_rho[2]

Class Charts

Inheritance Chart:
TVirtualMCDecayer
AliDecayerExodus

Function documentation

AliDecayerExodus()
 Constructor
void Init()
Double_t GounarisSakurai(Float_t mass, Double_t vmass, Double_t vwidth, Double_t emass)
 Invariant mass distributions of electron pairs from resonance decays
 of rho, omega and phi
 using Gounaris-Sakurai function
Double_t Lorentz(Float_t mass, Double_t vmass, Double_t vwidth)
 Invariant mass distributions of electron pairs from resonance decay
 of jpsi (and it can also be used for other particles except rho, omega and phi)
 using Lorentz function
void Decay(Int_t idpart, TLorentzVector* pparent)
void Rot(Double_t* pin, Double_t* pout, Double_t costheta, Double_t sintheta, Double_t cosphi, Double_t sinphi) const
 Perform rotation
Int_t ImportParticles(TClonesArray* particles)
   Import particles for Dalitz and resonance decays

void Decay(TClonesArray* array)
 Replace all Dalitz(pi0,eta,omega,eta',phi) and resonance(rho,omega,phi,jpsi) decays with the correct matrix element decays
 for di-electron cocktail calculations
AliDecayerExodus& operator=(const AliDecayerExodus& rhs)
 Assignment operator
void Copy(TObject& ) const
AliDecayerExodus(const AliDecayerExodus& decayer)
 Copy Constructor
void SetForceDecay(Int_t )
{;}
void ForceDecay()
{;}
Float_t GetPartialBranchingRatio(Int_t )
{return -1;}
Float_t GetLifetime(Int_t )
{return -1;}
void ReadDecayTable()
{;}
TH1F* ElectronPairMassHistoPion()
{return fEPMassPion;}
TH1F* ElectronPairMassHistoEta()
{return fEPMassEta;}
TH1F* ElectronPairMassHistoEtaPrime()
{return fEPMassEtaPrime;}
TH1F* ElectronPairMassHistoRho()
{return fEPMassRho;}
TH1F* ElectronPairMassHistoOmega()
{return fEPMassOmega;}
TH1F* ElectronPairMassHistoOmegaDalitz()
TH1F* ElectronPairMassHistoPhi()
{return fEPMassPhi;}
TH1F* ElectronPairMassHistoPhiDalitz()
TH1F* ElectronPairMassHistoJPsi()
{return fEPMassJPsi;}
const TLorentzVector* Products_pion() const
{return fProducts_pion;}
const TLorentzVector* Products_eta() const
{return fProducts_eta;}
const TLorentzVector* Products_etaprime() const
const TLorentzVector* Products_rho() const
{return fProducts_rho;}
const TLorentzVector* Products_omega() const
{return fProducts_omega;}
const TLorentzVector* Products_omega_dalitz() const
const TLorentzVector* Products_phi() const
{return fProducts_phi;}
const TLorentzVector* Products_phi_dalitz() const
const TLorentzVector* Products_jpsi() const
{return fProducts_jpsi;}