58 jetPtCut_(params.getParameter<double>(
"jetPtCut")),
59 jetEtaCut_(params.getParameter<double>(
"jetEtaCut"))
73 flavours_ = fs->
make<TH1F>(
"flavours",
"jet flavours", 5, 0, 5);
86 flavour =
"light flavour jets";
90 flavour =
"charm jets";
94 flavour =
"bottom jets";
98 flavour =
"unidentified jets";
103 plots.
discrTC = fs->
make<TH1F>(Form(
"discrTC_%s", name),
104 Form(
"track counting (\"high efficiency\") in %s", flavour),
106 plots.
discrSSV = fs->
make<TH1F>(Form(
"discrSSV_%s", name),
107 Form(
"simple secondary vertex in %s", flavour),
109 plots.
discrCSV = fs->
make<TH1F>(Form(
"discrCSV_%s", name),
110 Form(
"combined secondary vertex in %s", flavour),
122 for(pat::JetCollection::const_iterator
jet = jetsHandle->begin();
123 jet != jetsHandle->end(); ++
jet) {
153 double discrTC =
jet->bDiscriminator(
"trackCountingHighEffBJetTags");
154 double discrSSV =
jet->bDiscriminator(
"simpleSecondaryVertexBJetTags");
155 double discrCSV =
jet->bDiscriminator(
"combinedSecondaryVertexBJetTags");
struct PatBJetTagAnalyzer::Plots plots_[N_JET_TYPES]
PatBJetTagAnalyzer(const edm::ParameterSet ¶ms)
constructor and destructor
std::vector< Jet > JetCollection
T * make(const Args &...args) const
make new ROOT object
edm::EDGetTokenT< pat::JetCollection > jetsToken_
EDGetTokenT< ProductType > consumes(edm::InputTag const &tag)
#define DEFINE_FWK_MODULE(type)
Abs< T >::type abs(const T &t)
~PatBJetTagAnalyzer() override
void analyze(const edm::Event &event, const edm::EventSetup &es) override