| 1 |
pam-fi |
1.1 |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> |
| 2 |
|
|
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> |
| 3 |
|
|
<title>PamCut: TrkNucleiZCut Class Reference</title> |
| 4 |
|
|
<link href="tabs.css" rel="stylesheet" type="text/css"> |
| 5 |
|
|
<link href="doxygen.css" rel="stylesheet" type="text/css"> |
| 6 |
|
|
</head><body> |
| 7 |
|
|
<!-- Generated by Doxygen 1.5.9 --> |
| 8 |
|
|
<div class="navigation" id="top"> |
| 9 |
|
|
<div class="tabs"> |
| 10 |
|
|
<ul> |
| 11 |
|
|
<li><a href="index.html"><span>Main Page</span></a></li> |
| 12 |
|
|
<li class="current"><a href="annotated.html"><span>Classes</span></a></li> |
| 13 |
|
|
<li><a href="files.html"><span>Files</span></a></li> |
| 14 |
|
|
</ul> |
| 15 |
|
|
</div> |
| 16 |
|
|
<div class="tabs"> |
| 17 |
|
|
<ul> |
| 18 |
|
|
<li><a href="annotated.html"><span>Class List</span></a></li> |
| 19 |
|
|
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> |
| 20 |
|
|
<li><a href="functions.html"><span>Class Members</span></a></li> |
| 21 |
|
|
</ul> |
| 22 |
|
|
</div> |
| 23 |
|
|
</div> |
| 24 |
|
|
<div class="contents"> |
| 25 |
|
|
<h1>TrkNucleiZCut Class Reference</h1><!-- doxytag: class="TrkNucleiZCut" --><!-- doxytag: inherits="PamCut" -->The TrkNuclei charge cut. |
| 26 |
|
|
<a href="#_details">More...</a> |
| 27 |
|
|
<p> |
| 28 |
|
|
<code>#include <<a class="el" href="TrkNucleiZCut_8h_source.html">TrkNucleiZCut.h</a>></code> |
| 29 |
|
|
<p> |
| 30 |
|
|
<div class="dynheader"> |
| 31 |
|
|
Inheritance diagram for TrkNucleiZCut:</div> |
| 32 |
|
|
<div class="dynsection"> |
| 33 |
|
|
|
| 34 |
|
|
<p><center><img src="classTrkNucleiZCut.png" usemap="#TrkNucleiZCut_map" border="0" alt=""></center> |
| 35 |
|
|
<map name="TrkNucleiZCut_map"> |
| 36 |
|
|
<area href="classPamCut.html" alt="PamCut" shape="rect" coords="0,0,94,24"> |
| 37 |
|
|
</map> |
| 38 |
|
|
</div> |
| 39 |
|
|
|
| 40 |
|
|
<p> |
| 41 |
|
|
<a href="classTrkNucleiZCut-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0"> |
| 42 |
|
|
<tr><td></td></tr> |
| 43 |
|
|
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr> |
| 44 |
|
|
<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classTrkNucleiZCut.html#7cd05774c5dbdfee3350cdd6f0c24dda">TrkNucleiZCut</a> (const char *cutName, unsigned int Z, float lowerLimit, float upperLimit, unsigned int minLayers=1, unsigned int howToCheck=TRKNUCLEIZ_CHECKMEAN, unsigned int method=TRKNUCLEIZ_RIG)</td></tr> |
| 45 |
|
|
|
| 46 |
|
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">Constructor. <a href="#7cd05774c5dbdfee3350cdd6f0c24dda"></a><br></td></tr> |
| 47 |
pam-fi |
1.2 |
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="598ac3f78edc0b6add6a3959a5cd3db5"></a><!-- doxytag: member="TrkNucleiZCut::~TrkNucleiZCut" ref="598ac3f78edc0b6add6a3959a5cd3db5" args="()" --> |
| 48 |
|
|
</td><td class="memItemRight" valign="bottom"><a class="el" href="classTrkNucleiZCut.html#598ac3f78edc0b6add6a3959a5cd3db5">~TrkNucleiZCut</a> ()</td></tr> |
| 49 |
pam-fi |
1.1 |
|
| 50 |
pam-fi |
1.2 |
<tr><td class="mdescLeft"> </td><td class="mdescRight">Destructor. <br></td></tr> |
| 51 |
pam-fi |
1.1 |
<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classTrkNucleiZCut.html#de47cb3c368d7ab12a8a5236de8915a4">Check</a> (PamLevel2 *event)</td></tr> |
| 52 |
|
|
|
| 53 |
|
|
<tr><td class="mdescLeft"> </td><td class="mdescRight">The TrkNucleiZ check. <a href="#de47cb3c368d7ab12a8a5236de8915a4"></a><br></td></tr> |
| 54 |
|
|
</table> |
| 55 |
|
|
<hr><a name="_details"></a><h2>Detailed Description</h2> |
| 56 |
|
|
The TrkNuclei charge cut. |
| 57 |
|
|
<p> |
| 58 |
pam-fi |
1.2 |
This cut uses the TrkNuclei library to cut events depending on particle's charge value. <hr><h2>Constructor & Destructor Documentation</h2> |
| 59 |
pam-fi |
1.1 |
<a class="anchor" name="7cd05774c5dbdfee3350cdd6f0c24dda"></a><!-- doxytag: member="TrkNucleiZCut::TrkNucleiZCut" ref="7cd05774c5dbdfee3350cdd6f0c24dda" args="(const char *cutName, unsigned int Z, float lowerLimit, float upperLimit, unsigned int minLayers=1, unsigned int howToCheck=TRKNUCLEIZ_CHECKMEAN, unsigned int method=TRKNUCLEIZ_RIG)" --> |
| 60 |
|
|
<div class="memitem"> |
| 61 |
|
|
<div class="memproto"> |
| 62 |
|
|
<table class="memname"> |
| 63 |
|
|
<tr> |
| 64 |
|
|
<td class="memname">TrkNucleiZCut::TrkNucleiZCut </td> |
| 65 |
|
|
<td>(</td> |
| 66 |
|
|
<td class="paramtype">const char * </td> |
| 67 |
|
|
<td class="paramname"> <em>cutName</em>, </td> |
| 68 |
|
|
</tr> |
| 69 |
|
|
<tr> |
| 70 |
|
|
<td class="paramkey"></td> |
| 71 |
|
|
<td></td> |
| 72 |
|
|
<td class="paramtype">unsigned int </td> |
| 73 |
|
|
<td class="paramname"> <em>Z</em>, </td> |
| 74 |
|
|
</tr> |
| 75 |
|
|
<tr> |
| 76 |
|
|
<td class="paramkey"></td> |
| 77 |
|
|
<td></td> |
| 78 |
|
|
<td class="paramtype">float </td> |
| 79 |
|
|
<td class="paramname"> <em>lowerLimit</em>, </td> |
| 80 |
|
|
</tr> |
| 81 |
|
|
<tr> |
| 82 |
|
|
<td class="paramkey"></td> |
| 83 |
|
|
<td></td> |
| 84 |
|
|
<td class="paramtype">float </td> |
| 85 |
|
|
<td class="paramname"> <em>upperLimit</em>, </td> |
| 86 |
|
|
</tr> |
| 87 |
|
|
<tr> |
| 88 |
|
|
<td class="paramkey"></td> |
| 89 |
|
|
<td></td> |
| 90 |
|
|
<td class="paramtype">unsigned int </td> |
| 91 |
|
|
<td class="paramname"> <em>minLayers</em> = <code>1</code>, </td> |
| 92 |
|
|
</tr> |
| 93 |
|
|
<tr> |
| 94 |
|
|
<td class="paramkey"></td> |
| 95 |
|
|
<td></td> |
| 96 |
|
|
<td class="paramtype">unsigned int </td> |
| 97 |
|
|
<td class="paramname"> <em>howToCheck</em> = <code>TRKNUCLEIZ_CHECKMEAN</code>, </td> |
| 98 |
|
|
</tr> |
| 99 |
|
|
<tr> |
| 100 |
|
|
<td class="paramkey"></td> |
| 101 |
|
|
<td></td> |
| 102 |
|
|
<td class="paramtype">unsigned int </td> |
| 103 |
|
|
<td class="paramname"> <em>method</em> = <code>TRKNUCLEIZ_RIG</code></td><td> </td> |
| 104 |
|
|
</tr> |
| 105 |
|
|
<tr> |
| 106 |
|
|
<td></td> |
| 107 |
|
|
<td>)</td> |
| 108 |
|
|
<td></td><td></td><td><code> [inline]</code></td> |
| 109 |
|
|
</tr> |
| 110 |
|
|
</table> |
| 111 |
|
|
</div> |
| 112 |
|
|
<div class="memdoc"> |
| 113 |
|
|
|
| 114 |
|
|
<p> |
| 115 |
|
|
Constructor. |
| 116 |
|
|
<p> |
| 117 |
|
|
The charge to look for is passed to the <a class="el" href="classTrkNucleiZCut.html" title="The TrkNuclei charge cut.">TrkNucleiZCut</a> 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.<p> |
| 118 |
|
|
<dl compact><dt><b>Parameters:</b></dt><dd> |
| 119 |
|
|
<table border="0" cellspacing="2" cellpadding="0"> |
| 120 |
|
|
<tr><td valign="top"></td><td valign="top"><em>cutName</em> </td><td>The cut's name. </td></tr> |
| 121 |
|
|
<tr><td valign="top"></td><td valign="top"><em>Z</em> </td><td>The charge value. </td></tr> |
| 122 |
|
|
<tr><td valign="top"></td><td valign="top"><em>lowerLimit</em> </td><td>The lower bound (in units of sigma_Z) of the desired charge range, defined as Zmean - lowerBound*sigmaZ. </td></tr> |
| 123 |
|
|
<tr><td valign="top"></td><td valign="top"><em>upperLimit</em> </td><td>The upper bound (in units of sigma_Z) of the desired charge range, defined as Zmean + upperBound*sigmaZ. </td></tr> |
| 124 |
|
|
<tr><td valign="top"></td><td valign="top"><em>minLayers</em> </td><td>The minimum required number of layers which give a valid charge information. </td></tr> |
| 125 |
|
|
<tr><td valign="top"></td><td valign="top"><em>howToCheck</em> </td><td>Flag to set the check by mean release or by release in single planes (see <a class="el" href="TrkNucleiZCut_8h.html#4c885aa7c0e17adf9a7903317a2b4234">TrkNucleiZ_Check</a>). </td></tr> |
| 126 |
|
|
<tr><td valign="top"></td><td valign="top"><em>method</em> </td><td>The method to use to measure the particle's charge (see <a class="el" href="TrkNucleiZCut_8h.html#26b0e4535fb2372057e0cc53b865b5a8">TrkNucleiZ_method</a>). </td></tr> |
| 127 |
|
|
</table> |
| 128 |
|
|
</dl> |
| 129 |
|
|
<dl class="return" compact><dt><b>Returns:</b></dt><dd></dd></dl> |
| 130 |
|
|
|
| 131 |
|
|
</div> |
| 132 |
|
|
</div><p> |
| 133 |
|
|
<hr><h2>Member Function Documentation</h2> |
| 134 |
|
|
<a class="anchor" name="de47cb3c368d7ab12a8a5236de8915a4"></a><!-- doxytag: member="TrkNucleiZCut::Check" ref="de47cb3c368d7ab12a8a5236de8915a4" args="(PamLevel2 *event)" --> |
| 135 |
|
|
<div class="memitem"> |
| 136 |
|
|
<div class="memproto"> |
| 137 |
|
|
<table class="memname"> |
| 138 |
|
|
<tr> |
| 139 |
|
|
<td class="memname">int TrkNucleiZCut::Check </td> |
| 140 |
|
|
<td>(</td> |
| 141 |
|
|
<td class="paramtype">PamLevel2 * </td> |
| 142 |
|
|
<td class="paramname"> <em>event</em> </td> |
| 143 |
|
|
<td> ) </td> |
| 144 |
|
|
<td><code> [virtual]</code></td> |
| 145 |
|
|
</tr> |
| 146 |
|
|
</table> |
| 147 |
|
|
</div> |
| 148 |
|
|
<div class="memdoc"> |
| 149 |
|
|
|
| 150 |
|
|
<p> |
| 151 |
|
|
The TrkNucleiZ check. |
| 152 |
|
|
<p> |
| 153 |
|
|
The routine selects events whose value of Zmean obtained from the TrkNuclei Class is in the range [Zmean - sigma*lowerBound, Zmean + sigma*upperBound]. 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:<p> |
| 154 |
|
|
Z=1 | mean sigma ------------------------ | 0.992 0.06<p> |
| 155 |
|
|
Z=2 | mean sigma ------------------------ | 1.99 0.1<p> |
| 156 |
|
|
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:<p> |
| 157 |
|
|
Z | sigma ----------- 1 | 0.09 2 | 0.10 3 | 0.17 4 | 0.34 5 | 0.44 6 | 0.59<p> |
| 158 |
|
|
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 <a class="el" href="TrkNucleiZCut_8h.html#3e78e6ef9e0abc656efc51a034b06b41e5e83b509d3047083352c35e145af4aa" title="Discarded because charge can be measured in too few layers.">TRKNUCLEIZ_TOOFEWLAYERS</a>. 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 <a class="el" href="CommonDefs_8h.html#c857f4b76ae431837cbf61fd74863b6c" title="The implementations of PamCut::Check() must return this value if the event satisfy...">CUTOK</a> 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.<p> |
| 159 |
|
|
<dl compact><dt><b>Parameters:</b></dt><dd> |
| 160 |
|
|
<table border="0" cellspacing="2" cellpadding="0"> |
| 161 |
|
|
<tr><td valign="top"></td><td valign="top"><em>event</em> </td><td>The event to analyze. </td></tr> |
| 162 |
|
|
</table> |
| 163 |
|
|
</dl> |
| 164 |
|
|
<dl class="return" compact><dt><b>Returns:</b></dt><dd><a class="el" href="CommonDefs_8h.html#c857f4b76ae431837cbf61fd74863b6c" title="The implementations of PamCut::Check() must return this value if the event satisfy...">CUTOK</a> if the charge from mean dE/dx(if howToCheck == <a class="el" href="TrkNucleiZCut_8h.html#4c885aa7c0e17adf9a7903317a2b4234aa7d5140e9c1973b2461970838f072fd" title="Check the mean value.">TRKNUCLEIZ_CHECKMEAN</a>) or all the single layer charges (if howToCheck == <a class="el" href="TrkNucleiZCut_8h.html#4c885aa7c0e17adf9a7903317a2b4234a9bc9846d177843d2ec717c4333c90a2" title="Check each single charge from each layer.">TRKNUCLEIZ_CHECKSINGLEVALUES</a>) obtained from TrkNuclei are in the range [Z - sigma*lowerBound, Z + sigma*upperBound]. <p> |
| 165 |
|
|
<a class="el" href="TrkNucleiZCut_8h.html#3e78e6ef9e0abc656efc51a034b06b416dc17ce6156ddda7c99352e6e162ddbe" title="Discarded because charge is out of bounds.">TRKNUCLEIZ_OUTOFBOUNDS</a> if the charge from mean dE/dx(if howToCheck == <a class="el" href="TrkNucleiZCut_8h.html#4c885aa7c0e17adf9a7903317a2b4234aa7d5140e9c1973b2461970838f072fd" title="Check the mean value.">TRKNUCLEIZ_CHECKMEAN</a>) or at least one valid single layer charge (if howToCheck == <a class="el" href="TrkNucleiZCut_8h.html#4c885aa7c0e17adf9a7903317a2b4234a9bc9846d177843d2ec717c4333c90a2" title="Check each single charge from each layer.">TRKNUCLEIZ_CHECKSINGLEVALUES</a>) is out of bounds. <p> |
| 166 |
|
|
<a class="el" href="TrkNucleiZCut_8h.html#3e78e6ef9e0abc656efc51a034b06b41e5e83b509d3047083352c35e145af4aa" title="Discarded because charge can be measured in too few layers.">TRKNUCLEIZ_TOOFEWLAYERS</a> if charge information is available for a number of layers lesser than minLayers. <p> |
| 167 |
|
|
<a class="el" href="TrkNucleiZCut_8h.html#3e78e6ef9e0abc656efc51a034b06b416dc17ce6156ddda7c99352e6e162ddbe" title="Discarded because charge is out of bounds.">TRKNUCLEIZ_OUTOFBOUNDS</a> if Z < 1 or Z > 6. </dd></dl> |
| 168 |
|
|
|
| 169 |
|
|
<p>Implements <a class="el" href="classPamCut.html#a874600461950d1f2b75ce3938f91cbe">PamCut</a>.</p> |
| 170 |
|
|
|
| 171 |
|
|
</div> |
| 172 |
|
|
</div><p> |
| 173 |
|
|
<hr>The documentation for this class was generated from the following files:<ul> |
| 174 |
pam-fi |
1.2 |
<li>TrkCuts/TrkNucleiZCut/<a class="el" href="TrkNucleiZCut_8h_source.html">TrkNucleiZCut.h</a><li>TrkCuts/TrkNucleiZCut/<a class="el" href="TrkNucleiZCut_8cpp.html">TrkNucleiZCut.cpp</a></ul> |
| 175 |
pam-fi |
1.1 |
</div> |
| 176 |
pam-fi |
1.2 |
<hr size="1"><address style="text-align: right;"><small>Generated on Fri Jun 5 15:09:08 2009 for PamCut by |
| 177 |
pam-fi |
1.1 |
<a href="http://www.doxygen.org/index.html"> |
| 178 |
|
|
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.9 </small></address> |
| 179 |
|
|
</body> |
| 180 |
|
|
</html> |