]>
Commit | Line | Data |
---|---|---|
84954c47 | 1 | #ifndef ALIGENMUONCOCKTAIL_H |
2 | #define ALIGENMUONCOCKTAIL_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
88e5db43 | 6 | |
84954c47 | 7 | /* $Id$ */ |
9538aedd | 8 | // |
84954c47 | 9 | // Classe to create the MUON coktail for physics in the Alice muon spectrometer |
9538aedd | 10 | // The followoing muons sources are included in this cocktail: |
11 | // jpsi, upsilon, non-correlated open and beauty, and muons from pion and kaons. | |
12 | // The free parameeters are : | |
13 | // pp reaction cross-section | |
14 | // production cross-sections in pp collisions and | |
15 | // branching ratios in the muon channel | |
16 | // Hard probes are supposed to scale with Ncoll and hadronic production with (0.8Ncoll+0.2*Npart) | |
17 | // There is a primordial trigger wiche requires : | |
18 | // a minimum muon multiplicity above a pT cut in a theta acceptance cone | |
19 | // | |
84954c47 | 20 | // Gines Martinez, jan 2004, Nantes martinez@in2p3.fr |
21 | ||
17016a57 | 22 | |
23 | ||
24 | ||
84954c47 | 25 | #include "AliGenCocktail.h" |
26 | ||
17016a57 | 27 | class AliFastGlauber; |
84954c47 | 28 | class AliGenCocktailEntry; |
29 | ||
30 | ||
31 | class AliGenMUONCocktail : public AliGenCocktail | |
32 | { | |
33 | public: | |
34 | AliGenMUONCocktail(); | |
93a2041b | 35 | virtual ~AliGenMUONCocktail(); |
84954c47 | 36 | virtual void Init(); |
37 | virtual void Generate(); | |
9538aedd | 38 | Int_t GetMuonMultiplicity() const {return fMuonMultiplicity;} |
39 | Int_t GetNSucceded() const {return fNSucceded;} | |
40 | Int_t GetNGenerated() const {return fNGenerated;} | |
41 | Float_t GetNumberOfCollisions()const {return fNumberOfCollisions;} | |
42 | Float_t GetNumberOfParticipants() const {return fNumberOfParticipants;} | |
43 | Float_t GetMuonPtCut() const { return fMuonPtCut;} | |
84954c47 | 44 | |
45 | void SetMuonMultiplicity(Int_t MuonMultiplicity) { fMuonMultiplicity= MuonMultiplicity;} | |
46 | void SetNumberOfCollisions(Float_t NumberOfCollisions) { fNumberOfCollisions= NumberOfCollisions;} | |
47 | void SetNumberOfParticipants(Float_t NumberOfParticipants) { fNumberOfParticipants= NumberOfParticipants;} | |
17016a57 | 48 | void SetImpactParameterRange(Float_t bmin=0., Float_t bmax=5.) { fLowImpactParameter = bmin; fHighImpactParameter=bmax;} |
84954c47 | 49 | void SetMuonPtCut(Float_t PtCut) { fMuonPtCut = PtCut;} |
50 | void SetMuonThetaCut(Float_t ThetaMin, Float_t ThetaMax) | |
51 | { fMuonThetaMinCut=ThetaMin; | |
17016a57 | 52 | fMuonThetaMaxCut=ThetaMax; } |
53 | void SetHadronicMuons(Bool_t HadronicMuons) { fHadronicMuons = HadronicMuons;} | |
b72a1716 | 54 | void SetInvMassRange(Float_t MassMin, Float_t MassMax) |
55 | { fInvMassMinCut=MassMin; | |
56 | fInvMassMaxCut=MassMax; | |
57 | fInvMassCut = kTRUE; } | |
1c56e311 | 58 | private: |
93a2041b | 59 | AliGenMUONCocktail(const AliGenMUONCocktail &cocktail); |
1c56e311 | 60 | AliGenMUONCocktail& operator=(const AliGenMUONCocktail & rhs); |
93a2041b | 61 | |
84954c47 | 62 | // |
63 | private: | |
17016a57 | 64 | AliFastGlauber * fFastGlauber; //! Fast glauber calculations |
65 | Float_t fTotalRate; // Total rate of the full cocktail processes | |
66 | Int_t fMuonMultiplicity; // Muon multiplicity for the primordial trigger | |
67 | Float_t fMuonPtCut; // Transverse momentum cut for muons | |
68 | Float_t fMuonThetaMinCut; // Minimum theta cut for muons | |
69 | Float_t fMuonThetaMaxCut; // Maximum theta cut for muons | |
70 | Int_t fNSucceded; // Number of Succes in the dimuon pair generation in the acceptance | |
71 | Int_t fNGenerated; // Number of generated cocktails | |
72 | Float_t fLowImpactParameter; // Lowest simulated impact parameter | |
73 | Float_t fHighImpactParameter; // Highest impact parameter | |
74 | Float_t fAverageImpactParameter;// AVergae Impact parameter in the impact parameter range | |
75 | Float_t fNumberOfCollisions; // Average number of collisions in the impact parameter range | |
76 | Float_t fNumberOfParticipants; // Average number of participants in the impact parameter range | |
b72a1716 | 77 | Bool_t fHadronicMuons; // If kTRUE hadronic muons are included in the cocktail. Default is true. |
78 | Bool_t fInvMassCut; // If kTRUE cut on the Invariant mass is required. Default is false | |
79 | Float_t fInvMassMinCut; // Minimum invariant mass cut | |
80 | Float_t fInvMassMaxCut; // Maximum invariant mass cut | |
17016a57 | 81 | |
82 | ClassDef(AliGenMUONCocktail,1) // MUON cocktail for physics in the Alice muon spectrometer | |
84954c47 | 83 | }; |
84 | ||
85 | #endif | |
86 | ||
87 | ||
88 | ||
89 | ||
90 |