20 gROOT->LoadMacro(
"$VMCWORKDIR/gconfig/rootlogon.C");
33 FairRunAna *
fRun=
new FairRunAna();
34 fRun->SetInputFile(inDigiFile);
35 fRun->AddFriend(inSimFile);
36 fRun->SetOutputFile(outFile);
37 FairGeane *
Geane =
new FairGeane();
44 FairRuntimeDb*
rtdb = fRun->GetRuntimeDb();
45 FairParRootFileIo*
parInput1 =
new FairParRootFileIo();
46 parInput1->open(parFile.Data());
48 FairParAsciiFileIo*
parIo1 =
new FairParAsciiFileIo();
49 parIo1->open(allDigiFile.Data(),
"in");
51 rtdb->setFirstInput(parInput1);
52 rtdb->setSecondInput(parIo1);
66 PndTpcRiemannTrackingTask*
tpcSPR =
new PndTpcRiemannTrackingTask();
69 fRun->AddTask(tpcSPR);
72 PndTpcTrackInitTask*
trackInit=
new PndTpcTrackInitTask();
73 trackInit->SetPersistence();
75 trackInit->SetMCPid();
78 trackInit->SetSmoothing(
true);
79 fRun->AddTask(trackInit);
81 KalmanTask*
kalman =
new KalmanTask();
82 kalman->SetPersistence();
83 kalman->SetNumIterations(3);
84 fRun->AddTask(kalman);
87 PndTpcMVDCorrelatorTask*
corr =
new PndTpcMVDCorrelatorTask();
88 corr->SetMatchDistance(0.18);
89 corr->SetMinMVDHits(1);
90 corr->SetOutTrackBranchName(
"TrackPreFitMVD");
91 corr->SetPersistence(
true);
97 kalman2->SetPersistence();
98 kalman2->SetNumIterations(3);
99 kalman2->SetTrackBranchName(
"TrackPreFitMVD");
100 kalman2->SetOutBranchName(
"TrackPostFitMVD");
101 fRun->AddTask(kalman2);
103 PndTpcGEMCorrelatorTask*
corrG =
new PndTpcGEMCorrelatorTask();
104 corrG->SetMatchDistance(0.5);
105 corrG->SetMinGEMHits(2);
106 corrG->SetTrackBranchName(
"TrackPostFitMVD");
107 corrG->SetOutTrackBranchName(
"TrackPreFitGEM");
108 corrG->SetPersistence(
true);
109 fRun->AddTask(corrG);
113 kalman3->SetPersistence();
114 kalman3->SetNumIterations(3);
115 kalman3->SetTrackBranchName(
"TrackPreFitGEM");
116 kalman3->SetOutBranchName(
"TrackPostFitComplete");
117 fRun->AddTask(kalman3);
119 PndGFTrackToPndTrackConvertorTask*
converter =
new PndGFTrackToPndTrackConvertorTask();
120 converter->SetTrackInBranchName(
"TrackPostFitComplete");
121 converter->SetTrackOutBranchName(
"PndTrackPostFitComplete");
122 fRun->AddTask(converter);
124 PndMCTrackAssociator*
trackMC =
new PndMCTrackAssociator();
125 trackMC->SetTrackInBranchName(
"PndTrackPostFitComplete");
126 trackMC->SetTrackOutBranchName(
"TrackPostFitCompleteID");
127 fRun->AddTask(trackMC);
132 fRun->Run(0, nEvents);
137 corr->WriteHistograms(
"MVDRes.root");
138 corrG->WriteHistograms(
"GEMRes.root");
147 cout << endl << endl;
148 cout <<
"Macro finished succesfully." << endl;
149 cout <<
"Output file is " << outFile << endl;
150 cout <<
"Parameter file is " << parFile << endl;
151 cout <<
"Real time " << rtime <<
" s, CPU time " << ctime <<
" s" << endl;
PndGFTrackToPndTrackConvertorTask * converter
Class to access the naming information of the MVD.
PndTpcTrackInitTask * trackInit
PndTpcGEMCorrelatorTask * corrG
static void Init(Int_t MapVersion)
PndTpcRiemannTrackingTask * tpcSPR
static PndGeoHandling * Instance()
FairParRootFileIo * parInput1
PndMCTrackAssociator * trackMC
FairParAsciiFileIo * parIo1