]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWGHF/hfe/AliHFEtrdPIDqaV1.cxx
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWGHF / hfe / AliHFEtrdPIDqaV1.cxx
index f541afe1cee78a33b18aec7698c8a15e63b7c22a..49278f0dfcb93ba108ae7a3b48493210880f30d4 100644 (file)
@@ -89,7 +89,14 @@ AliHFEtrdPIDqaV1 &AliHFEtrdPIDqaV1::operator=(const AliHFEtrdPIDqaV1 &o){
   
   return *this;
 }
+//____________________________________________________________
+AliHFEtrdPIDqaV1::~AliHFEtrdPIDqaV1(){
+  //
+  // Deconstructor
+  //
+  if(fHistos) delete fHistos;
 
+}
 //_________________________________________________________
 Long64_t AliHFEtrdPIDqaV1::Merge(TCollection *coll){
   //
@@ -231,6 +238,12 @@ void AliHFEtrdPIDqaV1::Initialize(){
   Double_t maxTRDtm[5] = {kMaxPID, kMaxP, 20000., 2., 11.};
   fHistos->CreateTHnSparse("hTRDtruncatedMean", "TRD truncated Mean; species; p [GeV/c]; TRD signal [a.u.]; selection step", 5, nBinsTRDtm, minTRDtm, maxTRDtm);
   fHistos->Sumw2("hTRDtruncatedMean");
+
+  // Monitoring of the number of tracklets
+  fHistos->CreateTH2F("hNtrackletsBefore", "Number of tracklets before PID; species; p (GeV/c), Number of Tracklets", kPbins, kMinP, kMaxP, 7, 0., 7.);
+  fHistos->Sumw2("hNtrackletsBefore");
+  fHistos->CreateTH2F("hNtrackletsAfter", "Number of tracklets after PID; species; p (GeV/c), Number of Tracklets", kPbins, kMinP, kMaxP, 7, 0., 7.);
+  fHistos->Sumw2("hNtrackletsAfter");
 }
 
 //____________________________________________________________
@@ -252,10 +265,15 @@ void AliHFEtrdPIDqaV1::ProcessTrack(const AliHFEpidObject *track, AliHFEdetPIDqa
   container[2] = pidResponse ? pidResponse->NumberOfSigmasTPC(track->GetRecTrack(), AliPID::kElectron) : 0.;
   container[3] = step;
   container[4] = track->GetCentrality();
+  AliDebug(1, Form("Species %d, p %f, number of sigma TPC %f, step %f, centrality %f", (Int_t)species,(Float_t) container[1],(Float_t) container[2],(Float_t) container[3],(Float_t) container[4]));
   fHistos->Fill("hTPCsigma", container);
+  AliDebug(1, "Filled  TPC sigma\n");
+
+
 
   container[2] = trdpid ? trdpid->GetElectronLikelihood(static_cast<const AliVTrack*>(track->GetRecTrack()), anatype) : 0;
   fHistos->Fill("hTRDlikelihood", container);
+  AliDebug(1, "Filled likelihood\n");
 
   if(track->IsESDanalysis()){
     const AliESDtrack *esdtrack = dynamic_cast<const AliESDtrack *>(track->GetRecTrack());
@@ -268,7 +286,15 @@ void AliHFEtrdPIDqaV1::ProcessTrack(const AliHFEpidObject *track, AliHFEdetPIDqa
     container[2] = trdpid ? trdpid->GetChargeLayer(track->GetRecTrack(), ily, anatype) : 0;
     if(container[2] < 1e-3) continue; // Filter out 0 entries
     fHistos->Fill("hTRDcharge", container);
+    AliDebug(1, "Filled TRD charge\n");
   }
+
+  Int_t ntracklets = track->GetRecTrack()->GetTRDntrackletsPID();
+  if(step == AliHFEdetPIDqa::kBeforePID)
+    fHistos->Fill("hNtrackletsBefore", trdpid ? trdpid->GetP(track->GetRecTrack(), anatype) : 0., ntracklets);
+  else
+    fHistos->Fill("hNtrackletsAfter", trdpid ? trdpid->GetP(track->GetRecTrack(), anatype) : 0., ntracklets);
+  AliDebug(1, "Filled tracklet\n");
 }
 
 //_________________________________________________________