]>
Commit | Line | Data |
---|---|---|
c683985a | 1 | AliAnalysisTaskHFECal* ConfigHFECal(Bool_t useMC,Bool_t MassConst,Bool_t MassWidthCut,Bool_t MassCal,Bool_t MassNonlinear,Double_t asspTCut,Double_t angleCut,Double_t MassCut, Double_t NsigCut, Int_t fqa){ |
2 | // | |
3 | // HFE standard task configuration | |
4 | // | |
5 | ||
6 | printf("Setting in this analysis\n"); | |
7 | printf("MassConst = %d/n",MassConst); | |
8 | printf("MassCal = %d/n", MassCal); | |
9 | printf("MassWidth = %d/n",MassWidthCut); | |
10 | printf("asspTCut = %d/n",asspTCut); | |
11 | printf("angleCut = %d/n",angleCut); | |
12 | printf("MassCut = %d/n",MassCut); | |
13 | printf("NsigCut = %d/n", NsigCut); | |
14 | printf("qa = %d/n", fqa); | |
15 | ||
16 | Bool_t kAnalyseTaggedTracks = kTRUE; | |
17 | ||
18 | AliHFEcuts *hfecuts = new AliHFEcuts("hfeCutsEMCAL","HFE Standard Cuts"); | |
19 | hfecuts->CreateStandardCuts(); | |
20 | hfecuts->SetMinNClustersTPC(100); | |
21 | hfecuts->SetMinRatioTPCclusters(0.6); | |
22 | hfecuts->SetTPCmodes(AliHFEextraCuts::kFound, AliHFEextraCuts::kFoundOverFindable); | |
23 | hfecuts->SetMinNClustersITS(3); | |
24 | hfecuts->SetCutITSpixel(AliHFEextraCuts::kAny); | |
25 | hfecuts->SetCheckITSLayerStatus(kFALSE); | |
26 | hfecuts->SetVertexRange(10.); | |
27 | hfecuts->SetTOFPIDStep(kFALSE); | |
28 | hfecuts->SetPtRange(2, 50); | |
29 | hfecuts->SetMaxImpactParam(3.,3.); | |
30 | ||
31 | AliAnalysisTaskHFECal *task = new AliAnalysisTaskHFECal("HFEanalysisEMCal"); | |
32 | printf("task ------------------------ %p\n ", task); | |
33 | task->SetHFECuts(hfecuts); | |
34 | task->SetMassConstraint(MassConst); | |
35 | task->SetMassWidthCut(MassWidthCut); | |
36 | task->SetMassNonlinear(MassNonlinear); | |
37 | //Double_t masscut = 0.05; | |
38 | //if(!MassConst)masscut = 0.1; | |
39 | Double_t masscut = MassCut; | |
40 | task->SetInvariantMassCut(masscut); | |
41 | task->SetOpeningAngleCut(angleCut); | |
42 | task->SetMimpTassCut(asspTCut); | |
43 | task->SetMimNsigassCut(NsigCut); | |
44 | task->SetMassCalMethod(MassCal); | |
45 | task->SetQAHist(fqa); | |
46 | ||
47 | // Define PID | |
48 | AliHFEpid *pid = task->GetPID(); | |
49 | if(useMC) pid->SetHasMCData(kTRUE); | |
50 | pid->AddDetector("TPC", 0); | |
51 | //pid->AddDetector("EMCAL", 1); | |
52 | ||
53 | Double_t params[4]; | |
54 | char *cutmodel; | |
55 | if(useMC){ | |
56 | // Monte-Carlo needs modelling of the falling mean with momentum at low momentum | |
57 | // for high momentum it is consistent with a flat -0.94 | |
58 | //cutmodel = "[0]*TMath::Exp([1]*x) + [2] + [3]*x"; | |
59 | //Double_t paramsMC[4] = {0.7174, -1.588, -0.9395, 0.0246}; | |
60 | //for(int ipar = 0; ipar < 4; ipar++) params[ipar] = paramsMC[ipar]; | |
61 | cutmodel = "pol0"; | |
62 | params[0] = -1.0; //sigma min | |
63 | } else { | |
64 | // Data is consistent with a flat 0.12 | |
65 | cutmodel = "pol0"; | |
66 | //params[0] = -0.0015; | |
67 | //params[0] = -3.0; | |
68 | //params[0] = -0.05; //sigma min | |
69 | params[0] = -1.0; //sigma min | |
70 | } | |
71 | //pid->ConfigureTPCdefaultCut(cutmodel, params,3.0); | |
72 | for(Int_t a=0;a<11;a++)pid->ConfigureTPCcentralityCut(a,cutmodel,params,3.0); | |
73 | ||
74 | ||
75 | // change E/p cuts | |
76 | AliHFEpidEMCAL *emcpid = pid->AliHFEpid::GetDetPID(AliHFEpid::kEMCALpid); | |
77 | emcpid->SetEoPMax(1.3); | |
78 | emcpid->SetEoPMim(0.9); | |
79 | ||
80 | printf("*************************************\n"); | |
81 | printf("Configuring standard Task:\n"); | |
82 | // task->PrintStatus(); | |
83 | pid->PrintStatus(); | |
84 | printf("*************************************\n"); | |
85 | return task; | |
86 | } |