X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=EVGEN%2FAliGenMC.h;h=b8adea6129ff1110d51f6823db1324a5e400527d;hb=170950c346b33b09a3a32e5d2cd15cdb1386e712;hp=7c2fed57871c53fd89794b4bb6a48218c40a4cad;hpb=25c92a359f204f24b47503f22f4a7ba57b5d05ed;p=u%2Fmrichter%2FAliRoot.git diff --git a/EVGEN/AliGenMC.h b/EVGEN/AliGenMC.h index 7c2fed57871..b8adea6129f 100644 --- a/EVGEN/AliGenMC.h +++ b/EVGEN/AliGenMC.h @@ -15,8 +15,9 @@ #include "AliGenerator.h" #include "AliDecayer.h" #include "AliGeometry.h" -#include +#include #include +#include class TParticle; @@ -35,7 +36,7 @@ class AliGenMC : public AliGenerator {fChildPMin = pmin; fChildPMax = pmax;} virtual void SetChildPtRange(Float_t ptmin = 0, Float_t ptmax = 20.) {fChildPtMin = ptmin; fChildPtMax = ptmax;} - virtual void SetChildPhiRange(Float_t phimin = -180., Float_t phimax = 180) + virtual void SetChildPhiRange(Float_t phimin = 0., Float_t phimax = 360.) {fChildPhiMin = TMath::Pi()*phimin/180; fChildPhiMax = TMath::Pi()*phimax/180;} virtual void SetChildThetaRange(Float_t thetamin = 0, Float_t thetamax = 180) @@ -51,8 +52,13 @@ class AliGenMC : public AliGenerator virtual void SetPdgCodeParticleforAcceptanceCut(Int_t PdgCodeParticleforAcceptanceCut=0) {fPdgCodeParticleforAcceptanceCut = PdgCodeParticleforAcceptanceCut;} virtual void SetNumberOfAcceptedParticles(Int_t NumberOfAcceptedParticles=2) {fNumberOfAcceptedParticles = NumberOfAcceptedParticles;} - + virtual Bool_t CheckAcceptanceGeometry(Int_t np, TClonesArray* particles); + virtual void SetProjectile(TString proj="P", Int_t a = 1, Int_t z = 1) + {fProjectile = proj; fAProjectile = a; fZProjectile = z;} + virtual void SetTarget(TString tar="P", Int_t a = 1, Int_t z = 1) + {fTarget = tar; fATarget = a; fZTarget = z;} + virtual void Boost(); protected: // check if particle is selected as parent particle @@ -62,8 +68,9 @@ class AliGenMC : public AliGenerator // all kinematic selection cuts go here Bool_t KinematicSelection(TParticle *particle, Int_t flag) const; Int_t CheckPDGCode(Int_t pdgcode) const; - + void Copy(TObject&) const; protected: + TClonesArray* fParticles; //!Particle List TArrayI fParentSelect; //!Parent particles to be selected TArrayI fChildSelect; //!Decay products to be selected Int_t fCutOnChild; // Cuts on decay products (children) are enabled/disabled @@ -79,6 +86,13 @@ class AliGenMC : public AliGenerator Float_t fChildYMax; // Children maximum y Decay_t fForceDecay; // Decay channel forced Float_t fMaxLifeTime; // Maximum lifetime for unstable particles + Int_t fAProjectile; // Projectile A + Int_t fZProjectile; // Projectile Z + Int_t fATarget; // Target A + Int_t fZTarget; // Target Z + TString fProjectile; // Projectile + TString fTarget; // Target + Double_t fDyBoost; // dy for boost into lab frame AliGeometry * fGeometryAcceptance; // Geometry to which particles must be simulated Int_t fPdgCodeParticleforAcceptanceCut; // Abs(PDG Code) of the particle to which the GeometryAcceptance must be applied Int_t fNumberOfAcceptedParticles; // Number of accepted particles in GeometryAcceptance with the right Abs(PdgCode)