|
ATLAS Offline Software
|
#include <MuonSelector.h>
|
template<class T > |
static CLHEP::Hep3Vector | calculateMomentum (const T *pP) |
|
template<class T > |
static float | EvalInvMass (const T *pxP1, const T *pxP2, float fMass1, float fMass2=invalidAnswer) |
|
template<class T > |
static float | EvalInvMass (const T *pxP1, const T *pxP2, const T *pxp3, const T *pxP4, float fMass1, float fMass2=-999.9, float fMass3=-999.9, float fMass4=invalidAnswer) |
|
template<class T > |
static float | EvalDiMuInvMass (const T *pxP1, const T *pxP2) |
|
template<class T > |
static float | EvalFourMuInvMass (const T *pxP1, const T *pxP2, const T *pxP3, const T *pxP4) |
|
template<class T > |
static float | EvaluateAngle (const T *pxP1, const T *pxP2) |
|
template<class T > |
static float | EvalPtDiff (const T *pxP1, const T *pxP2) |
|
template<class T > |
static float | EvalPhiDiff (const T *pxP1, const T *pxP2) |
|
template<class T > |
static float | EvalEtaDiff (const T *pxP1, const T *pxP2) |
|
template<class T > |
static float | EvalPt (const T *pxP1, const T *pxP2) |
|
template<class T > |
static float | EvalPhi (const T *pxP1, const T *pxP2) |
|
template<class T > |
static float | EvalEta (const T *pxP1, const T *pxP2) |
|
template<class T > |
static float | EvalCharge (const T *pxP1, const T *pxP2) |
|
template<class T > |
static float | EvalTransverseMass (const T *pxP1, float fMETx, float fMETy, float fMass1, float fMass2=invalidAnswer) |
|
template<class T > |
static float | EvalTransverseMass (const T *pxP1, float fMETx, float fMETy) |
|
template<class T > |
static float | EvalTransverseMass (const T *pxP1, const T *pxP2, float fMETx, float fMETy, float fMass1, float fMass2=invalidAnswer) |
|
template<class T > |
static float | EvalTransverseMass (const T *pxP1, const T *pxP2, float fMETx, float fMETy) |
|
Definition at line 33 of file MuonSelector.h.
◆ PARENT
◆ HISTOS_1D
◆ MuonSelector() [1/2]
MuonSelector::MuonSelector |
( |
| ) |
|
◆ ~MuonSelector()
MuonSelector::~MuonSelector |
( |
| ) |
|
◆ MuonSelector() [2/2]
◆ BookHistograms()
void MuonSelector::BookHistograms |
( |
| ) |
|
|
protectedvirtual |
◆ calculateMomentum()
template<class T >
CLHEP::Hep3Vector EventAnalysis::calculateMomentum |
( |
const T * |
pP | ) |
|
|
staticinherited |
◆ doIPSelection()
void MuonSelector::doIPSelection |
( |
bool |
doIPsel | ) |
|
|
inline |
◆ doIsoSelection()
void MuonSelector::doIsoSelection |
( |
bool |
doIso | ) |
|
|
inline |
◆ doMCPSelection()
void MuonSelector::doMCPSelection |
( |
bool |
domcp | ) |
|
|
inline |
◆ EvalCharge()
template<class T >
float EventAnalysis::EvalCharge |
( |
const T * |
pxP1, |
|
|
const T * |
pxP2 |
|
) |
| |
|
staticinherited |
Definition at line 238 of file EventAnalysis.h.
242 return static_cast<float>( pxP1->charge() + pxP2->charge() );
◆ EvalDiMuInvMass()
template<class T >
float EventAnalysis::EvalDiMuInvMass |
( |
const T * |
pxP1, |
|
|
const T * |
pxP2 |
|
) |
| |
|
staticinherited |
◆ EvalEta()
template<class T >
float EventAnalysis::EvalEta |
( |
const T * |
pxP1, |
|
|
const T * |
pxP2 |
|
) |
| |
|
staticinherited |
Definition at line 229 of file EventAnalysis.h.
235 return static_cast<float>( (xTmp1 + xTmp2).pseudoRapidity() );
◆ EvalEtaDiff()
template<class T >
float EventAnalysis::EvalEtaDiff |
( |
const T * |
pxP1, |
|
|
const T * |
pxP2 |
|
) |
| |
|
staticinherited |
Definition at line 201 of file EventAnalysis.h.
208 return static_cast<float>( xTmp1.polarAngle(xTmp2) );
◆ EvalFourMuInvMass()
template<class T >
float EventAnalysis::EvalFourMuInvMass |
( |
const T * |
pxP1, |
|
|
const T * |
pxP2, |
|
|
const T * |
pxP3, |
|
|
const T * |
pxP4 |
|
) |
| |
|
staticinherited |
◆ EvalInvMass() [1/2]
template<class T >
float EventAnalysis::EvalInvMass |
( |
const T * |
pxP1, |
|
|
const T * |
pxP2, |
|
|
const T * |
pxp3, |
|
|
const T * |
pxP4, |
|
|
float |
fMass1, |
|
|
float |
fMass2 = -999.9 , |
|
|
float |
fMass3 = -999.9 , |
|
|
float |
fMass4 = invalidAnswer |
|
) |
| |
|
staticinherited |
Definition at line 132 of file EventAnalysis.h.
140 fMass2 = ( fMass2 < 0.0f ) ? fMass1 : fMass2;
141 fMass3 = ( fMass3 < 0.0f ) ? fMass1 : fMass3;
142 fMass4 = ( fMass4 < 0.0f ) ? fMass1 : fMass4;
150 CLHEP::HepLorentzVector xLVec; xLVec.setVectM ( xTmp1, fMass1 );
151 CLHEP::HepLorentzVector xLVec2; xLVec2.setVectM( xTmp2, fMass2 );
152 CLHEP::HepLorentzVector xLVec3; xLVec3.setVectM( xTmp3, fMass3 );
153 CLHEP::HepLorentzVector xLVec4; xLVec4.setVectM( xTmp4, fMass4 );
159 return static_cast<float>( xLVec.m() );
◆ EvalInvMass() [2/2]
Definition at line 106 of file EventAnalysis.h.
113 fMass2 = ( fMass2 < 0.0f ) ? fMass1 : fMass2;
117 CLHEP::HepLorentzVector xLVec1; xLVec1.setVectM( xTmp1, fMass1 );
118 CLHEP::HepLorentzVector xLVec2; xLVec2.setVectM( xTmp2, fMass2 );
119 return static_cast<float>( xLVec1.invariantMass( xLVec2 ) );
◆ EvalPhi()
template<class T >
float EventAnalysis::EvalPhi |
( |
const T * |
pxP1, |
|
|
const T * |
pxP2 |
|
) |
| |
|
staticinherited |
◆ EvalPhiDiff()
template<class T >
float EventAnalysis::EvalPhiDiff |
( |
const T * |
pxP1, |
|
|
const T * |
pxP2 |
|
) |
| |
|
staticinherited |
Definition at line 190 of file EventAnalysis.h.
197 return static_cast<float>( xTmp1.deltaPhi(xTmp2) );
◆ EvalPt()
template<class T >
float EventAnalysis::EvalPt |
( |
const T * |
pxP1, |
|
|
const T * |
pxP2 |
|
) |
| |
|
staticinherited |
◆ EvalPtDiff()
template<class T >
float EventAnalysis::EvalPtDiff |
( |
const T * |
pxP1, |
|
|
const T * |
pxP2 |
|
) |
| |
|
staticinherited |
◆ EvalTransverseMass() [1/4]
template<class T >
float EventAnalysis::EvalTransverseMass |
( |
const T * |
pxP1, |
|
|
const T * |
pxP2, |
|
|
float |
fMETx, |
|
|
float |
fMETy |
|
) |
| |
|
staticinherited |
◆ EvalTransverseMass() [2/4]
template<class T >
float EventAnalysis::EvalTransverseMass |
( |
const T * |
pxP1, |
|
|
const T * |
pxP2, |
|
|
float |
fMETx, |
|
|
float |
fMETy, |
|
|
float |
fMass1, |
|
|
float |
fMass2 = invalidAnswer |
|
) |
| |
|
staticinherited |
Definition at line 279 of file EventAnalysis.h.
286 fMass2 = ( fMass2 < 0.0f ) ? fMass1 : fMass2;
288 CLHEP::Hep3Vector xTmp1 = CLHEP::Hep3Vector( pxP1->p4().Px() *
EAna::CGeV, pxP1->p4().Py() *
EAna::CGeV, 0.0f );
289 CLHEP::Hep3Vector xTmp2 = CLHEP::Hep3Vector( pxP2->p4().Px() *
EAna::CGeV, pxP2->p4().Py() *
EAna::CGeV, 0.0f );
290 CLHEP::Hep3Vector xTmp12 = xTmp1 + xTmp2;
291 CLHEP::Hep3Vector xTmp3 = CLHEP::Hep3Vector( fMETx, fMETy, 0.0
f );
292 CLHEP::HepLorentzVector xLVec1; xLVec1.setVectM( xTmp12, fMass1 );
293 CLHEP::HepLorentzVector xLVec2; xLVec2.setVectM( xTmp3, 0.0
f );
294 return static_cast<float>( xLVec1.invariantMass( xLVec2 ) );
◆ EvalTransverseMass() [3/4]
template<class T >
float EventAnalysis::EvalTransverseMass |
( |
const T * |
pxP1, |
|
|
float |
fMETx, |
|
|
float |
fMETy |
|
) |
| |
|
staticinherited |
◆ EvalTransverseMass() [4/4]
template<class T >
float EventAnalysis::EvalTransverseMass |
( |
const T * |
pxP1, |
|
|
float |
fMETx, |
|
|
float |
fMETy, |
|
|
float |
fMass1, |
|
|
float |
fMass2 = invalidAnswer |
|
) |
| |
|
staticinherited |
Definition at line 254 of file EventAnalysis.h.
261 fMass2 = ( fMass2 < 0.0f ) ? fMass1 : fMass2;
263 CLHEP::Hep3Vector xTmp1 = CLHEP::Hep3Vector( pxP1->p4().Px() *
EAna::CGeV, pxP1->p4().Py() *
EAna::CGeV, 0.0f );
264 CLHEP::Hep3Vector xTmp2 = CLHEP::Hep3Vector( fMETx, fMETy, 0.0
f );
265 CLHEP::HepLorentzVector xLVec1; xLVec1.setVectM( xTmp1, fMass1 );
266 CLHEP::HepLorentzVector xLVec2; xLVec2.setVectM( xTmp2, 0.0
f );
267 return static_cast<float>( xLVec1.invariantMass( xLVec2 ) );
◆ EvaluateAngle()
template<class T >
float EventAnalysis::EvaluateAngle |
( |
const T * |
pxP1, |
|
|
const T * |
pxP2 |
|
) |
| |
|
staticinherited |
Definition at line 163 of file EventAnalysis.h.
170 return static_cast<float>( xTmp1.angle(xTmp2) );
◆ finalize()
void MuonSelector::finalize |
( |
| ) |
|
|
virtual |
Definition at line 451 of file MuonSelector.cxx.
454 std::cout <<
" * MuonSelector* -- STATS -- " << std::endl
461 std::cout <<
" passall : " <<
m_passall << std::endl
◆ GetPtCut()
double MuonSelector::GetPtCut |
( |
| ) |
|
|
inline |
◆ Init()
void MuonSelector::Init |
( |
| ) |
|
|
virtual |
Reimplemented from EventAnalysis.
Definition at line 112 of file MuonSelector.cxx.
117 ( *m_msgStream) << MSG::INFO <<
" * MuonSelector::Init * m_muonSelectionTool.initialize() success :)" <<
endmsg;
118 if(
m_doDebug){ std::cout <<
" * MuonSelector::Init * m_muonSelectionTool.initialize() success :)" << std::endl;}
121 (*m_msgStream) << MSG::ERROR <<
" * MuonSelector::Init * FAILURE * Muon selction tool retrieving failed :( " <<
endmsg;
◆ operator=()
◆ passIPCuts()
bool MuonSelector::passIPCuts |
( |
| ) |
|
|
private |
Definition at line 349 of file MuonSelector.cxx.
358 if (
m_doDebug) std::cout <<
" * MuonSelector::passIPCuts * no IDTrk --> IP failure" << std::endl;
362 extz0 = IDTrk->
z0()+IDTrk->
vz();
364 std::cout <<
" * MuonSelector::passIPCuts *"
365 <<
" the IDTrack muon d0: " << extd0
366 <<
" the IDTrack muon z0: " << extz0 <<
" = " << IDTrk->
z0() <<
" + " << IDTrk->
vz() << std::endl;
370 if(
m_doDebug) std::cout <<
" * MuonSelector * passIPCuts() * no valid inDetTrackParticleLink(). Will use the combined muon IPs" << std::endl;
374 if(
m_doDebug) std::cout <<
" * MuonSelector * passIPCuts() * no valid CombinedTrackParticle. Giving up." << std::endl;
379 extz0 = CBTrk->
z0()+CBTrk->
vz();
381 std::cout <<
" * MuonSelector * passIPCuts() *"
382 <<
" the CBTrack muon d0: " << extd0
383 <<
" the CBTrack muon z0: " << extz0 <<
" = " << CBTrk->
z0() <<
" + " << CBTrk->
vz()<< std::endl;
392 if(
m_doDebug) std::cout <<
" * MuonSelector::passIPCuts ** fails because NO vertex collection "<< std::endl;
396 if ( vxContainer->size()>1 ) {
398 std::cout <<
" * MuonSelector::passIPCuts ** vertex container is filled with " << vxContainer->size() <<
" vertices" << std::endl;
401 for (
int ivtx=0; ivtx < (
int) vxContainer->size(); ivtx++) {
403 std::cout <<
" vertex " << ivtx+1 <<
" (x,y,z) = (" << thisVtx->
position().x()
414 bool goodmuonIP =
false;
415 float minDeltaZ = 99999.;
417 for (
int ivtx=0; ivtx < (
int) vxContainer->size(); ivtx++) {
421 if (std::abs(extz0 - thisVtx->
position().z()) < minDeltaZ) minDeltaZ = std::abs(extz0 - thisVtx->
position().z());
425 std::cout <<
" testing vtx: " << ivtx <<
" vtx.z= " << thisVtx->
position().z() <<
" trk.z= " << extz0 <<
" deltaZ= " << std::abs(extz0 - thisVtx->
position().z()) <<
" minDeltaZ= " << minDeltaZ << std::endl;
429 if(
m_doDebug) std::cout <<
" * MuonSelector::passIPCuts * this muon has passed the IPCuts for vertex " << ivtx+1
430 <<
" pVZcut= " << std::abs(extz0 - thisVtx->
position().z()) <<
" < " <<
m_diffZCut << std::endl
441 if(
m_doDebug) std::cout <<
" * MuonSelector::passIPCuts * this muon has passed the IPCuts. Zcut: "<<
m_pVZCut <<
" m_diffZCut " <<
m_diffZCut << std::endl;
446 if(
m_doDebug) std::cout <<
" * MuonSelector * passIPCuts() * this muon has not passed the IPCuts: " << std::endl;
◆ passIsolCuts()
bool MuonSelector::passIsolCuts |
( |
| ) |
|
|
private |
Definition at line 320 of file MuonSelector.cxx.
325 std::cout <<
" * MuonSelector::passIsolCuts * WARNING * No isolation variable stored on the muon" << std::endl;
326 std::cout <<
" * MuonSelector::passIsolCuts * this muon did not pass the IsoCuts " << std::endl;
334 if(
m_doDebug) std::cout <<
" * MuonSelector::passIsolCuts * muon pt: " <<
pt <<
" ptSum(ptcone40): "<< ptSum << std::endl;
336 if(
m_doDebug) std::cout <<
" * MuonSelector::passIsolCuts * this muon passed the IsoCuts ptcone40 / pt= "
337 << ptSum <<
" / " <<
pt <<
" = " << ptSum /
pt
338 <<
" < IsoCut(" <<
m_IsoCut <<
") " << std::endl;
343 if(
m_doDebug) std::cout <<
" * MuonSelector::passIsolCuts * this muon did not pass the IsoCuts:" << std::endl;
◆ passPtCuts()
bool MuonSelector::passPtCuts |
( |
| ) |
|
|
private |
Definition at line 274 of file MuonSelector.cxx.
277 if(
m_doDebug) std::cout <<
" * MuonSelector::passPtCuts * START *" << std::endl;
283 double pt = 0, ptID, ptMS,ptCB;
285 if ( !(pxMuonID || pxMuonMS || pxMuonCB)){
286 if(
m_doDebug) std::cout <<
" * MuonSelector::passPtCuts * NO inDetTrackParticle && muonSpectrometerTrackParticle && CombinedTrackParticle: " << std::endl;
292 ptID = pxMuonID ? pxMuonID->
pt() : 0.0 ;
293 ptMS = pxMuonMS ? pxMuonMS->
pt() : 0.0 ;
294 ptCB = pxMuonCB ? pxMuonCB->
pt() : 0.0 ;
297 if(
m_doDebug) std::cout <<
" * MuonSelector::passPtCuts * pt of each segments of this muon pxMuon: " <<
pt << std::endl
298 <<
" ptID: " << ptID << std::endl
299 <<
" ptMS: " << ptMS << std::endl
300 <<
" ptCB: " << ptCB << std::endl
301 <<
" fMEta pxMuon->eta(): " << fMEta << std::endl;
310 if(
m_doDebug) std::cout <<
" * MuonSelector::passPtCuts * this muon is in eta range |eta|= " << fMEta <<
" < EtaCut(" <<
m_fEtaCut <<
") " << std::endl
311 <<
" and passed the PtCuts (" <<
m_combPtCut <<
") "<< std::endl;
315 if(
m_doDebug) std::cout <<
" * MuonSelector::passPtCuts * this muon did not pass the PtCuts (reco pt=" <<
pt <<
") or Eta cut " <<
m_fEtaCut << std::endl;
◆ passQualCuts()
bool MuonSelector::passQualCuts |
( |
| ) |
|
|
private |
Definition at line 219 of file MuonSelector.cxx.
221 bool goodTrack =
false;
244 if(
m_doDebug) std::cout <<
" * MuonSelector * passQualCuts() * eBLhits: " << eBLhits
245 <<
" nBLhits: " << nBLhits
246 <<
" nhitsPIX: " << nhitsPIX
247 <<
" nPIXLayers: " << nContribPixLayers
248 <<
" nhitsSCT: " << nhitsSCT
249 <<
" Silicon holes: " << nPIXH + nSCTH
250 <<
" nhitsTRT: " << nhitsTRT
251 <<
" nTRTholes: " << nTRTH
254 if (((!eBLhits) || (nBLhits > 0))
255 && (nhitsPIX + nPIXDS > 1 )
256 && (nhitsSCT + nSCTDS >=6 )
257 && (nPIXH + nSCTH < 2 ) ) {
264 std::cout <<
" * MuonSelector * passQualCuts() * this muon satisfies the hits number QualCuts " << std::endl;
267 std::cout <<
" * MuonSelector * passQualCuts() * this muon did not pass the hits number QualCuts " << std::endl;
◆ passSelection()
Definition at line 136 of file MuonSelector.cxx.
138 if(
m_doDebug){ std::cout <<
" * MuonSelector::passSelection * START * new muon " << pxMuon <<
" with pt: " << pxMuon->
pt() << std::endl; }
140 std::vector<bool> passes;
150 passes.push_back(pass);
151 if (
m_doDebug && !pass) std::cout <<
" * MuonSelector::passSelection * Muon Fails QualSelection"<<std::endl;
157 passes.push_back(pass);
158 if (
m_doDebug && !pass) std::cout<<
" * MuonSelector::passSelection * Muon Fails Iso Selection"<<std::endl;
165 passes.push_back(pass);
166 if (
m_doDebug && !pass) std::cout<<
" * MuonSelector::passSelection * Muon Fails pT Selection"<<std::endl;
172 passes.push_back(pass);
173 if (
m_doDebug && !pass) std::cout<<
" * MuonSelector::passSelection * Muon Fails IP Selection"<<std::endl;
179 if (
m_doDebug) std::cout <<
" * MuonSelector::passSelection * muon quality from muonsSelectionTool: " << my_quality << std::endl;
187 passes.push_back(pass);
188 if (
m_doDebug && pass) std::cout<<
" * MuonSelector::passSelection * Muon Passes official m_muonSelectionTool (medium) Selection :)" << std::endl;
189 if (
m_doDebug && !pass) std::cout<<
" * MuonSelector::passSelection * Muon Fails official m_muonSelectionTool (medium) Selection" << std::endl;
194 for (
int i=0;
i <
int(passes.size());
i++)
196 if(
m_doDebug) std::cout <<
" * MuonSelector::passSelection * BAD MUON * muon haven't passed the " <<
i+1 <<
"th selection " << std::endl;
203 if(
m_doDebug){ std::cout <<
" * MuonSelector::passSelection * completed. GOOD MUON " << std::endl; }
◆ Reco()
bool MuonSelector::Reco |
( |
| ) |
|
|
virtual |
◆ Register()
void EventAnalysis::Register |
( |
| ) |
|
|
privateinherited |
◆ SetCustomMuonSelectionTool()
◆ setDebug()
void MuonSelector::setDebug |
( |
bool |
debug | ) |
|
|
inline |
◆ SetMuonQualityRequirement()
void MuonSelector::SetMuonQualityRequirement |
( |
std::string |
newname | ) |
|
◆ SetPtCut()
void MuonSelector::SetPtCut |
( |
double |
newvalue | ) |
|
|
inline |
◆ invalidAnswer
constexpr float EventAnalysis::invalidAnswer {-999.9f} |
|
staticconstexprinherited |
◆ m_bCutOnCombKine
bool MuonSelector::m_bCutOnCombKine |
|
private |
◆ m_bLock
bool MuonSelector::m_bLock |
|
private |
◆ m_combPtCut
double MuonSelector::m_combPtCut |
|
private |
◆ m_coneSize
double MuonSelector::m_coneSize {} |
|
private |
◆ m_diffPtCut
float MuonSelector::m_diffPtCut |
|
private |
◆ m_diffZCut
float MuonSelector::m_diffZCut |
|
private |
◆ m_doDebug
bool MuonSelector::m_doDebug |
|
private |
◆ m_doIPSelection
bool MuonSelector::m_doIPSelection |
|
private |
◆ m_doIsoSelection
bool MuonSelector::m_doIsoSelection |
|
private |
◆ m_doMCPSelection
bool MuonSelector::m_doMCPSelection |
|
private |
◆ m_doPtSelection
bool MuonSelector::m_doPtSelection |
|
private |
◆ m_doQualSelection
bool MuonSelector::m_doQualSelection |
|
private |
◆ m_fEtaCut
float MuonSelector::m_fEtaCut |
|
private |
◆ m_fIDChiPerDofCut
float MuonSelector::m_fIDChiPerDofCut |
|
private |
◆ m_fIDPtCut
float MuonSelector::m_fIDPtCut |
|
private |
◆ m_IDSiHitsCut
int MuonSelector::m_IDSiHitsCut |
|
private |
◆ m_IsoCut
double MuonSelector::m_IsoCut |
|
private |
◆ m_msgStream
MsgStream* MuonSelector::m_msgStream |
|
private |
◆ m_muonSelectionTool
◆ m_passall
unsigned int MuonSelector::m_passall {} |
|
private |
◆ m_passip
unsigned int MuonSelector::m_passip {} |
|
private |
◆ m_passiso
unsigned int MuonSelector::m_passiso {} |
|
private |
◆ m_passmcp
unsigned int MuonSelector::m_passmcp {} |
|
private |
◆ m_passpt
unsigned int MuonSelector::m_passpt {} |
|
private |
◆ m_passqual
unsigned int MuonSelector::m_passqual {} |
|
private |
◆ m_ptMSCut
float MuonSelector::m_ptMSCut |
|
private |
◆ m_pVZCut
float MuonSelector::m_pVZCut |
|
private |
◆ m_pxMuon
◆ m_requestedMuonQuality
int MuonSelector::m_requestedMuonQuality {} |
|
private |
◆ m_testedmuons
unsigned int MuonSelector::m_testedmuons {} |
|
private |
◆ m_ucID_PIXCut
unsigned char MuonSelector::m_ucID_PIXCut |
|
private |
◆ m_ucID_SCTCut
unsigned char MuonSelector::m_ucID_SCTCut |
|
private |
◆ m_ucID_TRTCut
unsigned char MuonSelector::m_ucID_TRTCut |
|
private |
◆ m_ucJMuon_Cut
unsigned char MuonSelector::m_ucJMuon_Cut |
|
private |
◆ m_uNumInstances
unsigned int MuonSelector::m_uNumInstances = 0U |
|
private |
◆ m_uPassedEvents
unsigned int EventAnalysis::m_uPassedEvents |
|
protectedinherited |
◆ m_x1DHistograms
std::map<unsigned int, TH1F*> EventAnalysis::m_x1DHistograms |
|
protectedinherited |
◆ m_x1DProfHistograms
std::map<unsigned int, TProfile*> EventAnalysis::m_x1DProfHistograms |
|
protectedinherited |
◆ m_x2DHistograms
std::map<unsigned int, TH2F*> EventAnalysis::m_x2DHistograms |
|
protectedinherited |
◆ m_x2DProfHistograms
std::map<unsigned int, TProfile2D*> EventAnalysis::m_x2DProfHistograms |
|
protectedinherited |
◆ m_xSampleName
std::string EventAnalysis::m_xSampleName |
|
protectedinherited |
The documentation for this class was generated from the following files:
static float EvalInvMass(const T *pxP1, const T *pxP2, float fMass1, float fMass2=invalidAnswer)
virtual double pt() const override final
The transverse momentum ( ) of the particle.
@ numberOfPixelHoles
number of pixel layers on track with absence of hits [unit8_t].
bool isolation(float &value, const Iso::IsolationType information) const
Accessor for Isolation values.
size_t nTrackParticles() const
Get the number of tracks associated with this vertex.
Scalar phi() const
phi method
@ expectBLayerHit
Do we expect a b-layer hit for this track? [unit8_t] (should be [bool])
const TrackParticle * trackParticle(TrackParticleType type) const
Returns a pointer (which can be NULL) to the TrackParticle used in identification of this muon.
Scalar perp() const
perp method - perpenticular length
bool summaryValue(uint8_t &value, const SummaryType &information) const
Accessor for TrackSummary values.
float vz() const
The z origin for the parameters.
unsigned char m_ucID_SCTCut
virtual double eta() const
The pseudorapidity ( ) of the particle.
float z0() const
Returns the parameter.
unsigned char m_ucID_TRTCut
@ numberOfPixelHits
these are the pixel hits, including the b-layer [unit8_t].
@ numberOfTRTHits
number of TRT hits [unit8_t].
const Amg::Vector3D & position() const
Returns the 3-pos.
VxType::VertexType vertexType() const
The type of the vertex.
std::map< unsigned int, TH1F * > m_x1DHistograms
@ numberOfBLayerHits
these are the hits in the first pixel layer, i.e.
IMessageSvc * getMessageSvc(bool quiet=false)
unsigned char m_ucID_PIXCut
float d0() const
Returns the parameter.
ToolHandle< CP::IMuonSelectionTool > m_muonSelectionTool
const xAOD::Muon * m_pxMuon
unsigned int m_uNumInstances
std::map< unsigned int, TH2F * > m_x2DHistograms
static float EvalTransverseMass(const T *pxP1, float fMETx, float fMETy, float fMass1, float fMass2=invalidAnswer)
int m_requestedMuonQuality
static CLHEP::Hep3Vector calculateMomentum(const T *pP)
virtual double pt() const
The transverse momentum ( ) of the particle.
unsigned char m_ucJMuon_Cut
unsigned int m_testedmuons
@ numberOfSCTHoles
number of SCT holes [unit8_t].
std::map< unsigned int, TProfile * > m_x1DProfHistograms
std::string to_string(const DetectorType &type)
const ElementLink< TrackParticleContainer > & inDetTrackParticleLink() const
Returns an ElementLink to the InnerDetector TrackParticle used in identification of this muon.
std::map< unsigned int, TProfile2D * > m_x2DProfHistograms
Class describing a Vertex.
@ numberOfSCTDeadSensors
number of dead SCT sensors crossed [unit8_t].
@ numberOfContribPixelLayers
number of contributing layers of the pixel detector [unit8_t].
@ numberOfSCTHits
number of hits in SCT [unit8_t].
@ numberOfPixelDeadSensors
number of dead pixel sensors crossed [unit8_t].
Class describing a TrackParticle.
@ numberOfTRTHoles
number of TRT holes [unit8_t].
std::string m_xSampleName
static constexpr float invalidAnswer