Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
Public Types | Public Member Functions | Public Attributes | List of all members
CP::IKinematicSystHandler Class Referenceabstract

#include <KinematicSystHandler.h>

Inheritance diagram for CP::IKinematicSystHandler:
Collaboration diagram for CP::IKinematicSystHandler:

Public Types

typedef float(IKinematicSystHandler::* KinVariable) (columnar::MuonId mu) const
 Typedef to prepare function pointers to the muon. More...
 

Public Member Functions

virtual CorrectionCode GetKineDependent (columnar::MuonId mu, float &Eff) const =0
 Add an additional uncertainty to the muon depending on its kinematics. More...
 
virtual void SetSystematicWeight (float SystWeight)=0
 Set's the absolute scaling of the systematic. More...
 
virtual bool initialize ()=0
 Initialize method to load the inputs and check that everything will work as expected. More...
 
virtual ~IKinematicSystHandler ()=default
 
KinVariable GetMuonVariableToUse (const std::string &name)
 
float Eta (columnar::MuonId mu) const
 
float Pt (columnar::MuonId mu) const
 
float PtGeV (columnar::MuonId mu) const
 
float AbsEta (columnar::MuonId mu) const
 

Public Attributes

columnar::MuonAccessor< columnar::ObjectColumnmuonsHandle {*this, "Muons"}
 
columnar::MuonAccessor< float > ptAcc {*this, "pt"}
 
columnar::MuonAccessor< float > etaAcc {*this, "eta"}
 

Detailed Description

Definition at line 37 of file KinematicSystHandler.h.

Member Typedef Documentation

◆ KinVariable

typedef float(IKinematicSystHandler::* CP::IKinematicSystHandler::KinVariable) (columnar::MuonId mu) const

Typedef to prepare function pointers to the muon.

Definition at line 50 of file KinematicSystHandler.h.

Constructor & Destructor Documentation

◆ ~IKinematicSystHandler()

virtual CP::IKinematicSystHandler::~IKinematicSystHandler ( )
virtualdefault

Member Function Documentation

◆ AbsEta()

float CP::IKinematicSystHandler::AbsEta ( columnar::MuonId  mu) const

Definition at line 17 of file KinematicSystHandler.cxx.

17  {
18  return std::abs(mu(etaAcc));
19  }

◆ Eta()

float CP::IKinematicSystHandler::Eta ( columnar::MuonId  mu) const

Definition at line 8 of file KinematicSystHandler.cxx.

8  {
9  return mu(etaAcc);
10  }

◆ GetKineDependent()

virtual CorrectionCode CP::IKinematicSystHandler::GetKineDependent ( columnar::MuonId  mu,
float &  Eff 
) const
pure virtual

Add an additional uncertainty to the muon depending on its kinematics.

Implemented in CP::BadMuonVetoSystHandler, CP::TTVAClosureSysHandler, CP::PrimodialPtSystematic, and CP::PtKinematicSystHandler.

◆ GetMuonVariableToUse()

IKinematicSystHandler::KinVariable CP::IKinematicSystHandler::GetMuonVariableToUse ( const std::string &  name)

Definition at line 21 of file KinematicSystHandler.cxx.

21  {
22  if (name == "pt") return &IKinematicSystHandler::Pt;
23  if (name == "ptGeV") return &IKinematicSystHandler::PtGeV;
24  if (name == "eta") return &IKinematicSystHandler::Eta;
25  if (name == "AbsEta") return &IKinematicSystHandler::AbsEta;
26  return nullptr;
27  }

◆ initialize()

virtual bool CP::IKinematicSystHandler::initialize ( )
pure virtual

Initialize method to load the inputs and check that everything will work as expected.

Implemented in CP::BadMuonVetoSystHandler, CP::TTVAClosureSysHandler, CP::PrimodialPtSystematic, and CP::PtKinematicSystHandler.

◆ Pt()

float CP::IKinematicSystHandler::Pt ( columnar::MuonId  mu) const

Definition at line 11 of file KinematicSystHandler.cxx.

11  {
12  return mu(ptAcc);
13  }

◆ PtGeV()

float CP::IKinematicSystHandler::PtGeV ( columnar::MuonId  mu) const

Definition at line 14 of file KinematicSystHandler.cxx.

14  {
15  return mu(ptAcc) / 1.e3;
16  }

◆ SetSystematicWeight()

virtual void CP::IKinematicSystHandler::SetSystematicWeight ( float  SystWeight)
pure virtual

Set's the absolute scaling of the systematic.

For daily puposes it's usually either 1 or -1 indicating if the instance is an upwards or downwards variation.

Implemented in CP::BadMuonVetoSystHandler, CP::TTVAClosureSysHandler, CP::PrimodialPtSystematic, and CP::PtKinematicSystHandler.

Member Data Documentation

◆ etaAcc

columnar::MuonAccessor<float> CP::IKinematicSystHandler::etaAcc {*this, "eta"}

Definition at line 60 of file KinematicSystHandler.h.

◆ muonsHandle

columnar::MuonAccessor<columnar::ObjectColumn> CP::IKinematicSystHandler::muonsHandle {*this, "Muons"}

Definition at line 58 of file KinematicSystHandler.h.

◆ ptAcc

columnar::MuonAccessor<float> CP::IKinematicSystHandler::ptAcc {*this, "pt"}

Definition at line 59 of file KinematicSystHandler.h.


The documentation for this class was generated from the following files:
CP::IKinematicSystHandler::AbsEta
float AbsEta(columnar::MuonId mu) const
Definition: KinematicSystHandler.cxx:17
CP::IKinematicSystHandler::Eta
float Eta(columnar::MuonId mu) const
Definition: KinematicSystHandler.cxx:8
CP::IKinematicSystHandler::Pt
float Pt(columnar::MuonId mu) const
Definition: KinematicSystHandler.cxx:11
CP::IKinematicSystHandler::ptAcc
columnar::MuonAccessor< float > ptAcc
Definition: KinematicSystHandler.h:59
CP::IKinematicSystHandler::etaAcc
columnar::MuonAccessor< float > etaAcc
Definition: KinematicSystHandler.h:60
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:240
CP::IKinematicSystHandler::PtGeV
float PtGeV(columnar::MuonId mu) const
Definition: KinematicSystHandler.cxx:14
CaloNoise_fillDB.mu
mu
Definition: CaloNoise_fillDB.py:53