1 - Rename AliAnaMaker and AliAnaBaseClass to AliAnaPartCorrMaker and AliAnaPartCorrB...
[u/mrichter/AliRoot.git] / PWG4 / macros / ConfigAnalysisGammaPartonCorrelation.C
1 /* $Id: $ */
2 /* $Log$ */
3
4 //------------------------------------
5 // Configuration macro example:
6 //
7 // Do prompt photon and parton correlation analysis
8 //
9 // Author : Gustavo Conesa Balbastre (INFN-LNF)
10 //------------------------------------
11
12 AliAnaPartCorrMaker*  ConfigAnalysis()
13 {
14   //
15   // Configuration goes here
16   // 
17   printf("======================== \n");
18   printf("ConfigAnalysis() \n");
19   printf("======================== \n");
20   
21   
22   //Detector Fidutial Cuts
23   AliFidutialCut * fidCut = new AliFidutialCut();
24   fidCut->DoCTSFidutialCut(kTRUE) ;
25   fidCut->DoEMCALFidutialCut(kTRUE) ;
26   fidCut->DoPHOSFidutialCut(kTRUE) ;
27   
28   fidCut->SetSimpleCTSFidutialCut(0.9,0.,360.);
29   fidCut->SetSimpleEMCALFidutialCut(0.7,80.,190.);
30   fidCut->SetSimplePHOSFidutialCut(0.13,220.,320.);
31   
32   fidCut->Print("");
33   
34   //-----------------------------------------------------------  
35   // Reader
36   //-----------------------------------------------------------
37   AliCaloTrackReader *reader = new AliCaloTrackESDReader();
38   reader->SetDebug(-1);
39
40   //Switch on or off the detectors information that you want
41   reader->SwitchOnEMCAL();
42   reader->SwitchOnCTS();
43   reader->SwitchOnPHOS();
44   reader->SwitchOffEMCALCells();
45   reader->SwitchOffPHOSCells();
46
47   //Min particle pT
48   reader->SetEMCALPtMin(0.5); 
49   reader->SetPHOSPtMin(0.5);
50   reader->SetCTSPtMin(0.2);
51   
52   reader->SetFidutialCut(fidCut);
53   reader->Print("");
54   
55   
56   //---------------------------------------------------------------------
57   // Analysis algorithm
58   //---------------------------------------------------------------------
59   
60   //Detector Fidutial Cuts for analysis part
61   AliFidutialCut * fidCut2 = new AliFidutialCut();
62   fidCut2->DoCTSFidutialCut(kFALSE) ;
63   fidCut2->DoEMCALFidutialCut(kTRUE) ;
64   fidCut2->DoPHOSFidutialCut(kFALSE) ;
65   
66   fidCut2->SetSimpleCTSFidutialCut(0.9,0.,360.);
67   fidCut2->SetSimpleEMCALFidutialCut(0.7,80.,190.);
68   fidCut2->SetSimplePHOSFidutialCut(0.13,220.,320.);
69   fidCut2->Print("");
70
71   AliCaloPID * pid = new AliCaloPID();
72   // use selection with simple weights
73   pid->SetPHOSPhotonWeight(0.7);    pid->SetPHOSPi0Weight(0.7); 
74   pid->SetEMCALPhotonWeight(0.7);    pid->SetEMCALPi0Weight(0.7);
75   pid->Print("");
76
77   AliIsolationCut * ic = new AliIsolationCut();
78   ic->SetConeSize(0.4);
79   ic->SetPtThreshold(1.);
80   ic->SetICMethod(AliIsolationCut::kPtThresIC);
81   ic->Print("");
82
83   //Photon Analysis
84   AliAnaGammaDirect *ana = new AliAnaGammaDirect();
85   ana->SetDebug(-1);
86   ana->SetMinPt(5.);
87   ana->SetCaloPID(pid);
88   ana->SetFidutialCut(fidCut2);
89   ana->SetIsolationCut(ic) ;
90   ana->SetDetector("PHOS");
91   ana->SwitchOnIsolation();
92   //ana->SwitchOffIsolation();
93   ana->SwitchOffReIsolation(); //Do not do isolation with previously produced AODs.
94   ana->SwitchOffCaloPID();
95   ana->SwitchOffCaloPIDRecalculation(); //recommended for EMCAL
96   ana->SwitchOffFidutialCut();
97   ana->SwitchOffDataMC() ;
98
99   ana->Print("");
100
101   //Photon parton correlation
102   AliAnaParticlePartonCorrelation *ana2 = new AliAnaParticlePartonCorrelation();
103   ana2->SetDebug(2);
104   //ana2->Print("");
105
106   //---------------------------------------------------------------------
107   // Set  analysis algorithm and reader
108   //---------------------------------------------------------------------
109   maker = new AliAnaPartCorrMaker();
110   maker->SetReader(reader);//pointer to reader
111   maker->AddAnalysis(ana,0);
112   maker->AddAnalysis(ana2,1);
113   maker->SetAODBranchName("PhotonHadronCorrelation");
114   maker->SetAnaDebug(1)  ;
115   maker->SwitchOnHistogramsMaker()  ;
116   //maker->SwitchOffHistogramsMaker() ;  
117   maker->SwitchOnAODsMaker()  ;
118   //maker->SwitchOffAODsMaker() ; 
119   
120   maker->Print("");
121   //
122   printf("======================== \n");
123   printf("END ConfigAnalysis() \n");
124   printf("======================== \n");
125   return maker ;
126 }