]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
trigger conditions added
authorjotwinow <jotwinow@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 12 Jan 2010 09:41:43 +0000 (09:41 +0000)
committerjotwinow <jotwinow@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 12 Jan 2010 09:41:43 +0000 (09:41 +0000)
PWG1/TPC/AliPerformanceDCA.cxx
PWG1/TPC/AliPerformanceDEdx.cxx
PWG1/TPC/AliPerformanceMatch.cxx
PWG1/TPC/AliPerformanceTPC.cxx
PWG1/TPC/macros/AddTaskPerformanceTPCQA.C

index 74a0b4c688633a77faed2fd8ae667190ce24ec6b..5e88c008528dcaad8bd2647cb9d1214318ee89bf 100644 (file)
@@ -39,6 +39,7 @@
 #include <TH1.h>
 #include <TH2.h>
 #include <TH3.h>
+#include <TF1.h>
 
 #include "AliPerformanceDCA.h" 
 #include "AliESDEvent.h"   
@@ -289,8 +290,10 @@ void AliPerformanceDCA::Exec(AliMCEvent* const mcEvent, AliESDEvent *const esdEv
   }
 
   // trigger
-  Bool_t isEventTriggered = esdEvent->IsTriggerClassFired(GetTriggerClass());
-  if(!isEventTriggered) return; 
+  if(!bUseMC ) {
+    Bool_t isEventTriggered = esdEvent->IsTriggerClassFired(GetTriggerClass());
+    if(!isEventTriggered) return; 
+  }
 
   // get TPC event vertex
   const AliESDVertex *vtxESD = esdEvent->GetPrimaryVertexTPC();
@@ -321,17 +324,18 @@ void AliPerformanceDCA::Analyse()
   //
   
   TH1::AddDirectory(kFALSE);
-  TH1 *h1D=0;
-  TH2 *h2D=0;
-  //TH3 *h3D=0;
+  TH1F *h1D=0;
+  TH2F *h2D=0;
   TObjArray *aFolderObj = new TObjArray;
   char title[256];
+  TObjArray *arr[6] = {0};
+  TF1 *f1[6] = {0};
 
   // set pt measurable range 
   //fDCAHisto->GetAxis(3)->SetRangeUser(0.10,10.);
 
   //
-  h2D = fDCAHisto->Projection(0,1); // inverse projection convention
+  h2D = (TH2F*)fDCAHisto->Projection(0,1); // inverse projection convention
   h2D->SetName("dca_r_vs_dca_z");
   h2D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(1)->GetTitle());
   h2D->GetYaxis()->SetTitle(fDCAHisto->GetAxis(0)->GetTitle());
@@ -340,7 +344,7 @@ void AliPerformanceDCA::Analyse()
   aFolderObj->Add(h2D);
 
   //
-  h2D = fDCAHisto->Projection(0,2);
+  h2D = (TH2F*)fDCAHisto->Projection(0,2);
   h2D->SetName("dca_r_vs_eta");
   h2D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(2)->GetTitle());
   h2D->GetYaxis()->SetTitle(fDCAHisto->GetAxis(0)->GetTitle());
@@ -348,6 +352,9 @@ void AliPerformanceDCA::Analyse()
   h2D->SetTitle(title);
   aFolderObj->Add(h2D);
 
+  //
+  // mean and rms
+  //
   h1D = MakeStat1D(h2D,0,0);
   h1D->SetName("mean_dca_r_vs_eta");
   h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(2)->GetTitle());
@@ -365,7 +372,33 @@ void AliPerformanceDCA::Analyse()
   aFolderObj->Add(h1D);
 
   //
-  h2D = fDCAHisto->Projection(0,3);
+  // fit mean and sigma
+  //
+
+  arr[0] = new TObjArray();
+  f1[0] = new TF1("gaus","gaus");
+  h2D->FitSlicesY(f1[0],0,-1,0,"QNR",arr[0]);
+
+  h1D = (TH1F*)arr[0]->At(1);
+  h1D->SetName("fit_mean_dca_r_vs_eta");
+  h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(2)->GetTitle());
+  h1D->GetYaxis()->SetTitle("fit_mean_dca_r (cm)");
+  sprintf(title," fit_mean_dca_r (cm) vs %s",fDCAHisto->GetAxis(2)->GetTitle());
+  h1D->SetTitle(title);
+  aFolderObj->Add(h1D);
+
+  h1D = (TH1F*)arr[0]->At(2);
+  h1D->SetName("res_dca_r_vs_eta");
+  h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(2)->GetTitle());
+  h1D->GetYaxis()->SetTitle("res_dca_r (cm)");
+  sprintf(title," res_dca_r (cm) vs %s",fDCAHisto->GetAxis(2)->GetTitle());
+  h1D->SetTitle(title);
+  aFolderObj->Add(h1D);
+
+  //
+  // 
+  //
+  h2D = (TH2F*)fDCAHisto->Projection(0,3);
   h2D->SetName("dca_r_vs_pt");
   h2D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(3)->GetTitle());
   h2D->GetYaxis()->SetTitle(fDCAHisto->GetAxis(0)->GetTitle());
@@ -392,8 +425,34 @@ void AliPerformanceDCA::Analyse()
   h1D->SetBit(TH1::kLogX);
   aFolderObj->Add(h1D);
    
+  //
+  // fit mean and sigma
+  //
+
+  arr[1] = new TObjArray();
+  f1[1] = new TF1("gaus","gaus");
+  h2D->FitSlicesY(f1[1],0,-1,0,"QNR",arr[1]);
+
+  h1D = (TH1F*)arr[1]->At(1);
+  h1D->SetName("fit_mean_dca_r_vs_pt");
+  h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(3)->GetTitle());
+  h1D->GetYaxis()->SetTitle("fit_mean_dca_r (cm)");
+  sprintf(title,"fit_mean_dca_r (cm) vs %s",fDCAHisto->GetAxis(3)->GetTitle());
+  h1D->SetTitle(title);
+  h1D->SetBit(TH1::kLogX);
+  aFolderObj->Add(h1D);
+
+  h1D = (TH1F*)arr[1]->At(2);
+  h1D->SetName("res_dca_r_vs_pt");
+  h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(3)->GetTitle());
+  h1D->GetYaxis()->SetTitle("res_dca_r (cm)");
+  sprintf(title,"res_dca_r (cm) vs %s",fDCAHisto->GetAxis(3)->GetTitle());
+  h1D->SetTitle(title);
+  h1D->SetBit(TH1::kLogX);
+  aFolderObj->Add(h1D);
+
   // 
-  h2D = fDCAHisto->Projection(1,2);
+  h2D = (TH2F*)fDCAHisto->Projection(1,2);
   h2D->SetName("dca_z_vs_eta");
   h2D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(2)->GetTitle());
   h2D->GetYaxis()->SetTitle(fDCAHisto->GetAxis(1)->GetTitle());
@@ -418,7 +477,30 @@ void AliPerformanceDCA::Analyse()
   aFolderObj->Add(h1D);
 
   //
-  h2D = fDCAHisto->Projection(1,3);
+  // fit mean and sigma
+  //
+  arr[2] = new TObjArray();
+  f1[2] = new TF1("gaus","gaus");
+  h2D->FitSlicesY(f1[2],0,-1,0,"QNR",arr[2]);
+
+  h1D = (TH1F*)arr[2]->At(1);
+  h1D->SetName("fit_mean_dca_z_vs_eta");
+  h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(2)->GetTitle());
+  h1D->GetYaxis()->SetTitle("fit_mean_dca_z (cm)");
+  sprintf(title,"fit_mean_dca_z (cm) vs %s",fDCAHisto->GetAxis(2)->GetTitle());
+  h1D->SetTitle(title);
+  aFolderObj->Add(h1D);
+
+  h1D = (TH1F*)arr[2]->At(2);
+  h1D->SetName("res_dca_z_vs_eta");
+  h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(2)->GetTitle());
+  h1D->GetYaxis()->SetTitle("res_dca_z (cm)");
+  sprintf(title,"res_dca_z (cm) vs %s",fDCAHisto->GetAxis(2)->GetTitle());
+  h1D->SetTitle(title);
+  aFolderObj->Add(h1D);
+
+  //
+  h2D = (TH2F*)fDCAHisto->Projection(1,3);
   h2D->SetName("dca_z_vs_pt");
   h2D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(3)->GetTitle());
   h2D->GetYaxis()->SetTitle(fDCAHisto->GetAxis(1)->GetTitle());
@@ -445,11 +527,37 @@ void AliPerformanceDCA::Analyse()
   h1D->SetBit(TH1::kLogX);
   aFolderObj->Add(h1D);
    
+  //
+  // fit mean and sigma
+  //
+
+  arr[3] = new TObjArray();
+  f1[3] = new TF1("gaus","gaus");
+  h2D->FitSlicesY(f1[3],0,-1,0,"QNR",arr[3]);
+
+  h1D = (TH1F*)arr[3]->At(1);
+  h1D->SetName("fit_mean_dca_z_vs_pt");
+  h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(3)->GetTitle());
+  h1D->GetYaxis()->SetTitle("fit_mean_dca_z (cm)");
+  sprintf(title,"fit_mean_dca_z (cm) vs %s",fDCAHisto->GetAxis(3)->GetTitle());
+  h1D->SetTitle(title);
+  h1D->SetBit(TH1::kLogX);
+  aFolderObj->Add(h1D);
+
+  h1D = (TH1F*)arr[3]->At(2);
+  h1D->SetName("res_dca_z_vs_pt");
+  h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(3)->GetTitle());
+  h1D->GetYaxis()->SetTitle("res_dca_z (cm)");
+  sprintf(title,"res_dca_z (cm) vs %s",fDCAHisto->GetAxis(3)->GetTitle());
+  h1D->SetTitle(title);
+  h1D->SetBit(TH1::kLogX);
+  aFolderObj->Add(h1D);
+
   // A - side
   fDCAHisto->GetAxis(2)->SetRangeUser(-1.5,0.0);
 
-  h2D = fDCAHisto->Projection(1,4);
-  h2D->SetName("dca_z_vs_phi");
+  h2D = (TH2F*)fDCAHisto->Projection(1,4);
+  h2D->SetName("dca_z_vs_phi_Aside");
   h2D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(4)->GetTitle());
   h2D->GetYaxis()->SetTitle(fDCAHisto->GetAxis(1)->GetTitle());
   sprintf(title,"%s vs %s (A-side)",fDCAHisto->GetAxis(1)->GetTitle(),fDCAHisto->GetAxis(4)->GetTitle());
@@ -457,7 +565,7 @@ void AliPerformanceDCA::Analyse()
   aFolderObj->Add(h2D);
 
   h1D = MakeStat1D(h2D,0,0);
-  h1D->SetName("mean_dca_z_vs_phi");
+  h1D->SetName("mean_dca_z_vs_phi_Aside");
   h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(4)->GetTitle());
   h1D->GetYaxis()->SetTitle("mean_dca_z (cm)");
   sprintf(title,"mean_dca_z (cm) vs %s (A-side)",fDCAHisto->GetAxis(4)->GetTitle());
@@ -465,18 +573,42 @@ void AliPerformanceDCA::Analyse()
   aFolderObj->Add(h1D);
 
   h1D = MakeStat1D(h2D,0,1);
-  h1D->SetName("rms_dca_z_vs_phi");
+  h1D->SetName("rms_dca_z_vs_phi_Aside");
   h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(4)->GetTitle());
   h1D->GetYaxis()->SetTitle("rms_dca_z (cm)");
   sprintf(title,"rms_dca_z (cm) vs %s (A-side)",fDCAHisto->GetAxis(4)->GetTitle());
   h1D->SetTitle(title);
   aFolderObj->Add(h1D);
  
+  //
+  // fit mean and sigma
+  //
+  arr[4] = new TObjArray();
+  f1[4] = new TF1("gaus","gaus");
+  h2D->FitSlicesY(f1[4],0,-1,0,"QNR",arr[4]);
+
+  h1D = (TH1F*)arr[4]->At(1);
+  h1D->SetName("fit_mean_dca_z_vs_phi_Aside");
+  h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(4)->GetTitle());
+  h1D->GetYaxis()->SetTitle("fit_mean_dca_z (cm)");
+  sprintf(title,"fit_mean_dca_z (cm) vs %s (A-side)",fDCAHisto->GetAxis(4)->GetTitle());
+  h1D->SetTitle(title);
+  aFolderObj->Add(h1D);
+
+  h1D = (TH1F*)arr[4]->At(2);
+  h1D->SetName("res_dca_z_vs_phi_Aside");
+  h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(4)->GetTitle());
+  h1D->GetYaxis()->SetTitle("res_dca_z (cm)");
+  sprintf(title,"res_dca_z (cm) vs %s (A-side)",fDCAHisto->GetAxis(4)->GetTitle());
+  h1D->SetTitle(title);
+  aFolderObj->Add(h1D);
+
   // C - side
   fDCAHisto->GetAxis(2)->SetRangeUser(0.0,1.5);
 
-  h2D = fDCAHisto->Projection(1,4);
-  h2D->SetName("dca_z_vs_phi");
+  h2D = (TH2F*)fDCAHisto->Projection(1,4);
+  h2D->SetName("dca_z_vs_phi_Cside");
   h2D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(4)->GetTitle());
   h2D->GetYaxis()->SetTitle(fDCAHisto->GetAxis(1)->GetTitle());
   sprintf(title,"%s vs %s (C-side)",fDCAHisto->GetAxis(1)->GetTitle(),fDCAHisto->GetAxis(4)->GetTitle());
@@ -484,7 +616,7 @@ void AliPerformanceDCA::Analyse()
   aFolderObj->Add(h2D);
 
   h1D = MakeStat1D(h2D,0,0);
-  h1D->SetName("mean_dca_z_vs_phi");
+  h1D->SetName("mean_dca_z_vs_phi_Cside");
   h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(4)->GetTitle());
   h1D->GetYaxis()->SetTitle("mean_dca_z (cm)");
   sprintf(title,"mean_dca_z (cm) vs %s (C-side)",fDCAHisto->GetAxis(4)->GetTitle());
@@ -492,15 +624,36 @@ void AliPerformanceDCA::Analyse()
   aFolderObj->Add(h1D);
 
   h1D = MakeStat1D(h2D,0,1);
-  h1D->SetName("rms_dca_z_vs_phi");
+  h1D->SetName("rms_dca_z_vs_phi_Cside");
   h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(4)->GetTitle());
   h1D->GetYaxis()->SetTitle("rms_dca_z (cm)");
   sprintf(title,"rms_dca_z (cm) vs %s (C-side)",fDCAHisto->GetAxis(4)->GetTitle());
   h1D->SetTitle(title);
   aFolderObj->Add(h1D);
 
+  //
+  // fit mean and sigma
+  //
+  arr[5] = new TObjArray();
+  f1[5] = new TF1("gaus","gaus");
+  h2D->FitSlicesY(f1[5],0,-1,0,"QNR",arr[5]);
+
+  h1D = (TH1F*)arr[5]->At(1);
+  h1D->SetName("fit_mean_dca_z_vs_phi_Cside");
+  h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(4)->GetTitle());
+  h1D->GetYaxis()->SetTitle("fit_mean_dca_z (cm)");
+  sprintf(title,"fit_mean_dca_z (cm) vs %s (C-side)",fDCAHisto->GetAxis(4)->GetTitle());
+  h1D->SetTitle(title);
+  aFolderObj->Add(h1D);
 
+  h1D = (TH1F*)arr[5]->At(2);
+  h1D->SetName("res_dca_z_vs_phi_Cside");
+  h1D->GetXaxis()->SetTitle(fDCAHisto->GetAxis(4)->GetTitle());
+  h1D->GetYaxis()->SetTitle("res_dca_z (cm)");
+  sprintf(title,"res_dca_z (cm) vs %s (C-side)",fDCAHisto->GetAxis(4)->GetTitle());
+  h1D->SetTitle(title);
+  aFolderObj->Add(h1D);
   // export objects to analysis folder
   fAnalysisFolder = ExportToFolder(aFolderObj);
 
index 6ba60707f04f4c5e31590268eaac41b1266dda51..3c124217138d500b97f5ca1e2ac111fc8560e114 100644 (file)
@@ -319,8 +319,10 @@ void AliPerformanceDEdx::Exec(AliMCEvent* const mcEvent, AliESDEvent *const esdE
   }
 
   // trigger
-  Bool_t isEventTriggered = esdEvent->IsTriggerClassFired(GetTriggerClass());
-  if(!isEventTriggered) return; 
+  if(!bUseMC) {
+    Bool_t isEventTriggered = esdEvent->IsTriggerClassFired(GetTriggerClass());
+    if(!isEventTriggered) return; 
+  }
 
   // get TPC event vertex
   const AliESDVertex *vtxESD = esdEvent->GetPrimaryVertexTPC();
index e4ad18315e6544f295d211ba2e3ef4f495bcf5dc..81f902922d316405827128eede7e9c98503f60fa 100644 (file)
@@ -514,8 +514,10 @@ void AliPerformanceMatch::Exec(AliMCEvent* const mcEvent, AliESDEvent *const esd
   }
 
   // trigger
-  Bool_t isEventTriggered = esdEvent->IsTriggerClassFired(GetTriggerClass());
-  if(!isEventTriggered) return; 
+  if(!bUseMC) {
+    Bool_t isEventTriggered = esdEvent->IsTriggerClassFired(GetTriggerClass());
+    if(!isEventTriggered) return; 
+  }
 
   // get TPC event vertex
   const AliESDVertex *vtxESD = esdEvent->GetPrimaryVertexTPC();
index c93b35b40f5940333efc2b07ed5b505fa6d83a8b..588ede2152b4e4b31bcb8742d51c37c358f96994 100644 (file)
@@ -311,8 +311,10 @@ void AliPerformanceTPC::Exec(AliMCEvent* const mcEvent, AliESDEvent *const esdEv
   }
 
   // trigger
-  Bool_t isEventTriggered = esdEvent->IsTriggerClassFired(GetTriggerClass());
-  if(!isEventTriggered) return; 
+  if(!bUseMC) {
+    Bool_t isEventTriggered = esdEvent->IsTriggerClassFired(GetTriggerClass());
+    if(!isEventTriggered) return; 
+  }
 
   // get TPC event vertex
   const AliESDVertex *vtxESD = esdEvent->GetPrimaryVertexTPC();
index 2b26ac8114241a5799eb465865c058b2e4b35b74..e3fed115a64444801ce6679e22f44081bb0afc5d 100644 (file)
@@ -77,8 +77,7 @@ AliPerformanceTask* AddTaskPerformanceTPCQA(Bool_t bUseMCInfo=kFALSE, Bool_t bUs
   AliRecInfoCuts *pRecInfoCutsTPC = new AliRecInfoCuts(); 
   if(pRecInfoCutsTPC) {
     pRecInfoCutsTPC->SetMaxDCAToVertexXY(3.0);
-    pRecInfoCutsTPC->SetMaxDCAToVertexZ(30.0);
-    //pRecInfoCutsTPC->SetMaxDCAToVertexZ(3.0);
+    pRecInfoCutsTPC->SetMaxDCAToVertexZ(3.0);
     pRecInfoCutsTPC->SetRequireSigmaToVertex(kFALSE);
     pRecInfoCutsTPC->SetRequireTPCRefit(kFALSE);
     pRecInfoCutsTPC->SetAcceptKinkDaughters(kTRUE);