ROOT logo
AliRoot » EVGEN » AliGenParam

class AliGenParam: public AliGenMC

Function Members (Methods)

public:
AliGenParam()
AliGenParam(Int_t npart, const AliGenLib* Library, Int_t param, const char* tname = 0)
AliGenParam(Int_t npart, Int_t param, const char* tname = 0, const char* name = 0)
AliGenParam(Int_t npart, Int_t param, Double_t (*)(const Double_t*, const Double_t*) PtPara, Double_t (*)(const Double_t*, const Double_t*) YPara, Double_t (*)(const Double_t*, const Double_t*) V2Para, Int_t (*)(TRandom*) IpPara)
virtual~AliGenParam()
voidTObject::AbstractMethod(const char* method) const
virtual voidAliGenMC::AddHeader(AliGenEventHeader* header)
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidAliGenMC::BeamCrossAngle()
virtual voidAliGenMC::Boost()
virtual voidTObject::Browse(TBrowser* b)
virtual Bool_tAliGenMC::CheckAcceptanceGeometry(Int_t np, TClonesArray* particles)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTNamed::Clear(Option_t* option = "")
virtual TObject*TNamed::Clone(const char* newname = "") const
virtual AliCollisionGeometry*AliGenerator::CollisionGeometry() const
virtual Int_tTNamed::Compare(const TObject* obj) const
virtual voidTNamed::Copy(TObject& named) const
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidDraw(const char* opt)
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
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 voidTNamed::FillBuffer(char*& buffer)
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
virtual voidAliGenerator::FinishRun()
Int_tForceGammaConversion(TClonesArray* particles, Int_t nPart)
virtual voidGenerate()
virtual voidGenerateN(Int_t ntimes)
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual Float_tAliGenerator::GetEnergyCMS() const
virtual const char*TObject::GetIconName() const
virtual TGenerator*AliGenerator::GetMC() 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 voidAliGenerator::GetOrigin(TLorentzVector& o) const
virtual voidAliGenerator::GetOrigin(Float_t& ox, Float_t& oy, Float_t& oz) const
virtual voidAliGenerator::GetProjectile(TString& tar, Int_t& a, Int_t& z) const
TF1*GetPt()
virtual TRandom*AliRndm::GetRandom() const
Float_tGetRelativeArea(Float_t ptMin, Float_t ptMax, Float_t yMin, Float_t yMax, Float_t phiMin, Float_t phiMax)
AliStack*AliGenerator::GetStack()
virtual voidAliGenerator::GetTarget(TString& tar, Int_t& a, Int_t& z) const
virtual const char*TNamed::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
TF1*GetY()
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 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_tTNamed::IsSortable() const
Bool_tTObject::IsZombie() const
virtual voidTNamed::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
virtual Bool_tAliGenerator::NeedsCollisionGeometry() const
virtual Bool_tTObject::Notify()
virtual Int_tAliGenerator::NumberParticles() const
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)
static TVector3OrthogonalVector(TVector3& inVec)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTNamed::Print(Option_t* option = "") const
virtual Bool_tAliGenerator::ProvidesCollisionGeometry() const
doubleRandomEnergyFraction(double Z, double E)
doubleRandomMass(Double_t mh)
doubleRandomPolarAngle()
virtual Int_tTObject::Read(const char* name)
virtual voidAliRndm::ReadRandom(const char* filename)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
virtual Float_tAliRndm::Rndm() const
virtual voidAliRndm::Rndm(Float_t* array, Int_t size) const
static voidRotateVector(Double_t* pin, Double_t* pout, Double_t costheta, Double_t sintheta, Double_t cosphi, Double_t sinphi)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
static doubleScreenFunction1(double d)
static doubleScreenFunction2(double d)
virtual voidAliGenerator::SetAnalog(Int_t flag = 1)
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidAliGenMC::SetChildMomentumRange(Float_t pmin = 0, Float_t pmax = 1.e10)
virtual voidAliGenMC::SetChildPhiRange(Float_t phimin = 0., Float_t phimax = 360.)
virtual voidAliGenMC::SetChildPtRange(Float_t ptmin = 0, Float_t ptmax = 20.)
virtual voidAliGenMC::SetChildThetaRange(Float_t thetamin = 0, Float_t thetamax = 180)
virtual voidAliGenerator::SetChildWeight(Float_t wgt)
virtual voidAliGenMC::SetChildYRange(Float_t ymin = -12, Float_t ymax = 12)
virtual voidAliGenerator::SetCollisionGeometry(AliCollisionGeometry* geom)
virtual voidAliGenerator::SetContainer(AliGenerator* container)
virtual voidAliGenMC::SetCrossingAngle(Float_t phiX, Float_t phiY)
virtual voidAliGenMC::SetCutOnChild(Int_t flag = 0)
virtual voidAliGenerator::SetCutVertexZ(Float_t cut = 999999.)
virtual voidSetDecayer(AliDecayer* decayer)
virtual voidSetDeltaPt(Float_t delta = 0.01)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
virtual voidAliGenMC::SetDyBoost(Double_t dyBoost = 0.)
virtual voidAliGenerator::SetEnergyCMS(Float_t energy = 0)
virtual voidAliGenerator::SetEventPlane(Float_t evPlane)
virtual voidAliGenMC::SetForceDecay(Decay_t decay = kAll)
virtual voidSetForceGammaConversion(Bool_t force = kTRUE)
virtual voidAliGenMC::SetGeometryAcceptance(AliGeometry* GeometryAcceptance = 0)
virtual voidSetKeepIfOneChildSelected(Bool_t keep = kTRUE)
virtual voidSetKeepParent(Bool_t keep = kTRUE)
virtual voidAliGenMC::SetMaximumLifetime(Float_t time = 1.e-15)
virtual voidAliGenerator::SetMC(TGenerator* theMC)
virtual voidAliGenerator::SetMomentumRange(Float_t pmin = 0, Float_t pmax = 1.e10)
virtual voidTNamed::SetName(const char* name)MENU
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
virtual voidAliGenMC::SetNumberOfAcceptedParticles(Int_t NumberOfAcceptedParticles = 2)
virtual voidAliGenerator::SetNumberParticles(Int_t npart = 100)
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidAliGenerator::SetOrigin(const TLorentzVector& o)
virtual voidAliGenerator::SetOrigin(Float_t ox, Float_t oy, Float_t oz)
virtual voidSetParam(Int_t param)
virtual voidAliGenerator::SetParentWeight(Float_t wgt)
virtual voidAliGenMC::SetPdgCodeParticleforAcceptanceCut(Int_t PdgCodeParticleforAcceptanceCut = 0)
virtual voidAliGenerator::SetPhiRange(Float_t phimin = 0., Float_t phimax = 360.)
voidAliGenerator::SetPileUpTimeWindow(Float_t pileUpTimeW)
virtual voidAliGenMC::SetProjectile(TString proj = "P", Int_t a = 1, Int_t z = 1)
virtual voidAliGenerator::SetPtRange(Float_t ptmin = 0, Float_t ptmax = 1.e10)
virtual voidAliRndm::SetRandom(TRandom* ran = 0)
voidSetSelectAll(Bool_t selectall)
virtual voidAliGenerator::SetSigma(Float_t sx, Float_t sy, Float_t sz)
virtual voidAliGenerator::SetSigmaZ(Float_t sz)
voidAliGenerator::SetStack(AliStack* stack)
virtual voidAliGenMC::SetTarget(TString tar = "P", Int_t a = 1, Int_t z = 1)
virtual voidAliGenerator::SetThetaRange(Float_t thetamin = 0, Float_t thetamax = 180)
virtual voidAliGenerator::SetTime(Float_t time)
virtual voidAliGenerator::SetTimeOrigin(Float_t timeorig)
virtual voidTNamed::SetTitle(const char* title = "")MENU
virtual voidAliGenerator::SetTrackingFlag(Int_t flag = 1)
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidAliGenerator::SetVertex(Float_t vx, Float_t vy, Float_t vz, Float_t t = 0)
voidAliGenerator::SetVertexGenerator(AliVertexGenerator* vertexGenerator)
virtual voidAliGenerator::SetVertexSmear(VertexSmear_t smear)
virtual voidAliGenerator::SetVertexSource(VertexSource_t source = kInternal)
virtual voidAliGenerator::SetVRange(Float_t vxmin, Float_t vxmax, Float_t vymin, Float_t vymax, Float_t vzmin, Float_t vzmax)
virtual voidSetWeighting(Weighting_t flag = kAnalog)
virtual voidAliGenerator::SetYRange(Float_t ymin = -100, Float_t ymax = 100)
virtual voidShowMembers(TMemberInspector&)
virtual Int_tTNamed::Sizeof() const
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()
voidAliGenerator::Vertex()
voidAliGenerator::VertexExternal()
virtual voidAliGenerator::VertexInternal()
Int_tVirtualGammaPairProduction(TClonesArray* particles, Int_t nPart)
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 voidAliRndm::WriteRandom(const char* filename) const
protected:
Int_tAliGenMC::CheckPDGCode(Int_t pdgcode) const
Bool_tAliGenMC::ChildSelected(Int_t ip) const
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
virtual voidAliGenerator::KeepTrack(Int_t itrack)
Bool_tAliGenMC::KinematicSelection(const TParticle* particle, Int_t flag) const
voidTObject::MakeZombie()
Bool_tAliGenMC::ParentSelected(Int_t ip) const
virtual voidAliGenerator::PushTrack(Int_t done, Int_t parent, Int_t pdg, Float_t* pmom, Float_t* vpos, Float_t* polar, Float_t tof, TMCProcess mech, Int_t& ntr, Float_t weight = 1, Int_t is = 0)
virtual voidAliGenerator::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)
virtual voidAliGenerator::SetHighWaterMark(Int_t nt)
private:
AliGenParam(const AliGenParam& Param)
AliGenParam&operator=(const AliGenParam& rhs)

Data Members

protected:
Int_tAliGenerator::fAProjectileProjectile A
Int_tAliGenerator::fATargetTarget A
Int_tAliGenerator::fAnalogFlag for anolog or pt-weighted generation
Float_tfBiasBiasing factor
Float_tAliGenMC::fChildPMaxChildren maximum p
Float_tAliGenMC::fChildPMinChildren minimum p
Float_tAliGenMC::fChildPhiMaxChildren maximum phi
Float_tAliGenMC::fChildPhiMinChildren minimum phi
Float_tAliGenMC::fChildPtMaxChildren maximum pT
Float_tAliGenMC::fChildPtMinChildren minimum pT
TArrayIAliGenMC::fChildSelect!Decay products to be selected
Float_tAliGenMC::fChildThetaMaxChildren maximum theta
Float_tAliGenMC::fChildThetaMinChildren minimum theta
Float_tAliGenerator::fChildWeightChildWeight
Float_tAliGenMC::fChildYMaxChildren maximum y
Float_tAliGenMC::fChildYMinChildren minimum y
AliCollisionGeometry*AliGenerator::fCollisionGeometry!Collision geometry
AliGenerator*AliGenerator::fContainer! Local pointer to container
Int_tAliGenMC::fCutOnChildCuts on decay products (children) are enabled/disabled
Float_tAliGenerator::fCutVertexZVertex cut in units of sigma_z
AliDecayer*fDecayer! Pointer to pythia object for decays
Float_tfDeltaPtpT sampling in steps of fDeltaPt
Double_tAliGenMC::fDyBoostdy for boost into lab frame
Float_tAliGenerator::fEnergyCMSCentre of mass energy
Float_tAliGenerator::fEvPlanethe event plane
Bool_tfForceConv
Decay_tAliGenMC::fForceDecayDecay channel forced
AliGeometry*AliGenMC::fGeometryAcceptanceGeometry to which particles must be simulated
voidfIpParaFunc! Pointer to particle type parametrisation function
Bool_tfKeepIfOneChildSelectedAccept parent and child even if other children are not within cut.
Bool_tfKeepParentStore parent even if it does not have childs within cuts
TGenerator*AliGenerator::fMCEvGen!Pointer to the generator
Float_tAliGenMC::fMaxLifeTimeMaximum lifetime for unstable particles
TStringTNamed::fNameobject identifier
Int_tAliGenerator::fNpartMaximum number of particles per event
Int_tAliGenMC::fNprimariesNumber of produced and stored particles
Int_tAliGenMC::fNumberOfAcceptedParticlesNumber of accepted particles in GeometryAcceptance with the right Abs(PdgCode)
TArrayFAliGenerator::fOriginOrigin of event
TArrayFAliGenerator::fOsigmaSigma of the Origin of event
Float_tAliGenerator::fPMaxMinimum momentum of generation in GeV/c
Float_tAliGenerator::fPMinMinimum momentum of generation in GeV/c
Int_tfParamParameterisation type
TArrayIAliGenMC::fParentSelect!Parent particles to be selected
Float_tAliGenerator::fParentWeightParent Weight
TClonesArrayAliGenMC::fParticles!Particle List
Int_tAliGenMC::fPdgCodeParticleforAcceptanceCutAbs(PDG Code) of the particle to which the GeometryAcceptance must be applied
Float_tAliGenerator::fPhiMaxMaximum phi of generation in radians
Float_tAliGenerator::fPhiMinMinimum phi of generation in radians
Float_tAliGenerator::fPileUpTimeWindowTime window for pile-up events
TStringAliGenerator::fProjectileProjectile
Float_tAliGenerator::fPtMaxMaximum transverse momentum
Float_tAliGenerator::fPtMinMinimum transverse momentum
TF1*fPtParaTransverse momentum parameterisation
Double_t (*)(const Double_t*, const Double_t*)fPtParaFunc! Pointer to Pt parametrisation function
Float_tfPtWgtPt-weight
TRandom*AliRndm::fRandom! Pointer to the random number generator
Bool_tfSelectAllFlag for transportation of Background while using SetForceDecay()
AliStack*AliGenerator::fStack! Local pointer to stack
TStringAliGenerator::fTargetTarget
Float_tAliGenerator::fThetaMaxMaximum theta of generation in radians
Float_tAliGenerator::fThetaMinMinimum theta of generation in radians
Float_tAliGenerator::fTimeEvent time smeared around time0 origin using sigma vertex
Float_tAliGenerator::fTimeOriginTime0 origin in a run or event sample
TStringTNamed::fTitleobject title
Int_tAliGenerator::fTrackItif 1, Track final state particles
Int_tfTrialsNumber of trials
TF1*fV2Parav2 parametrization
Double_t (*)(const Double_t*, const Double_t*)fV2ParaFunc! Pointer to V2 parametrisation function
TArrayFAliGenerator::fVMaxMinimum Decaylength
TArrayFAliGenerator::fVMinMinimum Decaylength
TArrayFAliGenerator::fVertex! Vertex of current event
AliVertexGenerator*AliGenerator::fVertexGenerator! Generator for the vertex
VertexSmear_tAliGenerator::fVertexSmearVertex Smearing mode
VertexSource_tAliGenerator::fVertexSourceVertex source (internal/external)
Float_tAliGenMC::fXingAngleXCrossing angle X
Float_tAliGenMC::fXingAngleYCrossing angle Y
Float_tAliGenerator::fYMaxMaximum rapidity
Float_tAliGenerator::fYMinMinimum rapidity
TF1*fYParaRapidity parameterisation
Double_t (*)(const Double_t*, const Double_t*)fYParaFunc! Pointer to Y parametrisation function
Float_tfYWgtY-weight
Int_tAliGenerator::fZProjectileProjectile Z
Int_tAliGenerator::fZTargetTarget Z
TF1*fdNdPhiPhi distribution depending on v2
Float_tfdNdy0central multiplicity per event

Class Charts

Inheritance Chart:
TNamed
AliRndm
AliGenerator
AliGenMC
AliGenParam

Function documentation

AliGenParam()
 Default constructor
AliGenParam(Int_t npart, const AliGenLib* Library, Int_t param, const char* tname = 0)
 Constructor using number of particles parameterisation id and library
AliGenParam(Int_t npart, Int_t param, const char* tname = 0, const char* name = 0)
 Constructor using parameterisation id and number of particles

AliGenParam(Int_t npart, Int_t param, Double_t (*)(const Double_t*, const Double_t*) PtPara, Double_t (*)(const Double_t*, const Double_t*) YPara, Double_t (*)(const Double_t*, const Double_t*) V2Para, Int_t (*)(TRandom*) IpPara)
 Constructor
 Gines Martinez 1/10/99
~AliGenParam()
 Destructor
TVector3 OrthogonalVector(TVector3& inVec)
void RotateVector(Double_t* pin, Double_t* pout, Double_t costheta, Double_t sintheta, Double_t cosphi, Double_t sinphi)
 Perform rotation
double ScreenFunction1(double d)
double ScreenFunction2(double d)
double RandomEnergyFraction(double Z, double E)
double RandomPolarAngle()
Double_t RandomMass(Double_t mh)
Int_t VirtualGammaPairProduction(TClonesArray* particles, Int_t nPart)
Int_t ForceGammaConversion(TClonesArray* particles, Int_t nPart)
based on: http://geant4.cern.ch/G4UsersDocuments/UsersGuides/PhysicsReferenceManual/html/node27.html
     and: http://geant4.cern.ch/G4UsersDocuments/UsersGuides/PhysicsReferenceManual/html/node58.html
     and: G4LivermoreGammaConversionModel.cc
void Init()
 Initialisation
void Generate()
 Generate 1 event (see Generate(Int_t ntimes) for details

void GenerateN(Int_t ntimes)
 Generate ntimes*'npart' light and heavy mesons (J/Psi, upsilon or phi, Pion,
 Kaons, Etas, Omegas) and Baryons (proton, antiprotons, neutrons and
 antineutrons in the the desired theta, phi and momentum windows;
 Gaussian smearing on the vertex is done if selected.
 The decay of heavy mesons is done using lujet,
    and the childern particle are tracked by GEANT
 However, light mesons are directly tracked by GEANT
 setting fForceDecay = nodecay (SetForceDecay(nodecay))


  Reinitialize decayer
Float_t GetRelativeArea(Float_t ptMin, Float_t ptMax, Float_t yMin, Float_t yMax, Float_t phiMin, Float_t phiMax)
 Normalisation for selected kinematic region

void Draw(const char* opt)
 Draw the pT and y Distributions

AliGenParam()
void SetParam(Int_t param)
 select particle type
{fParam = param;}
void SetSelectAll(Bool_t selectall)
Setting the flag for Background transportation while using SetForceDecay()
{fSelectAll = selectall;}
void SetWeighting(Weighting_t flag = kAnalog)
 force decay type
{fAnalog = flag;}
void SetDeltaPt(Float_t delta = 0.01)
{fDeltaPt = delta;}
void SetDecayer(AliDecayer* decayer)
{fDecayer = decayer;}
void SetForceGammaConversion(Bool_t force = kTRUE)
{fForceConv = force;}
void SetKeepParent(Bool_t keep = kTRUE)
{fKeepParent= keep;}
void SetKeepIfOneChildSelected(Bool_t keep = kTRUE)
TF1 * GetPt()
{ return fPtPara;}
TF1 * GetY()
{return fYPara;}
AliGenParam & operator=(const AliGenParam& rhs)