]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGHF/hfe/macros/configs/PbPb/ConfigHFEQA.C
Fix for end-of-line style
[u/mrichter/AliRoot.git] / PWGHF / hfe / macros / configs / PbPb / ConfigHFEQA.C
CommitLineData
85358761 1AliAnalysisTaskHFEQA* ConfigHFEQA(Bool_t useMC, Bool_t isAOD, Int_t icollisionsystem = 2, Int_t icent = 2,Bool_t tpconlydo = kTRUE,Bool_t trdonlydo = kTRUE,Bool_t toftpcdo = kTRUE,Bool_t tpctrddo = kTRUE,Bool_t tpcemcaldo = kTRUE){
d1418f51 2
3 //***************************************//
4 // Setting up the HFE cuts //
5 //***************************************//
6
7 AliHFEcuts *hfecuts = new AliHFEcuts("HFEcuts","HFE cuts");
8 hfecuts->CreateStandardCuts();
9 hfecuts->SetMinNClustersTPC(100);
10 hfecuts->SetMinNClustersTPCPID(80);
11 hfecuts->SetMinNClustersITS(3);
12 hfecuts->SetMinRatioTPCclusters(0.6);
13 hfecuts->SetTPCmodes(AliHFEextraCuts::kFound, AliHFEextraCuts::kFoundOverFindable);
14 hfecuts->SetCutITSpixel(AliHFEextraCuts::kAny);
15 hfecuts->SetCheckITSLayerStatus(kFALSE);
16 hfecuts->SetEtaRange(-0.8,0.8);
17 hfecuts->SetRejectKinkDaughters();
18 hfecuts->SetAcceptKinkMothers();
19 if(isAOD) hfecuts->SetAODFilterBit(4);
20
21 hfecuts->SetMaxImpactParam(1.,2.);
22 hfecuts->SetUseMixedVertex(kTRUE);
23 hfecuts->SetVertexRange(10.);
24 hfecuts->SetPtRange(0.1,100.);
25 // New pPb cuts (February 2013)
26 hfecuts->SetUseCorrelationVertex();
27 hfecuts->SetSPDVtxResolutionCut();
28 //hfecuts->SetpApileupCut();
29
30 //***************************************//
31 // Setting up the task //
32 //***************************************//
33
34 AliAnalysisTaskHFEQA *task = new AliAnalysisTaskHFEQA("taskHFEQA");
35 printf("task %p\n", task);
d1418f51 36 task->SetHFECuts(hfecuts);
890e8a53 37
d1418f51 38 // Collision system
39 if (icollisionsystem == 2) task->SetPbPbAnalysis();
40 else if (icollisionsystem == 1) task->SetpPbAnalysis();
41 else if (icollisionsystem == 0) task->SetppAnalysis();
42
43
44 // Determine the centrality estimator
45 task->SetCentralityEstimator("V0A");
46 if (icent == 2) task->SetCentralityEstimator("V0M");
47 else if (icent == 3) task->SetCentralityEstimator("CL1");
48 else if (icent == 4) task->SetCentralityEstimator("ZNA");
49
50
51 //***************************************//
52 // Configure the PID //
53 //***************************************//
54
85358761 55 if(tpconlydo) {
56 task->SetDoTPConly(kTRUE);
57 }
58 if(trdonlydo) {
59 task->SetDoTRDonly(kTRUE);
60 task->GetPIDQAManagerTRDonly()->SetHighResolutionHistos();
61 }
62 if(toftpcdo) {
63 task->SetDoTOFTPC(kTRUE);
64 task->GetPIDQAManagerTOFTPC()->SetHighResolutionHistos();
65 }
66 if(tpctrddo) {
67 task->SetDoTPCTRD(kTRUE);
68 task->GetPIDQAManagerTPCTRD()->SetHighResolutionHistos();
69 }
70 if(tpcemcaldo) {
71 task->SetDoTPCEMCal(kTRUE);
72 task->GetPIDQAManagerTPCEMCal()->SetHighResolutionHistos();
73 }
890e8a53 74
75 AliHFEpid *pidTPConly = task->GetPIDTPConly();
76 if(useMC) pidTPConly->SetHasMCData(kTRUE);
77 pidTPConly->AddDetector("TPC", 0);
78
d1418f51 79 AliHFEpid *pidTOFTPC = task->GetPIDTOFTPC();
80 if(useMC) pidTOFTPC->SetHasMCData(kTRUE);
81 pidTOFTPC->AddDetector("TOF", 0);
82 pidTOFTPC->AddDetector("TPC", 1);
83 pidTOFTPC->ConfigureTOF(3.);
84
85 AliHFEpid *pidTPCTRD = task->GetPIDTPCTRD();
86 if(useMC) pidTPCTRD->SetHasMCData(kTRUE);
87 pidTPCTRD->AddDetector("TPC", 0);
88 pidTPCTRD->AddDetector("TRD", 1);
89
90 AliHFEpid *pidTPCEMCal = task->GetPIDTPCEMCal();
91 if(useMC) pidTPCEMCal->SetHasMCData(kTRUE);
92 pidTPCEMCal->AddDetector("EMCAL", 1);
93 pidTPCEMCal->AddDetector("TPC", 0);
94
95
96 // TPC PID
97 Double_t paramsTPCdEdxcutlowEMCal[12] ={-3.0, -3.0, -3.0,-3.0,-3.0,-3.0,-3.0,-3.0,-3.0,-3.0,-3.0,-3.0};
98 Double_t paramsTPCdEdxcutlow[12] ={0.0, 0.0, 0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0};
99 Double_t paramsTPCdEdxcuthigh[12] ={3.0, 3.0, 3.0,3.0,3.0,3.0,3.0,3.0,3.0,3.0,3.0,3.0};
100 char *cutmodel;
101 cutmodel="pol0";
102 for(Int_t a=0;a<11;a++){
103 Double_t tpcparamlowEMCal[1]={paramsTPCdEdxcutlowEMCal[a]};
104 Double_t tpcparamlow[1]={paramsTPCdEdxcutlow[a]};
105 Float_t tpcparamhigh=paramsTPCdEdxcuthigh[a];
890e8a53 106 pidTPConly->ConfigureTPCcentralityCut(a,cutmodel,tpcparamlow,tpcparamhigh);
d1418f51 107 pidTOFTPC->ConfigureTPCcentralityCut(a,cutmodel,tpcparamlow,tpcparamhigh);
108 pidTPCTRD->ConfigureTPCcentralityCut(a,cutmodel,tpcparamlow,tpcparamhigh);
109 pidTPCEMCal->ConfigureTPCcentralityCut(a,cutmodel,tpcparamlowEMCal,tpcparamhigh);
110 }
890e8a53 111 pidTPConly->ConfigureTPCdefaultCut(cutmodel,paramsTPCdEdxcutlow,paramsTPCdEdxcuthigh[0]);
d1418f51 112 pidTOFTPC->ConfigureTPCdefaultCut(cutmodel,paramsTPCdEdxcutlow,paramsTPCdEdxcuthigh[0]);
113 pidTPCTRD->ConfigureTPCdefaultCut(cutmodel,paramsTPCdEdxcutlow,paramsTPCdEdxcuthigh[0]);
114 pidTPCEMCal->ConfigureTPCdefaultCut(cutmodel,paramsTPCdEdxcutlowEMCal,paramsTPCdEdxcuthigh[0]);
115
116 // TRD
117 AliHFEpidTRD *trdpid = pidTPCTRD->GetDetPID(AliHFEpid::kTRDpid);
118 trdpid->SetTRD2DPID();
119 trdpid->SetElectronEfficiency(0.80); // efficiency
3cd4d968 120 trdpid->SetNTracklets(6); // ntracklets threshold
121 trdpid->SetCutNTracklets(6, kTRUE);
d1418f51 122
85358761 123 // TRD only
124 AliHFEpid *pidTRDonly = task->GetPIDTRDonly();
125 if(useMC) pidTRDonly->SetHasMCData(kTRUE);
126 pidTRDonly->AddDetector("TRD", 0);
127
128 AliHFEpidTRD *trdonlypid = pidTRDonly->GetDetPID(AliHFEpid::kTRDpid);
129 trdonlypid->SetTRD2DPID();
130 trdonlypid->SetElectronEfficiency(0.80); // efficiency
131 trdonlypid->SetNTracklets(6); // ntracklets threshold
132 trdonlypid->SetCutNTracklets(6, kTRUE);
133
d1418f51 134 // change E/p cuts
135 AliHFEpidEMCAL *emcpid = pidTPCEMCal->AliHFEpid::GetDetPID(AliHFEpid::kEMCALpid);
136 emcpid->SetEoPMax(1.3);
137 emcpid->SetEoPMim(0.9);
138
139 return task;
140}