[1208] | 1 | \chapter{Hits and Digitization} |
---|
| 2 | |
---|
| 3 | \section{Design Philosophy} |
---|
| 4 | In {\sc Geant4} a {\it hit} is a snapshot of a physical interaction or an |
---|
| 5 | accumulation of interactions of a track or tracks in a ``sensitive'' detector |
---|
| 6 | component. A digitization, or {\it digit}, represents a detector output, such |
---|
| 7 | as an ADC/TDC count or a trigger signal. A {\it digit} is created from one or |
---|
| 8 | more hits and/or other {\it digits}. Given the wide variety of {\sc Geant4} |
---|
| 9 | applications, ways of describing detector sensitivity and the quantities to |
---|
| 10 | be stored in the {\it hits} and {\it digits} vary greatly. This category |
---|
| 11 | therefore provides only abstract classes for both detector sensitivity and |
---|
| 12 | {\it hits}/{\it digits}. It also provides tools for organizing the |
---|
| 13 | {\it hits}/{\it digits} into collections. |
---|
| 14 | |
---|
| 15 | \section{Class Design} |
---|
| 16 | |
---|
| 17 | \begin{itemize} |
---|
| 18 | |
---|
| 19 | \item {\bf G4SensitiveDetectorManager} - |
---|
| 20 | a list of G4SensitiveDetectors. |
---|
| 21 | |
---|
| 22 | \item {\bf G4HitsStructure} - |
---|
| 23 | a tree-like structure of G4Hit collections. Each branch represents the |
---|
| 24 | hits in given sub-detector. For example, the first level of branches |
---|
| 25 | may consist of a tracker, ECAL, and HCAL, while the second level, in HCAL, |
---|
| 26 | consists of the barrel and endcaps. Finally the barrel may have phi-slices, |
---|
| 27 | Z-slices, etc. |
---|
| 28 | |
---|
| 29 | \item {\bf G4VSensitiveDetector} - |
---|
| 30 | an abstract class of all of sensitive volumes. |
---|
| 31 | |
---|
| 32 | \item {\bf G4HitsCollection} - |
---|
| 33 | a collection of hits. Instantiates an RWCollection class. |
---|
| 34 | |
---|
| 35 | \item {\bf G4VHit} - |
---|
| 36 | this class has all the information about a particular hit caused by a |
---|
| 37 | single step. |
---|
| 38 | |
---|
| 39 | \item {\bf G4VDigitizer} - |
---|
| 40 | the class of objects which transform the hits deposited by particles into |
---|
| 41 | digitizations. |
---|
| 42 | |
---|
| 43 | \item {\bf G4DigitizerManager} - |
---|
| 44 | the (single) object dispatching common messages to individual digitizers. |
---|
| 45 | |
---|
| 46 | \item {\bf G4VDigi} - |
---|
| 47 | an abstract (base) class for all G4 digitizations. This could be data as |
---|
| 48 | simple as a singe byte, or as complex as an Ntuple. |
---|
| 49 | |
---|
| 50 | \item {\bf G4DigiStructure} - |
---|
| 51 | digitizations are organized as a structure, which could be anything |
---|
| 52 | between a single value and an Ntuple. |
---|
| 53 | |
---|
| 54 | \end{itemize} |
---|
| 55 | |
---|
| 56 | |
---|
| 57 | The object-oriented design of the 'hit' related classes is shown in the |
---|
| 58 | following class diagrams. The diagrams are described in the Booch notation. |
---|
| 59 | Fig. \ref{figure:hit-1} shows the general management of hit classes. |
---|
| 60 | Fig. \ref{figure:hit-2} shows the OO design of user-related hit classes. |
---|
| 61 | Fig. \ref{figure:hit-3} shows the OO design of the readout geometry. |
---|
| 62 | |
---|
| 63 | \begin{figure} |
---|
| 64 | \begin{center} |
---|
| 65 | \includegraphics[angle=0,scale=0.55]{OOAnalysisDesign/Hit/classDgmHitMain.eps} |
---|
| 66 | \vspace{10pt} |
---|
| 67 | \caption{Overview of hit classes management} |
---|
| 68 | \label{figure:hit-1} |
---|
| 69 | \end{center} |
---|
| 70 | \end{figure} |
---|
| 71 | |
---|
| 72 | \begin{figure} |
---|
| 73 | \begin{center} |
---|
| 74 | \includegraphics[angle=0,scale=0.5]{OOAnalysisDesign/Hit/classDgmHitUser.eps} |
---|
| 75 | \vspace{10pt} |
---|
| 76 | \caption{User hit classes} |
---|
| 77 | \label{figure:hit-2} |
---|
| 78 | \end{center} |
---|
| 79 | \end{figure} |
---|
| 80 | |
---|
| 81 | \begin{figure} |
---|
| 82 | \begin{center} |
---|
| 83 | \includegraphics[angle=0,scale=0.6]{OOAnalysisDesign/Hit/classDgmReadoutGeom.eps} |
---|
| 84 | \vspace{10pt} |
---|
| 85 | \caption{Readout geometry} |
---|
| 86 | \label{figure:hit-3} |
---|
| 87 | \end{center} |
---|
| 88 | \end{figure} |
---|
| 89 | |
---|
| 90 | \section{Status of this chapter} |
---|
| 91 | |
---|
| 92 | 27.06.05 section on design philosophy added (from Geant4 general paper) by |
---|
| 93 | D.H. Wright \\ |
---|