diff --git a/NPDocumentation/Gaspard.tex b/NPDocumentation/Gaspard.tex index 1e226e9d3b79446eb1d3461320a6d2580dbefab6..5f0ccce02498d0d86f4d34fb6b3e633ce8596262 100755 --- a/NPDocumentation/Gaspard.tex +++ b/NPDocumentation/Gaspard.tex @@ -1,7 +1,7 @@ \documentclass[a4paper,12pt]{article} \usepackage[T1]{fontenc} -\usepackage [isolatin]{inputenc} % fontes avec caracteres accentues -\usepackage{graphicx} % inclusion de figures +\usepackage [isolatin]{inputenc} +\usepackage{graphicx} \usepackage{listings} \begin{document} @@ -11,15 +11,15 @@ \maketitle \pagebreak -\tableofcontents % la table des matieres +\tableofcontents \pagebreak \section{Introduction} The Gaspard project is developed within the NPTool framework. For the moment only the tracker of charged particles is currently under study. -Coupling of the tracker with a gamma-ray calorimeter such as AGATA or -PARIS will be considered in the future. +Coupling the tracker with a gamma-ray calorimeter such as AGATA or +PARIS will be considered in the near future. NPTool is a modular package allowing to perform Geant4 simulations and to analyse the results of the simulations. It is strongly encouraged to read @@ -28,20 +28,144 @@ the general NPTool documentation that you can find in this directory. \section{NPSimulation} \subsection{Specificity of Gaspard} -The Gaspard tracker detector, even if it is made of several types of detectors, -is considered as {\it one} detector from the NPTool point of view. +The Gaspard tracker detector, even if it is made of several detectors of +different shapes (square, trapezoid, annular, ...), is considered as {\it one} +detector from the NPSimulation point of view. The Gaspard tracker detector +is described in the GaspardTracker class defined in the +GaspardTracker.\{hh,cc\} files. Since the Gaspard tracker detector is +registered in the DetectorConstructor.cc file it is available for NPSimulation. + +In order to manage the different detector shapes (square, trapezoid, annular, +...) of the Gaspard tracker, the GaspardTracker class holds a vector of +GaspardTrackerModule objects from which are, and should be, deriving all +the different shapes (GaspardTrackerSquare, GaspardTrackerAnnular, +GaspardTrackerTrapezoid and GaspardTrackerDummyShape classes). + \subsection{Running the simulation} +To run NPSimulation the following command line should be executed: + +\begin{verbatim} + Simulation xxx.reaction yyy.detector +\end{verbatim} + +where xxx.reaction is an input file describing the event generator and +yyy.detector is an input file describing the detector geometry. All these +input files are based on keywords and can be found in the +\$NPTool/Inputs subdirectories. + +\subsubsection{Event Generators} +All the different kind of event generator files as well as their +respective keywords are described in the general NPTool documentation. + +\subsubsection{Detector Configurations} +The keywords associated to the detector geometry file are different for +each detector. In case of the Gaspard tracker detector an example with +all the detector shapes available at the moment is given in the following: + +\begin{verbatim} + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + GaspardTracker + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + GPDAnnular + Z= -156.5 + RMIN= 16 + RMAX= 52 + FIRSTSTAGE= 1 + SECONDSTAGE= 0 + THIRDSTAGE= 1 + VIS= all + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + GPDTrapezoid + X1_Y1= 45.64 34.43 -146.50 + X128_Y1= 91.09 79.82 -91.36 + X1_Y128= 120.84 8.00 -91.36 + X128_Y128= 56.59 8.00 -146.50 + FIRSTSTAGE= 1 + SECONDSTAGE= 0 + THIRDSTAGE= 1 + VIS= all + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + GPDSquare + X1_Y1= 49.1 66.08 -135.41 + X128_Y1= -48.9 66.22 -135.41 + X1_Y128= -48.8 135.51 -66.1 + X128_Y128= 49.2 135.36 -66.1 + FIRSTSTAGE= 1 + SECONDSTAGE= 0 + THIRDSTAGE= 1 + VIS= all + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + GPDDummyShape + THETA= 90 + PHI= 90 + R= 100 + BETA= 0 0 0 + FIRSTSTAGE= 1 + SECONDSTAGE= 1 + THIRDSTAGE= 1 + VIS= all +\end{verbatim} + +In order to declare a Gaspard tracker detector in NPSimulation, the key +word {\it GaspardTracker} should be specified in the geometry file. It +should then be followed by other keywords concerning the different +detectors present in the tracker. Such keywords available at the moment +are: + +\begin{itemize} + \item {GPDAnnular} + \item {GPDTrapezoid} + \item {GPDSquare} + \item {GPDDummyShape} +\end{itemize} + +Each keyword corresponds to a detector shape which have its own set of +keywords which is used to position the detector in the world volume +and to define the structure of the detector (basically the number of +layers of the detector). + +To position the detectors two possibilities exist. Either the cartesian +coordinates (x,y,z) of each detector's corner are specified with the +keywords {\it X1\_Y1}, {\it X1\_Y128}, {\it X128\_Y1} and {\it X128\_Y128} +(case of GPDTrapezoid), either the spherical coordinates of the detector's +center are specified with the keywords {\it R}, {\it THETA} and {\it PHI} +(case of GPDDummyShape). While the first solution is very helpful when +working with the mechanical engineers, the second solution is useful when +investigating new geometries. + +In case of GPDAnnular only the position on the z-axis is given through +the keyword {\it Z}. Other keywords such as {\it RMIN} and {\it RMAX} +are defined but have no effect. This should be changed in the future. + +Concerning the structure of the detector, all the detectors have the +possibility to have up to three layers of silicon. Each layer can be +activated independently using the keywords {\it FIRSTSTAGE}, +{\it SECONDSTAGE} and {\it THIRDSTAGE}. + + \subsection{Results of the simulation} The results of the simulation are in the ROOT format and the output file -is stored in \$NPTool/Output/Simulation. The output ROOT file contains -three classes: +is stored in the \$NPTool/Output/Simulation directory. The output ROOT file +contains three classes: \begin{itemize} - \item {\it TInitialConditions:} - \item {\it TInteractionCoordinates:} - \item {\it TGaspardTrackerData:} + \item {TInitialConditions:} + This class records all the information concerning the event generator + such as the vertex of interaction, the angles of emitted particles in + the center of mass and laboratory frames... + \item {TInteractionCoordinates:} + This class mainly records the cartesian and spherical coordinates of + interaction between a particle and a detector. + \item {TGaspardTrackerData:} + This class stores the results of the simulation for the tracker part + of the Gaspard detector. Independently of the number and shape of the + detectors involved in the geometry, only {\it one} class is created for + the whole Gaspard tracker detector. For each event the strips number + are recorded as well as the energy and time for the layers which are + involved in the telescope. \end{itemize} + \subsection{Adding a new detector shape to Gaspard} A special class (GaspardTrackerDummyShape) has been created to show how to define a new module for the Gaspard Tracker. This class describes a @@ -49,7 +173,7 @@ simple 5x5 cm2 square telescope made of three layers of silicon which has been used for some preliminary studies of the tracker. So, when considering adding a new module to the Gaspard Tracker, please do not use this class but create you own instead. However, for the explanations the -GaspardTrackerDummyShape case will bed considered. +GaspardTrackerDummyShape case will be considered. When adding a new detector you need to follow several steps: @@ -69,17 +193,61 @@ method a line such as: \end{verbatim} \subsubsection{Definition of the geometry and its readout} -This is done in two files GaspardTrackerDummyShape.{h,cxx}. The geometry -is defined in the {\it VolumeMaker()} method, the placement of the -module is defined in the {\it ConstructDetector()} method, the readout -of the geometry is done in the {\it ReadSensitive()} method and the -scorers are declared in the {\it InitializeScorers()} method. +This is done in the GaspardTrackerDummyShape.\{h,cxx\} files. Concerning +the geometry it is defined in the {\it VolumeMaker()} method and the +the positioning of the module is done in the {\it ConstructDetector()} +method. + +Concerning the readout of the geometry it is done in the {\it ReadSensitive()} +method and it is based on the method of the scorers available in G4. The +scorers associated to the Gaspard tracker are declared in the {\it +InitializeScorers()} method. \subsubsection{Definition of the scorers} +If the scorers are declared in the {\it InitializeScorers()} method they should +be defined in the GaspardScorers.\{hh,cc\} files. All basic scorers to record +energy, time of flight and detector number are already implemented so when a new +detector is added to Gaspard tracker there is nothing to add from this point +of vue. However scorers determining the strip number for the front and back +side of the silicon detector's first stage (if double-sided) should be implemented. +In case of the GaspardTrackerDummyShape class this corresponds to the two classes +GPDScorerFirstStageFrontStripDummyShape and GPDScorerFirstStageBackStripDummyShape. + +\subsubsection{Integration in GaspardTracker} +In order to make the GaspardTracker detector aware of the GaspardTrackerDummyShape +module it has to be registered in the {\it ReadConfiguration()} method of the +GaspardTracker class. Don't forget to include the GaspardTrackerDummyShape.hh +header in the GaspardTracker.cc file. Then, in the GaspardTrackerDummyShape class +the keywords used when the geometry file is read should be defined in the {\it +ReadConfiguration()} method. \section{NPAnalysis} -To be documented... +\subsection{General} +A set of general ROOT macros are available in the \$NPTool/NPAnalysis/macros +directory. You can for example obtain some control plots about the shooting +conditions of the random variables. You can also calculate the geometrical +efficiency of your setup. + +The macros in this directory should be independant of the setup which is simulated. +Specific macros to Gaspard tracker should be placed in the +\$NPTool/NPAnalysis/Gaspard/macros directory. + + +\subsection{Gaspard} +The main analysis tool for the Gaspard tracker is in the \$NPTool/NPAnalysis/Gaspard +directory. For the moment the main feature is the reconstruction of the excitation +energy. + +\subsubsection{Running the analysis} +******* to be documented ********* + +\subsubsection{Results the analysis} +******* to be documented ********* + +\subsubsection{Structure of the analysis} +******* to be documented ********* + \end{document} diff --git a/README b/README index 2a19cddc07318972071e65ccfd9687464b50c508..a0cad80d2ede8ac15ab6d25d35f5e14b8aef0e64 100644 --- a/README +++ b/README @@ -62,7 +62,7 @@ IV) Inputs Inputs / CrossSection / DetectorConstruction / EventGenerator - / dEdx + / EnergyLoss V) Outputs This directory contains the ROOT ouput files of the