]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWG4/macros/AddTaskPWG4HighPtQAMC.C
adding TPC cosntrained tracks back in for comparison
[u/mrichter/AliRoot.git] / PWG4 / macros / AddTaskPWG4HighPtQAMC.C
index 1252d2d9756e538ae73f24e32a372f5dbf3df8c1..8d21a0acfb7f679313b0d2c47f9100133665a92c 100644 (file)
@@ -1,9 +1,26 @@
+void AddTaskPWG4HighPtQAMCAll(char *prodType = "LHC10e14") {
 
-//DEFINITION OF A FEW CONSTANTS
+  AliPWG4HighPtQAMC *taskQAMC00 = AddTaskPWG4HighPtQAMC(prodType,0,0);
+  AliPWG4HighPtQAMC *taskQAMC00 = AddTaskPWG4HighPtQAMC(prodType,0,1);
+  AliPWG4HighPtQAMC *taskQAMC00 = AddTaskPWG4HighPtQAMC(prodType,0,2);
+  //  AliPWG4HighPtQAMC *taskQAMC10 = AddTaskPWG4HighPtQAMC(prodType,1,0);
+  //  AliPWG4HighPtQAMC *taskQAMC20 = AddTaskPWG4HighPtQAMC(prodType,2,0);
+  AliPWG4HighPtQAMC *taskQAMC70 = AddTaskPWG4HighPtQAMC(prodType,7,0);
+  AliPWG4HighPtQAMC *taskQAMC70 = AddTaskPWG4HighPtQAMC(prodType,7,1);
+}
 
-AliPWG4HighPtQAMC* AddTaskPWG4HighPtQAMC(char *prodType = "LHC10e14", int trackType = 0)
+AliPWG4HighPtQAMC* AddTaskPWG4HighPtQAMC(char *prodType = "LHC10e14", Int_t trackType = 0, Int_t cuts =0)
 {
   // Creates HighPtQAMC analysis task and adds it to the analysis manager.
+
+  //Track types:
+  //trackType
+  //           0: global tracks
+  //           1: TPConly tracks
+  //           2: TPConly constrained tracks
+
+  //Load common track cut class
+  gROOT->LoadMacro("$ALICE_ROOT/PWG4/macros/CreateTrackCutsPWG4.C");
   
   // A. Get the pointer to the existing analysis manager via the static access method.
   //==============================================================================
@@ -29,63 +46,42 @@ AliPWG4HighPtQAMC* AddTaskPWG4HighPtQAMC(char *prodType = "LHC10e14", int trackT
   //CREATE THE  CUTS -----------------------------------------------
   //Use AliESDtrackCuts
   AliESDtrackCuts *trackCuts = new AliESDtrackCuts("AliESDtrackCuts","Standard Cuts");
+  AliESDtrackCuts *trackCutsReject = 0x0;
   //Standard Cuts
   //Set track cuts for global tracks
-  if(trackType==0) {
-    trackCuts = trackCuts->GetStandardITSTPCTrackCuts2010(kTRUE);//Primary Track Selection
-    trackCuts->SetRequireITSRefit(kTRUE);
+  if(trackType==0 && cuts==0) {
+    // tight global tracks - RAA analysis
+    trackCuts = CreateTrackCutsPWG4(1000);
+  }
+  if(trackType==0 && cuts==1) {
+    //Cuts global tracks with ITSrefit requirement and SPDrequirement for jet analysis
+    trackCuts = CreateTrackCutsPWG4(10001001);
+   }
+  if(trackType==0 && cuts==2) {
+    //Cuts global tracks with ITSrefit requirement but without SPD
+    trackCuts = CreateTrackCutsPWG4(10011001);
   }
-  if(trackType==3) {
-    //Cuts global tracks with ITSrefit requirement
-    // TPC  
-    trackCuts->SetMinNClustersTPC(70);
-    trackCuts->SetMaxChi2PerClusterTPC(4);
-    trackCuts->SetAcceptKinkDaughters(kFALSE);
-    trackCuts->SetRequireTPCRefit(kTRUE);
-    // ITS
-    trackCuts->SetRequireITSRefit(kTRUE);
-    
-    trackCuts->SetMaxDCAToVertexXYPtDep("0.0182+0.0350/pt^1.01");
-    trackCuts->SetMaxDCAToVertexZ(2);
-    trackCuts->SetDCAToVertex2D(kFALSE);
-    trackCuts->SetRequireSigmaToVertex(kFALSE);
-    
-    trackCuts->SetEtaRange(-0.9,0.9);
-    trackCuts->SetPtRange(0.15, 1e10);
+  if(trackType==7 && cuts==0) {
+    // tight global tracks
+    trackCuts = CreateTrackCutsPWG4(10041001);
+    trackCutsReject = CreateTrackCutsPWG4(1001);
+  }
+  if(trackType==7 && cuts==1) {
+    // tight global tracks
+    trackCuts = CreateTrackCutsPWG4(10011001);
   }
   //Set track cuts for TPConly tracks
   if(trackType==1 || trackType==2) { 
-    trackCuts = trackCuts->GetStandardTPCOnlyTrackCuts(); 
-    trackCuts->SetMinNClustersTPC(70);
+    //Set track cuts for TPConly tracks
+    trackCuts = CreateTrackCutsPWG4(2001);
   }
   trackCuts->SetEtaRange(-0.9,0.9);
   trackCuts->SetPtRange(0.15, 1e10);
   
-  AliESDtrackCuts *trackCutsITS = new AliESDtrackCuts("AliESDtrackCuts","Standard Cuts with SPD or SDD");
-  //Cuts SPD || SDD
-  // TPC  
-  trackCutsITS->SetMinNClustersTPC(70);
-  trackCutsITS->SetMaxChi2PerClusterTPC(4);
-  trackCutsITS->SetAcceptKinkDaughters(kFALSE);
-  trackCutsITS->SetRequireTPCRefit(kTRUE);
-  // ITS
-  trackCutsITS->SetRequireITSRefit(kTRUE);
-  trackCutsITS->SetClusterRequirementITS(AliESDtrackCuts::kSPD, AliESDtrackCuts::kNone);
-  trackCutsITS->SetClusterRequirementITS(AliESDtrackCuts::kSDD, AliESDtrackCuts::kFirst);
-
-  trackCutsITS->SetMaxDCAToVertexXYPtDep("0.0182+0.0350/pt^1.01");
-  trackCutsITS->SetMaxDCAToVertexZ(2);
-  trackCutsITS->SetDCAToVertex2D(kFALSE);
-  trackCutsITS->SetRequireSigmaToVertex(kFALSE);
-
-  trackCutsITS->SetEtaRange(-0.9,0.9);
-  trackCutsITS->SetPtRange(0.15, 1e10);
-  trackCutsITS->SetRequireITSRefit(kTRUE);
-
   //Create the task
-  AliPWG4HighPtQAMC *taskPWG4QAMC = new AliPWG4HighPtQAMC(Form("AliPWG4HighPtQAMC%d",trackType));
+  AliPWG4HighPtQAMC *taskPWG4QAMC = new AliPWG4HighPtQAMC(Form("AliPWG4HighPtQAMC%d%d",trackType,cuts));
   taskPWG4QAMC->SetCuts(trackCuts);
-  taskPWG4QAMC->SetCutsITS(trackCutsITS);
+  taskPWG4QAMC->SetCutsReject(trackCutsReject);
   taskPWG4QAMC->SetTrackType(trackType);
   
   if(!strcmp(prodType, "LHC10e14")) taskPWG4QAMC->SetPtMax(500.);
@@ -101,16 +97,14 @@ AliPWG4HighPtQAMC* AddTaskPWG4HighPtQAMC(char *prodType = "LHC10e14", int trackT
   //  AliAnalysisDataContainer *cinput0  = mgr->GetCommonInputContainer();
   printf("Create output containers \n");
   TString outputfile = AliAnalysisManager::GetCommonFileName();
-  outputfile += Form(":PWG4_HighPtQAMC%d",trackType);
+  outputfile += Form(":PWG4_HighPtQAMC%d%d",trackType,cuts);
   
-  AliAnalysisDataContainer *cout_hist1 = mgr->CreateContainer(Form("qa_histsMC%d",trackType), TList::Class(), AliAnalysisManager::kOutputContainer,outputfile);
-  AliAnalysisDataContainer *cout_hist2 = mgr->CreateContainer(Form("qa_histsMCITS%d",trackType), TList::Class(), AliAnalysisManager::kOutputContainer,outputfile);  
+  AliAnalysisDataContainer *cout_hist1 = mgr->CreateContainer(Form("qa_histsMC%d%d",trackType,cuts), TList::Class(), AliAnalysisManager::kOutputContainer,outputfile);
 
   mgr->AddTask(taskPWG4QAMC);
   mgr->ConnectInput(taskPWG4QAMC,0,mgr->GetCommonInputContainer());
   mgr->ConnectOutput(taskPWG4QAMC,0,cout_hist1);
-  mgr->ConnectOutput(taskPWG4QAMC,1,cout_hist2);
 
-    // Return task pointer at the end
+  // Return task pointer at the end
   return taskPWG4QAMC;
 }