The processes category contains the implementations of particle transportation
and physical interactions. All physics process conform to the basic interface
G4VProcess, but different approaches have been developed for
the detailed design of each sub-category.
For the decay sub-category, the decays of all long-lived, unstable particles are handled by a single process. This process gets the step length from the mean life of the particle. The generation of decay products requires a knowledge of the branching ratios and/or data distributions stored in the particle class.
The electromagnetic sub-category is divided further into the following packages:
standard: handling basic properties for electron,
positron, photon and hadron interactions,
low energy: providing alternative models extended down
to lower energies than the standard package,
muons: handling muon interactions,
x-rays: providing specific code for x-ray physics,
optical: providing specific code for optical photons,
utils: collecting utility classes used by the above
It provides the features of openness and extensibilty resulting from the use of object-oriented technology; alternative physics models, obeying the same process abstract interface, are often available for a given type of interaction.
For hadronic physics, an additional set of implementation frameworks was added to accommodate the large number of possible modeling approaches. The top-level framework provides the basic interface to other Geant4 categories. It satisfies the most general use-case for hadronic shower simulations, namely to provide inclusive cross sections and final state generation. The frameworks are then refined for increasingly specific use-cases, building a hierarchy in which each level implements the interface specified by the level above it. A given hadronic process may be implemented at any one of these levels. For example, the process may be implemented by one of several models, and each of the models may in turn be implemented by several sub-models at the lower framework levels.
The object-oriented design of the generic physics process G4VProcess and its relation to the process manager is shown in Figure 2.4. Figure 2.5 shows how specific physics processes are related to G4VProcess.
|27.06.05 section on design philosophy added by D.H. Wright|
|Dec. 2006 Conversion from latex to Docbook verson by K. Amako|