Particles

Design Philosophy

The particles category implements the facilities necessary to describe the physical properties of particles for the simulation of particle-matter interactions. All particles are based on the G4ParticleDefinition class, which describes basic properties such as mass, charge, etc., and also allows the particle to carry a list of processes to which it is sensitive. A first-level extension of this class defines the interface for particles that carry cuts information, for example range cut versus energy cut equivalence. A set of virtual, intermediate classes for leptons, bosons, mesons, baryons, etc., allows the implementation of concrete particle classes which define the actual particle properties and, in particular, implement the actual range versus energy cuts equivalence. All concrete particle classes are instantiated as singletons to ensure that all physics processes refer to the same particle properties.

Class Design

The object-oriented design of the ‘particles’ related classes is shown in the following class diagrams. The diagrams are described in the Booch notation. The Fig. 175 shows a general overview of the particle classes. Fig. 177 shows classes related to the particle table and Fig. 176 shows the classes related to the ion table in the particle table. Fig. 178 shows the classes related to the particle decay table in the G4ParticleDefinition. This decay table is used by decay process and Fig. 179 shows the classes related to the decay process and decay channels

../../../_images/classDgmParticlesMain.jpg

Fig. 175 Particle classes

../../../_images/classDgmIonTable.jpg

Fig. 176 Particle Table

../../../_images/classDgmParticleTable.jpg

Fig. 177 Particle Table

../../../_images/classDgmParticleDecay.jpg

Fig. 178 Decay Table

../../../_images/classDgmDecay.jpg

Fig. 179 Particle Decay