]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGHF/hfe/macros/configs/PbPb/ConfigHFEQA.C
Try to understannd
[u/mrichter/AliRoot.git] / PWGHF / hfe / macros / configs / PbPb / ConfigHFEQA.C
CommitLineData
890e8a53 1AliAnalysisTaskHFEQA* ConfigHFEQA(Bool_t useMC, Bool_t isAOD, Int_t icollisionsystem = 2, Int_t icent = 2,Bool_t tpconlydo = 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
890e8a53 55 if(tpconlydo) task->SetDoTPConly(kTRUE);
56 if(toftpcdo) task->SetDoTOFTPC(kTRUE);
57 if(tpctrddo) task->SetDoTPCTRD(kTRUE);
58 if(tpcemcaldo) task->SetDoTPCEMCal(kTRUE);
59
60 AliHFEpid *pidTPConly = task->GetPIDTPConly();
61 if(useMC) pidTPConly->SetHasMCData(kTRUE);
62 pidTPConly->AddDetector("TPC", 0);
63
d1418f51 64 AliHFEpid *pidTOFTPC = task->GetPIDTOFTPC();
65 if(useMC) pidTOFTPC->SetHasMCData(kTRUE);
66 pidTOFTPC->AddDetector("TOF", 0);
67 pidTOFTPC->AddDetector("TPC", 1);
68 pidTOFTPC->ConfigureTOF(3.);
69
70 AliHFEpid *pidTPCTRD = task->GetPIDTPCTRD();
71 if(useMC) pidTPCTRD->SetHasMCData(kTRUE);
72 pidTPCTRD->AddDetector("TPC", 0);
73 pidTPCTRD->AddDetector("TRD", 1);
74
75 AliHFEpid *pidTPCEMCal = task->GetPIDTPCEMCal();
76 if(useMC) pidTPCEMCal->SetHasMCData(kTRUE);
77 pidTPCEMCal->AddDetector("EMCAL", 1);
78 pidTPCEMCal->AddDetector("TPC", 0);
79
80
81 // TPC PID
82 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};
83 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};
84 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};
85 char *cutmodel;
86 cutmodel="pol0";
87 for(Int_t a=0;a<11;a++){
88 Double_t tpcparamlowEMCal[1]={paramsTPCdEdxcutlowEMCal[a]};
89 Double_t tpcparamlow[1]={paramsTPCdEdxcutlow[a]};
90 Float_t tpcparamhigh=paramsTPCdEdxcuthigh[a];
890e8a53 91 pidTPConly->ConfigureTPCcentralityCut(a,cutmodel,tpcparamlow,tpcparamhigh);
d1418f51 92 pidTOFTPC->ConfigureTPCcentralityCut(a,cutmodel,tpcparamlow,tpcparamhigh);
93 pidTPCTRD->ConfigureTPCcentralityCut(a,cutmodel,tpcparamlow,tpcparamhigh);
94 pidTPCEMCal->ConfigureTPCcentralityCut(a,cutmodel,tpcparamlowEMCal,tpcparamhigh);
95 }
890e8a53 96 pidTPConly->ConfigureTPCdefaultCut(cutmodel,paramsTPCdEdxcutlow,paramsTPCdEdxcuthigh[0]);
d1418f51 97 pidTOFTPC->ConfigureTPCdefaultCut(cutmodel,paramsTPCdEdxcutlow,paramsTPCdEdxcuthigh[0]);
98 pidTPCTRD->ConfigureTPCdefaultCut(cutmodel,paramsTPCdEdxcutlow,paramsTPCdEdxcuthigh[0]);
99 pidTPCEMCal->ConfigureTPCdefaultCut(cutmodel,paramsTPCdEdxcutlowEMCal,paramsTPCdEdxcuthigh[0]);
100
101 // TRD
102 AliHFEpidTRD *trdpid = pidTPCTRD->GetDetPID(AliHFEpid::kTRDpid);
103 trdpid->SetTRD2DPID();
104 trdpid->SetElectronEfficiency(0.80); // efficiency
3cd4d968 105 trdpid->SetNTracklets(6); // ntracklets threshold
106 trdpid->SetCutNTracklets(6, kTRUE);
d1418f51 107
108 // change E/p cuts
109 AliHFEpidEMCAL *emcpid = pidTPCEMCal->AliHFEpid::GetDetPID(AliHFEpid::kEMCALpid);
110 emcpid->SetEoPMax(1.3);
111 emcpid->SetEoPMim(0.9);
112
113 return task;
114}