Physics Processes
Design Philosophy
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
packages.
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.
Class Design
General
The object-oriented design of the generic physics process G4VProcess and its
relation to the process manager is shown in .
shows how specific physics processes are
related to G4VProcess.
[Status of this chapter]
27.06.05 section on design philosophy added by D.H. Wright
Dec. 2006 Conversion from latex to Docbook verson by K. Amako