 |
DAS
3.0
Das Analysis System
|
Guesses the selection from the histogram name in the maps, and applies it by setting the weights to 0 to muons that don't pass the selection.
Note: tuned for Run 2 UL
|
bool | passes (const RecMuon &muon) const override |
|
void | inputs (std::vector< correction::Variable::Type > &inputs, const RecMuon &muon) const override |
|
std::pair< double, double > | varied (std::vector< correction::Variable::Type > &inputs, double sf, const correction::Variable::Type &uncname) const override |
|
int | binIndex (const RecMuon &muon) const override |
|
void | addBinWiseUnc (const std::string &name, const correction::Variable::Type &input) |
|
void | addGlobalUnc (const std::string &name, const correction::Variable::Type &input) |
|
virtual bool | passes (const DAS::RecMuon &obj, const Context &... ctx) const=0 |
|
virtual void | inputs (std::vector< correction::Variable::Type > &inputs, const DAS::RecMuon &obj, const Context &... ctx) const=0 |
|
virtual int | binIndex (const DAS::RecMuon &obj, const Context &... ctx) const |
|
|
correction::Correction::Ref | m_cref |
|
◆ IDApplier()
IDApplier |
( |
const fs::path & |
filePath, |
|
|
TString |
name, |
|
|
int |
year, |
|
|
bool |
correction, |
|
|
bool |
uncertainties |
|
) |
| |
|
inline |
154 auto uncname =
name +
"_stat";
157 for (
auto var : {
"AltSig",
"massBin",
"massRange",
"tagIso"}) {
158 uncname =
name +
"_" + var;
162 name.ReplaceAll(
"andIPCut",
"");
164 DEN =
name(TRegexp(
"_DEN_.*"));
166 DEN.ReplaceAll(
"_DEN_",
"");
170 NUM.ReplaceAll(
"NUM_",
"");
173 cout <<
"Initialisation of " << __func__ <<
" done" << endl;
◆ binIndex()
int binIndex |
( |
const RecMuon & |
muon | ) |
const |
|
inlineoverrideprotected |
◆ getMask()
static Selector getMask |
( |
const string & |
s | ) |
|
|
inlinestaticprivate |
Translate table name from Muon POG ROOT file into selector.
136 BOOST_THROW_EXCEPTION( invalid_argument(s +
" is not recognised.") );
◆ inputs()
void inputs |
( |
std::vector< correction::Variable::Type > & |
inputs, |
|
|
const RecMuon & |
muon |
|
) |
| const |
|
inlineoverrideprotected |
189 inputs = {muon.p4.Eta(), muon.p4.Pt(),
"nominal"};
◆ passes()
bool passes |
( |
const RecMuon & |
muon | ) |
const |
|
inlineoverrideprotected |
- Todo:
- IPCut? (unless it's already included in IPCut?)
179 if (muon.p4.Pt() <
pt_bins.front())
return false;
183 || (
num & muon.selectors) ==
num;
◆ varied()
std::pair<double, double> varied |
( |
std::vector< correction::Variable::Type > & |
inputs, |
|
|
double |
sf, |
|
|
const correction::Variable::Type & |
uncname |
|
) |
| const |
|
inlineoverrideprotectedvirtual |
◆ binning
Dummy histogram to compute bin numbers.
◆ den
◆ DEN
◆ eta_bins_run2
constexpr std::array eta_bins_run2 |
|
staticconstexprprivate |
◆ eta_bins_run3
constexpr std::array eta_bins_run3 |
|
staticconstexprprivate |
Initial value:{
-2.4, -2.1, -1.6, -1.2, -0.9, -0.3, -0.2, 0.2, 0.3, 0.9, 1.2, 1.6, 2.1, 2.4}
eta binning used for MUO ID scale factors in Run 3
- Todo:
- Extract bins from correctionlib? See https://github.com/cms-nanoAOD/correctionlib/issues/286
◆ name
◆ num
◆ NUM
◆ pt_bins
constexpr std::array pt_bins |
|
staticconstexprprivate |
The documentation for this class was generated from the following file:
TString name
Definition: applyMuonSelection.cc:105
@ TkIsoLoose
Definition: applyMuonSelection.cc:53
@ PFIsoVeryTight
Definition: applyMuonSelection.cc:52
static constexpr std::array pt_bins
Definition: applyMuonSelection.cc:99
void addBinWiseUnc(const std::string &name, const correction::Variable::Type &input)
Loads a systematic with bin-by-bin correlations.
Definition: GenericSFApplier.h:533
Selector num
Definition: applyMuonSelection.cc:103
@ PFIsoTight
Definition: applyMuonSelection.cc:51
int year
Definition: Ntupliser_cfg.py:67
@ PFIsoVeryVeryTight
Definition: applyMuonSelection.cc:66
@ CutBasedIdMedium
Definition: applyMuonSelection.cc:43
TH2C binning
Dummy histogram to compute bin numbers.
Definition: applyMuonSelection.cc:101
TString NUM
Definition: applyMuonSelection.cc:105
string unc
Definition: jercExample.py:70
correction::Correction::Ref m_cref
Correction to be used.
Definition: GenericSFApplier.h:343
CorrectionlibSFApplier(const std::filesystem::path &filePath, const std::string &name, bool correction, bool uncertainties)
Constructor.
Definition: GenericSFApplier.h:418
static Selector getMask(const string &s)
Translate table name from Muon POG ROOT file into selector.
Definition: applyMuonSelection.cc:111
@ PFIsoLoose
Definition: applyMuonSelection.cc:49
@ CutBasedIdTrkHighPt
Definition: applyMuonSelection.cc:47
@ CutBasedIdTight
Definition: applyMuonSelection.cc:45
@ CutBasedIdMediumPrompt
Definition: applyMuonSelection.cc:44
@ PFIsoVeryLoose
Definition: applyMuonSelection.cc:48
@ CutBasedIdLoose
Definition: applyMuonSelection.cc:42
void inputs(std::vector< correction::Variable::Type > &inputs, const RecMuon &muon) const override
Definition: applyMuonSelection.cc:186
TString DEN
Definition: applyMuonSelection.cc:105
@ SoftCutBasedId
Definition: applyMuonSelection.cc:55
static constexpr std::array eta_bins_run3
Definition: applyMuonSelection.cc:94
@ CutBasedIdGlobalHighPt
Definition: applyMuonSelection.cc:46
@ TkIsoTight
Definition: applyMuonSelection.cc:54
sf
Definition: jercExample.py:112
@ None
Definition: applyMuonSelection.cc:41
void addGlobalUnc(const std::string &name, const correction::Variable::Type &input)
Loads a fully correlated systematic.
Definition: GenericSFApplier.h:549
@ PFIsoMedium
Definition: applyMuonSelection.cc:50
static constexpr std::array eta_bins_run2
Definition: applyMuonSelection.cc:89
Selector den
Definition: applyMuonSelection.cc:103