FairRoot/PandaRoot
macro/QA/catracking/sim_complete.C
Go to the documentation of this file.
1 // Macro for running Panda simulation with Geant3 or Geant4 (M. Al-Turany)
2 // This macro is supposed to run the full simulation of the panda detector
3 // to run the macro:
4 // root sim_complete.C or in root session root>.x sim_complete.C
5 // to run with different options:(e.g more events, Geant4, different momentum)
6 // root sim_complete.C"(100, "TGeant4",2)"
7 
8 int sim_complete(Int_t nEvents = 100, TString SimEngine ="TGeant3", Double_t BeamMomentum = 15.)
9 {
10  //-----User Settings:------------------------------------------------------
11  TString parAsciiFile = "all.par";
12  TString inputGenerator = "box_1pi_1GeV_theta10-120";
13  //-------------------------------------------------------------------------
14  // ----- Create the Simulation run manager ------------------------------
16  fRun->SetInput(inputGenerator);
17  fRun->SetName(SimEngine);
18  fRun->SetParamAsciiFile(parAsciiFile);
20  fRun->SetBeamMom(BeamMomentum);
21  // ----- Initialization ------------------------------------------------
22  fRun->Setup();
23  // ----- Geometry -----------------------------------------------------
24  fRun->CreateGeometry();
25  // ----- Event generator ----------------------------------------------
26  FairBoxGenerator* boxGen = new FairBoxGenerator(13, 1); // 13 = muon; 1 = multipl.
27  boxGen->SetPRange(1.,1.); // GeV/c
28  boxGen->SetPhiRange(0., 360.); // Azimuth angle range [degree]
29  boxGen->SetThetaRange(10., 120.); // Polar angle in lab system range [degree]
30  boxGen->SetXYZ(0., 0., 0.); // cm
31  fRun->SetGenerator(boxGen);
32  // ----- Add tasks ----------------------------------------------------
33  fRun->AddSimTasks();
34  // ----- Intialise and run --------------------------------------------
35  fRun->Init();
36  fRun->Run(nEvents);
37  fRun->Finish();
38 
39  return 0;
40 };
41 
void Finish()
Final diagnostics.
Bool_t Setup(TString outprefix="")
Initial setup.
void SetParamAsciiFile(TString par)
Setter of the parameter ascii file.
double BeamMomentum
Definition: sim_ftof_stof.C:17
void SetInput(TString par)
Input of the simulation This string can be: a) the name of the dec file for EvtGen, ending w/ .dec b) "dpm" if you want to use dpm c) "ftf" if you want to use ftf d) "box:[...]" if you want to use box.
FairRunAna * fRun
Definition: hit_dirc.C:58
void AddSimTasks()
Add simulation tasks.
Double_t
Int_t nEvents
Definition: hit_dirc.C:11
void SetNumberOfEvents(Int_t par)
Setter of the number of events.
void CreateGeometry()
It switches between different standard geometry volumes.
Class for the master simulation chain.
FairBoxGenerator * boxGen
Definition: sim_emc_apd.C:85
sim_complete(Int_t nEvents=2, TString SimEngine="TGeant4", Float_t mom=6.231552)
void SetGenerator()
Set the event generator.