/[PAMELA software]/trieste/pamVMC/run_g4_testTRK.C
ViewVC logotype

Contents of /trieste/pamVMC/run_g4_testTRK.C

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.2 - (show annotations) (download)
Tue Mar 24 14:03:55 2009 UTC (15 years, 11 months ago) by pizzolot
Branch: MAIN
Changes since 1.1: +26 -12 lines
File MIME type: text/plain
setting of random seed; new distribution for primary generation

1
2 // $Id: run_g4.C,v 1.0 2007/06/01
3 //
4 // Macro for running G4PAM_VMC with Geant4.
5 void run_g4_testTRK(const TString& configMacro = "g4Config.C") {
6
7 // Load basic libraries
8 gROOT->LoadMacro("./macro/basiclibs.C");
9 basiclibs();
10
11 // Load PAMELA libs
12 TString PAMLIB=gSystem->Getenv("PAM_LIB");
13 gSystem->Load(PAMLIB+"/libyoda.so");
14 gSystem->Load(PAMLIB+"/libDarthVader.so");
15 gSystem->Load(PAMLIB+"/libPamLevel2.so");
16
17 // Load Geant4 libraries
18
19 gROOT->LoadMacro("./macro/PamG4Libs.C");
20 PamG4Libs();
21
22 // Load this example libraries
23 TString G4WD=gSystem->Getenv("G4WORKDIR");
24 TString PLAT=gSystem->Getenv("PLATFORM");
25 gSystem->Load(G4WD+"/lib/tgt_"+PLAT+"/libPamVMC_fc");
26
27 // MC application
28 PamVMCApplication* appl
29 = new PamVMCApplication("PAMG4_VMC", "PAMELA GEANT4 VMC application");
30
31
32 //appl->GetPrimaryGenerator()->SetNofPrimaries(1);
33 appl->SetVerboseLevel(0);
34
35 // Macro to run with primary = polarized optical photon
36 //gROOT->LoadMacro("optPhoton.C");
37 //optPhoton();
38 appl->SetVerboseLevel(2);
39 // Initialize MC
40 appl->InitMC(configMacro);
41
42 // Cecilia: set seed for random generator
43 TRandom3 *rndgen = new TRandom3(123);
44 ((TGeant4*)gMC)->SetRandom(rndgen);
45
46
47 // Customise Geant4 setting after initialization:
48 // Physics list
49 // gMC->SetCut("CUTGAM", 1.0e-6);
50 // gMC->SetCut("BCUTE", 1.0e-6);
51 // gMC->SetCut("CUTELE", 1.0e-6);
52 // gMC->SetCut("DCUTE", 1.0e-6);
53 // gMC->SetCut("CUTNEU", 1.0e-6);
54 // gMC->SetCut("CUTHAD", 1.0e-6);
55 // gMC->SetCut("CUTMUO", 1.0e-6);
56 // gMC->SetCut("DCUTM", 1.0e-6);
57 // gMC->SetCut("BCUTM", 1.0e-6);
58 // gMC->SetCut("PPCUTM", 1.0e-6);
59 // gMC->SetCut("TOFMAX", 1.0e-3);
60
61 ((TGeant4*)gMC)->ProcessGeantMacro("g4config2.in");
62 // Visualization settings
63 ((TGeant4*)gMC)->ProcessGeantMacro("g4vis.in");
64
65 ((TGeant4*)gMC)->SetMaxNStep(50000);
66 //appl->GetPrimaryGenerator()->SetParticle(1000060120);
67 appl->GetPrimaryGenerator()->SetParticle(kElectron);
68 //appl->GetPrimaryGenerator()->SetDirection(0.,0.);
69 appl->GetPrimaryGenerator()->SetKinEnergy(10.);
70 //appl->GetPrimaryGenerator()->SetRigidity(1.0); //GV
71 //appl->GetPrimaryGenerator()->SetPosition(1.,1.,130.);
72
73 // Run MC
74 for (Int_t i=0; i<2; i++){
75 cout<<"in Loop: Event nr."<<i<<" --<<--<<--<<--<<--<<--<<--"<<endl;
76 // ritabrata 04.03.2009
77 //appl->GetPrimaryGenerator()->SetKinEnergy(0.1);
78 //if (i==0) appl->GetPrimaryGenerator()->SetKinEnergy(0.01);
79 //appl->GetPrimaryGenerator()->GenSphDist(120.);
80 // endritabrata
81
82 // cecilia
83 //appl->GetPrimaryGenerator()->GenPosition(-22.4,22.4, -18.5, 18.5, 110.0,110.0);
84 // appl->GetPrimaryGenerator()->GenPosition(-8.,8., -6., 6., 110.0,110.0);
85 appl->GetPrimaryGenerator()->GenSphPhiThe();
86 //appl->GetPrimaryGenerator()->GenDirection(0.,0.1, 0.,2*TMath::Pi()); // 5 gradi
87 // appl->GetPrimaryGenerator()->GenSpe(7.,20.,-2.75);
88 // appl->GetPrimaryGenerator()->Print();
89 // if (i==9) ((TGeant4*)gMC)->ProcessGeantMacro("g4vis.in");
90 appl->GetPrimaryGenerator()->Print();
91 appl->RunMC(1);
92
93 }
94
95 appl->FinishRun();
96 // ((TGeant4*)gMC)->StartGeantUI();
97 delete appl;
98
99 }

  ViewVC Help
Powered by ViewVC 1.1.23