\chapter{Particles}

\section{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 {\it 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.

\section{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. 
Fig. \ref{figure:particles-1} shows a general overview of the particle
classes.  Fig. \ref{figure:particles-2} shows classes related to the 
particle table.  Fig. \ref{figure:particles-3} shows the classes related 
to the particle decay table.

\begin{figure}[ht]
\includegraphics[angle=0,scale=0.55]{OOAnalysisDesign/Particles/classDgmParticlesMain.eps}
\vspace{10pt}
\caption{Particle classes}
\label{figure:particles-1}
\end{figure}

\begin{figure}[ht]
\includegraphics[angle=0,scale=0.6]{OOAnalysisDesign/Particles/classDgmParticleTable.eps}
\vspace{10pt}
\caption{Particle Table}
\label{figure:particles-2}
\end{figure}

\begin{figure}[ht]
\includegraphics[angle=0,scale=0.45]{OOAnalysisDesign/Particles/classDgmParticleDecay.eps}
\vspace{10pt}
\caption{Particle Decay Table}
\label{figure:particles-3}
\end{figure}

\section{Status of this chapter}

27.06.05 section on design philosophy added (from Geant4 general paper) by
         D.H. Wright \\




