7 Bool_t FirstBeamTime =
false;
8 Int_t ParticlePDG = PDG_ext;
12 gROOT->Macro(
"$VMCWORKDIR/gconfig/rootlogon.C");
13 gSystem->Load(
"libHypGe");
14 gSystem->Load(
"libHyp");
20 FairRunSim *
fRun =
new FairRunSim();
31 outFile +=
"hypGeCOSYBeamTime2014_";
34 outFile +=
"protons_mom";
35 outFile += ProtonMomentum;
45 outFile +=
"_GausianSmearedBeam";
46 if (!BremsStahlungActivated)
47 outFile +=
"_withoutBremsStahlung";
55 SimparamsFile +=
"__Simparams.root";
60 fRun->SetName(
"TGeant4");
62 fRun->SetOutputFile(outFile);
65 cout << outFile << endl;
66 fRun->SetMaterials(
"media_pnd_hypGe.geo");
72 Cave->SetGeometryFileName(
"pndcave.geo");
73 fRun->AddModule(Cave);
80 HypGe->SetGeometryFileName(
"hypGeGeoCOSY2014setupActives.root");
81 fRun->AddModule(HypGe);
82 cout <<
"active parts loaded" << endl;
87 Target->SetGeometryFileName(
"hypGeGeoCOSY2014setupPassives.root");
88 fRun->AddModule(Target);
92 FairPrimaryGenerator*
primGen =
new FairPrimaryGenerator();
93 fRun->SetGenerator(primGen);
97 boxGen->
SetPRange(ProtonMomentum,ProtonMomentum);
102 boxGen->
SetXYZ(0., 0., -50);
106 primGen->SetBeam(0, 0, 1, 1);
107 primGen->SmearVertexXY(1);
109 primGen->AddGenerator(boxGen);
114 fRun->SetStoreTraj(kTRUE);
121 cout <<
"init now" << endl;
127 FairRuntimeDb *
rtdb=fRun->GetRuntimeDb();
131 FairParRootFileIo*
output=
new FairParRootFileIo(kParameterMerged);
132 output->open(SimparamsFile);
133 rtdb->setOutput(output);
147 printf(
"RealTime=%f seconds, CpuTime=%f seconds\n",rtime,ctime);
148 cout <<
"Data written to file:\t" << outFile.Data() << endl;
printf("RealTime=%f seconds, CpuTime=%f seconds\n", rtime, ctime)
void SetThetaRange(Double32_t thetamin=0, Double32_t thetamax=90)
void SetXYZ(Double32_t x=0, Double32_t y=0, Double32_t z=0)
FairParRootFileIo * output
FairPrimaryGenerator * primGen
FairBoxGenerator * boxGen
void SetPRange(Double32_t pmin=0, Double32_t pmax=10)
void SetPhiRange(Double32_t phimin=0, Double32_t phimax=360)
void SetPathGeo(TString pgeo)