|
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef MUONEFFICIENCYCORRECTION_SYSTHANDLER_H
6 #define MUONEFFICIENCYCORRECTION_SYSTHANDLER_H
18 #include <TDirectory.h>
74 PtKinematicSystHandler(std::unique_ptr<HistHandler> pt_flatnesss, std::unique_ptr<HistHandler> energy_loss);
126 void fillMap(TDirectory* InDir, std::map<
Ranges, std::unique_ptr<TF1>>& systPolynomials);
KinVariable GetMuonVariableToUse(const std::string &name)
void fillMap(TDirectory *InDir, std::map< Ranges, std::unique_ptr< TF1 >> &systPolynomials)
std::pair< float, float > Ranges
CorrectionCode GetKineDependent(const xAOD::Muon &mu, float &Eff) const override
Add an additional uncertainty to the muon depending on its kinematics.
PrimodialPtSystematic(std::unique_ptr< HistHandler > HistHandler)
float(IKinematicSystHandler::* KinVariable)(const xAOD::Muon &mu) const
Typedef to prepare function pointers to the muon.
std::map< Ranges, std::unique_ptr< TF1 > > m_syst2Stations
std::string getNextProperty(std::string &sstr) const
virtual ~BadMuonVetoSystHandler()
Extra systematic assigned for the TTVA non-closure.
float Pt(const xAOD::Muon &mu) const
bool initialize() override
Initialize method to load the inputs and check that everything will work as expected.
Select isolated Photons, Electrons and Muons.
void SetSystematicWeight(float syst_weight) override
Set's the absolute scaling of the systematic.
CP::CorrectionCode findAppropiatePolynomial(const xAOD::Muon &mu, TF1 *&Poly) const
virtual CorrectionCode GetKineDependent(const xAOD::Muon &mu, float &Eff) const =0
Add an additional uncertainty to the muon depending on its kinematics.
CorrectionCode GetKineDependent(const xAOD::Muon &mu, float &Eff) const override
Add an additional uncertainty to the muon depending on its kinematics.
std::unique_ptr< HistHandler > m_Handler
float AbsEta(const xAOD::Muon &mu) const
BadMuonVetoSystHandler(TDirectory *InDir_3Stations, TDirectory *InDir_2Stations=nullptr)
std::unique_ptr< HistHandler > m_Handler
virtual ~IKinematicSystHandler()=default
bool initialize() override
Initialize method to load the inputs and check that everything will work as expected.
CorrectionCode GetKineDependent(const xAOD::Muon &mu, float &eff) const override
Add an additional uncertainty to the muon depending on its kinematics.
float PtGeV(const xAOD::Muon &mu) const
std::unique_ptr< HistHandler > m_flatness
PtKinematicSystHandler(std::unique_ptr< HistHandler > pt_flatnesss, std::unique_ptr< HistHandler > energy_loss)
Constructor having two histhandler objects inside. The.
CorrectionCode GetKineDependent(const xAOD::Muon &mu, float &Eff) const override
Add an additional uncertainty to the muon depending on its kinematics.
bool initialize() override
Initialize method to load the inputs and check that everything will work as expected.
Return value from object correction CP tools.
float Eta(const xAOD::Muon &mu) const
void SetSystematicWeight(float SystWeight) override
Set's the absolute scaling of the systematic.
virtual void SetSystematicWeight(float SystWeight)=0
Set's the absolute scaling of the systematic.
std::map< Ranges, std::unique_ptr< TF1 > > m_syst3Stations
bool initialize() override
Initialize method to load the inputs and check that everything will work as expected.
The PrimodialPtSystematic was the former PtKinematicSystHandler.
virtual bool initialize()=0
Initialize method to load the inputs and check that everything will work as expected.
TTVAClosureSysHandler(std::unique_ptr< HistHandler > HistHandler)
Z->mumu reconstruction scale-factors are delivered in eta-phi maps integrating out any pt-dependence.
std::unique_ptr< HistHandler > m_loss
void SetSystematicWeight(float SystWeight) override
Set's the absolute scaling of the systematic.
void SetSystematicWeight(float SystWeight) override
Set's the absolute scaling of the systematic.