23 const char *ocdb =
"cvmfs://",
24 Int_t nFiles = 100000,
34 printf(
"scalingTracks=%d\n",scalingTracks);
35 printf(
"scalingV0=%d\n",scalingV0);
36 printf(
"nFiles=%d\n",nFiles);
38 gSystem->SetIncludePath(
"-I$ROOTSYS/include -I$ALICE_ROOT/include -I$ALICE_ROOT/ITS -I$ALICE_ROOT -I$ALICE_ROOT/TRD");
43 mgr->SetDebugLevel(0);
45 AliESDInputHandler* esdH =
new AliESDInputHandler();
47 esdH->SetReadFriends(1);
48 mgr->SetInputEventHandler(esdH);
51 AliMCEventHandler* handlerMC =
new AliMCEventHandler;
53 if (mc) mgr->SetMCtruthEventHandler(handlerMC);
55 gROOT->LoadMacro(
"$ALICE_PHYSICS/PWGPP/PilotTrain/AddTaskCDBconnect.C");
56 AddTaskCDBconnect(ocdb,run);
58 if (
gSystem->AccessPathName(
"localOCDBaccessConfig.C", kFileExists)==0) {
59 gROOT->LoadMacro(
"localOCDBaccessConfig.C");
60 localOCDBaccessConfig();
66 printf(
"ERROR: chain cannot be created\n");
72 gROOT->LoadMacro(
"$ALICE_ROOT/ANALYSIS/macros/AddTaskPIDResponse.C");
74 AddTaskPIDResponse(isMC);
79 gROOT->LoadMacro(
"$ALICE_PHYSICS/PWGPP/macros/AddTaskFilteredTree.C");
87 if (!mgr->InitAnalysis())
91 mgr->StartAnalysis(
"local",chain,
nEvents, firstEvent);
103 TFile * f = TFile::Open(
"Filtered.root");
109 Double_t ratioHighPtV0Entries=treeV0s->GetEntries()/
Double_t(treeV0s->GetEntries()+highPt->GetEntries()+0.000001);
110 Double_t ratioHighPtV0Size=treeV0s->GetZipBytes()/
Double_t(treeV0s->GetZipBytes()+highPt->GetZipBytes()+0.000001);
111 printf(
"#UnitTest:\tAliAnalysisTaskFiltered\tRatioPtToV0Entries\t%f\n",ratioHighPtV0Entries);
112 printf(
"#UnitTest:\tAliAnalysisTaskFiltered\tRatioPtToV0Size\t%f\n",ratioHighPtV0Size);
115 Double_t ratioPointsV0 = 2*treeV0s->GetBranch(
"friendTrack0.fCalibContainer")->GetZipBytes()/
Double_t(0.00001+treeV0s->GetZipBytes());
116 Double_t ratioPointsHighPt = highPt->GetBranch(
"friendTrack.fCalibContainer")->GetZipBytes()/
Double_t(0.00001+highPt->GetZipBytes());
117 printf(
"#UnitTest:\tAliAnalysisTaskFiltered\tRatioPointsV0\t%f\n",ratioPointsV0);
118 printf(
"#UnitTest:\tAliAnalysisTaskFiltered\tRatioPointsHighPt\t%f\n",ratioPointsHighPt);
122 Int_t entries= highPt->Draw(
"(friendTrack.fTPCOut.fP[3]-esdTrack.fIp.fP[3])/sqrt(friendTrack.fTPCOut.fC[9]+esdTrack.fIp.fC[9])",
"friendTrack.fTPCOut.fP[3]!=0",
"");
124 Double_t pulls=TMath::RMS(entries, highPt->GetV1());
125 printf(
"#UnitTest:\tAliAnalysisTaskFiltered\tFriendPull\t%2.4f\n",pulls);
126 printf(
"#UnitTest:\tAliAnalysisTaskFiltered\tFriendOK\t%d\n",pulls<10);
TChain * MakeChain(const char *what, const char *datadir, bool recursive=false)
void SetLowPtTrackDownscaligF(Double_t fact)
void SetLowPtV0DownscaligF(Double_t fact)
void AliAnalysisTaskFilteredTest(const char *esdList, Int_t run=0, Float_t scalingTracks=1, Float_t scalingV0=1, Float_t scalingFriend=1, const char *ocdb="cvmfs://", Int_t nFiles=100000, Int_t firstFile=0, Int_t nEvents=1000000000, Int_t firstEvent=0, Bool_t mc=kFALSE)
Double_t nEvents
plot quality messages
void CheckOutput()
Test of AliAnalysisTaskFiltered class
void SetFriendDownscaling(Double_t fact)
void SetUseESDfriends(Bool_t friends)