]>
Commit | Line | Data |
---|---|---|
1fccbbe0 | 1 | // $Id$ |
2 | // | |
3 | // Configuration macro for running aliroot with Geant4. | |
4 | // All AliRoot specifics are defined in g4ConfigCommon.C | |
5 | // | |
6 | // In order to run aliroot with Geant4, you have to Initialize | |
7 | // AliRun with this g4Config.C | |
8 | // | |
9 | // aliroot | |
10 | // root [0] gAlice->Init("g4Config.C"); | |
11 | // root [1] gAlice->Run(); | |
12 | // | |
13 | // You can also start from a mini GUI - g4menu.C. | |
14 | // See description in this macro. | |
15 | ||
16 | ||
17 | void Config() | |
18 | { | |
19 | // ============================= | |
20 | // Geant4 | |
21 | // ============================= | |
22 | ||
23 | // Load Geant4 + Geant4 VMC libraries | |
24 | // | |
25 | if (gClassTable->GetID("TGeant4") == -1) { | |
26 | // Load Geant4 libraries | |
27 | if (!gInterpreter->IsLoaded("$ALICE/geant4_vmc/examples/macro/g4libs.C")) { | |
28 | gROOT->LoadMacro("$ALICE/geant4_vmc/examples/macro/g4libs.C"); | |
29 | gInterpreter->ProcessLine("g4libs()"); | |
30 | } | |
31 | } | |
32 | ||
33 | // Create Geant4 VMC | |
34 | // | |
35 | if (!gMC) { | |
36 | ||
37 | TG4RunConfiguration* runConfiguration | |
38 | = new TG4RunConfiguration(true); | |
39 | ||
40 | TGeant4* geant4 | |
41 | = new TGeant4("TGeant4", "The Geant4 Monte Carlo", runConfiguration); | |
42 | ||
43 | cout << "Geant4 has been created." << endl; | |
44 | } | |
45 | else | |
46 | cout << "Monte Carlo has been already created." << endl; | |
47 | ||
7354fb71 | 48 | // Switch on hadron physics |
49 | geant4->ProcessGeantCommand("/mcPhysics/setHadron true"); | |
50 | ||
1fccbbe0 | 51 | // Switch on special cuts process |
52 | geant4->ProcessGeantCommand("/mcPhysics/setSpecialCuts true"); | |
9cc36300 | 53 | geant4->ProcessGeantCommand("/run/particle/applyCuts"); |
1fccbbe0 | 54 | |
55 | // ============================= | |
56 | // AliRoot setup | |
57 | // ============================= | |
58 | ||
59 | gROOT->LoadMacro("g4ConfigCommon.C"); | |
60 | ConfigCommon(false); | |
61 | } |