2.9.  Particles

2.9.1.  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.

2.9.2.  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. Figure 2.13 shows a general overview of the particle classes. Figure 2.14 shows classes related to the particle table. Figure 2.15 shows the classes related to the particle decay table.

Particle classes

Figure 2.13.  Particle classes


Particle Table

Figure 2.14.  Particle Table


Particle Decay Table

Figure 2.15.  Particle Decay Table


[Status of this chapter]

27.06.05 section on design philosophy added (from Geant4 general paper) by D.H. Wright
Dec. 2006 Conversion from latex to Docbook verson by K. Amako