27 gSystem->Load(
"libtrackrep");
30 gSystem->Load(
"librazhyp");
31 gSystem->Load(
"libHyp");
33 FairRunSim *
fRun =
new FairRunSim();
39 if(Decfile==
"giBUU+backg")inFile=
"/data/work/kpha4/lorente/sim_panda/carbon2_allParticles_1_32.root";
43 if(Decfile==
"hist"||Decfile==
"param")inFile=
"XiGengiBUUSamp.root";
54 if(Decfile==
"giBUU")inFile=
"../../../../../FairFeb14/pandaroot/macro/hyp/Alicia/carbon_onlyXi_2_5.root";
59 if(Decfile==
"hypbup"){
62 inFile=
"/data/work/kpha4/lorente/sim_panda/hypBupV1T_Decay_gam_"+prefix+
".root";
64 inFile=
"hypBupV1T_Decay_3.root";
75 fRun->SetName(
"TGeant4");
83 if(Decfile==
"giBUU+backg")fRun->SetOutputFile(
"/data/work/kpha4/lorente/sim_panda/Sim_hypFSG41TBg_SebGeo_"+prefix+
".root");
87 if(Decfile==
"box")fRun->SetOutputFile(
"sim_box.root");
88 if(Decfile==
"param")fRun->SetOutputFile(
"/data/work/kpha4/lorente/sim_panda/Sim_hypFSG41TXm_SebGeo_"+prefix+
".root");
89 if(Decfile==
"giBUU") fRun->SetOutputFile(
"sim_gibuu.root");
97 if(Decfile==
"hypbup")fRun->SetOutputFile(
"Bup_hypFSG41TXm.root");
105 fRun->SetMaterials(
"media_pnd.geo");
111 Cave->SetGeometryFileName(
"pndcave.geo");
112 fRun->AddModule(Cave);
141 if(vers==
"standard"){
149 Hyp->SetGeometryFileName(
"HYPST_assexy3C5Lay_mvd.root");
164 Hyp->SetGeometryFileName(
"TargetSystem_Ti_TcT150um_filledCorners_addSens.root");
176 Hyp->
SetTreeFName(
"/data/work/kpha4/lorente/sim_panda/hypBupV1T_Decay_gam_"+prefix+
".root");
181 fRun->AddModule(Hyp);
201 if(Decfile==
"giBUU+backg"){
203 fRun->SetGenerator(primGen);
205 FairPrimaryGenerator* primGen =
new FairPrimaryGenerator();
206 fRun->SetGenerator(primGen);
219 boxGen->
SetXYZ(0., 0., -55.0);
220 primGen->AddGenerator(boxGen);
228 primGen->SetTarget(-55.5,0.);
229 primGen->AddGenerator(GiBGen);
233 if(Decfile==
"param"){
237 primGen->SetTarget(-55.5,0.);
238 primGen->AddGenerator(GiBGen);
242 if(Decfile==
"giBUU"){
246 primGen->SetTarget(-55.5,0.);
247 primGen->AddGenerator(AsciiGen);
250 if(Decfile==
"giBUU+backg"){
254 primGen->SetTarget(-55.5,0.);
255 primGen->AddGenerator(AsciiGen);
256 FairEvtFilterOnCounts* min1Lmd_1aLmd =
new FairEvtFilterOnCounts();
257 min1Lmd_1aLmd->AndMinMaxPdgCodes(1, 9999, 3312);
258 min1Lmd_1aLmd->AndMinMaxPdgCodes(1, 9999, -3312);
259 primGen->AndNotFilter(min1Lmd_1aLmd);
268 if(Decfile==
"hypbup"){
278 primGen->AddGenerator(partGen);
288 fRun->SetField(fMagField);
300 fRun->SetStoreTraj(kTRUE);
310 FairRuntimeDb *
rtdb=fRun->GetRuntimeDb();
319 fieldPar->setInputVersion(fRun->GetRunId(),1);
320 fieldPar->setChanged();
323 FairParRootFileIo*
output=
new FairParRootFileIo(kParameterMerged);
325 if(Decfile==
"param") output->open(
"/data/work/kpha4/lorente/sim_panda/Sim_hypFS1TG4Xm_SebGeo3params_"+prefix+
".root");
326 if(Decfile==
"giBUU") output->open(
"sim_gibuuparams.root");
327 if(Decfile==
"box") output->open(
"sim_boxparams.root");
329 if(Decfile==
"hypbup")output->open(
"Bup_hypFS1TG4Xmparams.root");
331 if(Decfile==
"giBUU+backg")output->open(
"/data/work/kpha4/lorente/sim_panda/Sim_hypFS1TG4Bg_SebGeoparams_"+prefix+
".root");
333 rtdb->setOutput(output);
348 printf(
"RealTime=%f seconds, CpuTime=%f seconds\n",rtime,ctime);
printf("RealTime=%f seconds, CpuTime=%f seconds\n", rtime, ctime)
void SetThetaRange(Double32_t thetamin=0, Double32_t thetamax=90)
void SetListMat(TString mat="carbon")
void SetXYZ(Double32_t x=0, Double32_t y=0, Double32_t z=0)
PndUrqmdSmmGenerator * AsciiGen
void GammaEmissPar(Bool_t On=kFALSE)
PndHypBupGenerator * partGen
void SetPRange(Double32_t pmin=0, Double32_t pmax=10)
FairParRootFileIo * output
void SetFieldRegion(Double_t xMin, Double_t xMax, Double_t yMin, Double_t yMax, Double_t zMin, Double_t zMax)
FairPrimaryGenerator * primGen
void SetSensorVol(TString VolSi)
PndConstField * fMagField
Primary generator with added event filtering capabilities.
void SetHypSDtoFile(bool onf, bool val)
void SetField(Double_t bX, Double_t bY, Double_t bZ)
PndMultiFieldPar * fieldPar
void SetHypGamFEm(bool gam)
void SetAbsorberVol(TString VolAb)
void SetParameters(FairField *field)
void SetTreeFName(const Char_t *Name)
void SetThetaRange(Double_t thetLow=0., Double_t thetHigh=0.)
void SetPhiRange(Double32_t phimin=0, Double32_t phimax=360)
FairBoxGenerator * boxGen
void SetGeoVersion(TString vers="standard")
void SetThetaRange(Double32_t thetamin=0, Double32_t thetamax=90)
void SetPRange(Double32_t pmin=0, Double32_t pmax=10)
void SetPhiRange(Double32_t phimin=0, Double32_t phimax=360)