From 00b819131be66337ecb2c66eaf8584afe3af2f16 Mon Sep 17 00:00:00 2001 From: jotwinow Date: Sat, 16 Jan 2010 19:18:31 +0000 Subject: [PATCH] fix coding rules violation --- PWG0/dNdPt/AlidNdPtAnalysis.cxx | 85 +++++++++-------- PWG0/dNdPt/AlidNdPtAnalysis.h | 146 ++++++++++++++--------------- PWG0/dNdPt/AlidNdPtCorrection.cxx | 131 +++++++++++++++++++++----- PWG0/dNdPt/AlidNdPtCorrection.h | 91 +++++++++--------- PWG0/dNdPt/AlidNdPtCutAnalysis.cxx | 35 ++++--- PWG0/dNdPt/AlidNdPtCutAnalysis.h | 34 +++---- PWG0/dNdPt/AlidNdPtHelper.cxx | 2 +- 7 files changed, 303 insertions(+), 221 deletions(-) diff --git a/PWG0/dNdPt/AlidNdPtAnalysis.cxx b/PWG0/dNdPt/AlidNdPtAnalysis.cxx index e0fcb8f7fbc..2eeb8fbb497 100644 --- a/PWG0/dNdPt/AlidNdPtAnalysis.cxx +++ b/PWG0/dNdPt/AlidNdPtAnalysis.cxx @@ -12,11 +12,21 @@ * about the suitability of this software for any purpose. It is * * provided "as is" without express or implied warranty. * **************************************************************************/ +//------------------------------------------------------------------------------ +// AlidNdPtAnalysis class. +// +// a. functionality: +// - fills analysis control histograms +// - fills generic correction matrices +// - generates correction matrices +// +// b. data members: +// - generic correction matrices +// - control histograms +// +// Author: J.Otwinowski 04/11/2008 +//------------------------------------------------------------------------------ -#include - -#include "TFile.h" -#include "TCint.h" #include "TH1.h" #include "TH2.h" #include "TCanvas.h" @@ -212,7 +222,9 @@ AlidNdPtAnalysis::AlidNdPtAnalysis(Char_t* name, Char_t* title): AlidNdPt(name,t // rec. track control histograms fRecTrackHist2(0) { + // // constructor + // for(Int_t i=0; iSumw2(); // - Double_t kFact = 1.0; - if(GetAnalysisMode() == AlidNdPtHelper::kTPCSPDvtx || - GetAnalysisMode() == AlidNdPtHelper::kTPCSPDvtxUpdate) kFact = 0.03; - + Double_t kFact = 0.1; Int_t binsRecMCEventHist1[3]={100,100,100}; Double_t minRecMCEventHist1[3]={-10.0*kFact,-10.0*kFact,-10.0*kFact}; Double_t maxRecMCEventHist1[3]={10.0*kFact,10.0*kFact,10.0*kFact}; @@ -1109,7 +1120,7 @@ void AlidNdPtAnalysis::Process(AliESDEvent *const esdEvent, AliMCEvent *const mc // only charged particles Double_t charge = particle->GetPDG()->Charge()/3.; - if (charge == 0.0) + if ( TMath::Abs(charge) < 0.001 ) continue; // only postive charged @@ -1240,13 +1251,13 @@ void AlidNdPtAnalysis::Process(AliESDEvent *const esdEvent, AliMCEvent *const mc FillHistograms(stack,iMc,AlidNdPtHelper::kAccTracks); // check multiple found tracks - Int_t mult_count = 0; + Int_t multCount = 0; for(Int_t iRec=0; iRec1) + multCount++; + if(multCount>1) { fRecMultTrackMatrix->Fill(vTrackMatrix); @@ -1337,7 +1348,7 @@ void AlidNdPtAnalysis::FillHistograms(AliESDtrack *const esdTrack, AliStack *con if(!esdTrack) return; Float_t q = esdTrack->Charge(); - if(q==0) return; + if(TMath::Abs(q) < 0.001) return; Float_t pt = esdTrack->Pt(); //Float_t qpt = esdTrack->Pt() * q; @@ -1377,17 +1388,17 @@ void AlidNdPtAnalysis::FillHistograms(AliESDtrack *const esdTrack, AliStack *con //Bool_t prim = stack->IsPhysicalPrimary(label); //Int_t pid = AlidNdPtHelper::ConvertPdgToPid(particle); - Int_t mother_pdg = -1; + Int_t motherPdg = -1; TParticle* mother = 0; //TParticle* prim_mother = AlidNdPtHelper::FindPrimaryMother(stack,label); Int_t motherLabel = particle->GetMother(0); if(motherLabel>0) mother = stack->Particle(motherLabel); - if(mother) mother_pdg = TMath::Abs(mother->GetPdgCode()); // take abs for visualisation only + if(mother) motherPdg = TMath::Abs(mother->GetPdgCode()); // take abs for visualisation only //Int_t mech = particle->GetUniqueID(); // production mechanism Double_t gq = particle->GetPDG()->Charge()/3.0; // Charge units |e|/3 - if(gq==0) return; + if(TMath::Abs(gq)<0.001) return; Float_t gpt = particle->Pt(); Float_t geta = particle->Eta(); //Float_t qgpt = particle->Pt() * gq; @@ -1418,17 +1429,17 @@ void AlidNdPtAnalysis::FillHistograms(AliStack *const stack, Int_t label, AlidNd TParticle* particle = stack->Particle(label); if(!particle) return; - Int_t mother_pdg = -1; + Int_t motherPdg = -1; TParticle* mother = 0; //TParticle* prim_mother = AlidNdPtHelper::FindPrimaryMother(stack,label); Int_t motherLabel = particle->GetMother(0); if(motherLabel>0) mother = stack->Particle(motherLabel); - if(mother) mother_pdg = TMath::Abs(mother->GetPdgCode()); // take abs for visualisation only + if(mother) motherPdg = TMath::Abs(mother->GetPdgCode()); // take abs for visualisation only Int_t mech = particle->GetUniqueID(); // production mechanism Double_t gq = particle->GetPDG()->Charge()/3.0; // Charge units |e|/3 - if(gq == 0) return; + if(TMath::Abs(gq) < 0.001) return; Float_t gpt = particle->Pt(); //Float_t qgpt = particle->Pt() * gq; Float_t geta = particle->Eta(); @@ -1441,7 +1452,7 @@ void AlidNdPtAnalysis::FillHistograms(AliStack *const stack, Int_t label, AlidNd Int_t pid = AlidNdPtHelper::ConvertPdgToPid(particle); //if(prim&&pid==5) printf("pdgcode %d, production mech %d \n",particle->GetPdgCode(),mech); - //if(!prim) printf("mother_pdg %d, particle %d, production mech %d\n",mother_pdg, particle->GetPdgCode(),mech); + //if(!prim) printf("motherPdg %d, particle %d, production mech %d\n",motherPdg, particle->GetPdgCode(),mech); // // fill histogram @@ -1449,7 +1460,7 @@ void AlidNdPtAnalysis::FillHistograms(AliStack *const stack, Int_t label, AlidNd Double_t vMCTrackHist1[3] = {gpt,geta,gphi}; fMCTrackHist1[trackObj]->Fill(vMCTrackHist1); - Double_t vMCPrimTrackHist1[5] = {gpt,geta,pid,mech,mother_pdg}; + Double_t vMCPrimTrackHist1[5] = {gpt,geta,pid,mech,motherPdg}; if(prim) fMCPrimTrackHist1[trackObj]->Fill(vMCPrimTrackHist1); else { fMCSecTrackHist1[trackObj]->Fill(vMCPrimTrackHist1); @@ -1457,7 +1468,7 @@ void AlidNdPtAnalysis::FillHistograms(AliStack *const stack, Int_t label, AlidNd } //_____________________________________________________________________________ -Long64_t AlidNdPtAnalysis::Merge(TCollection* list) +Long64_t AlidNdPtAnalysis::Merge(TCollection* const list) { // Merge list of objects (needed by PROOF) @@ -2093,25 +2104,25 @@ void AlidNdPtAnalysis::Analyse() // - secondaries (mother) // - TH1D *mc_pt_acc_all = fMCTrackHist1[1]->Projection(0); - mc_pt_acc_all->SetName("mc_pt_acc_all"); - aFolderObj->Add(mc_pt_acc_all); + TH1D *mcPtAccall = fMCTrackHist1[1]->Projection(0); + mcPtAccall->SetName("mc_pt_acc_all"); + aFolderObj->Add(mcPtAccall); - TH1D *mc_pt_acc_prim = fMCPrimTrackHist1[1]->Projection(0); - mc_pt_acc_prim->SetName("mc_pt_acc_prim"); - aFolderObj->Add(mc_pt_acc_prim); + TH1D *mcPtAccprim = fMCPrimTrackHist1[1]->Projection(0); + mcPtAccprim->SetName("mc_pt_acc_prim"); + aFolderObj->Add(mcPtAccprim); - TH1D *mc_pt_rec_all = fMCTrackHist1[2]->Projection(0); - mc_pt_rec_all->SetName("mc_pt_rec_all"); - aFolderObj->Add(mc_pt_rec_all); + TH1D *mcPtRecall = fMCTrackHist1[2]->Projection(0); + mcPtRecall->SetName("mc_pt_rec_all"); + aFolderObj->Add(mcPtRecall); - TH1D *mc_pt_rec_prim = fMCPrimTrackHist1[2]->Projection(0); - mc_pt_rec_prim->SetName("mc_pt_rec_prim"); - aFolderObj->Add(mc_pt_rec_prim); + TH1D *mcPtRecprim = fMCPrimTrackHist1[2]->Projection(0); + mcPtRecprim->SetName("mc_pt_rec_prim"); + aFolderObj->Add(mcPtRecprim); - TH1D *mc_pt_rec_sec = fMCSecTrackHist1[2]->Projection(0); - mc_pt_rec_sec->SetName("mc_pt_rec_sec"); - aFolderObj->Add(mc_pt_rec_sec); + TH1D *mcPtRecsec = fMCSecTrackHist1[2]->Projection(0); + mcPtRecsec->SetName("mc_pt_rec_sec"); + aFolderObj->Add(mcPtRecsec); for(Int_t i = 0; i<6; i++) { diff --git a/PWG0/dNdPt/AlidNdPtAnalysis.h b/PWG0/dNdPt/AlidNdPtAnalysis.h index 54b14ff2d97..f9c05f71dc7 100644 --- a/PWG0/dNdPt/AlidNdPtAnalysis.h +++ b/PWG0/dNdPt/AlidNdPtAnalysis.h @@ -1,35 +1,29 @@ -#ifndef ALIDEDPTANALYSIS_H -#define ALIDEDPTANALYSIS_H +#ifndef ALIDNDPTANALYSIS_H +#define ALIDNDPTANALYSIS_H //------------------------------------------------------------------------------ -// AlidNdPtAnalysis class. +// AlidNdPtAnalysis class used for dNdPt analysis. // -// a. functionality: -// - fills analysis control histograms -// - fills generic correction matrices -// - generates correction matrices -// -// b. data members: -// - generic correction matrices -// - control histograms -// // Author: J.Otwinowski 04/11/2008 //------------------------------------------------------------------------------ +class iostream; + +class TFile; +class TCint; class TProfile; class TFolder; class TObjArray; class TString; +class THnSparse; class AliESDtrackCuts; class AliVertexerTracks; class AliESD; class AliESDfriend; class AliESDfriendTrack; - class AlidNdPtHelper; -#include "THnSparse.h" #include "AlidNdPt.h" class AlidNdPtAnalysis : public AlidNdPt { @@ -45,7 +39,7 @@ public : virtual void Process(AliESDEvent *const esdEvent=0, AliMCEvent *const mcEvent=0); // Merge output objects (needed by PROOF) - virtual Long64_t Merge(TCollection* list); + virtual Long64_t Merge(TCollection* const list); // Analyse output histograms virtual void Analyse(); @@ -54,11 +48,11 @@ public : virtual TFolder *ExportToFolder(TObjArray * array=0); // Get analysis folder - TFolder* GetAnalysisFolder() {return fAnalysisFolder;} + TFolder* GetAnalysisFolder() const {return fAnalysisFolder;} // Fill control histograms - void SetHistogramsOn(Bool_t histOn=kTRUE) {fHistogramsOn = histOn;} - Bool_t IsHistogramsOn() {return fHistogramsOn;} + void SetHistogramsOn(const Bool_t histOn=kTRUE) {fHistogramsOn = histOn;} + Bool_t IsHistogramsOn() const {return fHistogramsOn;} // Create folder for analysed histograms TFolder *CreateFolder(TString folder = "folderdNdPtAnalysis",TString title = "Analysed dNdPt histograms"); @@ -69,85 +63,83 @@ public : void FillHistograms(TObjArray *const allChargedTracks,Int_t *const labelsAll,Int_t multAll,Int_t *const labelsAcc,Int_t multAcc,Int_t *const labelsRec,Int_t multRec); // Getters - THnSparseF *GetEventMultCorrelationMatrix() {return fEventMultCorrelationMatrix;} - THnSparseF *GetTrackPtCorrelationMatrix() {return fTrackPtCorrelationMatrix;} + THnSparseF *GetEventMultCorrelationMatrix() const {return fEventMultCorrelationMatrix;} + THnSparseF *GetTrackPtCorrelationMatrix() const {return fTrackPtCorrelationMatrix;} // - THnSparseF *GetGenEventMatrix() {return fGenEventMatrix;} - THnSparseF *GetGenSDEventMatrix() {return fGenSDEventMatrix;} - THnSparseF *GetGenDDEventMatrix() {return fGenDDEventMatrix;} - THnSparseF *GetGenNDEventMatrix() {return fGenNDEventMatrix;} - THnSparseF *GetGenNSDEventMatrix() {return fGenNSDEventMatrix;} - - THnSparseF *GetTriggerEventMatrix() {return fTriggerEventMatrix;} - THnSparseF *GetTriggerSDEventMatrix() {return fTriggerSDEventMatrix;} - THnSparseF *GetTriggerDDEventMatrix() {return fTriggerDDEventMatrix;} - THnSparseF *GetTriggerNDEventMatrix() {return fTriggerNDEventMatrix;} - THnSparseF *GetTriggerNSDEventMatrix() {return fTriggerNSDEventMatrix;} - - THnSparseF *GetRecEventMatrix() {return fRecEventMatrix;} - THnSparseF *GetRecSDEventMatrix() {return fRecSDEventMatrix;} - THnSparseF *GetRecDDEventMatrix() {return fRecDDEventMatrix;} - THnSparseF *GetRecNDEventMatrix() {return fRecNDEventMatrix;} - THnSparseF *GetRecNSDEventMatrix() {return fRecNSDEventMatrix;} + THnSparseF *GetGenEventMatrix() const {return fGenEventMatrix;} + THnSparseF *GetGenSDEventMatrix() const {return fGenSDEventMatrix;} + THnSparseF *GetGenDDEventMatrix() const {return fGenDDEventMatrix;} + THnSparseF *GetGenNDEventMatrix() const {return fGenNDEventMatrix;} + THnSparseF *GetGenNSDEventMatrix() const {return fGenNSDEventMatrix;} + + THnSparseF *GetTriggerEventMatrix() const {return fTriggerEventMatrix;} + THnSparseF *GetTriggerSDEventMatrix() const {return fTriggerSDEventMatrix;} + THnSparseF *GetTriggerDDEventMatrix() const {return fTriggerDDEventMatrix;} + THnSparseF *GetTriggerNDEventMatrix() const {return fTriggerNDEventMatrix;} + THnSparseF *GetTriggerNSDEventMatrix() const {return fTriggerNSDEventMatrix;} + + THnSparseF *GetRecEventMatrix() const {return fRecEventMatrix;} + THnSparseF *GetRecSDEventMatrix() const {return fRecSDEventMatrix;} + THnSparseF *GetRecDDEventMatrix() const {return fRecDDEventMatrix;} + THnSparseF *GetRecNDEventMatrix() const {return fRecNDEventMatrix;} + THnSparseF *GetRecNSDEventMatrix() const {return fRecNSDEventMatrix;} // - THnSparseF *GetGenTrackEventMatrix() {return fGenTrackEventMatrix;} - THnSparseF *GetGenTrackSDEventMatrix() {return fGenTrackSDEventMatrix;} - THnSparseF *GetGenTrackDDEventMatrix() {return fGenTrackDDEventMatrix;} - THnSparseF *GetGenTrackNDEventMatrix() {return fGenTrackNDEventMatrix;} - THnSparseF *GetGenTrackNSDEventMatrix() {return fGenTrackNSDEventMatrix;} - - THnSparseF *GetTriggerTrackEventMatrix() {return fTriggerTrackEventMatrix;} - THnSparseF *GetTriggerTrackSDEventMatrix() {return fTriggerTrackSDEventMatrix;} - THnSparseF *GetTriggerTrackDDEventMatrix() {return fTriggerTrackDDEventMatrix;} - THnSparseF *GetTriggerTrackNDEventMatrix() {return fTriggerTrackNDEventMatrix;} - THnSparseF *GetTriggerTrackNSDEventMatrix() {return fTriggerTrackNSDEventMatrix;} - - THnSparseF *GetRecTrackEventMatrix() {return fRecTrackEventMatrix;} - THnSparseF *GetRecTrackSDEventMatrix() {return fRecTrackSDEventMatrix;} - THnSparseF *GetRecTrackDDEventMatrix() {return fRecTrackDDEventMatrix;} - THnSparseF *GetRecTrackNDEventMatrix() {return fRecTrackNDEventMatrix;} - THnSparseF *GetRecTrackNSDEventMatrix() {return fRecTrackNSDEventMatrix;} + THnSparseF *GetGenTrackEventMatrix() const {return fGenTrackEventMatrix;} + THnSparseF *GetGenTrackSDEventMatrix() const {return fGenTrackSDEventMatrix;} + THnSparseF *GetGenTrackDDEventMatrix() const {return fGenTrackDDEventMatrix;} + THnSparseF *GetGenTrackNDEventMatrix() const {return fGenTrackNDEventMatrix;} + THnSparseF *GetGenTrackNSDEventMatrix() const {return fGenTrackNSDEventMatrix;} + + THnSparseF *GetTriggerTrackEventMatrix() const {return fTriggerTrackEventMatrix;} + THnSparseF *GetTriggerTrackSDEventMatrix() const {return fTriggerTrackSDEventMatrix;} + THnSparseF *GetTriggerTrackDDEventMatrix() const {return fTriggerTrackDDEventMatrix;} + THnSparseF *GetTriggerTrackNDEventMatrix() const {return fTriggerTrackNDEventMatrix;} + THnSparseF *GetTriggerTrackNSDEventMatrix() const {return fTriggerTrackNSDEventMatrix;} + + THnSparseF *GetRecTrackEventMatrix() const {return fRecTrackEventMatrix;} + THnSparseF *GetRecTrackSDEventMatrix() const {return fRecTrackSDEventMatrix;} + THnSparseF *GetRecTrackDDEventMatrix() const {return fRecTrackDDEventMatrix;} + THnSparseF *GetRecTrackNDEventMatrix() const {return fRecTrackNDEventMatrix;} + THnSparseF *GetRecTrackNSDEventMatrix() const {return fRecTrackNSDEventMatrix;} // - THnSparseF *GetGenTrackMatrix() {return fGenTrackMatrix;} - THnSparseF *GetGenPrimTrackMatrix() {return fGenPrimTrackMatrix;} - THnSparseF *GetRecPrimTrackMatrix() {return fRecPrimTrackMatrix;} + THnSparseF *GetGenTrackMatrix() const {return fGenTrackMatrix;} + THnSparseF *GetGenPrimTrackMatrix() const {return fGenPrimTrackMatrix;} + THnSparseF *GetRecPrimTrackMatrix() const {return fRecPrimTrackMatrix;} - THnSparseF *GetRecTrackMatrix() {return fRecTrackMatrix;} - THnSparseF *GetRecSecTrackMatrix() {return fRecSecTrackMatrix;} - THnSparseF *GetRecMultTrackMatrix() {return fRecMultTrackMatrix;} + THnSparseF *GetRecTrackMatrix() const {return fRecTrackMatrix;} + THnSparseF *GetRecSecTrackMatrix() const {return fRecSecTrackMatrix;} + THnSparseF *GetRecMultTrackMatrix() const {return fRecMultTrackMatrix;} // // control histograms // - THnSparseF *GetMCEventHist1() {return fMCEventHist1;} - THnSparseF *GetRecEventHist1() {return fRecEventHist1;} - THnSparseF *GetRecEventHist2() {return fRecEventHist2;} - THnSparseF *GetRecMCEventHist1() {return fRecMCEventHist1;} - THnSparseF *GetRecMCEventHist2() {return fRecMCEventHist2;} - THnSparseF *GetRecMCEventHist3() {return fRecMCEventHist3;} + THnSparseF *GetMCEventHist1() const {return fMCEventHist1;} + THnSparseF *GetRecEventHist1() const {return fRecEventHist1;} + THnSparseF *GetRecEventHist2() const {return fRecEventHist2;} + THnSparseF *GetRecMCEventHist1() const {return fRecMCEventHist1;} + THnSparseF *GetRecMCEventHist2() const {return fRecMCEventHist2;} + THnSparseF *GetRecMCEventHist3() const {return fRecMCEventHist3;} - THnSparseF *GetMCTrackHist1(Int_t i) {return fMCTrackHist1[i];} - THnSparseF *GetMCPrimTrackHist1(Int_t i) {return fMCPrimTrackHist1[i];} - THnSparseF *GetMCSecTrackHist1(Int_t i) {return fMCSecTrackHist1[i];} + THnSparseF *GetMCTrackHist1(Int_t i) const {return fMCTrackHist1[i];} + THnSparseF *GetMCPrimTrackHist1(Int_t i) const {return fMCPrimTrackHist1[i];} + THnSparseF *GetMCSecTrackHist1(Int_t i) const {return fMCSecTrackHist1[i];} - THnSparseF *GetRecTrackHist1(Int_t i) {return fRecTrackHist1[i];} - THnSparseF *GetRecTrackMultHist1(Int_t i) {return fRecTrackMultHist1[i];} + THnSparseF *GetRecTrackHist1(Int_t i) const {return fRecTrackHist1[i];} + THnSparseF *GetRecTrackMultHist1(Int_t i) const {return fRecTrackMultHist1[i];} - THnSparseF *GetRecMCTrackHist1() {return fRecMCTrackHist1;} - THnSparseF *GetMCMultRecTrackHist1() {return fMCMultRecTrackHist1;} + THnSparseF *GetRecMCTrackHist1() const {return fRecMCTrackHist1;} + THnSparseF *GetMCMultRecTrackHist1() const {return fMCMultRecTrackHist1;} - THnSparseF *GetRecTrackHist2() {return fRecTrackHist2;} + THnSparseF *GetRecTrackHist2() const {return fRecTrackHist2;} private: // analysis folder TFolder *fAnalysisFolder; // folder for analysed histograms - - // switch on/off filling of control histograms - Bool_t fHistogramsOn; + Bool_t fHistogramsOn; // switch on/off filling of control histograms // // correlation matrices (histograms) diff --git a/PWG0/dNdPt/AlidNdPtCorrection.cxx b/PWG0/dNdPt/AlidNdPtCorrection.cxx index 8f00fa8c57f..8573e32cbb9 100644 --- a/PWG0/dNdPt/AlidNdPtCorrection.cxx +++ b/PWG0/dNdPt/AlidNdPtCorrection.cxx @@ -12,11 +12,23 @@ * about the suitability of this software for any purpose. It is * * provided "as is" without express or implied warranty. * **************************************************************************/ - -#include +//------------------------------------------------------------------------------ +// AlidNdPtCorrection class: +// +// a. functionality: +// - applies corrections on dNdPt spectra +// - fills corrected dNdPt histograms +// - fills correction control histograms +// +// b. data members: +// - dNdPt spectra before and after correction procedure +// - control histograms +// - correction matrices (must be loaded) +// +// Author: J.Otwinowski 04/11/2008 +//------------------------------------------------------------------------------ #include "TFile.h" -#include "TCint.h" #include "TH1.h" #include "TH2.h" @@ -823,7 +835,7 @@ void AlidNdPtCorrection::Process(AliESDEvent *esdEvent, AliMCEvent *mcEvent) // only charged particles Double_t charge = particle->GetPDG()->Charge()/3.; - if (charge == 0.0) + if (TMath::Abs(charge) < 0.001) continue; // only postive charged @@ -865,7 +877,7 @@ void AlidNdPtCorrection::Process(AliESDEvent *esdEvent, AliMCEvent *mcEvent) } //_____________________________________________________________________________ -void AlidNdPtCorrection::FillHistograms(AlidNdPtHelper::EventObject eventObj, Double_t zv, Int_t multMBTracks) +void AlidNdPtCorrection::FillHistograms(AlidNdPtHelper::EventObject eventObj, Double_t zv, Int_t multMBTracks) const { // // Fill corrected histograms @@ -893,22 +905,22 @@ void AlidNdPtCorrection::FillHistograms(AlidNdPtHelper::EventObject eventObj, Do if(eventObj==AlidNdPtHelper::kTriggeredEvents && multMBTracks==0) // empty triggered events { Int_t bin = fZvEmptyEventsNorm->FindBin(zv); - Double_t Fz = fZvEmptyEventsNorm->GetBinContent(bin); + Double_t factZ = fZvEmptyEventsNorm->GetBinContent(bin); Double_t corrToInelF0 = GetCorrFactZvMult(fCorrTriggerMBtoInelEventMatrix,zv,multMBTracks); Double_t corrToNDF0 = GetCorrFactZvMult(fCorrTriggerMBtoNDEventMatrix,zv,multMBTracks); Double_t corrToNSDF0 = GetCorrFactZvMult(fCorrTriggerMBtoNSDEventMatrix,zv,multMBTracks); - //printf("Fz %f, corrToInelF0 %f, corrToNDF0 %f, corrToNSDF0 %f \n",Fz,corrToInelF0,corrToNDF0,corrToNSDF0); + //printf("factZ %f, corrToInelF0 %f, corrToNDF0 %f, corrToNSDF0 %f \n",factZ,corrToInelF0,corrToNDF0,corrToNSDF0); fCorrRecEventHist2[0]->Fill(vEventMatrix); - fCorrRecEventHist2[1]->Fill(vEventMatrix,Fz); - fCorrRecEventHist2[2]->Fill(vEventMatrix,Fz*corrToInelF0); - fCorrRecEventHist2[3]->Fill(vEventMatrix,Fz*corrToNDF0); - fCorrRecEventHist2[4]->Fill(vEventMatrix,Fz*corrToNSDF0); + fCorrRecEventHist2[1]->Fill(vEventMatrix,factZ); + fCorrRecEventHist2[2]->Fill(vEventMatrix,factZ*corrToInelF0); + fCorrRecEventHist2[3]->Fill(vEventMatrix,factZ*corrToNDF0); + fCorrRecEventHist2[4]->Fill(vEventMatrix,factZ*corrToNSDF0); } } //_____________________________________________________________________________ -void AlidNdPtCorrection::FillHistograms(AliESDtrack *esdTrack, AliStack *stack, AlidNdPtHelper::TrackObject trackObj, Double_t zv, Int_t mult) +void AlidNdPtCorrection::FillHistograms(AliESDtrack * const esdTrack, AliStack * const stack, AlidNdPtHelper::TrackObject trackObj, Double_t zv, Int_t mult) const { // // Fill ESD track and MC histograms @@ -928,7 +940,7 @@ void AlidNdPtCorrection::FillHistograms(AliESDtrack *esdTrack, AliStack *stack, if(!particle) return; Double_t gq = particle->GetPDG()->Charge()/3.0; // Charge units |e|/3 - if(gq==0) return; + if(TMath::Abs(gq)<0.001) return; Float_t gpt = particle->Pt(); Float_t geta = particle->Eta(); Float_t gphi = particle->Phi(); @@ -985,7 +997,7 @@ void AlidNdPtCorrection::FillHistograms(AliESDtrack *esdTrack, AliStack *stack, } //_____________________________________________________________________________ -void AlidNdPtCorrection::FillHistograms(AliStack *stack, Int_t /*label*/, AlidNdPtHelper::TrackObject /*trackObj*/, Int_t /*mult*/) +void AlidNdPtCorrection::FillHistograms(AliStack * const stack, Int_t /*label*/, AlidNdPtHelper::TrackObject /*trackObj*/, Int_t /*mult*/) const { // Fill MC histograms if(!stack) return; @@ -1027,7 +1039,7 @@ void AlidNdPtCorrection::FillHistograms(AliStack *stack, Int_t /*label*/, AlidNd } //_____________________________________________________________________________ -Double_t AlidNdPtCorrection::GetCorrFactZvPtEta(THnSparse *hist, Double_t zv, Double_t pt, Double_t eta) const { +Double_t AlidNdPtCorrection::GetCorrFactZvPtEta(THnSparse * const hist, Double_t zv, Double_t pt, Double_t eta) const { // return correction factor F(zv,pt,eta) if(!hist) return 1.; @@ -1048,7 +1060,7 @@ return fact; } //_____________________________________________________________________________ -Double_t AlidNdPtCorrection::GetContFactZvPtEta(THnSparse *hist, Double_t zv, Double_t pt, Double_t eta) const { +Double_t AlidNdPtCorrection::GetContFactZvPtEta(THnSparse * const hist, Double_t zv, Double_t pt, Double_t eta) const { // return contamination correction factor F(zv,pt,eta) if(!hist) return 1.0; @@ -1070,7 +1082,7 @@ return fact; } //_____________________________________________________________________________ -Double_t AlidNdPtCorrection::GetCorrFactZvMult(THnSparse *hist, Double_t zv, Int_t mult) const { +Double_t AlidNdPtCorrection::GetCorrFactZvMult(THnSparse * const hist, Double_t zv, Int_t mult) const { // return correction factor F(zv,mult) if(!hist) return 1.; @@ -1088,7 +1100,7 @@ return fact; } //_____________________________________________________________________________ -Double_t AlidNdPtCorrection::GetContFactZvMult(THnSparse *hist, Double_t zv, Int_t mult) const { +Double_t AlidNdPtCorrection::GetContFactZvMult(THnSparse * const hist, Double_t zv, Int_t mult) const { // return contamination correction factor F(zv,mult) if(!hist) return 1.; @@ -1104,7 +1116,7 @@ return fact; } //_____________________________________________________________________________ -Long64_t AlidNdPtCorrection::Merge(TCollection* list) +Long64_t AlidNdPtCorrection::Merge(TCollection* const list) { // Merge list of objects (needed by PROOF) @@ -1160,10 +1172,14 @@ Long64_t AlidNdPtCorrection::Merge(TCollection* list) return count; } -Int_t AlidNdPtCorrection::GetTrueMult(THnSparse *hist, Int_t mult) +//____________________________________________________________________________ +Int_t AlidNdPtCorrection::GetTrueMult(THnSparse * const hist, Int_t mult) const { +// +// get multiplicity of primary particles +// if(!hist) return 0; - Int_t true_mult = 0; + Int_t trueMult = 0; // 0 bins exluded TAxis *ax = hist->GetAxis(0); @@ -1176,9 +1192,9 @@ Int_t AlidNdPtCorrection::GetTrueMult(THnSparse *hist, Int_t mult) // get true multiplicity TH1D *h1 = (TH1D *)hist->Projection(1); - true_mult = (Int_t)h1->GetMean(); + trueMult = (Int_t)h1->GetMean(); - return true_mult; + return trueMult; } //_____________________________________________________________________________ @@ -1209,9 +1225,10 @@ void AlidNdPtCorrection::Analyse() // //Double_t minPt = accCuts->GetMinPt(); //Double_t maxPt = accCuts->GetMaxPt(); - //Double_t minEta = accCuts->GetMinEta(); - //Double_t maxEta = accCuts->GetMaxEta()-0.00001; + Double_t minEta = accCuts->GetMinEta(); + Double_t maxEta = accCuts->GetMaxEta()-0.00001; + printf("minEta %f, maxEta %f \n",minEta, maxEta); // // cosmics background histo @@ -1446,6 +1463,36 @@ void AlidNdPtCorrection::Analyse() hsc->Scale(1./(fCorrRecEventHist1[2]->Projection(1)->Integral() + fCorrRecEventHist2[2]->Projection(1)->Integral())); aFolderObj->Add(hsc); + // positive eta + fCorrRecTrackMultHist1[5]->GetAxis(1)->SetRangeUser(0., maxEta); + + h = fCorrRecTrackMultHist1[5]->Projection(0); + h->SetName("pt_rec_trig_event_track_mult_eff_cont_corrected_posEta"); + hs = AlidNdPtHelper::ScaleByBinWidth(h); + hs->SetName("pt_rec_trig_event_track_mult_eff_cont_corrected_s_posEta"); + aFolderObj->Add(hs); + + hsc = (TH1D*)hs->Clone(); + hsc->SetName("pt_rec_trig_event_track_mult_eff_cont_corrected_s_norm_posEta"); + hsc->Scale(1./(fCorrRecEventHist1[2]->Projection(1)->Integral()+fCorrRecEventHist2[2]->Projection(1)->Integral())); + aFolderObj->Add(hsc); + + // negative eta + fCorrRecTrackMultHist1[5]->GetAxis(1)->SetRangeUser(minEta, -0.00001); + + h = fCorrRecTrackMultHist1[5]->Projection(0); + h->SetName("pt_rec_trig_event_track_mult_eff_cont_corrected_negEta"); + hs = AlidNdPtHelper::ScaleByBinWidth(h); + hs->SetName("pt_rec_trig_event_track_mult_eff_cont_corrected_s_negEta"); + aFolderObj->Add(hs); + + hsc = (TH1D*)hs->Clone(); + hsc->SetName("pt_rec_trig_event_track_mult_eff_cont_corrected_s_norm_negEta"); + hsc->Scale(1./(fCorrRecEventHist1[2]->Projection(1)->Integral()+fCorrRecEventHist2[2]->Projection(1)->Integral())); + aFolderObj->Add(hsc); + + fCorrRecTrackMultHist1[5]->GetAxis(1)->SetRange(1, fCorrRecTrackMultHist1[5]->GetAxis(1)->GetNbins()); + // h = fCorrRecTrackMultHist1[6]->Projection(0); h->SetName("pt_rec_ND_trig_event_track_mult_eff_cont_corrected"); @@ -1470,6 +1517,40 @@ void AlidNdPtCorrection::Analyse() hsc->Scale(1./(fCorrRecEventHist1[4]->Projection(1)->Integral()+fCorrRecEventHist2[4]->Projection(1)->Integral())); aFolderObj->Add(hsc); + // + // positive eta + // + fCorrRecTrackMultHist1[7]->GetAxis(1)->SetRangeUser(0., maxEta); + + h = fCorrRecTrackMultHist1[7]->Projection(0); + h->SetName("pt_rec_NSD_trig_event_track_mult_eff_cont_corrected_posEta"); + hs = AlidNdPtHelper::ScaleByBinWidth(h); + hs->SetName("pt_rec_NSD_trig_event_track_mult_eff_cont_corrected_s_posEta"); + aFolderObj->Add(hs); + + hsc = (TH1D*)hs->Clone(); + hsc->SetName("pt_rec_NSD_trig_event_track_mult_eff_cont_corrected_s_norm_posEta"); + hsc->Scale(1./(fCorrRecEventHist1[4]->Projection(1)->Integral()+fCorrRecEventHist2[4]->Projection(1)->Integral())); + aFolderObj->Add(hsc); + + // + // negative eta + // + fCorrRecTrackMultHist1[7]->GetAxis(1)->SetRangeUser(minEta, -0.00001); + + h = fCorrRecTrackMultHist1[7]->Projection(0); + h->SetName("pt_rec_NSD_trig_event_track_mult_eff_cont_corrected_negEta"); + hs = AlidNdPtHelper::ScaleByBinWidth(h); + hs->SetName("pt_rec_NSD_trig_event_track_mult_eff_cont_corrected_s_negEta"); + aFolderObj->Add(hs); + + hsc = (TH1D*)hs->Clone(); + hsc->SetName("pt_rec_NSD_trig_event_track_mult_eff_cont_corrected_s_norm_negEta"); + hsc->Scale(1./(fCorrRecEventHist1[4]->Projection(1)->Integral()+fCorrRecEventHist2[4]->Projection(1)->Integral())); + aFolderObj->Add(hsc); + + fCorrRecTrackMultHist1[7]->GetAxis(1)->SetRange(1, fCorrRecTrackMultHist1[7]->GetAxis(1)->GetNbins()); + // eta axis h = fCorrRecTrackMultHist1[0]->Projection(1); h->SetName("eta_rec_track_not_corrected"); diff --git a/PWG0/dNdPt/AlidNdPtCorrection.h b/PWG0/dNdPt/AlidNdPtCorrection.h index 65636b33ec6..10fc0905e90 100644 --- a/PWG0/dNdPt/AlidNdPtCorrection.h +++ b/PWG0/dNdPt/AlidNdPtCorrection.h @@ -1,26 +1,20 @@ -#ifndef ALIDEDPTCORRECTION_H -#define ALIDEDPTCORRECTION_H +#ifndef ALIDNDPTCORRECTION_H +#define ALIDNDPTCORRECTION_H //------------------------------------------------------------------------------ -// AlidNdPtCorrection class: +// AlidNdPtCorrection class to correct and +// normalised dNdPt spectra. // -// a. functionality: -// - applies corrections on dNdPt spectra -// - fills corrected dNdPt histograms -// - fills correction control histograms -// -// b. data members: -// - dNdPt spectra before and after correction procedure -// - control histograms -// - correction matrices (must be loaded) -// // Author: J.Otwinowski 04/11/2008 //------------------------------------------------------------------------------ - +class iostream; +class TFile; +class TCint; class TFolder; class TObjArray; class TString; +class THnSparse; class AliESDtrackCuts; class AliVertexerTracks; @@ -34,7 +28,6 @@ class AlidNdPtCorrection; class AlidNdPt; class AlidNdPtHelper; -#include "THnSparse.h" #include "AlidNdPt.h" class AlidNdPtCorrection : public AlidNdPt { @@ -50,7 +43,7 @@ public : virtual void Process(AliESDEvent *const esdEvent=0, AliMCEvent *const mcEvent=0); // Merge output objects (needed by PROOF) - virtual Long64_t Merge(TCollection* list); + virtual Long64_t Merge(TCollection* const list); // Analyse output histograms virtual void Analyse(); @@ -59,15 +52,15 @@ public : virtual TFolder *ExportToFolder(TObjArray * array=0); // Get analysis folder - TFolder* GetCorrectionFolder() {return fCorrectionFolder;} + TFolder* GetCorrectionFolder() const {return fCorrectionFolder;} // Create folder for analysed histograms TFolder *CreateFolder(TString folder = "folderdNdPtCorrection",TString title = "Analysed dNdPt histograms"); // Fill histograms - void FillHistograms(AliESDtrack *const esdTrack, AliStack *const stack, AlidNdPtHelper::TrackObject trackObj, Double_t zv, Int_t multRec); - void FillHistograms(AliStack *const stack, Int_t label, AlidNdPtHelper::TrackObject trackObj, Int_t multRec); - void FillHistograms(AlidNdPtHelper::EventObject eventObj, Double_t zv, Int_t multMBRec); + void FillHistograms(AliESDtrack *const esdTrack, AliStack *const stack, AlidNdPtHelper::TrackObject trackObj, Double_t zv, Int_t multRec) const; + void FillHistograms(AliStack *const stack, Int_t label, AlidNdPtHelper::TrackObject trackObj, Int_t multRec) const; + void FillHistograms(AlidNdPtHelper::EventObject eventObj, Double_t zv, Int_t multMBRec) const; // Get correction factors Double_t GetCorrFactZvPtEta(THnSparse *const hist=0, Double_t zv =0, Double_t pt=0, Double_t eta=0) const; @@ -76,73 +69,73 @@ public : Double_t GetContFactZvMult(THnSparse *const hist=0, Double_t zv =0, Int_t mult=0) const; // Getters - THnSparseF *GetMCAllEventMultHist1() {return fMCAllEventMultHist1;}; - THnSparseF *GetMCAllNDEventMultHist1() {return fMCAllNDEventMultHist1;}; - THnSparseF *GetMCAllNSDEventMultHist1() {return fMCAllNSDEventMultHist1;}; - THnSparseF *GetMCTriggerMultHist1() {return fMCTriggerMultHist1;}; - THnSparseF *GetMCEventMultHist1() {return fMCEventMultHist1;}; + THnSparseF *GetMCAllEventMultHist1() const {return fMCAllEventMultHist1;}; + THnSparseF *GetMCAllNDEventMultHist1() const {return fMCAllNDEventMultHist1;}; + THnSparseF *GetMCAllNSDEventMultHist1() const {return fMCAllNSDEventMultHist1;}; + THnSparseF *GetMCTriggerMultHist1() const {return fMCTriggerMultHist1;}; + THnSparseF *GetMCEventMultHist1() const {return fMCEventMultHist1;}; - THnSparseF *GetMCAllPrimTrackMultHist1() {return fMCAllPrimTrackMultHist1;}; - THnSparseF *GetMCNDEventAllPrimTrackMultHist1() {return fMCNDEventAllPrimTrackMultHist1;}; - THnSparseF *GetMCNSDEventAllPrimTrackMultHist1() {return fMCNSDEventAllPrimTrackMultHist1;}; - THnSparseF *GetMCTriggerPrimTrackMultHist1() {return fMCTriggerPrimTrackMultHist1;}; - THnSparseF *GetMCEventPrimTrackMultHist1() {return fMCEventPrimTrackMultHist1;}; + THnSparseF *GetMCAllPrimTrackMultHist1() const {return fMCAllPrimTrackMultHist1;}; + THnSparseF *GetMCNDEventAllPrimTrackMultHist1() const {return fMCNDEventAllPrimTrackMultHist1;}; + THnSparseF *GetMCNSDEventAllPrimTrackMultHist1() const {return fMCNSDEventAllPrimTrackMultHist1;}; + THnSparseF *GetMCTriggerPrimTrackMultHist1() const {return fMCTriggerPrimTrackMultHist1;}; + THnSparseF *GetMCEventPrimTrackMultHist1() const {return fMCEventPrimTrackMultHist1;}; - THnSparseF *GetCorrRecTrackMultHist1(Int_t i) {return fCorrRecTrackMultHist1[i];} - THnSparseF *GetCorrRecEventHist1(Int_t i) {return fCorrRecEventHist1[i];} - THnSparseF *GetCorrRecEventHist2(Int_t i) {return fCorrRecEventHist2[i];} + THnSparseF *GetCorrRecTrackMultHist1(Int_t i) const {return fCorrRecTrackMultHist1[i];} + THnSparseF *GetCorrRecEventHist1(Int_t i) const {return fCorrRecEventHist1[i];} + THnSparseF *GetCorrRecEventHist2(Int_t i) const {return fCorrRecEventHist2[i];} - THnSparseF *GetPtvsPt(Int_t i) {return fPtvsPt[i];} + THnSparseF *GetPtvsPt(Int_t i) const {return fPtvsPt[i];} // correlation matrix void SetEventMultCorrelationMatrix(THnSparseF *const matrix=0) {fEventMultCorrelationMatrix = matrix;} - THnSparseF *GetEventMultCorrelationMatrix() {return fEventMultCorrelationMatrix;} + THnSparseF *GetEventMultCorrelationMatrix() const {return fEventMultCorrelationMatrix;} // void SetZvNorm(TH1D *const matrix=0) {fZvNorm = matrix;} - TH1D *GetZvNorm() {return fZvNorm;} + TH1D *GetZvNorm() const {return fZvNorm;} void SetZvEmptyEventsNorm(TH1D *const matrix=0) {fZvEmptyEventsNorm = matrix;} - TH1D *GetZvEmptyEventsNorm() {return fZvEmptyEventsNorm;} + TH1D *GetZvEmptyEventsNorm() const {return fZvEmptyEventsNorm;} // void SetCorrEventMatrix(THnSparseF *const matrix=0) {fCorrEventMatrix = matrix;} - THnSparseF *GetCorrEventMatrix() {return fCorrEventMatrix;} + THnSparseF *GetCorrEventMatrix() const {return fCorrEventMatrix;} void SetCorrTriggerMBtoInelEventMatrix(THnSparseF *const matrix=0) {fCorrTriggerMBtoInelEventMatrix = matrix;} - THnSparseF *GetCorrTriggerMBtoInelEventMatrix() {return fCorrTriggerMBtoInelEventMatrix;} + THnSparseF *GetCorrTriggerMBtoInelEventMatrix() const {return fCorrTriggerMBtoInelEventMatrix;} void SetCorrTriggerMBtoNDEventMatrix(THnSparseF *const matrix=0) {fCorrTriggerMBtoNDEventMatrix = matrix;} - THnSparseF *GetCorrTriggerMBtoNDEventMatrix() {return fCorrTriggerMBtoNDEventMatrix;} + THnSparseF *GetCorrTriggerMBtoNDEventMatrix() const {return fCorrTriggerMBtoNDEventMatrix;} void SetCorrTriggerMBtoNSDEventMatrix(THnSparseF *const matrix=0) {fCorrTriggerMBtoNSDEventMatrix = matrix;} - THnSparseF *GetCorrTriggerMBtoNSDEventMatrix() {return fCorrTriggerMBtoNSDEventMatrix;} + THnSparseF *GetCorrTriggerMBtoNSDEventMatrix() const {return fCorrTriggerMBtoNSDEventMatrix;} // void SetCorrTrackEventMatrix(THnSparseF *const matrix=0) {fCorrTrackEventMatrix = matrix;} - THnSparseF *GetCorrTrackEventMatrix() {return fCorrTrackEventMatrix;} + THnSparseF *GetCorrTrackEventMatrix() const {return fCorrTrackEventMatrix;} void SetCorrTriggerMBtoInelTrackEventMatrix(THnSparseF *const matrix=0) {fCorrTriggerMBtoInelTrackEventMatrix = matrix;} - THnSparseF *GetCorrTriggerMBtoInelTrackEventMatrix() {return fCorrTriggerMBtoInelTrackEventMatrix;} + THnSparseF *GetCorrTriggerMBtoInelTrackEventMatrix() const {return fCorrTriggerMBtoInelTrackEventMatrix;} void SetCorrTriggerMBtoNDTrackEventMatrix(THnSparseF *const matrix=0) {fCorrTriggerMBtoNDTrackEventMatrix = matrix;} - THnSparseF *GetCorrTriggerMBtoNDTrackEventMatrix() {return fCorrTriggerMBtoNDTrackEventMatrix;} + THnSparseF *GetCorrTriggerMBtoNDTrackEventMatrix() const {return fCorrTriggerMBtoNDTrackEventMatrix;} void SetCorrTriggerMBtoNSDTrackEventMatrix(THnSparseF *const matrix=0) {fCorrTriggerMBtoNSDTrackEventMatrix = matrix;} - THnSparseF *GetCorrTriggerMBtoNSDTrackEventMatrix() {return fCorrTriggerMBtoNSDTrackEventMatrix;} + THnSparseF *GetCorrTriggerMBtoNSDTrackEventMatrix() const {return fCorrTriggerMBtoNSDTrackEventMatrix;} void SetCorrTrackMatrix(THnSparseF *const matrix=0) {fCorrTrackMatrix = matrix;} - THnSparseF *GetCorrTrackMatrix() {return fCorrTrackMatrix;} + THnSparseF *GetCorrTrackMatrix() const {return fCorrTrackMatrix;} void SetContTrackMatrix(THnSparseF *const matrix=0) {fContTrackMatrix = matrix;} - THnSparseF *GetContTrackMatrix() {return fContTrackMatrix;} + THnSparseF *GetContTrackMatrix() const {return fContTrackMatrix;} void SetContMultTrackMatrix(THnSparseF *const matrix=0) {fContMultTrackMatrix = matrix;} - THnSparseF *GetContMultTrackMatrix() {return fContMultTrackMatrix;} + THnSparseF *GetContMultTrackMatrix() const {return fContMultTrackMatrix;} void SetCorrMatrixFileName(TString name="") { fCorrMatrixFileName = name; } - Int_t GetTrueMult(THnSparse *const hist=0, Int_t mult=0); + Int_t GetTrueMult(THnSparse *const hist=0, Int_t mult=0) const; private: diff --git a/PWG0/dNdPt/AlidNdPtCutAnalysis.cxx b/PWG0/dNdPt/AlidNdPtCutAnalysis.cxx index 6514eaf22f2..7a757e2f95d 100644 --- a/PWG0/dNdPt/AlidNdPtCutAnalysis.cxx +++ b/PWG0/dNdPt/AlidNdPtCutAnalysis.cxx @@ -12,11 +12,19 @@ * about the suitability of this software for any purpose. It is * * provided "as is" without express or implied warranty. * **************************************************************************/ - -#include - -#include "TFile.h" -#include "TCint.h" +//------------------------------------------------------------------------------ +// AlidNdPtCutAnalysis class. +// +// a. functionality: +// - fills generic cut histograms +// - generates cuts (selection criteria) +// +// b. data members: +// - generic cut histograms +// - control histograms +// +// Author: J.Otwinowski 04/11/2008 +//------------------------------------------------------------------------------ #include "TH1.h" #include "TH2.h" @@ -99,9 +107,11 @@ void AlidNdPtCutAnalysis::Init(){ fEventCount->Sumw2(); //Xv:Yv:Zv:ResZv:Mult + Double_t kFact = 0.1; + Int_t binsRecEventHist[5]={80,80,100,80,150}; - Double_t minRecEventHist[5]={-3.,-3.,-35.,0.,0.}; - Double_t maxRecEventHist[5]={3.,3.,35.,10.,150.}; + Double_t minRecEventHist[5]={-3.*kFact,-3.*kFact,-35.,0.,0.}; + Double_t maxRecEventHist[5]={3.*kFact,3.*kFact,35.,10.,150.}; fRecEventHist = new THnSparseF("fRecEventHist","Xv:Yv:Zv:ResZv:Mult",5,binsRecEventHist,minRecEventHist,maxRecEventHist); fRecEventHist->GetAxis(0)->SetTitle("Xv (cm)"); fRecEventHist->GetAxis(1)->SetTitle("Yv (cm)"); @@ -121,10 +131,9 @@ void AlidNdPtCutAnalysis::Init(){ fMCEventHist->Sumw2(); //Xv-mcXv:Yv-mcYv:Zv-mcZv:Mult - Float_t fact = 0.1; Int_t binsRecMCEventHist[4]={100,100,100,150}; - Double_t minRecMCEventHist[4]={-10.0*fact,-10.0*fact,-10.0*fact,0.}; - Double_t maxRecMCEventHist[4]={10.0*fact,10.0*fact,10.0*fact,150.}; + Double_t minRecMCEventHist[4]={-10.0*kFact,-10.0*kFact,-10.0*kFact,0.}; + Double_t maxRecMCEventHist[4]={10.0*kFact,10.0*kFact,10.0*kFact,150.}; fRecMCEventHist = new THnSparseF("fRecMCEventHist","mcXv-Xv:mcYv-Yv:mcZv-Zv:Mult",4,binsRecMCEventHist,minRecMCEventHist,maxRecMCEventHist); fRecMCEventHist->GetAxis(0)->SetTitle("mcXv-Xv (cm)"); fRecMCEventHist->GetAxis(1)->SetTitle("mcYv-Yv (cm)"); @@ -141,7 +150,7 @@ void AlidNdPtCutAnalysis::Init(){ Double_t minRecMCTrackHist[11]={0., 0., 0., -10.,-10.,-1.5, 0., ptMin, 0., 0., 0.}; Double_t maxRecMCTrackHist[11]={160.,10.,1.2, 10.,10.,1.5, 2.*TMath::Pi(), ptMax, 2.,2., 2.}; - fRecMCTrackHist = new THnSparseF("fRecMCTrackHist","nClust:chi2PerClust:nClust/nFindableClust:DCAy:DCAz:eta:phi:pt:isKink:isPrim:polarity",10,binsRecMCTrackHist,minRecMCTrackHist,maxRecMCTrackHist); + fRecMCTrackHist = new THnSparseF("fRecMCTrackHist","nClust:chi2PerClust:nClust/nFindableClust:DCAy:DCAz:eta:phi:pt:isKink:isPrim:polarity",11,binsRecMCTrackHist,minRecMCTrackHist,maxRecMCTrackHist); fRecMCTrackHist->SetBinEdges(7,binsPt); fRecMCTrackHist->GetAxis(0)->SetTitle("nClust"); @@ -315,7 +324,7 @@ void AlidNdPtCutAnalysis::Process(AliESDEvent *const esdEvent, AliMCEvent * cons } //_____________________________________________________________________________ -void AlidNdPtCutAnalysis::FillHistograms(AliESDtrack *const esdTrack, AliStack *const stack) +void AlidNdPtCutAnalysis::FillHistograms(AliESDtrack *const esdTrack, AliStack *const stack) const { // // Fill ESD track and MC histograms @@ -366,7 +375,7 @@ void AlidNdPtCutAnalysis::FillHistograms(AliESDtrack *const esdTrack, AliStack * } //_____________________________________________________________________________ -Long64_t AlidNdPtCutAnalysis::Merge(TCollection* list) +Long64_t AlidNdPtCutAnalysis::Merge(TCollection* const list) { // Merge list of objects (needed by PROOF) diff --git a/PWG0/dNdPt/AlidNdPtCutAnalysis.h b/PWG0/dNdPt/AlidNdPtCutAnalysis.h index f4a8dae0a2e..53bc7d18bdd 100644 --- a/PWG0/dNdPt/AlidNdPtCutAnalysis.h +++ b/PWG0/dNdPt/AlidNdPtCutAnalysis.h @@ -2,23 +2,20 @@ #define ALIDEDPTCUTANALYSIS_H //------------------------------------------------------------------------------ -// AlidNdPtCutAnalysis class. -// -// a. functionality: -// - fills generic cut histograms -// - generates cuts (selection criteria) -// -// b. data members: -// - generic cut histograms -// - control histograms +// AlidNdPtCutAnalysis class to determine +// cuts to be used for dNdPt analysis. // // Author: J.Otwinowski 04/11/2008 //------------------------------------------------------------------------------ +class iostream; +class TFile; +class TCint; class TProfile; class TFolder; class TObjArray; class TString; +class THnSparse; class AliESDtrackCuts; class AliVertexerTracks; @@ -26,7 +23,6 @@ class AliESD; class AliESDfriend; class AliESDfriendTrack; -#include "THnSparse.h" #include "AlidNdPt.h" class AlidNdPtCutAnalysis : public AlidNdPt { @@ -42,31 +38,31 @@ public : virtual void Process(AliESDEvent *const esdEvent=0, AliMCEvent *const mcEvent=0); // Merge output objects (needed by PROOF) - virtual Long64_t Merge(TCollection* list); + virtual Long64_t Merge(TCollection* const list); // Analyse output histograms virtual void Analyse(); // Export objects to folder - virtual TFolder *ExportToFolder(TObjArray * array=0); + virtual TFolder *ExportToFolder(TObjArray * const array=0); // Get analysis folder - TFolder* GetAnalysisFolder() {return fAnalysisFolder;} + TFolder* GetAnalysisFolder() const {return fAnalysisFolder;} // Create folder for analysed histograms TFolder *CreateFolder(TString folder = "folderdNdPtAnalysis",TString title = "Analysed dNdPt histograms"); // Fill histograms - void FillHistograms(AliESDtrack *const esdTrack, AliStack *const stack); + void FillHistograms(AliESDtrack *const esdTrack, AliStack *const stack) const; // Getters - THnSparseF *GetEventCount() {return fEventCount;} - THnSparseF *GetRecEventHist() {return fRecEventHist;} - THnSparseF *GetMCEventHist() {return fMCEventHist;} - THnSparseF *GetRecMCEventHist() {return fRecMCEventHist;} + THnSparseF *GetEventCount() const {return fEventCount;} + THnSparseF *GetRecEventHist() const {return fRecEventHist;} + THnSparseF *GetMCEventHist() const {return fMCEventHist;} + THnSparseF *GetRecMCEventHist() const {return fRecMCEventHist;} // - THnSparseF *GetRecMCTrackHist() {return fRecMCTrackHist;} + THnSparseF *GetRecMCTrackHist() const {return fRecMCTrackHist;} private: diff --git a/PWG0/dNdPt/AlidNdPtHelper.cxx b/PWG0/dNdPt/AlidNdPtHelper.cxx index 0fee2d8d481..ac9bfa570c9 100644 --- a/PWG0/dNdPt/AlidNdPtHelper.cxx +++ b/PWG0/dNdPt/AlidNdPtHelper.cxx @@ -290,7 +290,7 @@ return kFALSE; */ //____________________________________________________________________ -Bool_t AlidNdPtHelper::IsCosmicTrack(AliESDtrack *track1, AliESDtrack *track2, Int_t trackIdx, AlidNdPtAcceptanceCuts *accCuts, AliESDtrackCuts *trackCuts) +Bool_t AlidNdPtHelper::IsCosmicTrack(AliESDtrack *track1, AliESDtrack *track2, Int_t /*trackIdx*/, AlidNdPtAcceptanceCuts *accCuts, AliESDtrackCuts *trackCuts) { // // check cosmic tracks -- 2.43.0