Geant4 11.1.1
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4DNAPTBIonisationStructure Class Reference

#include <G4DNAPTBIonisationStructure.hh>

Public Member Functions

 G4DNAPTBIonisationStructure ()
 
virtual ~G4DNAPTBIonisationStructure ()
 
G4double IonisationEnergy (G4int level, const G4String &materialName)
 
G4int NumberOfLevels (const G4String &materialName)
 

Detailed Description

Definition at line 38 of file G4DNAPTBIonisationStructure.hh.

Constructor & Destructor Documentation

◆ G4DNAPTBIonisationStructure()

G4DNAPTBIonisationStructure::G4DNAPTBIonisationStructure ( )

Definition at line 32 of file G4DNAPTBIonisationStructure.cc.

33{
34 // MPietrzak
35 energyConstant["N2"].push_back(15.58*eV);
36 energyConstant["N2"].push_back(17.07*eV);
37 energyConstant["N2"].push_back(21.00*eV);
38 energyConstant["N2"].push_back(41.72*eV);
39 // MPietrzak
40
41 energyConstant["G4_WATER"].push_back(10.79*eV);
42 energyConstant["G4_WATER"].push_back(13.39*eV);
43 energyConstant["G4_WATER"].push_back(16.05*eV);
44 energyConstant["G4_WATER"].push_back(32.30*eV);
45 energyConstant["G4_WATER"].push_back(539.0*eV);
46
47 energyConstant["THF"].push_back(9.74*eV);
48 energyConstant["THF"].push_back(12.31*eV);
49 energyConstant["THF"].push_back(12.99*eV);
50 energyConstant["THF"].push_back(13.57*eV);
51 energyConstant["THF"].push_back(13.60*eV);
52 energyConstant["THF"].push_back(15.11*eV);
53 energyConstant["THF"].push_back(15.97*eV);
54 energyConstant["THF"].push_back(16.28*eV);
55 energyConstant["THF"].push_back(18.19*eV);
56 energyConstant["THF"].push_back(18.69*eV);
57 energyConstant["THF"].push_back(22.14*eV);
58 energyConstant["THF"].push_back(22.25*eV);
59 energyConstant["THF"].push_back(27.21*eV);
60 energyConstant["THF"].push_back(28.97*eV);
61 energyConstant["THF"].push_back(36.97*eV);
62 energyConstant["THF"].push_back(305.07*eV);
63 energyConstant["THF"].push_back(305.08*eV);
64 energyConstant["THF"].push_back(306.17*eV);
65 energyConstant["THF"].push_back(306.17*eV);
66 energyConstant["THF"].push_back(557.94*eV);
67
68 energyConstant["PY"].push_back(9.73*eV);
69 energyConstant["PY"].push_back(10.96*eV);
70 energyConstant["PY"].push_back(11.54*eV);
71 energyConstant["PY"].push_back(12.58*eV);
72 energyConstant["PY"].push_back(15.96*eV);
73 energyConstant["PY"].push_back(16.27*eV);
74 energyConstant["PY"].push_back(16.53*eV);
75 energyConstant["PY"].push_back(17.98*eV);
76 energyConstant["PY"].push_back(19.37*eV);
77 energyConstant["PY"].push_back(20.52*eV);
78 energyConstant["PY"].push_back(24.55*eV);
79 energyConstant["PY"].push_back(24.64*eV);
80 energyConstant["PY"].push_back(29.75*eV);
81 energyConstant["PY"].push_back(33.02*eV);
82 energyConstant["PY"].push_back(36.57*eV);
83 energyConstant["PY"].push_back(305.92*eV);
84 energyConstant["PY"].push_back(307.09*eV);
85 energyConstant["PY"].push_back(307.09*eV);
86 energyConstant["PY"].push_back(307.52*eV);
87 energyConstant["PY"].push_back(423.44*eV);
88 energyConstant["PY"].push_back(423.44*eV);
89
90 energyConstant["PU"].push_back(9.58*eV);
91 energyConstant["PU"].push_back(10.57*eV);
92 energyConstant["PU"].push_back(10.97*eV);
93 energyConstant["PU"].push_back(12.22*eV);
94 energyConstant["PU"].push_back(12.92*eV);
95 energyConstant["PU"].push_back(13.44*eV);
96 energyConstant["PU"].push_back(15.05*eV);
97 energyConstant["PU"].push_back(16.56*eV);
98 energyConstant["PU"].push_back(17.18*eV);
99 energyConstant["PU"].push_back(17.88*eV);
100 energyConstant["PU"].push_back(17.90*eV);
101 energyConstant["PU"].push_back(19.11*eV);
102 energyConstant["PU"].push_back(20.09*eV);
103 energyConstant["PU"].push_back(21.70*eV);
104 energyConstant["PU"].push_back(23.52*eV);
105 energyConstant["PU"].push_back(24.35*eV);
106 energyConstant["PU"].push_back(25.41*eV);
107 energyConstant["PU"].push_back(29.34*eV);
108 energyConstant["PU"].push_back(32.44*eV);
109 energyConstant["PU"].push_back(33.67*eV);
110 energyConstant["PU"].push_back(36.26*eV);
111 energyConstant["PU"].push_back(38.22*eV);
112 energyConstant["PU"].push_back(306.53*eV);
113 energyConstant["PU"].push_back(307.19*eV);
114 energyConstant["PU"].push_back(307.64*eV);
115 energyConstant["PU"].push_back(308.14*eV);
116 energyConstant["PU"].push_back(308.17*eV);
117 energyConstant["PU"].push_back(423.31*eV);
118 energyConstant["PU"].push_back(423.43*eV);
119 energyConstant["PU"].push_back(423.64*eV);
120 energyConstant["PU"].push_back(423.98*eV);
121
122 energyConstant["TMP"].push_back(10.81*eV);
123 energyConstant["TMP"].push_back(10.81*eV);
124 energyConstant["TMP"].push_back(12.90*eV);
125 energyConstant["TMP"].push_back(13.32*eV);
126 energyConstant["TMP"].push_back(13.32*eV);
127 energyConstant["TMP"].push_back(13.59*eV);
128 energyConstant["TMP"].push_back(14.33*eV);
129 energyConstant["TMP"].push_back(14.33*eV);
130 energyConstant["TMP"].push_back(15.90*eV);
131 energyConstant["TMP"].push_back(17.09*eV);
132 energyConstant["TMP"].push_back(17.09*eV);
133 energyConstant["TMP"].push_back(17.13*eV);
134 energyConstant["TMP"].push_back(17.85*eV);
135 energyConstant["TMP"].push_back(17.85*eV);
136 energyConstant["TMP"].push_back(18.44*eV);
137 energyConstant["TMP"].push_back(19.37*eV);
138 energyConstant["TMP"].push_back(19.37*eV);
139 energyConstant["TMP"].push_back(21.40*eV);
140 energyConstant["TMP"].push_back(26.20*eV);
141 energyConstant["TMP"].push_back(26.20*eV);
142 energyConstant["TMP"].push_back(27.43*eV);
143 energyConstant["TMP"].push_back(35.23*eV);
144 energyConstant["TMP"].push_back(37.67*eV);
145 energyConstant["TMP"].push_back(37.67*eV);
146 energyConstant["TMP"].push_back(39.64*eV);
147 energyConstant["TMP"].push_back(152.42*eV);
148 energyConstant["TMP"].push_back(152.42*eV);
149 energyConstant["TMP"].push_back(152.44*eV);
150 energyConstant["TMP"].push_back(209.59*eV);
151 energyConstant["TMP"].push_back(306.92*eV);
152 energyConstant["TMP"].push_back(306.92*eV);
153 energyConstant["TMP"].push_back(306.92*eV);
154 energyConstant["TMP"].push_back(557.34*eV);
155 energyConstant["TMP"].push_back(559.40*eV);
156 energyConstant["TMP"].push_back(559.40*eV);
157 energyConstant["TMP"].push_back(559.41*eV);
158 energyConstant["TMP"].push_back(2178.05*eV);
159
160 for(auto it=energyConstant.cbegin();it!=energyConstant.cend();++it)
161 {
162 nLevels[it->first] = (G4int)(it->second).size();
163 }
164}
int G4int
Definition: G4Types.hh:85

◆ ~G4DNAPTBIonisationStructure()

G4DNAPTBIonisationStructure::~G4DNAPTBIonisationStructure ( )
virtual

Definition at line 167 of file G4DNAPTBIonisationStructure.cc.

168{ }

Member Function Documentation

◆ IonisationEnergy()

G4double G4DNAPTBIonisationStructure::IonisationEnergy ( G4int  level,
const G4String materialName 
)

Definition at line 171 of file G4DNAPTBIonisationStructure.cc.

172{
173 G4String matNameModif = ReplaceMaterial(materialName);
174
175 // check if the material exist in the map
176 if(energyConstant.find(matNameModif)==energyConstant.end())
177 {
178 std::ostringstream oss;
179 oss << "Material name was not found in energyConstantMap. Problematic material is: "<<matNameModif;
180 G4Exception("G4DNAPTBIonisationStructure::IonisationEnergy","em0002",
181 FatalException, oss.str().c_str());
182 }
183
184 G4double ionisation = 0.;
185
186 if (level >=0 && level < nLevels[matNameModif]) ionisation = energyConstant[matNameModif][level];
187
188 return ionisation;
189}
@ FatalException
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
Definition: G4Exception.cc:59
double G4double
Definition: G4Types.hh:83

Referenced by G4DNAPTBExcitationModel::SampleSecondaries(), and G4DNAPTBIonisationModel::SampleSecondaries().

◆ NumberOfLevels()

G4int G4DNAPTBIonisationStructure::NumberOfLevels ( const G4String materialName)

Definition at line 191 of file G4DNAPTBIonisationStructure.cc.

192{
193 G4String matNameModif = ReplaceMaterial(materialName);
194
195 // check if the material exist in the map
196 if(nLevels.find(matNameModif)==nLevels.end())
197 {
198 std::ostringstream oss;
199 oss << "Material name was not found in energyConstantMap. Problematic material is: "<<matNameModif;
200 G4Exception("G4DNAPTBIonisationStructure::NumberOfLevels","em0002",
201 FatalException, oss.str().c_str());
202 }
203
204 return nLevels[matNameModif];
205}

The documentation for this class was generated from the following files: