]>
Commit | Line | Data |
---|---|---|
890e8a53 | 1 | AliAnalysisTaskHFEQA* 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 | } |