1 | \section{Introduction} \label{em_disc} |
---|
2 | |
---|
3 | All processes of gamma interaction with media in Geant4 are happen at the |
---|
4 | end of the step, so are following $G4VDiscreteProcess$ interface. There are |
---|
5 | a number of similar functions for discrete electromagnetic processes and in the Standard |
---|
6 | electromagnetic (EM) package an additional base classes are designed to provide |
---|
7 | common computations \cite{discrete.em}. |
---|
8 | |
---|
9 | \subsection{General Interfaces} |
---|
10 | |
---|
11 | Common calculations are performed in the class $G4VEmProcess$ in which |
---|
12 | the following public methods are implemented: |
---|
13 | \begin{itemize} |
---|
14 | \item |
---|
15 | PrintInfoDefinition; |
---|
16 | \item |
---|
17 | PreparePhysicsTable; |
---|
18 | \item |
---|
19 | BuildPhysicsTable; |
---|
20 | \item |
---|
21 | PostStepDoIt; |
---|
22 | \item |
---|
23 | StorePhysicsTable; |
---|
24 | \item |
---|
25 | RetrievePhysicsTable; |
---|
26 | \item |
---|
27 | MeanFreePath; |
---|
28 | \item |
---|
29 | PostStepGetPhysicalInteractionLength; |
---|
30 | \item |
---|
31 | MicroscopicCrossSection; |
---|
32 | \item |
---|
33 | AddEmModel; |
---|
34 | \item |
---|
35 | SetEmModel; |
---|
36 | \item |
---|
37 | UpdateEmModel; |
---|
38 | \item |
---|
39 | SelectModelForMaterial; |
---|
40 | \item |
---|
41 | LambdaTable; |
---|
42 | \end{itemize} |
---|
43 | There are many Get/Set and other accessors methods implemented for this base class. |
---|
44 | Any derive class need to have an implementation of pure virtual methods: |
---|
45 | \begin{itemize} |
---|
46 | \item |
---|
47 | IsApplicable; |
---|
48 | \item |
---|
49 | PrintInfo; |
---|
50 | \item |
---|
51 | InitialiseProcess; |
---|
52 | \end{itemize} |
---|
53 | This interface is used by the following processes: |
---|
54 | \begin{itemize} |
---|
55 | \item |
---|
56 | G4ComptonScattering; |
---|
57 | \item |
---|
58 | G4CoulombScattering; |
---|
59 | \item |
---|
60 | G4GammaConversion; |
---|
61 | \item |
---|
62 | G4eplusAnnihilation (additionally AtRest methods are provided); |
---|
63 | \item |
---|
64 | G4eeToHadrons; |
---|
65 | \item |
---|
66 | G4PolarizedCompton; |
---|
67 | \item |
---|
68 | G4PolarizedGammaConversion; |
---|
69 | \item |
---|
70 | G4PolarizedPhotoElectricEffect; |
---|
71 | \item |
---|
72 | G4eplusPolarizedAnnihilation (additionally AtRest methods are provided); |
---|
73 | \end{itemize} |
---|
74 | These processes mainly provide initialization and also some generic functions |
---|
75 | like $PostStepDoIt$. The physics models are |
---|
76 | implemented using the $G4VEmModel$ interface. Because a model is defined to |
---|
77 | be active over a given energy range and for a defined set of $G4Region$s, |
---|
78 | an energy loss process can have one or several models defined for a particle |
---|
79 | and $G4Region$. The following models from {\it standard, lowenergy, and polarisation} |
---|
80 | libraries are available for above list of processes: |
---|
81 | \begin{itemize} |
---|
82 | \item |
---|
83 | G4BetheHeitlerModel; |
---|
84 | \item |
---|
85 | G4CoulombScatteringModel; |
---|
86 | \item |
---|
87 | G4eCoulombScatteringModel; |
---|
88 | \item |
---|
89 | G4eeToHadronsModel; |
---|
90 | \item |
---|
91 | G4DummyModel (zero cross section, no secondaries); |
---|
92 | \item |
---|
93 | G4KleinNishinaCompton; |
---|
94 | \item |
---|
95 | G4LivermoreComptonModel; |
---|
96 | \item |
---|
97 | G4LivermoreGammaConversionModel; |
---|
98 | \item |
---|
99 | G4LivermorePhotoElectricModel; |
---|
100 | \item |
---|
101 | G4LivermorePolarizedComptonModel; |
---|
102 | \item |
---|
103 | G4LivermorePolarizedRayleighModel; |
---|
104 | \item |
---|
105 | G4LivermoreRayleighModel; |
---|
106 | \item |
---|
107 | G4PenelopePhotoElectricModel; |
---|
108 | \item |
---|
109 | G4PenelopeRayleighModel; |
---|
110 | \item |
---|
111 | G4PEEffectModel; |
---|
112 | \item |
---|
113 | G4PenelopeAnnihilationModel; |
---|
114 | \item |
---|
115 | G4PenelopeComptonModel; |
---|
116 | \item |
---|
117 | G4PenelopeGammaConversionModel; |
---|
118 | \item |
---|
119 | G4PolarizedAnnihilationModel; |
---|
120 | \item |
---|
121 | G4PolarizedComptonModel; |
---|
122 | \item |
---|
123 | G4PolarizedGammaConversionModel; |
---|
124 | \item |
---|
125 | G4PolarizedPEEffectModel; |
---|
126 | \item |
---|
127 | G4WentzelVIModel; |
---|
128 | \end{itemize} |
---|
129 | Some processes from {\it standard} library do not follow |
---|
130 | described interfaces but provide direct implementations |
---|
131 | of the basic $G4VDiscreteProcess$ process: |
---|
132 | \begin{itemize} |
---|
133 | \item |
---|
134 | G4GammaConversionToMuons; |
---|
135 | \item |
---|
136 | G4AnnihiToMuPair; |
---|
137 | \item |
---|
138 | G4ScreenedNuclearRecoil; |
---|
139 | \item |
---|
140 | G4Cerenkov; |
---|
141 | \item |
---|
142 | G4Scintillation; |
---|
143 | \item |
---|
144 | G4SynchrotronRadiation; |
---|
145 | \end{itemize} |
---|
146 | |
---|
147 | |
---|
148 | \subsection{Status of this document} |
---|
149 | 06.12.07 created by V.Ivanchenko \\ |
---|
150 | 11.12.08 extended list of models by V.Ivanchenko \\ |
---|
151 | |
---|
152 | \begin{latexonly} |
---|
153 | |
---|
154 | \begin{thebibliography}{99} |
---|
155 | \bibitem{discrete.em} H.~Burkhardt et al., |
---|
156 | Geant4 standard electromagnetic package for HEP applications. |
---|
157 | {\em Nuclear Science Symposium Conference Record 2004, IEEE, Volume 3, |
---|
158 | Oct 2004. pp. 1907-1910.} |
---|
159 | \end{thebibliography} |
---|
160 | |
---|
161 | \end{latexonly} |
---|
162 | |
---|
163 | \begin{htmlonly} |
---|
164 | |
---|
165 | \subsection{Bibliography} |
---|
166 | |
---|
167 | \begin{enumerate} |
---|
168 | \item H.~Burkhardt et al., |
---|
169 | Geant4 standard electromagnetic package for HEP applications. |
---|
170 | {\em Nuclear Science Symposium Conference Record 2004, IEEE, Volume 3, |
---|
171 | Oct 2004. pp. 1907-1910.} |
---|
172 | \end{enumerate} |
---|
173 | |
---|
174 | \end{htmlonly} |
---|