ATLAS Offline Software
TriggerMuonValidationPlots.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 
7 #include <utility>
8 
10 TriggerMuonValidationPlots::TriggerMuonValidationPlots(PlotBase* pParent, const std::string& sDir, std::vector<unsigned int> authors,
11  bool /*isData*/, bool doTrigMuonL1Validation, bool doTrigMuonL2Validation,
12  bool doTrigMuonEFValidation, std::vector<std::vector<std::string>> ChainSeed,
13  std::vector<std::string> L1MuonItems) :
14  PlotBase(pParent, sDir),
15  m_selectedAuthors(std::move(authors)),
16  m_doTrigMuonL1Validation(doTrigMuonL1Validation),
17  m_doTrigMuonL2Validation(doTrigMuonL2Validation),
18  m_doTrigMuonEFValidation(doTrigMuonEFValidation),
19  m_ChainSeed(std::move(ChainSeed)),
20  m_L1MuonItems(std::move(L1MuonItems)) {
21  for (unsigned int i = 0; i < m_ChainSeed.size(); i++) {
22  m_chains.push_back(m_ChainSeed[i][0]);
23  m_seeds.push_back(m_ChainSeed[i][1]);
24  }
25 
26  if (m_doTrigMuonL1Validation) m_oL1TriggerMuonPlots = std::make_unique<L1TriggerMuonPlots>(this, "trigger/L1");
28  m_oL2TriggerMuonPlots.push_back(std::make_unique<HLTriggerMuonPlots>(this, "trigger/L2/StandAlone"));
29  m_oL2TriggerMuonPlots.push_back(std::make_unique<HLTriggerMuonPlots>(this, "trigger/L2/Combined"));
31  std::make_unique<ResoTriggerMuonPlots>(this, "trigger/L2/StandAlone/Resolution/BARREL/", ""));
32  m_oL2TriggerMuonBarrelResolutionPlots.push_back(std::make_unique<ResoTriggerMuonPlots>(this, "trigger/L2/Combined/Resolution/BARREL/", ""));
34  std::make_unique<ResoTriggerMuonPlots>(this, "trigger/L2/StandAlone/Resolution/ENDCAPS/", ""));
36  std::make_unique<ResoTriggerMuonPlots>(this, "trigger/L2/Combined/Resolution/ENDCAPS/", ""));
38  std::make_unique<ResoTriggerMuonPlots>(this, "trigger/L2/StandAlone/Resolution/WHOLE_DETECT/", ""));
39  m_oL2TriggerMuonResolutionPlots.push_back(std::make_unique<ResoTriggerMuonPlots>(this, "trigger/L2/Combined/Resolution/WHOLE_DETECT/", ""));
40  }
41 
42  // define a histogram class for each of the selected muon authors
43  for (unsigned int i = 0; i < m_selectedAuthors.size(); i++) {
44  std::string sAuthor = Muon::EnumDefs::toString((xAOD::Muon::Author)m_selectedAuthors[i]);
45  if (m_doTrigMuonEFValidation) m_oEFTriggerMuonPlots.push_back(std::make_unique<HLTriggerMuonPlots>(this, "trigger/EF/" + sAuthor));
48  std::make_unique<ResoTriggerMuonPlots>(this, "trigger/EF/" + sAuthor + "/Resolution/BARREL/", ""));
51  std::make_unique<ResoTriggerMuonPlots>(this, "trigger/EF/" + sAuthor + "/Resolution/ENDCAPS/", ""));
54  std::make_unique<ResoTriggerMuonPlots>(this, "trigger/EF/" + sAuthor + "/Resolution/WHOLE_DETECT/", ""));
55  }
56 
57  for (unsigned int i = 0; i < m_L1MuonItems.size(); i++) {
60  std::make_unique<TriggerEfficiencyPlots>(this, "trigger/" + m_L1MuonItems[i] + "_Efficiency/BARREL/"));
63  std::make_unique<TriggerEfficiencyPlots>(this, "trigger/" + m_L1MuonItems[i] + "_Efficiency/ENDCAPS/"));
66  std::make_unique<TriggerEfficiencyPlots>(this, "trigger/" + m_L1MuonItems[i] + "_Efficiency/WHOLE_DETECT/"));
67  }
68  for (unsigned int i = 0; i < m_chains.size(); i++) {
71  std::make_unique<TriggerEfficiencyPlots>(this, "trigger/" + m_chains[i] + "_Efficiency/BARREL/"));
74  std::make_unique<TriggerEfficiencyPlots>(this, "trigger/" + m_chains[i] + "_Efficiency/ENDCAPS/"));
77  std::make_unique<TriggerEfficiencyPlots>(this, "trigger/" + m_chains[i] + "_Efficiency/WHOLE_DETECT/"));
78  }
79  for (unsigned int i = 0; i < m_chains.size(); i++) {
82  std::make_unique<TriggerEfficiencyPlots>(this, "trigger/" + m_chains[i] + "_wrt_" + m_seeds[i] + "_Efficiency/BARREL/"));
85  std::make_unique<TriggerEfficiencyPlots>(this, "trigger/" + m_chains[i] + "_wrt_" + m_seeds[i] + "_Efficiency/ENDCAPS/"));
88  std::make_unique<TriggerEfficiencyPlots>(this, "trigger/" + m_chains[i] + "_wrt_" + m_seeds[i] + "_Efficiency/WHOLE_DETECT/"));
89  }
90  PlateauTreshold = 0.;
91 }
92 
94 
96 
98 
100 
102  for (unsigned int i = 0; i < m_selectedAuthors.size(); i++) {
104  // if (Trigmu.isAuthor( (xAOD::Muon::Author)m_selectedAuthors[i] ) || m_selectedAuthors[i]==xAOD::Muon::NumberOfMuonAuthors) {
105  m_oEFTriggerMuonPlots[i]->fill(Trigmu);
106  }
107  }
108 }
109 
111  for (unsigned int i = 0; i < m_selectedAuthors.size(); i++) {
113  // if (Trigmu.isAuthor( (xAOD::Muon::Author)m_selectedAuthors[i] ) || m_selectedAuthors[i]==xAOD::Muon::NumberOfMuonAuthors) {
114  m_oEFTriggerMuonResolutionPlots[i]->fill(Trigmu, Recomu);
115  if (std::abs(Recomu.eta()) < 1.05) m_oEFTriggerMuonBarrelResolutionPlots[i]->fill(Trigmu, Recomu);
116  if (std::abs(Recomu.eta()) > 1.05) m_oEFTriggerMuonEndcapsResolutionPlots[i]->fill(Trigmu, Recomu);
117  }
118  }
119 }
120 
122  m_oL2TriggerMuonResolutionPlots[0]->fill(L2SAmu, Recomu);
123  if (std::abs(Recomu.eta()) < 1.05) m_oL2TriggerMuonBarrelResolutionPlots[0]->fill(L2SAmu, Recomu);
124  if (std::abs(Recomu.eta()) > 1.05) m_oL2TriggerMuonEndcapsResolutionPlots[0]->fill(L2SAmu, Recomu);
125 }
126 
128  m_oL2TriggerMuonResolutionPlots[1]->fill(L2CBmu, Recomu);
129  if (std::abs(Recomu.eta()) < 1.05) m_oL2TriggerMuonBarrelResolutionPlots[1]->fill(L2CBmu, Recomu);
130  if (std::abs(Recomu.eta()) > 1.05) m_oL2TriggerMuonEndcapsResolutionPlots[1]->fill(L2CBmu, Recomu);
131 }
132 
134 
135 void TriggerMuonValidationPlots::fill(const xAOD::Muon& Trigmu, const xAOD::Muon& Recomu) { fillTriggerMuonPlots(Trigmu, Recomu); }
136 
138  fillTriggerMuonPlots(L2SAmu, Recomu);
139 }
140 
142  fillTriggerMuonPlots(L2CBmu, Recomu);
143 }
144 
146 
148 
150 
151 void TriggerMuonValidationPlots::fillNumEff(const xAOD::Muon& mu, const std::string& selectedChain) {
152  float PlateauTreshold = findTrigTreshold(selectedChain);
153  PlateauTreshold = PlateauTreshold * 1000. * 1.05;
154  for (unsigned int i = 0; i < m_chains.size(); i++) {
155  if (m_chains[i] == selectedChain) {
157  if (((mu.eta()) > -1.05) && ((mu.eta()) < 1.05)) m_oEFTriggerChainBarrelEfficiencyPlots[i]->fillNumerator(mu, PlateauTreshold);
158  if (((mu.eta()) < -1.05) || ((mu.eta()) > 1.05)) m_oEFTriggerChainEndcapsEfficiencyPlots[i]->fillNumerator(mu, PlateauTreshold);
159  }
160  }
161 }
162 
163 void TriggerMuonValidationPlots::fillDenEff(const xAOD::Muon& mu, const std::string& selectedChain) {
164  float PlateauTreshold = findTrigTreshold(selectedChain);
165  PlateauTreshold = PlateauTreshold * 1000. * 1.05;
166  for (unsigned int i = 0; i < m_chains.size(); i++) {
167  if (m_chains[i] == selectedChain) {
169  if (((mu.eta()) > -1.05) && ((mu.eta()) < 1.05))
171  if (((mu.eta()) < -1.05) || ((mu.eta()) > 1.05))
173  }
174  }
175 }
176 
177 void TriggerMuonValidationPlots::fillFeatPlots(const xAOD::Muon& mu, const std::string& selectedChain) {
178  float PlateauTreshold = findTrigTreshold(selectedChain);
179  PlateauTreshold = PlateauTreshold * 1000. * 1.05;
180  for (unsigned int i = 0; i < m_chains.size(); i++) {
181  if (m_chains[i] == selectedChain) {
183  if (((mu.eta()) > -1.05) && ((mu.eta()) < 1.05)) m_oEFTriggerChainBarrelEfficiencyPlots[i]->fillFeatures(mu, PlateauTreshold);
184  if (((mu.eta()) < -1.05) || ((mu.eta()) > 1.05)) m_oEFTriggerChainEndcapsEfficiencyPlots[i]->fillFeatures(mu, PlateauTreshold);
185  }
186  }
187 }
188 
189 void TriggerMuonValidationPlots::fillNumL1Eff(const xAOD::Muon& mu, const std::string& selectedL1MuonItem) {
190  float PlateauTreshold = findTrigTreshold(selectedL1MuonItem);
191  PlateauTreshold = PlateauTreshold * 1000. * 1.05;
192  for (unsigned int i = 0; i < m_L1MuonItems.size(); i++) {
193  if (m_L1MuonItems[i] == selectedL1MuonItem) {
195  if (((mu.eta()) > -1.05) && ((mu.eta()) < 1.05)) m_oL1TriggerChainBarrelEfficiencyPlots[i]->fillNumerator(mu, PlateauTreshold);
196  if (((mu.eta()) < -1.05) || ((mu.eta()) > 1.05)) m_oL1TriggerChainEndcapsEfficiencyPlots[i]->fillNumerator(mu, PlateauTreshold);
197  }
198  }
199 }
200 
201 void TriggerMuonValidationPlots::fillDenL1Eff(const xAOD::Muon& mu, const std::string& selectedL1MuonItem) {
202  float PlateauTreshold = findTrigTreshold(selectedL1MuonItem);
203  PlateauTreshold = PlateauTreshold * 1000. * 1.05;
204  for (unsigned int i = 0; i < m_L1MuonItems.size(); i++) {
205  if (m_L1MuonItems[i] == selectedL1MuonItem) {
207  if (((mu.eta()) > -1.05) && ((mu.eta()) < 1.05))
209  if (((mu.eta()) < -1.05) || ((mu.eta()) > 1.05))
211  }
212  }
213 }
214 void TriggerMuonValidationPlots::fillFeatPlots(const xAOD::MuonRoI& TrigL1mu, const std::string& selectedL1MuonItem) {
215  float PlateauTreshold = findTrigTreshold(selectedL1MuonItem);
216  PlateauTreshold = PlateauTreshold * 1000. * 1.05;
217  xAOD::MuonContainer* ROIinMuons = new xAOD::MuonContainer;
218  xAOD::MuonAuxContainer* ROIinMuonsAux = new xAOD::MuonAuxContainer;
219  ROIinMuons->setStore(ROIinMuonsAux);
220  xAOD::Muon* myROI = new xAOD::Muon();
221  ROIinMuons->push_back(myROI);
222  myROI->setP4(TrigL1mu.thrValue(), TrigL1mu.eta(), TrigL1mu.phi());
223 
224  for (unsigned int i = 0; i < m_L1MuonItems.size(); i++) {
225  if (m_L1MuonItems[i] == selectedL1MuonItem) {
226  m_oL1TriggerChainEfficiencyPlots[i]->fillFeatures(*myROI, PlateauTreshold);
227  if (((TrigL1mu.eta()) > -1.05) && ((TrigL1mu.eta()) < 1.05))
229  if (((TrigL1mu.eta()) < -1.05) || ((TrigL1mu.eta()) > 1.05))
231  }
232  }
233  delete ROIinMuons;
234  delete ROIinMuonsAux;
235 }
236 
237 void TriggerMuonValidationPlots::fillDenRELEff(const xAOD::Muon& mu, const std::string& selectedChain) {
238  float PlateauTreshold = findTrigTreshold(selectedChain);
239  PlateauTreshold = PlateauTreshold * 1000. * 1.05;
240  for (unsigned int i = 0; i < m_chains.size(); i++) {
241  if (m_chains[i] == selectedChain) {
243  if (((mu.eta()) > -1.05) && ((mu.eta()) < 1.05))
245  if (((mu.eta()) < -1.05) || ((mu.eta()) > 1.05))
247  }
248  }
249 }
250 
251 void TriggerMuonValidationPlots::fillNumRELEff(const xAOD::Muon& mu, const std::string& selectedChain) {
252  float PlateauTreshold = findTrigTreshold(selectedChain);
253  PlateauTreshold = PlateauTreshold * 1000. * 1.05;
254  for (unsigned int i = 0; i < m_chains.size(); i++) {
255  if (m_chains[i] == selectedChain) {
257  if (((mu.eta()) > -1.05) && ((mu.eta()) < 1.05))
259  if (((mu.eta()) < -1.05) || ((mu.eta()) > 1.05))
261  }
262  }
263 }
264 
266  float PlateauTreshold;
267  std::string str(chain);
268  TString temp;
269  if (str.find("HLT_") != std::string::npos) {
270  for (unsigned int l = 0; l < str.size(); l++) {
271  if (isdigit(str[l])) {
272  for (unsigned int a = l; a < str.size(); a++) {
273  // if (str[a]=='_') break;
274  if ((isdigit(str[a])) == 0) break;
275  temp += str[a];
276  }
277  break;
278  }
279  }
280  }
281  if (str.find("L1_MU") != std::string::npos) {
282  for (unsigned int l = 0; l < str.size(); l++) {
283  if ((str[l]) == 'U') {
284  for (unsigned int a = l + 1; a < str.size(); a++) {
285  // if (str[a]=='_') break;
286  temp += str[a];
287  }
288  break;
289  }
290  }
291  }
292  PlateauTreshold = temp.Atof();
293  return PlateauTreshold;
294 }
runLayerRecalibration.chain
chain
Definition: runLayerRecalibration.py:175
TriggerMuonValidationPlots::fillNumRELEff
void fillNumRELEff(const xAOD::Muon &Trigmu, const std::string &selectedChain)
Definition: TriggerMuonValidationPlots.cxx:251
TriggerMuonValidationPlots::m_seeds
std::vector< std::string > m_seeds
Definition: TriggerMuonValidationPlots.h:45
PlotBase
Definition: PlotBase.h:33
xAOD::MuonContainer
MuonContainer_v1 MuonContainer
Definition of the current "Muon container version".
Definition: Event/xAOD/xAODMuon/xAODMuon/MuonContainer.h:14
TriggerMuonValidationPlots::m_oEFTriggerChainBarrelEfficiencyPlots
std::vector< std::unique_ptr< TriggerEfficiencyPlots > > m_oEFTriggerChainBarrelEfficiencyPlots
Definition: TriggerMuonValidationPlots.h:59
xAOD::L2StandAloneMuon_v2
Class describing standalone muons reconstructed in the LVL2 trigger.
Definition: L2StandAloneMuon_v2.h:36
python.copyTCTOutput.sDir
sDir
Definition: copyTCTOutput.py:60
TriggerMuonValidationPlots::PlateauTreshold
float PlateauTreshold
Definition: TriggerMuonValidationPlots.h:25
TriggerMuonValidationPlots::fillNumEff
void fillNumEff(const xAOD::Muon &Trigmu, const std::string &selectedChain)
Definition: TriggerMuonValidationPlots.cxx:151
xAOD::Muon_v1::eta
virtual double eta() const
The pseudorapidity ( ) of the particle.
TriggerMuonValidationPlots::m_oEFTriggerChainBarrelRELEfficiencyPlots
std::vector< std::unique_ptr< TriggerEfficiencyPlots > > m_oEFTriggerChainBarrelRELEfficiencyPlots
Definition: TriggerMuonValidationPlots.h:62
TriggerMuonValidationPlots::m_oEFTriggerMuonEndcapsResolutionPlots
std::vector< std::unique_ptr< ResoTriggerMuonPlots > > m_oEFTriggerMuonEndcapsResolutionPlots
Definition: TriggerMuonValidationPlots.h:50
TriggerMuonValidationPlots::fill
void fill(const xAOD::MuonRoI &TrigL1mu)
Definition: TriggerMuonValidationPlots.cxx:145
xAOD::MuonRoI_v1::eta
float eta() const
The pseudorapidity ( ) of the muon candidate.
xAOD::Muon_v1::setP4
void setP4(double pt, double eta, double phi)
Set method for IParticle values.
Definition: Muon_v1.cxx:66
TriggerMuonValidationPlots::m_oL1TriggerChainEndcapsEfficiencyPlots
std::vector< std::unique_ptr< TriggerEfficiencyPlots > > m_oL1TriggerChainEndcapsEfficiencyPlots
Definition: TriggerMuonValidationPlots.h:57
xAOD::MuonRoI_v1::thrValue
float thrValue() const
The highest threshold value (in MeV) passed by the muon candidate.
TriggerMuonValidationPlots::m_oL1TriggerMuonPlots
std::unique_ptr< L1TriggerMuonPlots > m_oL1TriggerMuonPlots
Definition: TriggerMuonValidationPlots.h:46
UploadAMITag.l
list l
Definition: UploadAMITag.larcaf.py:158
TriggerMuonValidationPlots::m_chains
std::vector< std::string > m_chains
Definition: TriggerMuonValidationPlots.h:44
TriggerMuonValidationPlots::m_oEFTriggerChainEndcapsRELEfficiencyPlots
std::vector< std::unique_ptr< TriggerEfficiencyPlots > > m_oEFTriggerChainEndcapsRELEfficiencyPlots
Definition: TriggerMuonValidationPlots.h:63
xAOD::Muon_v1
Class describing a Muon.
Definition: Muon_v1.h:38
xAOD::L2CombinedMuon_v1
Class describing combined muon reconstructed in the LVL2 trigger.
Definition: L2CombinedMuon_v1.h:41
xAOD::MuonAuxContainer_v5
Temporary container used until we have I/O for AuxStoreInternal.
Definition: MuonAuxContainer_v5.h:31
TriggerMuonValidationPlots::m_oEFTriggerChainEndcapsEfficiencyPlots
std::vector< std::unique_ptr< TriggerEfficiencyPlots > > m_oEFTriggerChainEndcapsEfficiencyPlots
Definition: TriggerMuonValidationPlots.h:60
lumiFormat.i
int i
Definition: lumiFormat.py:92
TriggerMuonValidationPlots::fillDenEff
void fillDenEff(const xAOD::Muon &Trigmu, const std::string &selectedChain)
Definition: TriggerMuonValidationPlots.cxx:163
TriggerMuonValidationPlots::m_ChainSeed
std::vector< std::vector< std::string > > m_ChainSeed
Definition: TriggerMuonValidationPlots.h:78
TriggerMuonValidationPlots::m_oL2TriggerMuonPlots
std::vector< std::unique_ptr< HLTriggerMuonPlots > > m_oL2TriggerMuonPlots
Definition: TriggerMuonValidationPlots.h:48
TriggerMuonValidationPlots::m_oL1TriggerChainBarrelEfficiencyPlots
std::vector< std::unique_ptr< TriggerEfficiencyPlots > > m_oL1TriggerChainBarrelEfficiencyPlots
Definition: TriggerMuonValidationPlots.h:56
xAOD::MuonRoI_v1
Class describing a LVL1 muon region of interest.
Definition: MuonRoI_v1.h:33
TriggerMuonValidationPlots::m_doTrigMuonEFValidation
bool m_doTrigMuonEFValidation
Definition: TriggerMuonValidationPlots.h:77
TriggerMuonValidationPlots::m_doTrigMuonL1Validation
bool m_doTrigMuonL1Validation
Definition: TriggerMuonValidationPlots.h:75
TriggerMuonValidationPlots::TriggerMuonValidationPlots
TriggerMuonValidationPlots(PlotBase *pParent, const std::string &sDir, std::vector< unsigned int > authors, bool isData, bool doTrigMuonL1Validation, bool doTrigMuonL2Validation, bool doTrigMuonEFValidation, std::vector< std::vector< std::string >> ChainSeed, std::vector< std::string > L1MuonItems)
Definition: TriggerMuonValidationPlots.cxx:10
DataVector
Derived DataVector<T>.
Definition: DataVector.h:581
TriggerMuonValidationPlots::fillDenRELEff
void fillDenRELEff(const xAOD::Muon &Trigmu, const std::string &selectedChain)
Definition: TriggerMuonValidationPlots.cxx:237
xAOD::Muon_v1::isAuthor
bool isAuthor(const Author author) const
Returns 'true' if 'author' is the an author of this muon.
Definition: Muon_v1.cxx:111
TriggerMuonValidationPlots.h
TriggerMuonValidationPlots::m_oEFTriggerMuonBarrelResolutionPlots
std::vector< std::unique_ptr< ResoTriggerMuonPlots > > m_oEFTriggerMuonBarrelResolutionPlots
Definition: TriggerMuonValidationPlots.h:49
xAOD::Muon
Muon_v1 Muon
Reference the current persistent version:
Definition: Event/xAOD/xAODMuon/xAODMuon/Muon.h:13
TriggerMuonValidationPlots::m_doTrigMuonL2Validation
bool m_doTrigMuonL2Validation
Definition: TriggerMuonValidationPlots.h:76
TriggerMuonValidationPlots::m_L1MuonItems
std::vector< std::string > m_L1MuonItems
Definition: TriggerMuonValidationPlots.h:79
TriggerMuonValidationPlots::m_oL1TriggerChainEfficiencyPlots
std::vector< std::unique_ptr< TriggerEfficiencyPlots > > m_oL1TriggerChainEfficiencyPlots
Definition: TriggerMuonValidationPlots.h:55
TriggerMuonValidationPlots::fillTriggerMuonPlots
void fillTriggerMuonPlots(const xAOD::Muon &Trigmu)
Definition: TriggerMuonValidationPlots.cxx:101
DataVector::push_back
value_type push_back(value_type pElem)
Add an element to the end of the collection.
TriggerMuonValidationPlots::fillNumL1Eff
void fillNumL1Eff(const xAOD::Muon &Trigmu, const std::string &selectedChain)
Definition: TriggerMuonValidationPlots.cxx:189
TriggerMuonValidationPlots::m_oL2TriggerMuonResolutionPlots
std::vector< std::unique_ptr< ResoTriggerMuonPlots > > m_oL2TriggerMuonResolutionPlots
Definition: TriggerMuonValidationPlots.h:54
a
TList * a
Definition: liststreamerinfos.cxx:10
python.CaloScaleNoiseConfig.str
str
Definition: CaloScaleNoiseConfig.py:78
TriggerMuonValidationPlots::m_oL2TriggerMuonEndcapsResolutionPlots
std::vector< std::unique_ptr< ResoTriggerMuonPlots > > m_oL2TriggerMuonEndcapsResolutionPlots
Definition: TriggerMuonValidationPlots.h:53
TriggerMuonValidationPlots::fillDenL1Eff
void fillDenL1Eff(const xAOD::Muon &Trigmu, const std::string &selectedChain)
Definition: TriggerMuonValidationPlots.cxx:201
TriggerMuonValidationPlots::findTrigTreshold
float findTrigTreshold(const TString &chain)
Definition: TriggerMuonValidationPlots.cxx:265
TriggerMuonValidationPlots::fillFeatPlots
void fillFeatPlots(const xAOD::Muon &Trigmu, const std::string &selectedChain)
Definition: TriggerMuonValidationPlots.cxx:177
TriggerMuonValidationPlots::m_oEFTriggerMuonPlots
std::vector< std::unique_ptr< HLTriggerMuonPlots > > m_oEFTriggerMuonPlots
Definition: TriggerMuonValidationPlots.h:47
str
Definition: BTagTrackIpAccessor.cxx:11
ParticleJetParams::Author
Author
Definition: ParticleJetParamDefs.h:33
TriggerMuonValidationPlots::m_oEFTriggerMuonResolutionPlots
std::vector< std::unique_ptr< ResoTriggerMuonPlots > > m_oEFTriggerMuonResolutionPlots
Definition: TriggerMuonValidationPlots.h:51
TriggerMuonValidationPlots::m_oEFTriggerChainEfficiencyPlots
std::vector< std::unique_ptr< TriggerEfficiencyPlots > > m_oEFTriggerChainEfficiencyPlots
Definition: TriggerMuonValidationPlots.h:58
MuonEnumDefs.h
xAOD::MuonAuxContainer
MuonAuxContainer_v5 MuonAuxContainer
Definition of the current Muon auxiliary container.
Definition: MuonAuxContainer.h:19
CaloNoise_fillDB.mu
mu
Definition: CaloNoise_fillDB.py:53
TriggerMuonValidationPlots::m_oEFTriggerChainRELEfficiencyPlots
std::vector< std::unique_ptr< TriggerEfficiencyPlots > > m_oEFTriggerChainRELEfficiencyPlots
Definition: TriggerMuonValidationPlots.h:61
TriggerMuonValidationPlots::~TriggerMuonValidationPlots
virtual ~TriggerMuonValidationPlots()
TriggerMuonValidationPlots::m_oL2TriggerMuonBarrelResolutionPlots
std::vector< std::unique_ptr< ResoTriggerMuonPlots > > m_oL2TriggerMuonBarrelResolutionPlots
Definition: TriggerMuonValidationPlots.h:52
xAOD::MuonRoI_v1::phi
float phi() const
The azimuthal angle ( ) of the muon candidate.
TriggerMuonValidationPlots::m_selectedAuthors
std::vector< unsigned int > m_selectedAuthors
Definition: TriggerMuonValidationPlots.h:43