11 TString OutputFile =
"sim_complete.root";
12 TString ParOutputfile =
"simparams.root";
13 TString MediaFile =
"media_pnd.geo";
17 Bool_t UseEvtGenDirect =kFALSE;
19 Bool_t UseBoxGenerator =kTRUE;
31 TLorentzVector
fIni(0, 0,
mom,
sqrt(
mom*
mom+9.3827203e-01*9.3827203e-01)+9.3827203e-01);
32 TDatabasePDG::Instance()->AddParticle(
"pbarpSystem",
"pbarpSystem",
fIni.M(),kFALSE,0.1,0,
"",88888);
39 FairRunSim *
fRun =
new FairRunSim();
40 fRun->SetName(SimEngine.Data() );
41 fRun->SetOutputFile(OutputFile.Data());
42 fRun->SetGenerateRunInfo(kFALSE);
43 fRun->SetBeamMom(BeamMomentum);
44 fRun->SetMaterials(MediaFile.Data());
45 FairRuntimeDb *
rtdb=fRun->GetRuntimeDb();
50 allDigiFile +=
"/macro/params/";
55 FairParAsciiFileIo*
parIo1 =
new FairParAsciiFileIo();
56 parIo1->open(allDigiFile.Data(),
"in");
57 rtdb->setFirstInput(parIo1);
61 FairParRootFileIo*
output=
new FairParRootFileIo(kParameterMerged);
62 output->open(ParOutputfile.Data());
63 rtdb->setOutput(output);
70 Cave->SetGeometryFileName(
"pndcave.geo");
71 fRun->AddModule(Cave);
75 Magnet->SetGeometryFileName(
"FullSuperconductingSolenoid_v831.root");
76 fRun->AddModule(Magnet);
78 Dipole->SetGeometryFileName(
"dipole.geo");
79 fRun->AddModule(Dipole);
82 Pipe->SetGeometryFileName(
"beampipe_201309.root");
83 fRun->AddModule(Pipe);
85 FairDetector *
Stt=
new PndStt(
"STT", kTRUE);
86 Stt->SetGeometryFileName(
"straws_skewed_blocks_35cm_pipe.geo");
90 Mvd->SetGeometryFileName(
"Mvd-2.1_FullVersion.root");
94 Gem->SetGeometryFileName(
"gem_3Stations_Tube.root");
100 fRun->AddModule(Emc);
102 FairDetector *SciT =
new PndSciT(
"SCIT",kTRUE);
103 SciT->SetGeometryFileName(
"barrel-SciTil_07022013.root");
104 fRun->AddModule(SciT);
107 Drc->SetGeometryFileName(
"dirc_l0_p0_updated.root");
109 fRun->AddModule(Drc);
114 fRun->AddModule(Dsk);
123 fRun->AddModule(Muo);
125 FairDetector *
Fts=
new PndFts(
"FTS", kTRUE);
126 Fts->SetGeometryFileName(
"fts.geo");
127 fRun->AddModule(Fts);
130 FTof->SetGeometryFileName(
"ftofwall.root");
131 fRun->AddModule(FTof);
133 FairDetector *Rich=
new PndRich(
"RICH",kFALSE);
134 Rich->SetGeometryFileName(
"rich_v2_shift.geo");
135 fRun->AddModule(Rich);
147 int index[4] = {48, 49, 50, 63};
149 for(
int iPall=0; iPall<4; iPall++)
151 iParticle = index[iPall];
152 Double_t lifetime = eff.partLifeTime[iParticle];
153 Double_t mass = eff.partMass[iParticle];
154 Int_t PDG = eff.
partPDG[iParticle];
155 Double_t charge = eff.partCharge[iParticle];
157 FairParticle* newPartice =
new FairParticle(PDG, eff.
partTitle[iParticle], kPTHadron, mass, charge,
158 lifetime,
"hadron", 0.0, 1, 1, 0, 1, 1, 0, 0, 1, kFALSE);
159 fRun->AddNewParticle(newPartice);
161 TString pythia6Config =
"/u/mzyzak/panda_06.2014/macro/kf/D0/DecayConfig.C";
162 fRun->SetPythiaDecayer(pythia6Config);
167 FairPrimaryGenerator*
primGen =
new FairPrimaryGenerator();
168 fRun->SetGenerator(primGen);
171 FairBoxGenerator*
boxGen =
new FairBoxGenerator(10428, 1);
172 boxGen->SetPRange(4,4);
173 boxGen->SetPhiRange(5., 45.);
174 boxGen->SetThetaRange(5., 45.);
175 boxGen->SetXYZ(0., 0., 0.);
176 primGen->AddGenerator(boxGen);
180 primGen->AddGenerator(Dpm);
183 TString EvtInput =gSystem->Getenv(
"VMCWORKDIR");
184 EvtInput+=
"/macro/run/psi2s_Jpsi2pi_Jpsi_mumu.dec";
187 primGen->AddGenerator(EvtGen);
192 fRun->SetField(fField);
197 fRun->AddTask(emcHitProd);
209 printf(
"RealTime=%f seconds, CpuTime=%f seconds\n",rtime,ctime);
211 cout <<
" Test passed" << endl;
212 cout <<
" All ok " << endl;
void SetForward(TString name)
printf("RealTime=%f seconds, CpuTime=%f seconds\n", rtime, ctime)
friend F32vec4 sqrt(const F32vec4 &a)
creates PndEmcHits from PndEmcPoints
void SetMdtMFIron(bool opt=false)
void SetStorageOfData(Bool_t val)
FairParRootFileIo * output
FairPrimaryGenerator * primGen
void SetMdtMagnet(bool opt=false)
void SetStoreTrackPoints(Bool_t storeTrackPoints)
void SetStoreTree(Bool_t store=true)
void SetStoreCerenkovs(Bool_t storeCerenkovs)
virtual void SetGeometryVersion(const Int_t GeoNumber)
TString partTitle[nParticles]
void SetBarrel(TString name)
FairParAsciiFileIo * parIo1
FairBoxGenerator * boxGen
void SetEndcap(TString name)
void SetMuonFilter(TString name)
void SetRunCherenkov(Bool_t ch)