ATLAS Offline Software
Loading...
Searching...
No Matches
ResidualOffsetCorrection.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef JETCALIBTOOLS_RESIDUALOFFSETCORRECTION_H
6#define JETCALIBTOOLS_RESIDUALOFFSETCORRECTION_H 1
7
8/* Implementation of ResidualOffsetCorrection class
9 * This class will apply the residual offset pile up correction
10 *
11 * Author: Joe Taenzer (joseph.taenzer@cern.ch)
12 * Date: August 15 2013
13 */
14
15
18#include "TString.h"
19#include <vector>
20#include <string>
21
22class TEnv;
23class TAxis;
25
27{
28
29 public:
31 ResidualOffsetCorrection(const std::string& name, TEnv* config, TString jetAlgo, TString calibAreaTag, bool isData, bool dev);
33
34 virtual StatusCode initialize();
35
36 double GetResidualOffset ( double abseta, double mu, double NPV, int nJet, bool MuOnly, bool NOnly ) const;
37
38 private:
39 double GetResidualOffsetET(double abseta, double mu, double NPV, int nJet, bool MuOnly, bool NOnly,
40 const std::vector<double>& OffsetMu,
41 const std::vector<double>& OffsetNPV,
42 const std::vector<double>& OffsetNjet,
43 const TAxis *OffsetBins) const;
44
45 double GetNPVBeamspotCorrection(double NPV) const;
46
47 private:
48 TEnv * m_config{};
50 bool m_dev{};
51 bool m_isData{};
52 static constexpr float m_GeV = 1000;
53
55
57 TAxis * m_resOffsetBins{};
59 double m_muSF{};
61 bool m_useNjet{};
62
64
65};
66
67#endif
double GetResidualOffsetET(double abseta, double mu, double NPV, int nJet, bool MuOnly, bool NOnly, const std::vector< double > &OffsetMu, const std::vector< double > &OffsetNPV, const std::vector< double > &OffsetNjet, const TAxis *OffsetBins) const
std::vector< double > m_resOffsetNPV
std::vector< double > m_resOffsetMu
double GetResidualOffset(double abseta, double mu, double NPV, int nJet, bool MuOnly, bool NOnly) const
NPVBeamspotCorrection * m_npvBeamspotCorr
std::vector< double > m_resOffsetNjet
double GetNPVBeamspotCorrection(double NPV) const
Class mimicking the AthMessaging class from the offline software.