![]() |
ATLAS Offline Software
|
Class describing a LVL1 muon region of interest. More...
#include <MuonRoI_v1.h>
Public Types | |
| enum | RoISource { Barrel , Endcap , Forward } |
| RoI source enumeration. More... | |
| enum | Hemisphere { Positive , Negative } |
| RoI hemisphere enumeration. More... | |
| enum | Charge { Neg = 0 , Pos = 1 , Undef = 100 } |
| Charge sign. More... | |
Public Member Functions | |
| MuonRoI_v1 () | |
| Default constructor. | |
| void | initialize (uint32_t roiword, float eta, float phi, const std::string &thrname, float thrvalue, uint32_t extraword=0u) |
| Initialise the object with all its properties. | |
Independent properties stored for the muon candidate | |
| float | eta () const |
| The pseudorapidity ( \(\eta\)) of the muon candidate. | |
| void | setEta (float v) |
| Set the pseudorapidity of the muon candidate. | |
| float | phi () const |
| The azimuthal angle ( \(\phi\)) of the muon candidate. | |
| void | setPhi (float v) |
| Set the azimuthal angle of the muon candidate. | |
| uint32_t | roiWord () const |
| The "raw" RoI word describing the muon candidate. | |
| void | setRoIWord (uint32_t value) |
| Set the "raw" RoI word, describing the muon candidate. | |
| float | thrValue () const |
| The highest threshold value (in MeV) passed by the muon candidate. | |
| void | setThrValue (float v) |
| Set the threshold value passed by the muon candidate. | |
| const std::string & | thrName () const |
| The name of the highest threshold value passed by the muon candidate. | |
| void | setThrName (const std::string &value) |
| Set the name of the threshold passed by the muon candidate. | |
Properties extracted from the 32-bit muon RoI word | |
| int | getThrNumber () const |
| Get the logic number of the highest threshold this RoI passed. | |
| int | getRoI () const |
| Get the "RoI number" (position inside the sector). | |
| int | getSectorAddress () const |
| Get the full sector address. | |
| int | getSectorID () const |
| Get the sector ID number. | |
| bool | isFirstCandidate () const |
| Returns if the candidate had the highest pT in the sector. | |
| bool | isMoreCandInRoI () const |
| Returns if there were other muons detected in the same RoI. | |
| bool | isMoreCandInSector () const |
| Returns if there were other muons detected in the same sector. | |
| RoISource | getSource () const |
| Returns the system that detected the muon candidate. | |
| Hemisphere | getHemisphere () const |
| Returns the hemisphere that detected the muon candidate. | |
| bool | getPhiOverlap () const |
| Returns whether there's overlap between barrel sectors. | |
| bool | getEtaOverlap () const |
| Returns whether there's overlap between the barrel-EC sectors. | |
| Charge | getCharge () const |
| Returns the charge sign of the muon candidate. | |
| bool | getBW3Coincidence () const |
| Returns whether or not there was a 3-station coincidence in the TGC. | |
| bool | getInnerCoincidence () const |
| Returns whether or not there was an inner coincidence in the TGC. | |
| bool | getGoodMF () const |
| Returns whether or not there was a good magnetic field quality in the TGC. | |
| bool | isVetoed () const |
| Returns the veto flag for the candidate. | |
| bool | isRun3 () const |
| Returns extra flag at end of RoI word indicating that it's in Run3 format. | |
Properties available only for Run 4+ | |
| uint32_t | roiExtraWord () const |
| The second "raw" RoI word describing extra information of the muon candidate. | |
| void | setRoIExtraWord (uint32_t value) |
| Set the second "raw" RoI word, describing extra information of the muon candidate. | |
| float | pt () const |
| the transverse momentum of the muon candidate | |
| bool | isRun4 () const |
| flag whether it is Run4+ RoI definition | |
Static Public Attributes | |
| static constexpr uint32_t | ETA_MASK = 0x3fff |
| constants to decode RoI word for Run 4+ | |
| static constexpr uint32_t | PHI_MASK = 0x1ff |
| static constexpr uint32_t | PT_MASK = 0xff |
| static constexpr uint32_t | THR_MASK = 0xf |
Static Private Attributes | |
| static constexpr uint32_t | ETA_SHIFT = 0 |
| static constexpr uint32_t | PHI_SHIFT = 14 |
| static constexpr uint32_t | CHARGE_SHIFT = 23 |
| static constexpr uint32_t | PT_SHIFT = 24 |
| static constexpr uint32_t | THR_SHIFT = 0 |
| static constexpr float | PT_WIDTH = 0.5 |
Class describing a LVL1 muon region of interest.
This class describes all the properties of a muon region of interest (RoI) in the xAOD format.
Definition at line 29 of file MuonRoI_v1.h.
RoI hemisphere enumeration.
| Enumerator | |
|---|---|
| Positive | The candidate came from the +z side (side A). |
| Negative | The candidate came from the -z side (side C). |
Definition at line 39 of file MuonRoI_v1.h.
RoI source enumeration.
| Enumerator | |
|---|---|
| Barrel | The muon candidate was detected in the barrel region. |
| Endcap | The muon candidate was detected in the endcap region. |
| Forward | The muon candidate was detected in the forward region. |
Definition at line 33 of file MuonRoI_v1.h.
| xAOD::MuonRoI_v1::MuonRoI_v1 | ( | ) |
Default constructor.
Definition at line 17 of file MuonRoI_v1.cxx.
| float xAOD::MuonRoI_v1::eta | ( | ) | const |
The pseudorapidity ( \(\eta\)) of the muon candidate.
| bool xAOD::MuonRoI_v1::getBW3Coincidence | ( | ) | const |
Returns whether or not there was a 3-station coincidence in the TGC.
Get whether or not there was a 3-station coincidence in the TGC.
Valid for Run-3 candidates only.
Definition at line 289 of file MuonRoI_v1.cxx.
| MuonRoI_v1::Charge xAOD::MuonRoI_v1::getCharge | ( | ) | const |
Returns the charge sign of the muon candidate.
Endcap and forward sectors can tell you what was the charge of the muon candidate.
Barrel candidates can't do this.
Definition at line 264 of file MuonRoI_v1.cxx.
| bool xAOD::MuonRoI_v1::getEtaOverlap | ( | ) | const |
Returns whether there's overlap between the barrel-EC sectors.
Get whether or not there was a eta overlap between barrel and endcap sectors at SL-level.
This is different from the overlap removal performed in the MUCTPI. Valid for Run-2 RPC/TGC candidates only
Definition at line 249 of file MuonRoI_v1.cxx.
| bool xAOD::MuonRoI_v1::getGoodMF | ( | ) | const |
Returns whether or not there was a good magnetic field quality in the TGC.
Get whether or not there was a good magnetic field quality in the TGC.
Valid for Run-3 candidates only.
Definition at line 309 of file MuonRoI_v1.cxx.
| MuonRoI_v1::Hemisphere xAOD::MuonRoI_v1::getHemisphere | ( | ) | const |
Returns the hemisphere that detected the muon candidate.
The function decodes the sector hemisphere encoded in the 8-bit sector address into an easy to understand enumeration.
Definition at line 220 of file MuonRoI_v1.cxx.
| bool xAOD::MuonRoI_v1::getInnerCoincidence | ( | ) | const |
Returns whether or not there was an inner coincidence in the TGC.
Get whether or not there was an inner coincidence with the TGC.
Valid for Run-3 candidates only.
Definition at line 299 of file MuonRoI_v1.cxx.
| bool xAOD::MuonRoI_v1::getPhiOverlap | ( | ) | const |
Returns whether there's overlap between barrel sectors.
Get whether or not there was a phi overlap between barrel sectors at SL-level.
This is different from the overlap removal performed in the MUCTPI. Valid for Run-2 and Run-3 RPC candidates only
Definition at line 234 of file MuonRoI_v1.cxx.
| int xAOD::MuonRoI_v1::getRoI | ( | ) | const |
Get the "RoI number" (position inside the sector).
A muon's spacial location is identified from the sector number and the hemisphere that detected it.
Each sector is additionally divided into multiple areas, called RoIs that tell you which part of the sector the muon candidate was detected in.
Definition at line 89 of file MuonRoI_v1.cxx.
| int xAOD::MuonRoI_v1::getSectorAddress | ( | ) | const |
Get the full sector address.
The sector address is an 8-bit identifier of the sector.
For its detailed description, see page 38 of https://edms.cern.ch/file/248757/1/mirod.pdf
The least significant bit shown which hemisphere the sector is in (0: positive side, 1: negative side), the upper (1 or 2) bits show what kind of sector it is, the rest of the address is the number of the sector.
Definition at line 122 of file MuonRoI_v1.cxx.
| int xAOD::MuonRoI_v1::getSectorID | ( | ) | const |
Get the sector ID number.
The sector ID is a 5- or 6-bit identifier of the sector number.
For its detailed description, see page 38 of https://edms.cern.ch/file/248757/1/mirod.pdf
Definition at line 133 of file MuonRoI_v1.cxx.
| MuonRoI_v1::RoISource xAOD::MuonRoI_v1::getSource | ( | ) | const |
Returns the system that detected the muon candidate.
The function decodes the sector type encoded in the 8-bit sector address into an easy to understand enumeration.
Definition at line 202 of file MuonRoI_v1.cxx.
| setThrValue setRoIExtraWord int xAOD::MuonRoI_v1::getThrNumber | ( | ) | const |
Get the logic number of the highest threshold this RoI passed.
Each detected LVL1 muon candidate is assigned a pT threshold.
The hardware can assign one of 6/15 pT thresholds to the candidate, which are numbered from 1 to 6 for Run-1/2, and 1 to 15 for Run-3.
Definition at line 76 of file MuonRoI_v1.cxx.
| void xAOD::MuonRoI_v1::initialize | ( | uint32_t | roiword, |
| float | eta, | ||
| float | phi, | ||
| const std::string & | thrname, | ||
| float | thrvalue, | ||
| uint32_t | extraword = 0u ) |
Initialise the object with all its properties.
Initialize the object for Run-4+ RoI definition.
| roiword | The 32-bit RoI word coming from the MuCTPI |
| eta | The pseudorapidity of the candidate |
| phi | The aximuthal angle of the candidate |
| thrname | The name of the highest threshold passed by the candidate |
| thrvalue | The value (in MeV) of the threshold passed |
| extraWord | The 32-bit extra RoI word from the MUCTPI |
Definition at line 31 of file MuonRoI_v1.cxx.
| bool xAOD::MuonRoI_v1::isFirstCandidate | ( | ) | const |
Returns if the candidate had the highest pT in the sector.
Each muon trigger sector can only send information about a maximum of two LVL1 muon candidate to the central trigger.
If this flag is true, this candidate had the highest pT threshold assigned to it in its sector. If it's false, it was the second candidate in its sector.
actually v1 only ...
Definition at line 163 of file MuonRoI_v1.cxx.
| bool xAOD::MuonRoI_v1::isMoreCandInRoI | ( | ) | const |
Returns if there were other muons detected in the same RoI.
One RoI (one part of the trigger sector) can only send information about one LVL1 muon candidate to the central trigger.
This flag is true if the particular RoI that detected this muon candidate also detected another candidate with lower pT.
Definition at line 174 of file MuonRoI_v1.cxx.
| bool xAOD::MuonRoI_v1::isMoreCandInSector | ( | ) | const |
Returns if there were other muons detected in the same sector.
This flag is set to true if the sector that this muon candidate came from, detected more than 2 LVL1 muon candidates.
Definition at line 190 of file MuonRoI_v1.cxx.
| bool xAOD::MuonRoI_v1::isRun3 | ( | ) | const |
Returns extra flag at end of RoI word indicating that it's in Run3 format.
An extra bit is added at the end of the RoI word for run3 candidates in the EDM for technical purposes to distinguish whether we want to use the run2 or run3 bitmasks in decoding the word.
Definition at line 328 of file MuonRoI_v1.cxx.
| bool xAOD::MuonRoI_v1::isRun4 | ( | ) | const |
flag whether it is Run4+ RoI definition
The indicator whether the RoI is Run-1/2/3 or Run-4+ format.
roiExtraWord exists only in Run-4+.
Definition at line 349 of file MuonRoI_v1.cxx.
| bool xAOD::MuonRoI_v1::isVetoed | ( | ) | const |
Returns the veto flag for the candidate.
When the overlap handling is activated in the MuCTPI, candidates can be ignored in the multiplicity sum sent to the CTP.
This flag tells you whether this particular candidate was ignored in the multiplicity sum.
Definition at line 319 of file MuonRoI_v1.cxx.
| float xAOD::MuonRoI_v1::phi | ( | ) | const |
The azimuthal angle ( \(\phi\)) of the muon candidate.
| float xAOD::MuonRoI_v1::pt | ( | ) | const |
the transverse momentum of the muon candidate
the transverse momentum of the muon candidate, which can be calculated from roiWord valid for Run-4+ only
Definition at line 342 of file MuonRoI_v1.cxx.
| uint32_t xAOD::MuonRoI_v1::roiExtraWord | ( | ) | const |
The second "raw" RoI word describing extra information of the muon candidate.
| uint32_t xAOD::MuonRoI_v1::roiWord | ( | ) | const |
The "raw" RoI word describing the muon candidate.
| void xAOD::MuonRoI_v1::setRoIExtraWord | ( | uint32_t | value | ) |
Set the second "raw" RoI word, describing extra information of the muon candidate.
| void xAOD::MuonRoI_v1::setRoIWord | ( | uint32_t | value | ) |
Set the "raw" RoI word, describing the muon candidate.
| void xAOD::MuonRoI_v1::setThrName | ( | const std::string & | value | ) |
Set the name of the threshold passed by the muon candidate.
| const std::string & xAOD::MuonRoI_v1::thrName | ( | ) | const |
The name of the highest threshold value passed by the muon candidate.
| float xAOD::MuonRoI_v1::thrValue | ( | ) | const |
The highest threshold value (in MeV) passed by the muon candidate.
|
staticconstexprprivate |
Definition at line 155 of file MuonRoI_v1.h.
|
staticconstexpr |
constants to decode RoI word for Run 4+
Definition at line 147 of file MuonRoI_v1.h.
|
staticconstexprprivate |
Definition at line 153 of file MuonRoI_v1.h.
|
staticconstexpr |
Definition at line 148 of file MuonRoI_v1.h.
|
staticconstexprprivate |
Definition at line 154 of file MuonRoI_v1.h.
|
staticconstexpr |
Definition at line 149 of file MuonRoI_v1.h.
|
staticconstexprprivate |
Definition at line 156 of file MuonRoI_v1.h.
|
staticconstexprprivate |
Definition at line 160 of file MuonRoI_v1.h.
|
staticconstexpr |
Definition at line 150 of file MuonRoI_v1.h.
|
staticconstexprprivate |
Definition at line 158 of file MuonRoI_v1.h.