11 TString OutputFile =
"data/sim.root";
12 TString ParOutputfile =
"data/simparams.root";
13 TString MediaFile =
"media_pnd.geo";
18 Bool_t UseEvtGenDirect =kFALSE;
20 Bool_t UseBoxGenerator =kTRUE;
32 TLorentzVector
fIni(0, 0,
mom,
sqrt(
mom*
mom+9.3827203e-01*9.3827203e-01)+9.3827203e-01);
33 TDatabasePDG::Instance()->AddParticle(
"pbarpSystem",
"pbarpSystem",
fIni.M(),kFALSE,0.1,0,
"",88888);
40 FairRunSim *
fRun =
new FairRunSim();
41 fRun->SetName(SimEngine.Data() );
42 fRun->SetOutputFile(OutputFile.Data());
43 fRun->SetGenerateRunInfo(kFALSE);
44 fRun->SetBeamMom(BeamMomentum);
45 fRun->SetMaterials(MediaFile.Data());
46 FairRuntimeDb *
rtdb=fRun->GetRuntimeDb();
51 allDigiFile +=
"/macro/params/";
56 FairParAsciiFileIo*
parIo1 =
new FairParAsciiFileIo();
57 parIo1->open(allDigiFile.Data(),
"in");
58 rtdb->setFirstInput(parIo1);
62 FairParRootFileIo*
output=
new FairParRootFileIo(kParameterMerged);
63 output->open(ParOutputfile.Data());
64 rtdb->setOutput(output);
71 Cave->SetGeometryFileName(
"pndcave.geo");
72 fRun->AddModule(Cave);
79 Dipole->SetGeometryFileName(
"dipole.geo");
80 fRun->AddModule(Dipole);
83 Pipe->SetGeometryFileName(
"beampipe_201309.root");
84 fRun->AddModule(Pipe);
91 Mvd->SetGeometryFileName(
"Mvd-2.1_FullVersion.root");
95 Gem->SetGeometryFileName(
"gem_3Stations_Tube.root");
115 fRun->AddModule(Dsk);
127 FairDetector *
Fts=
new PndFts(
"FTS", kTRUE);
128 Fts->SetGeometryFileName(
"fts.geo");
133 fRun->AddModule(Fts);
136 FTof->SetGeometryFileName(
"ftofwall.root");
137 fRun->AddModule(FTof);
139 FairDetector *Rich=
new PndRich(
"RICH",kFALSE);
140 Rich->SetGeometryFileName(
"rich_v2_shift.geo");
141 fRun->AddModule(Rich);
145 FairPrimaryGenerator*
primGen =
new FairPrimaryGenerator();
146 fRun->SetGenerator(primGen);
164 FairBoxGenerator* muMinusBoxGen =
new FairBoxGenerator(13, 1);
165 muMinusBoxGen->SetPRange(2.,3.0);
166 muMinusBoxGen->SetPhiRange(0., 360.);
167 muMinusBoxGen->SetThetaRange(1., 7.);
168 muMinusBoxGen->SetXYZ(0., 0., 0.);
169 primGen->AddGenerator(muMinusBoxGen);
179 primGen->AddGenerator(Dpm);
182 TString EvtInput =gSystem->Getenv(
"VMCWORKDIR");
183 EvtInput+=
"/input/psi2s_jpsi2pi_1k.evt";
184 FairEvtGenGenerator*
evtGen =
new FairEvtGenGenerator(EvtInput.Data());
185 primGen->AddGenerator(evtGen);
188 TString EvtInput =gSystem->Getenv(
"VMCWORKDIR");
189 EvtInput+=
"/macro/QA/ftstrk/psi2s_Jpsi2pi_Jpsi_mumu.dec";
192 primGen->AddGenerator(EvtGen);
197 fRun->SetField(fField);
205 fRun->SetStoreTraj(kTRUE);
211 trajFilter->SetStepSizeCut(0.04);
215 trajFilter->SetStorePrimaries(kTRUE);
216 trajFilter->SetStoreSecondaries(kTRUE);
225 printf(
"RealTime=%f seconds, CpuTime=%f seconds\n",rtime,ctime);
228 cout <<
"<DartMeasurement name=\"Time\" type=\"numeric/double\">";
230 cout <<
"</DartMeasurement>" << endl;
231 Float_t cpuUsage=ctime/
rtime;
232 cout <<
"<DartMeasurement name=\"CpuLoad\" type=\"numeric/double\">";
234 cout <<
"</DartMeasurement>" << endl;
235 FairSystemInfo sysInfo;
236 Float_t maxMemory=sysInfo.GetMaxMemory();
237 cout <<
"<DartMeasurement name=\"MaxMemory\" type=\"numeric/double\">";
239 cout <<
"</DartMeasurement>" << endl;
242 cout <<
"Macro finished successfully." << endl;
FairTrajFilter * trajFilter
printf("RealTime=%f seconds, CpuTime=%f seconds\n", rtime, ctime)
friend F32vec4 sqrt(const F32vec4 &a)
FairParRootFileIo * output
FairPrimaryGenerator * primGen
void SetStoreTrackPoints(Bool_t storeTrackPoints)
void SetStoreTree(Bool_t store=true)
void SetStoreCerenkovs(Bool_t storeCerenkovs)
FairParAsciiFileIo * parIo1
FairEvtGenGenerator * evtGen