![]() |
ATLAS Offline Software
|
Class describing a LVL1 eFEX tau region of interest. More...
#include <eFexTauRoI_v1.h>
Public Types | |
| enum | ObjectType { xTOB = 0 , TOB = 1 } |
| Object types. More... | |
| enum | AlgoType { Heuristic = 0 , BDT = 1 } |
| Tau id algorithm types. More... | |
Public Member Functions | |
| eFexTauRoI_v1 () | |
| Default constructor. | |
| void | initialize (unsigned int eFexNumber, unsigned int shelf, uint32_t word0) |
| Initialise the object with its most important properties. | |
| void | initialize (uint32_t word0, uint32_t word1) |
| uint32_t | word0 () const |
| The "raw" 32-bit words describing the e/gamma candidate. | |
| uint32_t | word1 () const |
| void | setWord0 (uint32_t value) |
| Set the "raw" 32-bit words describing the e/gamma candidate. | |
| void | setWord1 (uint32_t value) |
| unsigned int | shelfNumber () const |
| unsigned int | eFexNumber () const |
| eFEX number | |
| float | et () const |
| TOB ET (decoded from TOB, stored for convenience). | |
| void | setEt (float value) |
| floating point value (MeV, TOB scale) | |
| float | eta () const |
| setter for the above | |
| void | setEta (float value) |
| Floating point, full precision (0.025). | |
| int | iEta () const |
| setter for the above | |
| unsigned int | seed () const |
| getter for integer eta index (-25->24) | |
| float | phi () const |
| Seed supercell index within central tower (0 -> 3). | |
| void | setPhi (float value) |
| Floating point, ATLAS phi convention (-pi -> pi). | |
| int | iPhi () const |
| Setter for the above. | |
| int | iEtaTopo () const |
| Getter for integer phi index (0-63). | |
| int | iPhiTopo () const |
| Return phi index in the range used by L1Topo (0->127). | |
| float | rCore () const |
| Jet Discriminants Derived floating point values (not used in actual algorithm). | |
| float | rHad () const |
| uint16_t | rCoreNumerator () const |
| Actual values used in algorithm (setters and getters). | |
| uint16_t | rCoreDenominator () const |
| void | setRCoreNumerator (uint16_t value) |
| void | setRCoreDenominator (uint16_t value) |
| uint16_t | rHadNumerator () const |
| uint16_t | rHadDenominator () const |
| void | setRHadNumerator (uint16_t value) |
| void | setRHadDenominator (uint16_t value) |
| char | isTOB () const |
| Is this one a TOB (or xTOB partner of a TOB)? | |
| void | setIsTOB (char value) |
| uint32_t | tobWord () const |
| Return TOB word corresponding to this TOB or xTOB. | |
| unsigned int | tobVersion () const |
| Data decoded from the TOB/RoI word and eFEX number. | |
| ObjectType | type () const |
| Object type (TOB or xTOB). | |
| unsigned int | fpga () const |
| FPGA number. | |
| unsigned int | fpgaEta () const |
| eta index within FPGA | |
| unsigned int | fpgaPhi () const |
| phi index within FPGA | |
| bool | upNotDown () const |
| Cluster up/down flag (1 = up, 0 = down). | |
| unsigned int | etTOB () const |
| Cluster ET (TOB ET scale, 100 MeV/count). | |
| unsigned int | etXTOB () const |
| Cluster ET (xTOB ET scale, 25 MeV/count). | |
| unsigned int | rCoreThresholds () const |
| Tau Condition 1 (rCore) results. | |
| unsigned int | bdtThresholds () const |
| Alternative Tau Condition 1 (BDT) results. | |
| unsigned int | rHadThresholds () const |
| Tau Condition 2 (Had/EM) results. | |
| unsigned int | tauOneThresholds () const |
| Tau Condition 1 (generic) results. | |
| unsigned int | tauTwoThresholds () const |
| Tau Condition 2 (generic) results. | |
| unsigned int | tauThreeThresholds () const |
| Tau Condition 3 (unused) results. | |
| bool | seedMax () const |
| Seed = max flag. Is this really useful? | |
| unsigned int | bcn4 () const |
| Last 4 bits of BCN (xTOB only). | |
| unsigned int | bdtScore () const |
| BDT Score (xTOB only). | |
Private Member Functions | |
| float | computeEta () const |
| Compute TOB eta. | |
Static Private Attributes | |
| static const float | s_tobEtScale = 100. |
| Constants used in converting to ATLAS units. | |
| static const float | s_xTobEtScale = 25. |
| static const float | s_towerEtaWidth = 0.1 |
| static const int | s_fpgaBit = 30 |
| Constants used in decoding TOB words For TOB word format changes these can be replaced by arrays in the _v2 object so that different versions can be decoded by one class. | |
| static const int | s_etaBit = 27 |
| static const int | s_phiBit = 24 |
| static const int | s_veto3Bit = 22 |
| static const int | s_veto2Bit = 20 |
| static const int | s_veto1Bit = 18 |
| static const int | s_seedBit = 16 |
| static const int | s_updownBit = 15 |
| static const int | s_maxBit = 14 |
| static const int | s_versionBit = 12 |
| static const int | s_etBit = 0 |
| static const int | s_etBitXTOB = 2 |
| static const int | s_bcn4Bit = 28 |
| static const int | s_shelfBit = 24 |
| static const int | s_eFexBit = 20 |
| static const int | s_bdtScoreBit = 0 |
| static const int | s_fpgaMask = 0x3 |
| static const int | s_etaMask = 0x7 |
| static const int | s_phiMask = 0x7 |
| static const int | s_veto1Mask = 0x3 |
| static const int | s_veto2Mask = 0x3 |
| static const int | s_veto3Mask = 0x3 |
| static const int | s_seedMask = 0x3 |
| static const int | s_updownMask = 0x1 |
| static const int | s_maxMask = 0x1 |
| static const int | s_versionMask = 0x3 |
| static const int | s_etMask = 0xfff |
| static const int | s_etFullMask = 0xffff |
| static const int | s_bcn4Mask = 0xf |
| static const int | s_eFexMask = 0xf |
| static const int | s_shelfMask = 0xf |
| static const int | s_bdtScoreMask = 0xfff |
| static const int | s_numPhi = 64 |
| static const int | s_eFexPhiMask = 0xf |
| static const int | s_eFexPhiBit = 0 |
| static const int | s_eFexPhiWidth = 8 |
| static const int | s_eFexPhiOffset = 2 |
| static const int | s_eFexEtaMask = 0xf |
| static const int | s_eFexEtaBit = 4 |
| static const int | s_eFexEtaWidth = 16 |
| static const int | s_fpgaEtaWidth = 4 |
| static const int | s_shelfPhiWidth = 4 |
| static const int | s_minEta = -25 |
Class describing a LVL1 eFEX tau region of interest.
This class describes the properties of a tau Trigger Object (TOB) or Region of Interest (RoI) in the xAOD format.
Definition at line 29 of file eFexTauRoI_v1.h.
Tau id algorithm types.
| Enumerator | |
|---|---|
| Heuristic | This object is generated by the heuristic algorithm. |
| BDT | This object is generated by the BDT algorithm. |
Definition at line 46 of file eFexTauRoI_v1.h.
Object types.
| Enumerator | |
|---|---|
| xTOB | This object is an xTOB (2*32 bit words). |
| TOB | This object is a TOB (1*32 bit word). |
Definition at line 40 of file eFexTauRoI_v1.h.
| xAOD::eFexTauRoI_v1::eFexTauRoI_v1 | ( | ) |
Default constructor.
Definition at line 23 of file eFexTauRoI_v1.cxx.
Last 4 bits of BCN (xTOB only).
Definition at line 218 of file eFexTauRoI_v1.cxx.
BDT Score (xTOB only).
Tau BDT score, only available in xTOBs.
Was the BDT algorithm run?
Definition at line 180 of file eFexTauRoI_v1.cxx.
Alternative Tau Condition 1 (BDT) results.
Results of BDT discriminant algorithm.
Definition at line 194 of file eFexTauRoI_v1.cxx.
|
private |
Compute TOB eta.
The computation changes for BDT and heuristic versions of the tau algorithm
Definition at line 294 of file eFexTauRoI_v1.cxx.
| float xAOD::eFexTauRoI_v1::et | ( | ) | const |
TOB ET (decoded from TOB, stored for convenience).
| float xAOD::eFexTauRoI_v1::eta | ( | ) | const |
setter for the above
Eta Coordinates (decoded from TOB, stored for convenience)
Cluster ET (TOB ET scale, 100 MeV/count).
Raw ET on TOB scale (100 MeV/count).
Definition at line 159 of file eFexTauRoI_v1.cxx.
Cluster ET (xTOB ET scale, 25 MeV/count).
Full precision ET (25 MeV/count, only available if object is an xTOB.
If the object is not an xTOB this will return 0
Definition at line 173 of file eFexTauRoI_v1.cxx.
FPGA number.
Hardware coordinate elements.
Definition at line 134 of file eFexTauRoI_v1.cxx.
| int xAOD::eFexTauRoI_v1::iEta | ( | ) | const |
setter for the above
Return an eta index in the range -25 -> +24 Value corresponds to 10*lower eta edge of tower Note that this may not be the final format!
And you need to combine with the seed() value to get full eta precision
With appropriate constants this should work in one line...
Return value
Definition at line 267 of file eFexTauRoI_v1.cxx.
| int xAOD::eFexTauRoI_v1::iEtaTopo | ( | ) | const |
Getter for integer phi index (0-63).
Return an eta index in the range used by L1Topo (-100->+99).
Getters for Topo coordinate indices
This returns e/g seed position as an integer index. Value corresponds to 4*lower eta edge of supercell (so 0 means 0.0 -> 0.025)
Definition at line 286 of file eFexTauRoI_v1.cxx.
Quantities derived from TOB data, stored for convenience
If the object is a TOB then the isTOB should be true. For xTOB default is false, but should be set by the user if a matching TOB is found
Definition at line 56 of file eFexTauRoI_v1.cxx.
| void xAOD::eFexTauRoI_v1::initialize | ( | unsigned int | eFexNumber, |
| unsigned int | shelf, | ||
| uint32_t | word0 ) |
Initialise the object with its most important properties.
Quantities derived from TOB data, stored for convenience
If the object is a TOB then the isTOB should be true. For xTOB default is false, but should be set by the user if a matching TOB is found
Definition at line 28 of file eFexTauRoI_v1.cxx.
| int xAOD::eFexTauRoI_v1::iPhi | ( | ) | const |
Setter for the above.
Methods that decode the eFEX number.
Return phi index in the range 0-63
Calculate octant (0-7) from eFEX and shelf numbers
Find global phi index (0-63) for this window in this eFEX
Definition at line 249 of file eFexTauRoI_v1.cxx.
| int xAOD::eFexTauRoI_v1::iPhiTopo | ( | ) | const |
Return phi index in the range used by L1Topo (0->127).
Topo use pi/64 steps. Ours are pi/32, so we simply return 2* our integer index
Definition at line 278 of file eFexTauRoI_v1.cxx.
| char xAOD::eFexTauRoI_v1::isTOB | ( | ) | const |
Is this one a TOB (or xTOB partner of a TOB)?
| float xAOD::eFexTauRoI_v1::phi | ( | ) | const |
Seed supercell index within central tower (0 -> 3).
Phi coordinates
| float xAOD::eFexTauRoI_v1::rCore | ( | ) | const |
Jet Discriminants Derived floating point values (not used in actual algorithm).
Tau condition value.
Note that this is for convenience & intelligibility, but should not be used for bitwise-accurate menu studies
Definition at line 236 of file eFexTauRoI_v1.cxx.
| uint16_t xAOD::eFexTauRoI_v1::rCoreDenominator | ( | ) | const |
| uint16_t xAOD::eFexTauRoI_v1::rCoreNumerator | ( | ) | const |
Actual values used in algorithm (setters and getters).
Tau Condition 1 (rCore) results.
Results of the rCore discriminant algorithm.
Definition at line 188 of file eFexTauRoI_v1.cxx.
| float xAOD::eFexTauRoI_v1::rHad | ( | ) | const |
Definition at line 241 of file eFexTauRoI_v1.cxx.
| uint16_t xAOD::eFexTauRoI_v1::rHadDenominator | ( | ) | const |
| uint16_t xAOD::eFexTauRoI_v1::rHadNumerator | ( | ) | const |
Tau Condition 2 (Had/EM) results.
Results of the rHad discriminant algorithm.
Definition at line 200 of file eFexTauRoI_v1.cxx.
getter for integer eta index (-25->24)
Definition at line 150 of file eFexTauRoI_v1.cxx.
| bool xAOD::eFexTauRoI_v1::seedMax | ( | ) | const |
Seed = max flag. Is this really useful?
Definition at line 154 of file eFexTauRoI_v1.cxx.
| void xAOD::eFexTauRoI_v1::setEt | ( | float | value | ) |
floating point value (MeV, TOB scale)
| void xAOD::eFexTauRoI_v1::setEta | ( | float | value | ) |
Floating point, full precision (0.025).
| void xAOD::eFexTauRoI_v1::setIsTOB | ( | char | value | ) |
| void xAOD::eFexTauRoI_v1::setPhi | ( | float | value | ) |
Floating point, ATLAS phi convention (-pi -> pi).
| void xAOD::eFexTauRoI_v1::setRCoreDenominator | ( | uint16_t | value | ) |
| void xAOD::eFexTauRoI_v1::setRCoreNumerator | ( | uint16_t | value | ) |
| void xAOD::eFexTauRoI_v1::setRHadDenominator | ( | uint16_t | value | ) |
| void xAOD::eFexTauRoI_v1::setRHadNumerator | ( | uint16_t | value | ) |
| void xAOD::eFexTauRoI_v1::setWord0 | ( | uint32_t | value | ) |
Set the "raw" 32-bit words describing the e/gamma candidate.
| void xAOD::eFexTauRoI_v1::setWord1 | ( | uint32_t | value | ) |
Definition at line 123 of file eFexTauRoI_v1.cxx.
Tau Condition 1 (generic) results.
Generic getters for those who don't care what a discriminant was called.
Definition at line 205 of file eFexTauRoI_v1.cxx.
| setWord1 setRCoreDenominator setRHadDenominator setEt setPhi unsigned int xAOD::eFexTauRoI_v1::tobVersion | ( | ) | const |
Data decoded from the TOB/RoI word and eFEX number.
Methods to decode data from the TOB/RoI and return to the user.
Tau Algorithm version (currently heuristic = 0, BDT = 1)
Algorithm version
Definition at line 113 of file eFexTauRoI_v1.cxx.
| uint32_t xAOD::eFexTauRoI_v1::tobWord | ( | ) | const |
Return TOB word corresponding to this TOB or xTOB.
Return single 32-bit TOB word from a TOB or xTOB.
Definition at line 223 of file eFexTauRoI_v1.cxx.
| eFexTauRoI_v1::ObjectType xAOD::eFexTauRoI_v1::type | ( | ) | const |
| bool xAOD::eFexTauRoI_v1::upNotDown | ( | ) | const |
Cluster up/down flag (1 = up, 0 = down).
Definition at line 146 of file eFexTauRoI_v1.cxx.
| uint32_t xAOD::eFexTauRoI_v1::word0 | ( | ) | const |
The "raw" 32-bit words describing the e/gamma candidate.
| uint32_t xAOD::eFexTauRoI_v1::word1 | ( | ) | const |
Definition at line 191 of file eFexTauRoI_v1.h.
Definition at line 209 of file eFexTauRoI_v1.h.
Definition at line 194 of file eFexTauRoI_v1.h.
Definition at line 212 of file eFexTauRoI_v1.h.
Definition at line 193 of file eFexTauRoI_v1.h.
Definition at line 222 of file eFexTauRoI_v1.h.
Definition at line 221 of file eFexTauRoI_v1.h.
Definition at line 223 of file eFexTauRoI_v1.h.
Definition at line 210 of file eFexTauRoI_v1.h.
Definition at line 218 of file eFexTauRoI_v1.h.
Definition at line 217 of file eFexTauRoI_v1.h.
Definition at line 220 of file eFexTauRoI_v1.h.
Definition at line 219 of file eFexTauRoI_v1.h.
Definition at line 180 of file eFexTauRoI_v1.h.
Definition at line 198 of file eFexTauRoI_v1.h.
Definition at line 189 of file eFexTauRoI_v1.h.
Definition at line 190 of file eFexTauRoI_v1.h.
Definition at line 208 of file eFexTauRoI_v1.h.
Definition at line 207 of file eFexTauRoI_v1.h.
Constants used in decoding TOB words For TOB word format changes these can be replaced by arrays in the _v2 object so that different versions can be decoded by one class.
Definition at line 179 of file eFexTauRoI_v1.h.
Definition at line 224 of file eFexTauRoI_v1.h.
Definition at line 197 of file eFexTauRoI_v1.h.
Definition at line 187 of file eFexTauRoI_v1.h.
Definition at line 205 of file eFexTauRoI_v1.h.
Definition at line 226 of file eFexTauRoI_v1.h.
Definition at line 216 of file eFexTauRoI_v1.h.
Definition at line 181 of file eFexTauRoI_v1.h.
Definition at line 199 of file eFexTauRoI_v1.h.
Definition at line 185 of file eFexTauRoI_v1.h.
Definition at line 203 of file eFexTauRoI_v1.h.
Definition at line 192 of file eFexTauRoI_v1.h.
Definition at line 211 of file eFexTauRoI_v1.h.
Definition at line 225 of file eFexTauRoI_v1.h.
Constants used in converting to ATLAS units.
Definition at line 168 of file eFexTauRoI_v1.h.
Definition at line 170 of file eFexTauRoI_v1.h.
Definition at line 186 of file eFexTauRoI_v1.h.
Definition at line 204 of file eFexTauRoI_v1.h.
Definition at line 188 of file eFexTauRoI_v1.h.
Definition at line 206 of file eFexTauRoI_v1.h.
Definition at line 184 of file eFexTauRoI_v1.h.
Definition at line 200 of file eFexTauRoI_v1.h.
Definition at line 183 of file eFexTauRoI_v1.h.
Definition at line 201 of file eFexTauRoI_v1.h.
Definition at line 182 of file eFexTauRoI_v1.h.
Definition at line 202 of file eFexTauRoI_v1.h.
Definition at line 169 of file eFexTauRoI_v1.h.