37 :
mInput (fConfig.getParameter <
edm::InputTag> (
"src")),
54 for (
unsigned ijet = 0; ijet < jets->size(); ++ijet) {
56 std::cout <<
"FlavorJetCorrectionExample::analize-> jet #" << ijet;
58 std::cout <<
": use USD quark corrections" << std::endl;
59 corrector = udsJetCorrector;
61 else if (ijet%3 == 1) {
62 std::cout <<
": use c quark corrections" << std::endl;
63 corrector = cQuarkJetCorrector;
66 std::cout <<
": use b quark corrections" << std::endl;
67 corrector = bQuarkJetCorrector;
70 double correction = corrector->
correction (jet);
72 std::cout <<
" jet pt/eta/phi: " << jet.
pt() <<
'/' << jet.
eta() <<
'/' << jet.
phi()
73 <<
" -> correction factor: " << correction
74 <<
", corrected pt: " << jet.
pt()*correction
double eta() const final
momentum pseudorapidity
Jets made from CaloTowers.
double pt() const final
transverse momentum
double correction(const LorentzVector &fJet) const
get correction using Jet information only
FlavorJetCorrectionExample(const edm::ParameterSet &fParameters)
#define DEFINE_FWK_MODULE(type)
std::string mUDSCorrectorName
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
static const JetCorrector * getJetCorrector(const std::string &fName, const edm::EventSetup &fSetup)
retrieve corrector from the event setup. troughs exception if something is missing ...
std::string mBCorrectorName
void analyze(const edm::Event &, const edm::EventSetup &) override
~FlavorJetCorrectionExample() override
double phi() const final
momentum azimuthal angle
std::string mCCorrectorName