|
ATLAS Offline Software
|
Go to the documentation of this file.
20 :
EL::AnaAlgorithm(
name, svcLoc)
50 else ATH_MSG_INFO(
"No requirement on pairs of leptons. ");
54 return StatusCode::SUCCESS;
67 bool eventHasLeptonPair =
false;
73 if (analEls->
size() > 1) eventHasLeptonPair =
true;
78 if (analMus->
size() > 1) eventHasLeptonPair =
true;
81 else eventHasLeptonPair =
true;
82 ATH_MSG_DEBUG(
"Event has lepton pair?: " << (
int)eventHasLeptonPair);
102 for (
auto vtx : *vtxs) {
115 for (
auto el : *els ) {
123 int el_nInnerExpPix = -1;
132 else if (1 == expNextInPix) {
139 auto tp =
el->trackParticle();
141 if (primaryVtx) z0stheta = (
tp->z0() - primaryVtx->
z() +
tp->vz()) *
sin(
tp->theta());
149 float clEta =
el->caloCluster()->eta();
150 float clPhi =
el->caloCluster()->phi();
156 ATH_MSG_DEBUG(
"el pt,eta,ph " <<
el->pt()/1000. <<
", " <<
el->eta() <<
", " <<
el->phi());
160 ATH_MSG_DEBUG(
"Set cluster eta, phi to " << clEta <<
", " << clPhi);
166 return StatusCode::SUCCESS;
void set(const SG::AuxElement &object, const T &value, const CP::SystematicSet &sys) const
set the object decoration for the given systematic
SysReadHandle< xAOD::VertexContainer > m_vertexKey
size_t nTrackParticles() const
Get the number of tracks associated with this vertex.
StatusCode initialize() override
StatusCode execute() override
double d0significance(const xAOD::TrackParticle *tp, double d0_uncert_beam_spot_2)
SysReadHandle< xAOD::ElectronContainer > m_analElectronContKey
CP::SysWriteDecorHandle< float > m_clPhi
float beamPosSigmaX() const
The width of the beam spot in the X direction.
@ expectInnermostPixelLayerHit
Do we expect a 0th-layer barrel hit for this track?
::StatusCode retrieve(const T *&object, const CP::SystematicSet &sys) const
retrieve the object for the given name
CP::SysWriteDecorHandle< float > m_clEta
const std::vector< CP::SystematicSet > & systematicsVector() const
the list of systematics to loop over
ElectronSiHitDecAlg(const std::string &name, ISvcLocator *pSvcLocator)
the standard constructor
Select isolated Photons, Electrons and Muons.
Gaudi::Property< bool > m_requireTwoLeptons
StatusCode initialize(SysListHandle &sysListHandle)
initialize this handle
CP::SysWriteDecorHandle< float > m_d0Normalized
CP::SysWriteDecorHandle< uint32_t > m_evtOKDec
Decorator for SiHit electron for event requirement on a pair of leptons.
@ expectNextToInnermostPixelLayerHit
Do we expect a 1st-layer barrel hit for this track?
CP::SysWriteDecorHandle< float > m_z0stheta
Decorators for the extra information from clusters and tracks for SiHit electrons.
::StatusCode initialize()
intialize this property
SysReadHandle< xAOD::MuonContainer > m_analMuonContKey
::StatusCode StatusCode
StatusCode definition for legacy code.
SysReadHandle< xAOD::ElectronContainer > m_electronContainerKey
StatusCode initialize(SysListHandle &sysListHandle, const ISysHandleBase &objectHandle)
initialize this handle
SysListHandle m_systematicsList
the systematics list we run
This module defines the arguments passed from the BATCH driver to the BATCH worker.
constexpr SelectionType selectionReject()
the selection decoration to apply for objects that are rejected
CP::SysWriteDecorHandle< int > m_nInnerExpPix
float z() const
Returns the z position.
size_t index() const
Return the index of this element within its container.
float beamPosSigmaY() const
The width of the beam spot in the Y direction.
@ numberOfNextToInnermostPixelLayerHits
these are the hits in the 1st pixel barrel layer
Class describing the basic event information.
SysReadHandle< xAOD::EventInfo > m_eventInfoKey
float beamPosSigmaXY() const
The beam spot shape's X-Y correlation.
Class describing a Vertex.
constexpr SelectionType selectionAccept()
the selection decoration to apply for objects that are selected
virtual std::string getNamePattern() const override
get the name pattern before substitution
size_type size() const noexcept
Returns the number of elements in the collection.
@ numberOfInnermostPixelLayerHits
these are the hits in the 0th pixel barrel layer