+++ /dev/null
-#include "CommonDefs.C"
-
-MultCent(const Char_t *filename = "data.root", Int_t evMax = kMaxInt)
-{
-
- /* include path for ACLic */
- gSystem->AddIncludePath("-I$ALICE_ROOT/include");
- gSystem->AddIncludePath("-I$ALICE_ROOT/TOF");
- /* load libraries */
- gSystem->Load("libANALYSIS");
- gSystem->Load("libANALYSISalice");
- /* build analysis task class */
- gROOT->LoadMacro("AliAnalysisParticle.cxx+g");
- gROOT->LoadMacro("AliAnalysisEvent.cxx+g");
- gROOT->LoadMacro("AliAnalysisTrack.cxx+g");
-
- /* open file, get tree and connect */
- TFile *filein = TFile::Open(filename);
- TTree *treein = (TTree *)filein->Get("aodTree");
- printf("got \"aodTree\": %d entries\n", treein->GetEntries());
- AliAnalysisEvent *analysisEvent = new AliAnalysisEvent();
- TClonesArray *analysisTrackArray = new TClonesArray("AliAnalysisTrack");
- AliAnalysisTrack *analysisTrack = NULL;
- treein->SetBranchAddress("AnalysisEvent", &analysisEvent);
- treein->SetBranchAddress("AnalysisTrack", &analysisTrackArray);
-
- /* histo */
- TH2F *hMultCent = new TH2F("hMultCent", "", 120, -10., 110., 5000, 0., 5000.);
- TH2F *hRefMultCent = new TH2F("hRefMultCent", "", 120, -10., 110., 5000, 0., 5000.);
- TH2F *hMultTOFCent = new TH2F("hMultTOFCent", "", 100, 0., 100., 5000, 0., 5000.);
- TH2F *hMultCent_T0TOF = new TH2F("hMultCent_T0TOF", "", 100, 0., 100., 5000, 0., 5000.);
-
- /* loop over events */
- Int_t mult;
- Double_t cent, refmult;
- for (Int_t iev = 0; iev < treein->GetEntries() && iev < evMax; iev++) {
- /* get event */
- treein->GetEvent(iev);
- if (iev % 100000 == 0) printf("iev = %d\n", iev);
-
- /* check accept event */
- if (!analysisEvent->AcceptEvent(acceptEventType)) continue;
-
- /* count tracks for multiplicity */
- mult = analysisTrackArray->GetEntries();
- cent = analysisEvent->GetCentralityPercentile(centralityEstimator);
- refmult = analysisEvent->GetCentralityPercentile(999);
- /* check centrality percentile (V0M) */
- // if (cent == 100.) continue;
-
- /*** ACCEPTED EVENT ***/
-
- /* fill histo */
- hMultCent->Fill(cent, mult);
- hRefMultCent->Fill(cent, refmult);
-
- /* check if event has T0-TOF */
- if (analysisEvent->GetTimeZeroTOFSigma(9) > 150.) continue;
-
- hMultCent_T0TOF->Fill(cent, mult);
-
- Int_t nTOFtrk = 0, ntrk = 0;
- AliAnalysisTrack *analysisTrack = NULL;
- for (Int_t itrk = 0; itrk < mult; itrk++) {
- analysisTrack = (AliAnalysisTrack *)analysisTrackArray->At(itrk);
- if (!analysisTrack->AcceptTrack()) continue;
- ntrk++;
- if (analysisTrack->HasTOFMatch()) nTOFtrk++;
-
- }
-
- hMultTOFCent->Fill(cent, nTOFtrk);
-
- }
-
- /* output */
- TFile *fileout = new TFile(Form("MultCent.%s", filename), "RECREATE");
- hMultCent->Write();
- hRefMultCent->Write();
- hMultCent_T0TOF->Write();
- hMultTOFCent->Write();
- fileout->Close();
-
-}
-
-MultCent_T0TOFeff(const Char_t *filename)
-{
-
- TFile *filein = TFile::Open(filename);
- TH2F *hMultCent = (TH2F *)filein->Get("hMultCent");
- TH2F *hMultCent_T0TOF = (TH2F *)filein->Get("hMultCent_T0TOF");
-
- /* projections */
- TH1D *hMultCent_px = hMultCent->ProjectionX();
- TH1D *hMultCent_T0TOF_px = hMultCent_T0TOF->ProjectionX();
- TH1D *hMultCent_py = hMultCent->ProjectionY();
- TH1D *hMultCent_T0TOF_py = hMultCent_T0TOF->ProjectionY();
-
- /* efficiency centrality */
- TH1D *hEfficiency_centrality = new TH1D(*hMultCent_T0TOF_px);
- hEfficiency_centrality->SetNameTitle("hEfficiency_centrality", ";centrality percentile;T0-TOF efficiency");
- hEfficiency_centrality->Sumw2();
- hEfficiency_centrality->Divide(hEfficiency_centrality, hMultCent_px, 1., 1., "B");
-
- /* efficiency tracks */
- TH1D *hEfficiency_tracks = new TH1D(*hMultCent_T0TOF_py);
- hEfficiency_tracks->SetNameTitle("hEfficiency_tracks", ";N_{tracks};T0-TOF efficiency");
- hEfficiency_tracks->Sumw2();
- hEfficiency_tracks->Divide(hEfficiency_tracks, hMultCent_py, 1., 1., "B");
-
- /* draw */
- TCanvas *cCentrality = new TCanvas("cCentrality");
- hEfficiency_centrality->DrawCopy();
- TCanvas *cTracks = new TCanvas("cTracks");
- hEfficiency_tracks->DrawCopy();
-
- /* output */
- TFile *fileout = new TFile(Form("MultCent_T0TOFeff.%s", filename), "RECREATE");
- hEfficiency_centrality->Write();
- hEfficiency_tracks->Write();
- fileout->Close();
-
-
-}