4 #include <PndDchDetector.h>
18 #include <PndTpcDetector.h>
20 #include <FairBoxGenerator.h>
21 #include <FairEvtGenGenerator.h>
22 #include <FairModule.h>
23 #include <FairParAsciiFileIo.h>
24 #include <FairParRootFileIo.h>
25 #include <FairPrimaryGenerator.h>
26 #include <FairRunAna.h>
27 #include <FairRunSim.h>
28 #include <FairRuntimeDb.h>
31 #include <TStopwatch.h>
53 FairRunSim *
fRun =
new FairRunSim();
54 fRun->SetName(simEngine.Data() );
55 fRun->SetOutputFile(outFile.Data());
56 fRun->SetBeamMom(beamMomentum);
57 fRun->SetMaterials(
"media_pnd.geo");
58 FairRuntimeDb *
rtdb=fRun->GetRuntimeDb();
65 Cave->SetGeometryFileName(
"pndcave.geo");
66 fRun->AddModule(Cave);
73 Dipole->SetGeometryFileName(
"dipole.geo");
74 fRun->AddModule(Dipole);
76 if (0==trackDetector.CompareTo(
"stt"))
79 FairDetector *
Stt=
new PndStt(
"STT", kTRUE);
80 Stt->SetGeometryFileName(
"straws_skewed_blocks_pipe_120cm.geo");
83 else if (0==trackDetector.CompareTo(
"tpc"))
86 PndTpcDetector *
PndTpc =
new PndTpcDetector(
"TPC", kTRUE);
87 PndTpc->SetGeometryFileName(
"tpc.geo");
88 if(simEngine==
"TGeant3") PndTpc->SetAliMC();
89 fRun->AddModule(PndTpc);
93 Mvd->SetGeometryFileName(
"MVD_v1.0_woPassiveTraps.root");
101 FairDetector *
Tof =
new PndTof(
"TOF",kTRUE);
102 Tof->SetGeometryFileName(
"tofbarrel.geo");
103 fRun->AddModule(Tof);
106 Drc->SetGeometryFileName(
"dirc.geo");
108 fRun->AddModule(Drc);
116 fRun->AddModule(Muo);
118 FairDetector *
Dch =
new PndDchDetector(
"DCH", kTRUE);
119 Dch->SetGeometryFileName(
"dch.root");
120 fRun->AddModule(Dch);
124 Gem->SetGeometryFileName(
"gem_3Stations.root");
125 fRun->AddModule(Gem);
129 Dsk->SetGeometryFileName(
"dsk.geo");
130 fRun->AddModule(Dsk);
136 FairPrimaryGenerator*
primGen =
new FairPrimaryGenerator();
137 fRun->SetGenerator(primGen);
140 FairBoxGenerator*
boxGen =
new FairBoxGenerator(22, 5);
141 boxGen->SetPtRange(momentum,momentum);
142 boxGen->SetPhiRange(0., 360.);
143 boxGen->SetThetaRange(0., 90.);
144 boxGen->SetXYZ(0., 0., 0.);
145 primGen->AddGenerator(boxGen);
149 primGen->AddGenerator(Dpm);
152 TString EvtInput =gSystem->Getenv(
"VMCWORKDIR");
153 EvtInput+=
"/input/psi2s_jpsi2pi_1k.evt";
154 FairEvtGenGenerator*
evtGen =
new FairEvtGenGenerator(EvtInput.Data());
155 primGen->AddGenerator(evtGen);
160 fRun->SetField(fField);
165 fRun->AddTask(emcHitProd);
170 emcDigiFile +=
"/macro/params/";
171 emcDigiFile += inDigiParamsFile;
175 FairParAsciiFileIo*
parIo1 =
new FairParAsciiFileIo();
176 parIo1->open(emcDigiFile.Data(),
"in");
177 rtdb->setFirstInput(parIo1);
181 FairParRootFileIo*
output=
new FairParRootFileIo(kParameterMerged);
182 output->open(outParamsFile.Data());
183 rtdb->setOutput(output);
195 printf(
"RealTime=%f seconds, CpuTime=%f seconds\n",rtime,ctime);
197 cout <<
" Test passed" << endl;
198 cout <<
" All ok " << endl;
printf("RealTime=%f seconds, CpuTime=%f seconds\n", rtime, ctime)
creates PndEmcHits from PndEmcPoints
void SetMdtMFIron(bool opt=false)
void SetStorageOfData(Bool_t val)
FairParRootFileIo * output
FairPrimaryGenerator * primGen
void SetMdtMagnet(bool opt=false)
void SetBarrel(TString name)
FairParAsciiFileIo * parIo1
FairBoxGenerator * boxGen
void SetEndcap(TString name)
void SetMuonFilter(TString name)
FairEvtGenGenerator * evtGen
virtual void SetGeometryFileNameTriple(TString fname, TString fname2, TString fname3, TString geoVer="0")
void SetRunCherenkov(Bool_t ch)
void SimComplete(Int_t nEvents, TString const &simEngine, Double_t momentum, Bool_t useEvtGen, Bool_t useDpm, Bool_t useBoxGenerator, Double_t beamMomentum, TString const &outFile, TString const &outParamsFile, TString const &inDigiParamsFile, TString const &trackDetector)