]>
Commit | Line | Data |
---|---|---|
02f0b8e7 | 1 | #ifndef ALIANALYSISTASKPI0DIFFEFFICIENCY_H\r |
2 | #define ALIANALYSISTASKPI0DIFFEFFICIENCY_H\r | |
3 | \r | |
6e4947dd | 4 | // Task calculating effciency of pi0 registration \r |
5 | // as a difference between spectrum after and before \r | |
6 | // embedding\r | |
02f0b8e7 | 7 | \r |
6e4947dd | 8 | class TClonesArray;\r |
02f0b8e7 | 9 | class AliAODCaloCluster ;\r |
7063ee4d | 10 | class AliPHOSAodCluster ;\r |
11 | class AliPHOSCalibData ;\r | |
12 | class AliPHOSGeometry ;\r | |
02f0b8e7 | 13 | \r |
7063ee4d | 14 | #include "AliAnalysisTaskSE.h"\r |
02f0b8e7 | 15 | \r |
7063ee4d | 16 | class AliAnalysisTaskPi0DiffEfficiency : public AliAnalysisTaskSE {\r |
02f0b8e7 | 17 | public:\r |
18 | AliAnalysisTaskPi0DiffEfficiency(const char *name = "AliAnalysisTaskPi0DiffEfficiency");\r | |
19 | virtual ~AliAnalysisTaskPi0DiffEfficiency() {}\r | |
20 | \r | |
21 | virtual void UserCreateOutputObjects();\r | |
22 | virtual void UserExec(Option_t *option);\r | |
7063ee4d | 23 | \r |
24 | void SetPHOSBadMap(Int_t mod,TH2I * h)\r | |
25 | {\r | |
26 | if(fPHOSBadMap[mod]) delete fPHOSBadMap[mod] ;\r | |
27 | fPHOSBadMap[mod]=new TH2I(*h) ;\r | |
28 | printf("Set %s \n",fPHOSBadMap[mod]->GetName());\r | |
29 | }\r | |
30 | \r | |
31 | protected:\r | |
6631c482 | 32 | AliAnalysisTaskPi0DiffEfficiency(const AliAnalysisTaskPi0DiffEfficiency& a):AliAnalysisTaskSE(a){} // not implemented\r |
33 | AliAnalysisTaskPi0DiffEfficiency& operator=(const AliAnalysisTaskPi0DiffEfficiency& ){return *this;} // not implemented\r | |
7063ee4d | 34 | Bool_t IsGoodChannel(const char * det, Int_t mod,Int_t ix, Int_t iz); //Use addisional bad map for PHOS\r |
35 | void FillHistogram(const char * key,Double_t x) const ; //Fill 1D histogram witn name key\r | |
36 | void FillHistogram(const char * key,Double_t x, Double_t y) const ; //Fill 2D histogram witn name key\r | |
37 | void FillHistogram(const char * key,Double_t x, Double_t y, Double_t z) const ; //Fill 3D histogram witn name key\r | |
38 | void FillHistogram(const char * key,Double_t x, Double_t y, Double_t z, Double_t weight) const ; //Fill 3D histogram witn name key\r | |
39 | Bool_t TestLambda(Double_t e,Double_t l1,Double_t l2) ; //Evaluate Dispersion cuts for photons\r | |
40 | Bool_t TestLambda2(Double_t e,Double_t l1,Double_t l2) ; //Evaluate Dispersion cuts for photons\r | |
41 | Double_t TestCPV(Double_t dx, Double_t dz, Double_t pt, Int_t charge);\r | |
42 | Bool_t TestTOF(Double_t t, Double_t e) ;\r | |
02f0b8e7 | 43 | \r |
7063ee4d | 44 | void ProcessMC() ;\r |
45 | Double_t CoreEnergy(AliPHOSAodCluster * clu); \r | |
46 | \r | |
02f0b8e7 | 47 | private:\r |
02f0b8e7 | 48 | Bool_t IsSameCluster(AliAODCaloCluster * c1,AliAODCaloCluster * c2)const ;\r |
7063ee4d | 49 | void EvalLambdas(AliAODCaloCluster * clu, Int_t iR,Double_t &m02, Double_t &m20) ;\r |
50 | Double_t PrimaryWeight(Double_t x) ;\r | |
02f0b8e7 | 51 | \r |
52 | private:\r | |
7063ee4d | 53 | AliStack * fStack ; //! Stack of primary\r |
54 | THashList * fOutputContainer; //! final histogram container\r | |
55 | TList * fPHOSEvents[1][10][11] ; //! Containers for events with PHOS photons\r | |
56 | TClonesArray * fPHOSEvent ; //!PHOS photons in current event\r | |
6e4947dd | 57 | TClonesArray * fPHOSEvent1 ; //!PHOS photons in current event\r |
58 | TClonesArray * fPHOSEvent2 ; //!PHOS photons in current event\r | |
7063ee4d | 59 | AliPHOSCalibData *fPHOSCalibData; //! PHOS calibration object\r |
60 | TF1 *fNonLinCorr; // Non-linearity correction\r | |
61 | \r | |
62 | //Reaction plane for v2\r | |
63 | Float_t fRPfull ; //!Reaction plain calculated with full TPC \r | |
64 | Float_t fRPA ; //!Reaction plain calculated with A-side TPC: eta>0.15 \r | |
65 | Float_t fRPC ; //!Reaction plain calculated with C-side TPC: eta<-0.15\r | |
66 | Float_t fRPFar ; //!Reaction plain calculated with TPC: eta>0.6 \r | |
67 | Float_t fRPAFar ; //!Reaction plain calculated with A-side TPC: eta>0.6 \r | |
68 | Float_t fRPCFar ; //!Reaction plain calculated with C-side TPC: eta<-0.6\r | |
69 | \r | |
70 | Float_t fCentrality ; //!Centrality of the currecnt event\r | |
71 | \r | |
72 | Int_t fCenBin ; //! Current centrality bin\r | |
73 | \r | |
74 | TH2I *fPHOSBadMap[6] ; //!Container for PHOS bad channels map\r | |
75 | \r | |
76 | AliPHOSGeometry *fPHOSGeo; //! PHOS geometry\r | |
77 | Int_t fEventCounter; //! number of analyzed events\r | |
02f0b8e7 | 78 | \r |
6e4947dd | 79 | ClassDef(AliAnalysisTaskPi0DiffEfficiency, 2); // PHOS analysis task\r |
02f0b8e7 | 80 | };\r |
81 | \r | |
82 | #endif\r |