-AliAnalysisTaskElecHadronCorrel* ConfigHFEElecHadronCorrelPbPb(Bool_t useMC,\r
- Bool_t EventTrigSelMB=kTRUE,\r
- Bool_t TrigSelCen = kTRUE,\r
- Double_t CentMin = 0,\r
- Double_t CentMax = 7,\r
- Double_t TPCNsigMinE = -2,\r
- Double_t TPCNsigMaxE = 2,\r
- Double_t TPCNsigMinH = -10,\r
- Double_t TPCNsigMaxH = -3.5,\r
- Double_t SSM02Min = 0.03, \r
- Double_t SSM02Max = 0.5,\r
- Double_t SSM20Min = 0.03, \r
- Double_t SSM20Max = 0.3,\r
- Double_t Disp = 1,\r
- Double_t EovPMin = 0.8, \r
- Double_t EovPMax = 1.2, \r
- Double_t InvM = 0.1,\r
- const char* CentralityMet = "VOM",\r
- Int_t TPCNClsEle = 100,\r
- Int_t TPCNClsHad = 80,\r
- Bool_t AssoEleITSref=kTRUE,\r
- Int_t AssoElecTPCNCls=80,\r
- TString ContNameExt = "Central",\r
- TString TaskName="hfeCorrl"){\r
-\r
-//\r
- // HFE standard task configuration\r
- //\r
-\r
- Bool_t kAnalyseTaggedTracks = kTRUE;\r
- \r
- AliHFEcuts *hfecuts = new AliHFEcuts("hfeCutsEMCAL","HFE Standard Cuts");\r
-// hfecuts->CreateStandardCuts();\r
- hfecuts->SetMinNClustersTPC(TPCNClsEle);\r
- hfecuts->SetMinNClustersITS(3);\r
- hfecuts->SetMinNTrackletsTRD(0);\r
- hfecuts->SetMinRatioTPCclusters(0.6);\r
- // hfecuts->SetTPCmodes(AliHFEextraCuts::kFound, AliHFEextraCuts::kFoundOverFindable);\r
- hfecuts->SetRequireITSPixel();\r
- hfecuts->SetCutITSpixel(AliHFEextraCuts::kAny); \r
- hfecuts->SetMaxChi2perClusterITS(-1);\r
- hfecuts->SetMaxChi2perClusterTPC(3.5);\r
- hfecuts->SetCheckITSLayerStatus(kFALSE); // shud be put back\r
-// hfecuts->UnsetVertexRequirement();\r
- hfecuts->SetVertexRange(10.);\r
- hfecuts->SetRequireSigmaToVertex();\r
- //hfecuts->SetSigmaToVertex(10);\r
- hfecuts->SetTOFPIDStep(kFALSE);\r
-// hfecuts->SetQAOn();\r
- hfecuts->SetPtRange(0, 30);\r
-\r
- TString taskName = TaskName;\r
-\r
- AliAnalysisTaskElecHadronCorrel *task = new AliAnalysisTaskElecHadronCorrel(taskName);\r
- printf("task ------------------------ %p\n ", task);\r
- task->SetHFECuts(hfecuts);\r
-// task->SetRemovePileUp(kTRUE);\r
-// task->SetInvariantMassCut(0.1);\r
-\r
- task->SetEventTriggerSelectionMB(EventTrigSelMB);\r
- task->SetTriggerSelection(TrigSelCen);\r
- task->SetCentralityParameters(CentMin, CentMax, CentralityMet);\r
- task->SetInvariantMassCut(InvM);\r
- task->SetAssoElecTPCNCls(AssoElecTPCNCls);\r
- task->SetTPCnsigmaCutsElecSelection(TPCNsigMinE,TPCNsigMaxE);\r
- task->SetTPCnsigmaCutsHadSelection(TPCNsigMinH,TPCNsigMaxH);\r
- task->SetShowerShapeCutsM02(SSM02Min,SSM02Max);\r
- task->SetShowerShapeCutsM20(SSM20Min,SSM20Max);\r
- task->SetShowerShapeCutsDisp(0,Disp);\r
- task->SetEovPCuts(EovPMin,EovPMax);\r
- task->SetRejectKinkMother(kTRUE);\r
- task->SetTPCNClsHad(TPCNClsHad);\r
- task->SetAssoElecITSrefit(AssoEleITSref);\r
-\r
- // Define PID\r
- AliHFEpid *pid = task->GetPID();\r
- if(useMC) pid->SetHasMCData(kTRUE);\r
- pid->AddDetector("TPC", 0);\r
- pid->AddDetector("EMCAL", 1);\r
- /*\r
- // change E/p cuts\r
- AliHFEpidEMCAL *emcpid = pid->AliHFEpid::GetDetPID(AliHFEpid::kEMCALpid);\r
- emcpid->SetEoPMax(1.2);\r
- emcpid->SetEoPMim(0.8);\r
-\r
- Double_t params[4];\r
- char *cutmodel;\r
- if(useMC){\r
- // Monte-Carlo needs modelling of the falling mean with momentum at low momentum\r
- // for high momentum it is consistent with a flat -0.94\r
- cutmodel = "[0]*TMath::Exp([1]*x) + [2] + [3]*x";\r
- Double_t paramsMC[4] = {0.7174, -1.588, -0.9395, 0.0246};\r
- for(int ipar = 0; ipar < 4; ipar++) params[ipar] = paramsMC[ipar];\r
- } else {\r
- // Data is consistent with a flat 0.12\r
- cutmodel = "pol0";\r
- //params[0] = -0.0015;\r
- //params[0] = -3.0;\r
- params[0] = -1.0; //sigma min\r
- }\r
-// pid->ConfigureTPCdefaultCut(cutmodel, params,3.0); \r
- pid->ConfigureTPCasymmetric(0,30,-1,3.0); \r
-*/\r
- printf("*************************************\n");\r
- printf("Configuring standard Task:\n");\r
-// task->PrintStatus();\r
- pid->PrintStatus();\r
- printf("*************************************\n"); \r
- return task;\r
-}\r
+AliAnalysisTaskElecHadronCorrel* ConfigHFEElecHadronCorrelPbPb(Bool_t useMC,
+ Bool_t EventTrigSelMB=kTRUE,
+ Bool_t TrigSelCen = kTRUE,
+ Double_t CentMin = 0,
+ Double_t CentMax = 7,
+ Double_t TPCNsigMinE = -2,
+ Double_t TPCNsigMaxE = 2,
+ Double_t TPCNsigMinH = -10,
+ Double_t TPCNsigMaxH = -3.5,
+ Double_t SSM02Min = 0.03,
+ Double_t SSM02Max = 0.5,
+ Double_t SSM20Min = 0.03,
+ Double_t SSM20Max = 0.3,
+ Double_t Disp = 1,
+ Double_t EovPMin = 0.8,
+ Double_t EovPMax = 1.2,
+ Double_t InvM = 0.1,
+ const char* CentralityMet = "VOM",
+ Int_t TPCNClsEle = 100,
+ Int_t TPCNClsHad = 80,
+ Bool_t AssoEleITSref=kTRUE,
+ Int_t AssoElecTPCNCls=80,
+ TString ContNameExt = "Central",
+ TString TaskName="hfeCorrl"){
+
+//
+ // HFE standard task configuration
+ //
+
+ Bool_t kAnalyseTaggedTracks = kTRUE;
+
+ AliHFEcuts *hfecuts = new AliHFEcuts("hfeCutsEMCAL","HFE Standard Cuts");
+// hfecuts->CreateStandardCuts();
+ hfecuts->SetMinNClustersTPC(TPCNClsEle);
+ hfecuts->SetMinNClustersITS(3);
+ hfecuts->SetMinNTrackletsTRD(0);
+ hfecuts->SetMinRatioTPCclusters(0.6);
+ // hfecuts->SetTPCmodes(AliHFEextraCuts::kFound, AliHFEextraCuts::kFoundOverFindable);
+ hfecuts->SetRequireITSPixel();
+ hfecuts->SetCutITSpixel(AliHFEextraCuts::kAny);
+ hfecuts->SetMaxChi2perClusterITS(-1);
+ hfecuts->SetMaxChi2perClusterTPC(3.5);
+ hfecuts->SetCheckITSLayerStatus(kFALSE); // shud be put back
+// hfecuts->UnsetVertexRequirement();
+ hfecuts->SetVertexRange(10.);
+ hfecuts->SetRequireSigmaToVertex();
+ //hfecuts->SetSigmaToVertex(10);
+ hfecuts->SetTOFPIDStep(kFALSE);
+// hfecuts->SetQAOn();
+ hfecuts->SetPtRange(0, 30);
+
+ TString taskName = TaskName;
+
+ AliAnalysisTaskElecHadronCorrel *task = new AliAnalysisTaskElecHadronCorrel(taskName);
+ printf("task ------------------------ %p\n ", task);
+ task->SetHFECuts(hfecuts);
+// task->SetRemovePileUp(kTRUE);
+// task->SetInvariantMassCut(0.1);
+
+ task->SetEventTriggerSelectionMB(EventTrigSelMB);
+ task->SetTriggerSelection(TrigSelCen);
+ task->SetCentralityParameters(CentMin, CentMax, CentralityMet);
+ task->SetInvariantMassCut(InvM);
+ task->SetAssoElecTPCNCls(AssoElecTPCNCls);
+ task->SetTPCnsigmaCutsElecSelection(TPCNsigMinE,TPCNsigMaxE);
+ task->SetTPCnsigmaCutsHadSelection(TPCNsigMinH,TPCNsigMaxH);
+ task->SetShowerShapeCutsM02(SSM02Min,SSM02Max);
+ task->SetShowerShapeCutsM20(SSM20Min,SSM20Max);
+ task->SetShowerShapeCutsDisp(0,Disp);
+ task->SetEovPCuts(EovPMin,EovPMax);
+ task->SetRejectKinkMother(kTRUE);
+ task->SetTPCNClsHad(TPCNClsHad);
+ task->SetAssoElecITSrefit(AssoEleITSref);
+
+ // Define PID
+ AliHFEpid *pid = task->GetPID();
+ if(useMC) pid->SetHasMCData(kTRUE);
+ pid->AddDetector("TPC", 0);
+ pid->AddDetector("EMCAL", 1);
+ /*
+ // change E/p cuts
+ AliHFEpidEMCAL *emcpid = pid->AliHFEpid::GetDetPID(AliHFEpid::kEMCALpid);
+ emcpid->SetEoPMax(1.2);
+ emcpid->SetEoPMim(0.8);
+
+ Double_t params[4];
+ char *cutmodel;
+ if(useMC){
+ // Monte-Carlo needs modelling of the falling mean with momentum at low momentum
+ // for high momentum it is consistent with a flat -0.94
+ cutmodel = "[0]*TMath::Exp([1]*x) + [2] + [3]*x";
+ Double_t paramsMC[4] = {0.7174, -1.588, -0.9395, 0.0246};
+ for(int ipar = 0; ipar < 4; ipar++) params[ipar] = paramsMC[ipar];
+ } else {
+ // Data is consistent with a flat 0.12
+ cutmodel = "pol0";
+ //params[0] = -0.0015;
+ //params[0] = -3.0;
+ params[0] = -1.0; //sigma min
+ }
+// pid->ConfigureTPCdefaultCut(cutmodel, params,3.0);
+ pid->ConfigureTPCasymmetric(0,30,-1,3.0);
+*/
+ printf("*************************************\n");
+ printf("Configuring standard Task:\n");
+// task->PrintStatus();
+ pid->PrintStatus();
+ printf("*************************************\n");
+ return task;
+}