FairRoot/PandaRoot
runLumi0DPMbkgSte.C
Go to the documentation of this file.
1 // Macro created 20/09/2006 by S.Spataro
2 // It creates a geant simulation file for emc
3 int runLumi0DPMbkgSte(Int_t nEvents=10, Float_t mom = 5., Int_t mode =1, const int verboseLevel=0, UInt_t seed=0){
4  gRandom->SetSeed(seed);
5  TStopwatch timer;
6  timer.Start();
7  gDebug=0;
8  // Load basic libraries
9  // If it does not work, please check the path of the libs and put it by hands
10  gROOT->LoadMacro("$VMCWORKDIR/gconfig/rootlogon.C");
11  rootlogon();
12 
13  TString parFile = "params_sttcombi.root";
14 
15  FairRunSim *fRun = new FairRunSim();
16 
17  // set the MC version used
18  // ------------------------
19 
20  fRun->SetName("TGeant3");
21  //fRun->SetName("TGeant4");
22 
23  fRun->SetOutputFile("points_sttcombi.root");
24 
25  // Set the parameters
26  //-------------------------------
27 
28 
29  FairRuntimeDb* rtdb = fRun->GetRuntimeDb();
31  FairParRootFileIo* output=new FairParRootFileIo(kParameterMerged);
32  output->open(parFile);
33  rtdb->setOutput(output);
34 
35  // Set Material file Name
36  //-----------------------
37  fRun->SetMaterials("media_pnd.geo");
38 
39  // Create and add detectors
40  //-------------------------
41  FairModule *Cave= new PndCave("CAVE");
42  Cave->SetGeometryFileName("pndcaveVAC.geo");
43  fRun->AddModule(Cave);
44 
45  FairModule *Magnet= new PndMagnet("MAGNET");
46  //Magnet->SetGeometryFileName("FullSolenoid_V842.root");
47  Magnet->SetGeometryFileName("FullSuperconductingSolenoid_v831.root");
48  fRun->AddModule(Magnet);
49 
50  FairModule *Dipole= new PndMagnet("MAGNET");
51  Dipole->SetGeometryFileName("dipole.geo");
52  fRun->AddModule(Dipole);
53 
54  FairModule *Pipe= new PndPipe("PIPE");
55  Pipe->SetGeometryFileName("beampipe_201112.root");
56  fRun->AddModule(Pipe);
57 
58  // FairDetector *Stt= new PndStt("STT", kTRUE);
59  // Stt->SetGeometryFileName("straws_skewed_blocks_35cm_pipe.geo");
60  // fRun->AddModule(Stt);
61 
62  FairDetector *Mvd = new PndMvdDetector("MVD", kTRUE);
63  Mvd->SetGeometryFileName("Mvd-2.1_FullVersion.root");
64  fRun->AddModule(Mvd);
65 
66  // FairDetector *Fts= new PndFts("FTS", kTRUE);
67  // Fts->SetGeometryFileName("fts.geo");
68  // fRun->AddModule(Fts);
69 
70  // FairDetector *FTof = new PndFtof("FTOF",kTRUE);
71  // FTof->SetGeometryFileName("ftofwall.root");
72  // fRun->AddModule(FTof);
73 
74  PndLmdDetector *Lum = new PndLmdDetector("LUM", kTRUE);
75  Lum->SetExclusiveSensorType("LumActive"); //ignore MVD
76  Lum->SetGeometryFileName("../macro/lmd/geo/Test-Dipol-Design.root");
78  fRun->AddModule(Lum);
79 
80  // Create and Set Event Generator
81  //-------------------------------
82 
83  FairPrimaryGenerator* primGen = new FairPrimaryGenerator();
84  fRun->SetGenerator(primGen);
85 
86  PndDpmDirect *dpmGen = new PndDpmDirect(mom, mode, gRandom->GetSeed(), .2);
87  primGen->AddGenerator(dpmGen);
88 
89  // Create and Set Magnetic Field
90  //-------------------------------
91  fRun->SetBeamMom(mom);
92  PndMultiField *fField= new PndMultiField("FULL");
93  fRun->SetField(fField);
94 
95 
97  fRun->Init();
98 
99  rtdb->setOutput(output);
100  rtdb->saveOutput();
101  rtdb->print();
102 
103  // Transport nEvents
104  // -----------------
105  fRun->Run(nEvents);
106 
107  timer.Stop();
108 
109  Double_t rtime = timer.RealTime();
110  Double_t ctime = timer.CpuTime();
111  printf("RealTime=%f seconds, CpuTime=%f seconds\n",rtime,ctime);
112 
113  return 0;
114 }
PndMultiField * fField
Definition: sim_emc_apd.C:97
printf("RealTime=%f seconds, CpuTime=%f seconds\n", rtime, ctime)
int verboseLevel
Definition: Lars/runMvdSim.C:7
Bool_t kParameterMerged
Definition: sim_emc_apd.C:113
void SetExclusiveSensorType(const TString sens)
PndDpmGenerator * dpmGen
FairDetector * Mvd
Definition: sim_emc_apd.C:51
Double_t mom
Definition: plot_dirc.C:14
FairParRootFileIo * output
Definition: sim_emc_apd.C:120
FairPrimaryGenerator * primGen
Definition: sim_emc_apd.C:81
FairRunAna * fRun
Definition: hit_dirc.C:58
Int_t mode
Definition: autocutx.C:47
Double_t
FairModule * Dipole
Definition: sim_emc_apd.C:40
TString parFile
Definition: hit_dirc.C:14
FairModule * Cave
Definition: sim_emc_apd.C:32
Int_t nEvents
Definition: hit_dirc.C:11
unsigned int seed
TStopwatch timer
Definition: hit_dirc.C:51
FairRuntimeDb * rtdb
Definition: hit_dirc.C:66
gDebug
Definition: sim_emc_apd.C:6
Double_t ctime
Definition: hit_dirc.C:114
int runLumi0DPMbkgSte(Int_t nEvents=10, Float_t mom=5., Int_t mode=1, const int verboseLevel=0, UInt_t seed=0)
void SetVerboseLevel(Int_t level)
FairModule * Pipe
Definition: sim_emc_apd.C:44
Double_t rtime
Definition: hit_dirc.C:113
FairModule * Magnet
Definition: sim_emc_apd.C:36
Definition: PndCave.h:8