]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG4/macros/ConfigAnalysisPhotonMC.C
Macro to display the output of SDD task in QA-train
[u/mrichter/AliRoot.git] / PWG4 / macros / ConfigAnalysisPhotonMC.C
CommitLineData
3e0577a2 1/* $Id: $ */
2/* $Log$ */
3
4//------------------------------------
5// Configuration macro example:
6//
591cc579 7// Do photon identification analysis with Generator data
3e0577a2 8// Gamma in PHOS. For EMCAL clusters change
9// PHOS by EMCAL where necessary
10//
11// Author : Gustavo Conesa Balbastre (INFN-LNF)
12//------------------------------------
13
14AliAnaPartCorrMaker* ConfigAnalysis()
15{
16 //
17 // Configuration goes here
18 //
19 printf("======================== \n");
20 printf("ConfigAnalysis() \n");
21 printf("======================== \n");
22
23
ff45398a 24 //Detector Fiducial Cuts
25 AliFiducialCut * fidCut = new AliFiducialCut();
26 fidCut->DoCTSFiducialCut(kTRUE) ;
27 fidCut->DoEMCALFiducialCut(kTRUE) ;
28 fidCut->DoPHOSFiducialCut(kTRUE) ;
3e0577a2 29
ff45398a 30 //fidCut->SetSimpleCTSFiducialCut(0.9,0.,360.);
31 //fidCut->SetSimpleEMCALFiducialCut(0.7,80.,190.);
32 //fidCut->SetSimplePHOSFiducialCut(0.13,220.,320.);
3e0577a2 33
34 fidCut->Print("");
35
36 //-----------------------------------------------------------
37 // Reader
38 //-----------------------------------------------------------
7a21bfc9 39 AliCaloTrackMCReader *reader = new AliCaloTrackMCReader();
3e0577a2 40 reader->SetDebug(-1);
41
42 //Switch on or off the detectors information that you want
43 reader->SwitchOffEMCAL();
44 reader->SwitchOffCTS();
45 reader->SwitchOnPHOS();
46
47 //Min particle pT
48 //reader->SetEMCALPtMin(0.5);
49 reader->SetPHOSPtMin(0.5);
50 //reader->SetCTSPtMin(0.2);
591cc579 51 reader->SwitchOnStack(); //On by default, remember to SwitchOnMCData() in analysis classes
52 //In case of generating jet events (with PYTHIA), if pt hard bin is small
53 //reject events with large difference between ptHard and triggered jet
54 //reader->SetPtHardAndJetPtComparison(kTRUE);
55
ff45398a 56 reader->SetFiducialCut(fidCut);
591cc579 57
58 //Anaysis of final particles, not pi0/eta etc.
59 TArrayI statusArray(1) ;
60 statusArray.SetAt(1,0);
61 reader->AddStatusArray(statusArray) ;
62 reader->SwitchOnStatusSelection() ;
63
64 //Keep pi0 in the list and not the 2 photon if decay angle is small.
65 reader->SwitchOffOverlapCheck();
1caab52d 66
67 //Remove the temporal AODs we create.
08a064bc 68 reader->SwitchOnCleanStdAOD();
591cc579 69
3e0577a2 70 reader->Print("");
71
72
73 //---------------------------------------------------------------------
74 // Analysis algorithm
75 //---------------------------------------------------------------------
76
ff45398a 77 //Detector Fiducial Cuts for analysis part
78 AliFiducialCut * fidCut2 = new AliFiducialCut();
79 fidCut2->DoCTSFiducialCut(kFALSE) ;
80 fidCut2->DoEMCALFiducialCut(kFALSE) ;
81 fidCut2->DoPHOSFiducialCut(kFALSE) ;
3e0577a2 82
ff45398a 83 //fidCut2->SetSimpleCTSFiducialCut(0.9,0.,360.);
84 //fidCut2->SetSimpleEMCALFiducialCut(0.7,80.,190.);
85 //fidCut2->SetSimplePHOSFiducialCut(0.13,220.,320.);
3e0577a2 86
87 fidCut2->Print("");
88
3e0577a2 89 AliAnaPhoton *ana = new AliAnaPhoton();
90 ana->SetDebug(-1);
91 ana->SetMinPt(5.);
92 ana->SetMinDistanceToBadChannel(2, 4, 5);
ff45398a 93 ana->SetFiducialCut(fidCut2);
3e0577a2 94 ana->SetCalorimeter("PHOS");
95 ana->SwitchOnDataMC() ;//Access MC stack and fill more histograms
591cc579 96 ana->SwitchOffCaloPID(); //No need with MC reader
97 ana->SwitchOffCaloPIDRecalculation(); //recommended for EMCAL, no need with MC reader
98 ana->SwitchOffTrackMatchRejection(); //Only in use when OnCaloPID
ff45398a 99 ana->SwitchOffFiducialCut();
3e0577a2 100 ana->SetOutputAODName("Photons");
101 ana->SetOutputAODClassName("AliAODPWG4Particle");
102 //Set Histrograms bins and ranges
103// ana->SetHistoPtRangeAndNBins(0, 50, 100) ;
104// ana->SetHistoPhiRangeAndNBins(0, TMath::TwoPi(), 100) ;
105// ana->SetHistoEtaRangeAndNBins(-0.7, 0.7, 100) ;
106 ana->Print("");
107
108 //---------------------------------------------------------------------
109 // Set analysis algorithm and reader
110 //---------------------------------------------------------------------
111 maker = new AliAnaPartCorrMaker();
112 maker->SetReader(reader);//pointer to reader
113 maker->AddAnalysis(ana,0);
114 maker->SetAnaDebug(-1) ;
115 maker->SwitchOnHistogramsMaker() ;
116 maker->SwitchOnAODsMaker() ;
117
118 maker->Print("");
119 //
120 printf("======================== \n");
121 printf("END ConfigAnalysis() \n");
122 printf("======================== \n");
123 return maker ;
124}