1 |
\hypertarget{classTrkNucleiZCut}{ |
2 |
\section{TrkNucleiZCut Class Reference} |
3 |
\label{classTrkNucleiZCut}\index{TrkNucleiZCut@{TrkNucleiZCut}} |
4 |
} |
5 |
The TrkNuclei charge cut. |
6 |
|
7 |
|
8 |
{\tt \#include $<$TrkNucleiZCut.h$>$} |
9 |
|
10 |
Inheritance diagram for TrkNucleiZCut::\begin{figure}[H] |
11 |
\begin{center} |
12 |
\leavevmode |
13 |
\includegraphics[height=2cm]{classTrkNucleiZCut} |
14 |
\end{center} |
15 |
\end{figure} |
16 |
\subsection*{Public Member Functions} |
17 |
\begin{CompactItemize} |
18 |
\item |
19 |
\hyperlink{classTrkNucleiZCut_7cd05774c5dbdfee3350cdd6f0c24dda}{TrkNucleiZCut} (const char $\ast$cutName, unsigned int Z, float lowerLimit, float upperLimit, unsigned int minLayers=1, unsigned int howToCheck=TRKNUCLEIZ\_\-CHECKMEAN, unsigned int method=TRKNUCLEIZ\_\-RIG) |
20 |
\begin{CompactList}\small\item\em Constructor. \item\end{CompactList}\item |
21 |
\hypertarget{classTrkNucleiZCut_598ac3f78edc0b6add6a3959a5cd3db5}{ |
22 |
\hyperlink{classTrkNucleiZCut_598ac3f78edc0b6add6a3959a5cd3db5}{$\sim$TrkNucleiZCut} ()} |
23 |
\label{classTrkNucleiZCut_598ac3f78edc0b6add6a3959a5cd3db5} |
24 |
|
25 |
\begin{CompactList}\small\item\em Destructor. \item\end{CompactList}\item |
26 |
int \hyperlink{classTrkNucleiZCut_de47cb3c368d7ab12a8a5236de8915a4}{Check} (PamLevel2 $\ast$event) |
27 |
\begin{CompactList}\small\item\em The TrkNucleiZ check. \item\end{CompactList}\end{CompactItemize} |
28 |
|
29 |
|
30 |
\subsection{Detailed Description} |
31 |
The TrkNuclei charge cut. |
32 |
|
33 |
This cut uses the TrkNuclei library to cut events depending on particle's charge value. |
34 |
|
35 |
\subsection{Constructor \& Destructor Documentation} |
36 |
\hypertarget{classTrkNucleiZCut_7cd05774c5dbdfee3350cdd6f0c24dda}{ |
37 |
\index{TrkNucleiZCut@{TrkNucleiZCut}!TrkNucleiZCut@{TrkNucleiZCut}} |
38 |
\index{TrkNucleiZCut@{TrkNucleiZCut}!TrkNucleiZCut@{TrkNucleiZCut}} |
39 |
\subsubsection[{TrkNucleiZCut}]{\setlength{\rightskip}{0pt plus 5cm}TrkNucleiZCut::TrkNucleiZCut (const char $\ast$ {\em cutName}, \/ unsigned int {\em Z}, \/ float {\em lowerLimit}, \/ float {\em upperLimit}, \/ unsigned int {\em minLayers} = {\tt 1}, \/ unsigned int {\em howToCheck} = {\tt TRKNUCLEIZ\_\-CHECKMEAN}, \/ unsigned int {\em method} = {\tt TRKNUCLEIZ\_\-RIG})\hspace{0.3cm}{\tt \mbox{[}inline\mbox{]}}}} |
40 |
\label{classTrkNucleiZCut_7cd05774c5dbdfee3350cdd6f0c24dda} |
41 |
|
42 |
|
43 |
Constructor. |
44 |
|
45 |
The charge to look for is passed to the \hyperlink{classTrkNucleiZCut}{TrkNucleiZCut} object as Z. For each charge, there is an associated distribution of events, with mean Zmean and standard deviation sigmaZ. These values will be used to check the events. |
46 |
|
47 |
\begin{Desc} |
48 |
\item[Parameters:] |
49 |
\begin{description} |
50 |
\item[{\em cutName}]The cut's name. \item[{\em Z}]The charge value. \item[{\em lowerLimit}]The lower bound (in units of sigma\_\-Z) of the desired charge range, defined as Zmean - lowerBound$\ast$sigmaZ. \item[{\em upperLimit}]The upper bound (in units of sigma\_\-Z) of the desired charge range, defined as Zmean + upperBound$\ast$sigmaZ. \item[{\em minLayers}]The minimum required number of layers which give a valid charge information. \item[{\em howToCheck}]Flag to set the check by mean release or by release in single planes (see \hyperlink{TrkNucleiZCut_8h_4c885aa7c0e17adf9a7903317a2b4234}{TrkNucleiZ\_\-Check}). \item[{\em method}]The method to use to measure the particle's charge (see \hyperlink{TrkNucleiZCut_8h_26b0e4535fb2372057e0cc53b865b5a8}{TrkNucleiZ\_\-method}). \end{description} |
51 |
\end{Desc} |
52 |
\begin{Desc} |
53 |
\item[Returns:]\end{Desc} |
54 |
|
55 |
|
56 |
\subsection{Member Function Documentation} |
57 |
\hypertarget{classTrkNucleiZCut_de47cb3c368d7ab12a8a5236de8915a4}{ |
58 |
\index{TrkNucleiZCut@{TrkNucleiZCut}!Check@{Check}} |
59 |
\index{Check@{Check}!TrkNucleiZCut@{TrkNucleiZCut}} |
60 |
\subsubsection[{Check}]{\setlength{\rightskip}{0pt plus 5cm}int TrkNucleiZCut::Check (PamLevel2 $\ast$ {\em event})\hspace{0.3cm}{\tt \mbox{[}virtual\mbox{]}}}} |
61 |
\label{classTrkNucleiZCut_de47cb3c368d7ab12a8a5236de8915a4} |
62 |
|
63 |
|
64 |
The TrkNucleiZ check. |
65 |
|
66 |
The routine selects events whose value of Zmean obtained from the TrkNuclei Class is in the range \mbox{[}Zmean - sigma$\ast$lowerBound, Zmean + sigma$\ast$upperBound\mbox{]}. Zmean and sigma are defined respectively as the mean and the standard deviation of the charge distributions obtained using TrkNuclei. In current implementation, calibrations for Z=1 and Z=2 for mean dE/dx Vs. rigidity are: |
67 |
|
68 |
Z=1 $|$ mean sigma ------------------------ $|$ 0.992 0.06 |
69 |
|
70 |
Z=2 $|$ mean sigma ------------------------ $|$ 1.99 0.1 |
71 |
|
72 |
For all other cases (Z$>$2 or single plane releases or dE/dx Vs. beta), means are taken to be equal to the charge value (Zmean = Z) and sigmas are: |
73 |
|
74 |
Z $|$ sigma ----------- 1 $|$ 0.09 2 $|$ 0.10 3 $|$ 0.17 4 $|$ 0.34 5 $|$ 0.44 6 $|$ 0.59 |
75 |
|
76 |
The TofNuclei calibrations used are the standard ones (from Wolfgang, see TrkNuclei.cpp). First of all, the number of layers giving a valid charge information is checked to be greater than minLayers; if it's not so, the routine will return \hyperlink{TrkNucleiZCut_8h_3e78e6ef9e0abc656efc51a034b06b41e5e83b509d3047083352c35e145af4aa}{TRKNUCLEIZ\_\-TOOFEWLAYERS}. Next, it will check if the charge obtained considering the mean dE/dx in the tracker's layers is in the validity range if the constructor's flag howToCheckMean was set to TRKNUCLEIZ\_\-CHECKMEAN; otherwise, it will check each single valid charge value (mean for X and Y views) obtained from each layer. In the latter case, it will return \hyperlink{CommonDefs_8h_c857f4b76ae431837cbf61fd74863b6c}{CUTOK} only if all valid layers (ie., those tagged as good for both X and Y in traccker level 2 routines) give a charge inside the bounds, regardless of the value of minLayers. |
77 |
|
78 |
\begin{Desc} |
79 |
\item[Parameters:] |
80 |
\begin{description} |
81 |
\item[{\em event}]The event to analyze. \end{description} |
82 |
\end{Desc} |
83 |
\begin{Desc} |
84 |
\item[Returns:]\hyperlink{CommonDefs_8h_c857f4b76ae431837cbf61fd74863b6c}{CUTOK} if the charge from mean dE/dx(if howToCheck == \hyperlink{TrkNucleiZCut_8h_4c885aa7c0e17adf9a7903317a2b4234aa7d5140e9c1973b2461970838f072fd}{TRKNUCLEIZ\_\-CHECKMEAN}) or all the single layer charges (if howToCheck == \hyperlink{TrkNucleiZCut_8h_4c885aa7c0e17adf9a7903317a2b4234a9bc9846d177843d2ec717c4333c90a2}{TRKNUCLEIZ\_\-CHECKSINGLEVALUES}) obtained from TrkNuclei are in the range \mbox{[}Z - sigma$\ast$lowerBound, Z + sigma$\ast$upperBound\mbox{]}. |
85 |
|
86 |
\hyperlink{TrkNucleiZCut_8h_3e78e6ef9e0abc656efc51a034b06b416dc17ce6156ddda7c99352e6e162ddbe}{TRKNUCLEIZ\_\-OUTOFBOUNDS} if the charge from mean dE/dx(if howToCheck == \hyperlink{TrkNucleiZCut_8h_4c885aa7c0e17adf9a7903317a2b4234aa7d5140e9c1973b2461970838f072fd}{TRKNUCLEIZ\_\-CHECKMEAN}) or at least one valid single layer charge (if howToCheck == \hyperlink{TrkNucleiZCut_8h_4c885aa7c0e17adf9a7903317a2b4234a9bc9846d177843d2ec717c4333c90a2}{TRKNUCLEIZ\_\-CHECKSINGLEVALUES}) is out of bounds. |
87 |
|
88 |
\hyperlink{TrkNucleiZCut_8h_3e78e6ef9e0abc656efc51a034b06b41e5e83b509d3047083352c35e145af4aa}{TRKNUCLEIZ\_\-TOOFEWLAYERS} if charge information is available for a number of layers lesser than minLayers. |
89 |
|
90 |
\hyperlink{TrkNucleiZCut_8h_3e78e6ef9e0abc656efc51a034b06b416dc17ce6156ddda7c99352e6e162ddbe}{TRKNUCLEIZ\_\-OUTOFBOUNDS} if Z $<$ 1 or Z $>$ 6. \end{Desc} |
91 |
|
92 |
|
93 |
Implements \hyperlink{classPamCut_a874600461950d1f2b75ce3938f91cbe}{PamCut}. |
94 |
|
95 |
The documentation for this class was generated from the following files:\begin{CompactItemize} |
96 |
\item |
97 |
TrkCuts/TrkNucleiZCut/\hyperlink{TrkNucleiZCut_8h}{TrkNucleiZCut.h}\item |
98 |
TrkCuts/TrkNucleiZCut/\hyperlink{TrkNucleiZCut_8cpp}{TrkNucleiZCut.cpp}\end{CompactItemize} |