AliPhysics  9b6b435 (9b6b435)
AliAnalysisTaskGammaCocktailMC.h
Go to the documentation of this file.
1 #ifndef ALIANLYSISTASKGAMMACOCKTAILMC_cxx
2 #define ALIANLYSISTASKGAMMACOCKTAILMC_cxx
3 
4 #include "AliAnalysisTaskSE.h"
5 #include "AliAnalysisManager.h"
6 #include "AliGenEMCocktailV2.h"
7 #include "AliMCGenHandler.h"
8 #include "AliGenerator.h"
9 
11  public:
12 
14  AliAnalysisTaskGammaCocktailMC(const char *name);
16 
17  virtual void UserCreateOutputObjects();
18  virtual void UserExec(Option_t *);
19  virtual void Terminate(const Option_t*);
20 
21  // MC functions
23  void ProcessMCParticles();
24 
25  // additional functions
26  void SetLogBinningXTH1(TH1* histoRebin);
27  void SetLogBinningXTH2(TH2* histoRebin);
28  void SetMaxY(Double_t maxy){fMaxY = maxy;}
29  void SetMaxEta(Double_t maxeta){fMaxEta = maxeta;}
30  void SetMaxPt(Double_t maxpt){fMaxPt = maxpt;}
31  void SetPtBinWidth(Double_t widthpt){fPtBinWidth = widthpt;}
32  void SetLightOutput(Bool_t flag) {fDoLightOutput = flag;}
33  void InitializeDecayChannelHist(TH1F* hist, Int_t np);
34  void FillPythiaBranchingRatio(TH1F* histo, Int_t np);
35  void GetAndSetPtParametrizations(AliGenEMCocktailV2* mcCocktailGen);
36  void GetAndSetPtYDistributions(AliGenEMCocktailV2* mcCocktailGen);
37  void SetHasMother(UInt_t selectedMothers);
39  TH1* SetHist1D(TH1* hist, TString histType, TString histName, TString xTitle, TString yTitle, Int_t nBinsX, Double_t xMin, Double_t xMax, Bool_t optSumw2);
40  TH2* SetHist2D(TH2* hist, TString histType, TString histName, TString xTitle, TString yTitle, Int_t nBinsX, Double_t xMin, Double_t xMax, Int_t nBinsY, Double_t yMin, Double_t yMax, Bool_t optSumw2);
41  TH2* SetHist2D(TH2* hist, TString histType, TString histName, TString xTitle, TString yTitle, Int_t nBinsX, Double_t xMin, Double_t xMax, Int_t nBinsY, Double_t* binsY, Bool_t optSumw2);
42  Float_t GetDecayChannel(AliMCEvent *mcEvent, TParticle* part);
43 
44  protected:
45  TList* fOutputContainer; // Output container
46 
47  AliVEvent* fInputEvent; // current event
48  AliMCEvent* fMCEvent; // corresponding MC event
49  AliMCGenHandler* fMCGenHandler; // MC gen handler
50  const AliGenerator* fMCGenerator; //
51  AliGenEMCocktailV2* fMCCocktailGen; // cocktail generator
52 
53 
54 
55  Bool_t fDoLightOutput; // switch for running light
56  Bool_t fHasMother[17]; // mother i produced
57 
58  // histograms events
59  TH1F* fHistNEvents; // number of events histo
60 
61  // histograms mesons
71  TH1F** fHistPythiaBR;
72 
75 
78 
79  Int_t* fParticleList; // array with particle Pdg values
80  TString* fParticleListNames; // array with particle names
81 
82  TF1* fPtParametrization[17];
84  TObjString* fCocktailSettings[12];
87 
88  //histos for PCM-EMCal related Pi0-tagging, splitting Gammas from Pi0s into Dalitz and NonDalitz contributions
93 
96  Int_t fIsMC; // MC flag
97  Double_t fMaxY; // Max y
98  Double_t fMaxEta; // Max Eta
99  Double_t fMaxPt; // Max Pt
100  Double_t fPtBinWidth; // Pt bin width
101 
102  private:
103  AliAnalysisTaskGammaCocktailMC(const AliAnalysisTaskGammaCocktailMC&); // Prevent copy-construction
105 
106  ClassDef(AliAnalysisTaskGammaCocktailMC, 10);
107 };
108 
109 #endif
Int_t pdg
double Double_t
Definition: External.C:58
TH2F ** fHistPtPhiGammaSource
histo for phi of gammas
Definition: External.C:236
TH2F ** fHistPtGammaSourcePtInput
histo for input particle BR from pythia
TH1F ** fHistPythiaBR
histo for input particle decay channels
TH2F ** fHistPtDeltaPhiInput
histo for asymmetry
TH2F ** fHistPtAlphaInput
histo for input particles
TH1F ** fHistDecayChannelsInput
histo for asymmetry
Int_t * fParticleList
histo for gamma from rest
int Int_t
Definition: External.C:63
Definition: External.C:204
unsigned int UInt_t
Definition: External.C:33
void GetAndSetPtYDistributions(AliGenEMCocktailV2 *mcCocktailGen)
float Float_t
Definition: External.C:68
Float_t GetDecayChannel(AliMCEvent *mcEvent, TParticle *part)
Definition: External.C:212
TH2 * SetHist2D(TH2 *hist, TString histType, TString histName, TString xTitle, TString yTitle, Int_t nBinsX, Double_t xMin, Double_t xMax, Int_t nBinsY, Double_t yMin, Double_t yMax, Bool_t optSumw2)
void FillPythiaBranchingRatio(TH1F *histo, Int_t np)
TH2F ** fHistPtYInput
histo for phi of input particles
Bool_t isMC
TH1I * fHistPdgInputRest
histo for phi correlation of gammas from input particles to source
Definition: External.C:220
void InitializeDecayChannelHist(TH1F *hist, Int_t np)
TH2F ** fHistPtPhiInput
histo for phi of gammas from input particles
const char Option_t
Definition: External.C:48
bool Bool_t
Definition: External.C:53
TH2F ** fHistPhiGammaSourcePhiInput
histo for pt correlation of gammas from input particles to source
Double_t yMin
AliAnalysisTaskGammaCocktailMC & operator=(const AliAnalysisTaskGammaCocktailMC &)
Definition: External.C:196
void GetAndSetPtParametrizations(AliGenEMCocktailV2 *mcCocktailGen)
TH1 * SetHist1D(TH1 *hist, TString histType, TString histName, TString xTitle, TString yTitle, Int_t nBinsX, Double_t xMin, Double_t xMax, Bool_t optSumw2)
Double_t yMax
TH2F ** fHistPtYGammaSource
histo for gammas from input particles