| 1 | \chapter{Particles}
|
|---|
| 2 |
|
|---|
| 3 | \section{Design Philosophy}
|
|---|
| 4 | The particles category implements the facilities necessary to describe the
|
|---|
| 5 | physical properties of particles for the simulation of particle-matter
|
|---|
| 6 | interactions. All particles are based on the {\it G4ParticleDefinition} class,
|
|---|
| 7 | which describes basic properties such as mass, charge, etc., and also allows
|
|---|
| 8 | the particle to carry a list of processes to which it is sensitive. A
|
|---|
| 9 | first-level extension of this class defines the interface for particles that
|
|---|
| 10 | carry cuts information, for example range cut versus energy cut equivalence.
|
|---|
| 11 | A set of virtual, intermediate classes for leptons, bosons, mesons, baryons,
|
|---|
| 12 | etc., allows the implementation of concrete particle classes which define the
|
|---|
| 13 | actual particle properties and, in particular, implement the actual range
|
|---|
| 14 | versus energy cuts equivalence. All concrete particle classes are
|
|---|
| 15 | instantiated as singletons to ensure that all physics processes refer to the
|
|---|
| 16 | same particle properties.
|
|---|
| 17 |
|
|---|
| 18 | \section{Class Design}
|
|---|
| 19 |
|
|---|
| 20 | The object-oriented design of the 'particles' related classes
|
|---|
| 21 | is shown in the following class diagrams. The diagrams are
|
|---|
| 22 | described in the Booch notation.
|
|---|
| 23 | Fig. \ref{figure:particles-1} shows a general overview of the particle
|
|---|
| 24 | classes. Fig. \ref{figure:particles-2} shows classes related to the
|
|---|
| 25 | particle table. Fig. \ref{figure:particles-3} shows the classes related
|
|---|
| 26 | to the particle decay table.
|
|---|
| 27 |
|
|---|
| 28 | \begin{figure}[ht]
|
|---|
| 29 | \includegraphics[angle=0,scale=0.55]{OOAnalysisDesign/Particles/classDgmParticlesMain.eps}
|
|---|
| 30 | \vspace{10pt}
|
|---|
| 31 | \caption{Particle classes}
|
|---|
| 32 | \label{figure:particles-1}
|
|---|
| 33 | \end{figure}
|
|---|
| 34 |
|
|---|
| 35 | \begin{figure}[ht]
|
|---|
| 36 | \includegraphics[angle=0,scale=0.6]{OOAnalysisDesign/Particles/classDgmParticleTable.eps}
|
|---|
| 37 | \vspace{10pt}
|
|---|
| 38 | \caption{Particle Table}
|
|---|
| 39 | \label{figure:particles-2}
|
|---|
| 40 | \end{figure}
|
|---|
| 41 |
|
|---|
| 42 | \begin{figure}[ht]
|
|---|
| 43 | \includegraphics[angle=0,scale=0.45]{OOAnalysisDesign/Particles/classDgmParticleDecay.eps}
|
|---|
| 44 | \vspace{10pt}
|
|---|
| 45 | \caption{Particle Decay Table}
|
|---|
| 46 | \label{figure:particles-3}
|
|---|
| 47 | \end{figure}
|
|---|
| 48 |
|
|---|
| 49 | \section{Status of this chapter}
|
|---|
| 50 |
|
|---|
| 51 | 27.06.05 section on design philosophy added (from Geant4 general paper) by
|
|---|
| 52 | D.H. Wright \\
|
|---|
| 53 |
|
|---|
| 54 |
|
|---|
| 55 |
|
|---|
| 56 |
|
|---|