4 // Script to test the dN/dEta analysis using the dNdEtaAnalysis and
5 // dNdEtaCorrection classes. Note that there is a cut on the events,
6 // so the measurement will be biassed.
8 // implementation with TSelector
11 #include "../CreateESDChain.C"
12 #include "../PWG0Helper.C"
14 void testAnalysis2(Char_t* data, Int_t nRuns=20, Int_t offset=0, Bool_t aMC = kFALSE, Bool_t aDebug = kFALSE, Bool_t aProof = kFALSE, const char* correctionMapFile = "correction_map.root", const char* correctionMapFolder = "dndeta_correction", const char* option = "", const char* proofServer = "jgrosseo@lxb6046")
17 connectProof(proofServer);
19 TString libraries("libEG;libGeom;libESD;libPWG0base");
20 TString packages("PWG0base");
23 libraries += ";libVMC;libMinuit;libSTEER;libEVGEN;libFASTSIM;libmicrocern;libpdf;libpythia6;libEGPythia6;libAliPythia6;libPWG0dep";
24 packages += ";PWG0dep";
27 if (!prepareQuery(libraries, packages, kTRUE))
30 //TODO somehow prevent loading several times
31 gROOT->ProcessLine(".L CreateCuts.C");
32 gROOT->ProcessLine(".L drawPlots.C");
34 TChain* chain = CreateESDChain(data, nRuns, offset);
41 // selection of esd tracks
42 AliESDtrackCuts* esdTrackCuts = CreateTrackCuts();
45 printf("ERROR: esdTrackCuts could not be created\n");
49 inputList.Add(esdTrackCuts);
51 AlidNdEtaCorrection* dNdEtaCorrection = new AlidNdEtaCorrection(correctionMapFolder, correctionMapFolder);
52 dNdEtaCorrection->LoadHistograms(correctionMapFile, correctionMapFolder);
53 dNdEtaCorrection->ReduceInformation();
54 dNdEtaCorrection->SetName("dndeta_correction");
55 dNdEtaCorrection->SetTitle("dndeta_correction");
57 inputList.Add(dNdEtaCorrection);
60 TString selectorName = ((aMC == kFALSE) ? "AlidNdEtaAnalysisESDSelector" : "AlidNdEtaAnalysisMCSelector");
61 AliLog::SetClassDebugLevel(selectorName, AliLog::kInfo);
63 selectorName += ".cxx+";
68 Int_t result = executeQuery(chain, &inputList, selectorName, option);
72 dNdEtaAnalysis* fdNdEtaAnalysis = new dNdEtaAnalysis("dndeta", "dndeta");
74 TFile* file = TFile::Open(aMC ? "analysis_mc.root" : "analysis_esd.root");
77 cout << "Error. File not found" << endl;
80 fdNdEtaAnalysis->LoadHistograms();
81 fdNdEtaAnalysis->DrawHistograms();