ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
G4EvaporationGEMFactory.cc
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file G4EvaporationGEMFactory.cc
1 //
2 // ********************************************************************
3 // * License and Disclaimer *
4 // * *
5 // * The Geant4 software is copyright of the Copyright Holders of *
6 // * the Geant4 Collaboration. It is provided under the terms and *
7 // * conditions of the Geant4 Software License, included in the file *
8 // * LICENSE and available at http://cern.ch/geant4/license . These *
9 // * include a list of copyright holders. *
10 // * *
11 // * Neither the authors of this software system, nor their employing *
12 // * institutes,nor the agencies providing financial support for this *
13 // * work make any representation or warranty, express or implied, *
14 // * regarding this software system or assume any liability for its *
15 // * use. Please see the license in the file LICENSE and URL above *
16 // * for the full disclaimer and the limitation of liability. *
17 // * *
18 // * This code implementation is the result of the scientific and *
19 // * technical work of the GEANT4 collaboration. *
20 // * By using, copying, modifying or distributing the software (or *
21 // * any work based on the software) you agree to acknowledge its *
22 // * use in resulting scientific publications, and indicate your *
23 // * acceptance of all terms of the Geant4 Software license. *
24 // ********************************************************************
25 //
26 //
27 // Hadronic Process: Nuclear De-excitations
28 // by V. Lara
29 //
30 // Modifications:
31 //
32 // 23 January 2012 V.Ivanchenko added pointer of G4VPhotonEvaporation
33 
35 
36 #include "G4NeutronGEMChannel.hh"
37 #include "G4ProtonGEMChannel.hh"
38 #include "G4DeuteronGEMChannel.hh"
39 #include "G4TritonGEMChannel.hh"
40 #include "G4He3GEMChannel.hh"
41 #include "G4AlphaGEMChannel.hh"
42 #include "G4He6GEMChannel.hh"
43 #include "G4He8GEMChannel.hh"
44 #include "G4Li6GEMChannel.hh"
45 #include "G4Li7GEMChannel.hh"
46 #include "G4Li8GEMChannel.hh"
47 #include "G4Li9GEMChannel.hh"
48 #include "G4Be7GEMChannel.hh"
49 #include "G4Be9GEMChannel.hh"
50 #include "G4Be10GEMChannel.hh"
51 #include "G4Be11GEMChannel.hh"
52 #include "G4Be12GEMChannel.hh"
53 #include "G4B8GEMChannel.hh"
54 #include "G4B10GEMChannel.hh"
55 #include "G4B11GEMChannel.hh"
56 #include "G4B12GEMChannel.hh"
57 #include "G4B13GEMChannel.hh"
58 #include "G4C10GEMChannel.hh"
59 #include "G4C11GEMChannel.hh"
60 #include "G4C12GEMChannel.hh"
61 #include "G4C13GEMChannel.hh"
62 #include "G4C14GEMChannel.hh"
63 #include "G4C15GEMChannel.hh"
64 #include "G4C16GEMChannel.hh"
65 #include "G4N12GEMChannel.hh"
66 #include "G4N13GEMChannel.hh"
67 #include "G4N14GEMChannel.hh"
68 #include "G4N15GEMChannel.hh"
69 #include "G4N16GEMChannel.hh"
70 #include "G4N17GEMChannel.hh"
71 #include "G4O14GEMChannel.hh"
72 #include "G4O15GEMChannel.hh"
73 #include "G4O16GEMChannel.hh"
74 #include "G4O17GEMChannel.hh"
75 #include "G4O18GEMChannel.hh"
76 #include "G4O19GEMChannel.hh"
77 #include "G4O20GEMChannel.hh"
78 #include "G4F17GEMChannel.hh"
79 #include "G4F18GEMChannel.hh"
80 #include "G4F19GEMChannel.hh"
81 #include "G4F20GEMChannel.hh"
82 #include "G4F21GEMChannel.hh"
83 #include "G4Ne18GEMChannel.hh"
84 #include "G4Ne19GEMChannel.hh"
85 #include "G4Ne20GEMChannel.hh"
86 #include "G4Ne21GEMChannel.hh"
87 #include "G4Ne22GEMChannel.hh"
88 #include "G4Ne23GEMChannel.hh"
89 #include "G4Ne24GEMChannel.hh"
90 #include "G4Na21GEMChannel.hh"
91 #include "G4Na22GEMChannel.hh"
92 #include "G4Na23GEMChannel.hh"
93 #include "G4Na24GEMChannel.hh"
94 #include "G4Na25GEMChannel.hh"
95 #include "G4Mg22GEMChannel.hh"
96 #include "G4Mg23GEMChannel.hh"
97 #include "G4Mg24GEMChannel.hh"
98 #include "G4Mg25GEMChannel.hh"
99 #include "G4Mg26GEMChannel.hh"
100 #include "G4Mg27GEMChannel.hh"
101 #include "G4Mg28GEMChannel.hh"
102 
103 #include "G4CompetitiveFission.hh"
104 
106  : G4VEvaporationFactory(ptr)
107 {}
108 
110 {}
111 
112 std::vector<G4VEvaporationChannel*> * G4EvaporationGEMFactory::GetChannel()
113 {
114  std::vector<G4VEvaporationChannel*> * theChannel =
115  new std::vector<G4VEvaporationChannel*>;
116  theChannel->reserve(68);
117 
118  theChannel->push_back( thePhotonEvaporation ); // Photon Channel
119  theChannel->push_back( new G4CompetitiveFission() ); // Fission Channel
120 
121  theChannel->push_back( new G4NeutronGEMChannel() ); // n
122  theChannel->push_back( new G4ProtonGEMChannel() ); // p
123  theChannel->push_back( new G4DeuteronGEMChannel() ); // Deuteron
124  theChannel->push_back( new G4TritonGEMChannel() ); // Triton
125  theChannel->push_back( new G4He3GEMChannel() ); // He3
126  theChannel->push_back( new G4AlphaGEMChannel() ); // Alpha
127  theChannel->push_back( new G4He6GEMChannel() ); // He6
128  theChannel->push_back( new G4He8GEMChannel() ); // He8
129  theChannel->push_back( new G4Li6GEMChannel() ); // Li6
130  theChannel->push_back( new G4Li7GEMChannel() ); // Li7
131  theChannel->push_back( new G4Li8GEMChannel() ); // Li8
132  theChannel->push_back( new G4Li9GEMChannel() ); // Li9
133  theChannel->push_back( new G4Be7GEMChannel() ); // Be7
134  theChannel->push_back( new G4Be9GEMChannel() ); // Be9
135  theChannel->push_back( new G4Be10GEMChannel() ); // Be10
136  theChannel->push_back( new G4Be11GEMChannel() ); // Be11
137  theChannel->push_back( new G4Be12GEMChannel() ); // Be12
138  theChannel->push_back( new G4B8GEMChannel() ); // B8
139  theChannel->push_back( new G4B10GEMChannel() ); // B10
140  theChannel->push_back( new G4B11GEMChannel() ); // B11
141  theChannel->push_back( new G4B12GEMChannel() ); // B12
142  theChannel->push_back( new G4B13GEMChannel() ); // B13
143  theChannel->push_back( new G4C10GEMChannel() ); // C10
144  theChannel->push_back( new G4C11GEMChannel() ); // C11
145  theChannel->push_back( new G4C12GEMChannel() ); // C12
146  theChannel->push_back( new G4C13GEMChannel() ); // C13
147  theChannel->push_back( new G4C14GEMChannel() ); // C14
148  theChannel->push_back( new G4C15GEMChannel() ); // C15
149  theChannel->push_back( new G4C16GEMChannel() ); // C16
150  theChannel->push_back( new G4N12GEMChannel() ); // N12
151  theChannel->push_back( new G4N13GEMChannel() ); // N13
152  theChannel->push_back( new G4N14GEMChannel() ); // N14
153  theChannel->push_back( new G4N15GEMChannel() ); // N15
154  theChannel->push_back( new G4N16GEMChannel() ); // N16
155  theChannel->push_back( new G4N17GEMChannel() ); // N17
156  theChannel->push_back( new G4O14GEMChannel() ); // O14
157  theChannel->push_back( new G4O15GEMChannel() ); // O15
158  theChannel->push_back( new G4O16GEMChannel() ); // O16
159  theChannel->push_back( new G4O17GEMChannel() ); // O17
160  theChannel->push_back( new G4O18GEMChannel() ); // O18
161  theChannel->push_back( new G4O19GEMChannel() ); // O19
162  theChannel->push_back( new G4O20GEMChannel() ); // O20
163  theChannel->push_back( new G4F17GEMChannel() ); // F17
164  theChannel->push_back( new G4F18GEMChannel() ); // F18
165  theChannel->push_back( new G4F19GEMChannel() ); // F19
166  theChannel->push_back( new G4F20GEMChannel() ); // F20
167  theChannel->push_back( new G4F21GEMChannel() ); // F21
168  theChannel->push_back( new G4Ne18GEMChannel() ); // Ne18
169  theChannel->push_back( new G4Ne19GEMChannel() ); // Ne19
170  theChannel->push_back( new G4Ne20GEMChannel() ); // Ne20
171  theChannel->push_back( new G4Ne21GEMChannel() ); // Ne21
172  theChannel->push_back( new G4Ne22GEMChannel() ); // Ne22
173  theChannel->push_back( new G4Ne23GEMChannel() ); // Ne23
174  theChannel->push_back( new G4Ne24GEMChannel() ); // Ne24
175  theChannel->push_back( new G4Na21GEMChannel() ); // Na21
176  theChannel->push_back( new G4Na22GEMChannel() ); // Na22
177  theChannel->push_back( new G4Na23GEMChannel() ); // Na23
178  theChannel->push_back( new G4Na24GEMChannel() ); // Na24
179  theChannel->push_back( new G4Na25GEMChannel() ); // Na25
180  theChannel->push_back( new G4Mg22GEMChannel() ); // Mg22
181  theChannel->push_back( new G4Mg23GEMChannel() ); // Mg23
182  theChannel->push_back( new G4Mg24GEMChannel() ); // Mg24
183  theChannel->push_back( new G4Mg25GEMChannel() ); // Mg25
184  theChannel->push_back( new G4Mg26GEMChannel() ); // Mg26
185  theChannel->push_back( new G4Mg27GEMChannel() ); // Mg27
186  theChannel->push_back( new G4Mg28GEMChannel() ); // Mg28
187 
188  return theChannel;
189 }