11 static const string ordinal[9] = {
"1st",
"2nd",
"3rd",
"4th",
"5th",
"6th",
"7th",
"8th",
"9th" };
27 "Lepton identification discriminaint",
28 60, -0.1, 1.1,
false,
false,
true,
"b", softLepDir,
mcPlots_, ibook));
31 "Lepton transverse moementum",
32 100, 0.0, 20.0,
false,
false,
true,
"b", softLepDir,
mcPlots_, ibook));
35 "Lepton signed 2D impact parameter significance",
36 100, -20.0, 30.0,
false,
false,
true,
"b", softLepDir,
mcPlots_, ibook));
39 "Lepton signed 3D impact parameter significance",
40 100, -20.0, 30.0,
false,
false,
true,
"b", softLepDir,
mcPlots_, ibook));
43 "Lepton signed 2D impact parameter",
44 100, -20.0, 30.0,
false,
false,
true,
"b", softLepDir,
mcPlots_, ibook));
47 "Lepton signed 3D impact parameter",
48 100, -20.0, 30.0,
false,
false,
true,
"b", softLepDir,
mcPlots_, ibook));
51 "Lepton transverse momentum relative to jet axis",
52 100, 0.0, 10.0,
false,
false,
true,
"b", softLepDir,
mcPlots_, ibook));
55 "Lepton moementum along jet axis in the B rest frame",
56 100, 0.0, 10.0,
false,
false,
true,
"b", softLepDir,
mcPlots_, ibook));
59 "Lepton pseudorapidity relative to jet axis",
60 100, -5.0, 25.0,
false,
false,
true,
"b", softLepDir,
mcPlots_, ibook));
63 "Lepton pseudoangular distance from jet axis",
64 100, 0.0, 0.6,
false,
false,
true,
"b", softLepDir,
mcPlots_, ibook));
67 "Ratio of lepton momentum to jet energy",
68 100, 0.0, 2.0,
false,
false,
true,
"b", softLepDir,
mcPlots_, ibook));
70 s +
"parallel energy ratio",
71 "Ratio of lepton momentum along the jet axis to jet energy",
72 100, 0.0, 2.0,
false,
false,
true,
"b", softLepDir,
mcPlots_, ibook));
85 <<
"BTagPerformanceAnalyzer: Extended TagInfo not of type SoftLeptonTagInfo. " << endl;
88 int n_leptons = tagInfo->
leptons();
113 TCanvas
canvas(cName.c_str(), cName.c_str(), 600, 900);
116 canvas.Print((name + cName +
".ps[").c_str());
130 canvas.Print((name + cName +
".ps").c_str());
144 canvas.Print((name + cName +
".ps").c_str());
146 canvas.Print((name + cName +
".ps]").c_str());
const REF & lepton(size_t i) const
std::vector< std::unique_ptr< FlavourHistograms< double > > > m_deltaR
std::vector< std::unique_ptr< FlavourHistograms< double > > > m_sip2d
void psPlot(const std::string &name) override
float quality(Quality::Generic qual, bool throwIfUndefined=true) const
std::vector< std::unique_ptr< FlavourHistograms< double > > > m_ptRel
std::vector< std::unique_ptr< FlavourHistograms< double > > > m_ratio
std::vector< std::unique_ptr< FlavourHistograms< double > > > m_sip3d
~SoftLeptonTagPlotter(void) override
const std::string theExtensionString
std::vector< std::unique_ptr< FlavourHistograms< double > > > m_ratioRel
void analyzeTag(const reco::BaseTagInfo *baseTagInfo, double jec, int jetFlavour, float w) override
const SoftLeptonProperties & properties(size_t i) const
std::vector< std::unique_ptr< FlavourHistograms< double > > > m_p0Par
SoftLeptonTagPlotter(const std::string &tagName, const EtaPtBin &etaPtBin, const edm::ParameterSet &pSet, unsigned int mc, bool willFinalize, DQMStore::IBooker &ibook)
static const string ordinal[9]
std::vector< std::unique_ptr< FlavourHistograms< double > > > m_etaRel
std::vector< std::unique_ptr< FlavourHistograms< double > > > m_sip2dsig
std::vector< std::unique_ptr< FlavourHistograms< double > > > m_leptonId
std::vector< std::unique_ptr< FlavourHistograms< double > > > m_leptonPt
static const int s_leptons
std::vector< std::unique_ptr< FlavourHistograms< double > > > m_sip3dsig
void epsPlot(const std::string &name) override
unsigned int leptons(void) const