12 TString OutputFile =
"sim_complete.root";
13 TString ParOutputfile =
"simparams.root";
14 TString MediaFile =
"media_pnd.geo";
18 Bool_t UseEvtGenDirect =kFALSE;
21 Bool_t UseBoxGenerator =kTRUE;
34 TLorentzVector
fIni(0, 0,
mom,
sqrt(
mom*
mom+9.3827203e-01*9.3827203e-01)+9.3827203e-01);
35 TDatabasePDG::Instance()->AddParticle(
"pbarpSystem",
"pbarpSystem",fIni.M(),kFALSE,0.1,0,
"",88888);
42 FairRunSim *
fRun =
new FairRunSim();
43 fRun->SetName(SimEngine.Data() );
44 fRun->SetOutputFile(OutputFile.Data());
45 fRun->SetGenerateRunInfo(kFALSE);
46 fRun->SetBeamMom(BeamMomentum);
47 fRun->SetMaterials(MediaFile.Data());
48 fRun->SetUseFairLinks(kTRUE);
49 FairRuntimeDb *
rtdb=fRun->GetRuntimeDb();
54 allDigiFile +=
"/macro/params/";
59 FairParAsciiFileIo*
parIo1 =
new FairParAsciiFileIo();
60 parIo1->open(allDigiFile.Data(),
"in");
61 rtdb->setFirstInput(parIo1);
65 FairParRootFileIo*
output=
new FairParRootFileIo(kParameterMerged);
66 output->open(ParOutputfile.Data());
67 rtdb->setOutput(output);
74 Cave->SetGeometryFileName(
"pndcave.geo");
75 fRun->AddModule(Cave);
82 Dipole->SetGeometryFileName(
"dipole.geo");
83 fRun->AddModule(Dipole);
86 Pipe->SetGeometryFileName(
"beampipe_201309.root");
87 fRun->AddModule(Pipe);
89 FairDetector *
Stt=
new PndStt(
"STT", kTRUE);
90 Stt->SetGeometryFileName(
"straws_skewed_blocks_35cm_pipe.geo");
94 Mvd->SetGeometryFileName(
"Mvd-2.1_FullVersion.root");
98 Gem->SetGeometryFileName(
"gem_3Stations_Tube.root");
104 fRun->AddModule(Emc);
106 FairDetector *SciT =
new PndSciT(
"SCIT",kTRUE);
107 SciT->SetGeometryFileName(
"SciTil_201504.root");
108 fRun->AddModule(SciT);
111 Drc->SetGeometryFileName(
"dirc_l0_p0_updated.root");
113 fRun->AddModule(Drc);
128 fRun->AddModule(Muo);
130 FairDetector *
Fts=
new PndFts(
"FTS", kTRUE);
131 Fts->SetGeometryFileName(
"fts.geo");
132 fRun->AddModule(Fts);
135 FTof->SetGeometryFileName(
"ftofwall.root");
136 fRun->AddModule(FTof);
138 FairDetector *Rich=
new PndRich(
"RICH",kFALSE);
139 Rich->SetGeometryFileName(
"rich_v2_shift.geo");
140 fRun->AddModule(Rich);
143 disc_dirc->SetVerboseLevel(2);
144 disc_dirc->SetGeometryFileName(
"DIRC_GEO_SIO2.root");
146 fRun->AddModule(disc_dirc);
150 FairPrimaryGenerator*
primGen =
new FairPrimaryGenerator();
151 fRun->SetGenerator(primGen);
154 FairBoxGenerator*
boxGen =
new FairBoxGenerator(211, 1);
155 boxGen->SetPRange(
mom,
mom);
156 boxGen->SetPhiRange(-45., -45.);
157 boxGen->SetThetaRange(15., 15.);
158 boxGen->SetXYZ(0., 0., 0.);
159 primGen->AddGenerator(boxGen);
161 FairBoxGenerator*
boxGen2 =
new FairBoxGenerator(321, 1);
162 boxGen2->SetPRange(
mom,
mom);
163 boxGen2->SetPhiRange(45., 45.);
164 boxGen2->SetThetaRange(15., 15.);
165 boxGen2->SetXYZ(0., 0., 0.);
166 primGen->AddGenerator(boxGen2);
178 primGen->AddGenerator(Dpm);
185 primGen->AddGenerator(Ftf);
188 TString EvtInput =gSystem->Getenv(
"VMCWORKDIR");
189 EvtInput+=
"/macro/run/psi2s_Jpsi2pi_Jpsi_mumu.dec";
192 primGen->AddGenerator(EvtGen);
197 fRun->SetField(fField);
202 fRun->AddTask(emcHitProd);
214 printf(
"RealTime=%f seconds, CpuTime=%f seconds\n",rtime,ctime);
216 cout <<
" Test passed" << endl;
217 cout <<
" All ok " << endl;
void SetForward(TString name)
printf("RealTime=%f seconds, CpuTime=%f seconds\n", rtime, ctime)
friend F32vec4 sqrt(const F32vec4 &a)
PndBoxGenerator * boxGen2
creates PndEmcHits from PndEmcPoints
void SetMdtCoil(bool opt=false)
void SetMdtMFIron(bool opt=false)
void SetStorageOfData(Bool_t val)
FairParRootFileIo * output
FairPrimaryGenerator * primGen
void SetMdtMagnet(bool opt=false)
void SetStoreTree(Bool_t store=true)
virtual void SetGeometryVersion(const Int_t GeoNumber)
void SetBarrel(TString name)
FairParAsciiFileIo * parIo1
FairBoxGenerator * boxGen
void SetEndcap(TString name)
void SetMuonFilter(TString name)
void SetRunCherenkov(Bool_t ch)
sim_complete(Int_t nEvents=2, TString SimEngine="TGeant4", Float_t mom=6.231552)
void SetFilterInterval(Double_t const &wl_min_nm_, Double_t const &wl_max_nm_)
Set the wavelength range of the bandpass filters.