CMS 3D CMS Logo

List of all members | Public Member Functions
JME::JetScaleFactorVsEta< ii > Class Template Reference
Inheritance diagram for JME::JetScaleFactorVsEta< ii >:
cond::payloadInspector::Histogram1< AxisType, PayloadType, IOV_M > cond::payloadInspector::Plot2D< PayloadType, AxisType, AxisType, IOV_M, 1 > cond::payloadInspector::PlotImpl< IOV_M, NTAGS > cond::payloadInspector::PlotBase

Public Member Functions

bool fill () override
 
 JetScaleFactorVsEta ()
 
- Public Member Functions inherited from cond::payloadInspector::Histogram1< AxisType, PayloadType, IOV_M >
bool fill () override
 
void fillWithBinAndValue (size_t bin, AxisType weight=1)
 
void fillWithValue (AxisType value, AxisType weight=1)
 
virtual AxisType getFromPayload (PayloadType &payload)
 
 Histogram1 (const std::string &title, const std::string &xLabel, size_t nbins, float min, float max, const std::string &yLabel="entries")
 
void init () override
 
- Public Member Functions inherited from cond::payloadInspector::Plot2D< PayloadType, AxisType, AxisType, IOV_M, 1 >
std::shared_ptr< PayloadType > fetchPayload (const cond::Hash &payloadHash)
 
 Plot2D (const std::string &type, const std::string &title, const std::string xLabel, const std::string &yLabel)
 
std::string serializeData () override
 
 ~Plot2D () override=default
 
- Public Member Functions inherited from cond::payloadInspector::PlotImpl< IOV_M, NTAGS >
 PlotImpl (const std::string &type, const std::string &title)
 
std::string processData () override
 
 ~PlotImpl () override=default
 
- Public Member Functions inherited from cond::payloadInspector::PlotBase
void addInputParam (const std::string &paramName)
 
cond::persistency::Session dbSession ()
 
template<typename PayloadType >
std::shared_ptr< PayloadType > fetchPayload (const cond::Hash &payloadHash)
 
template<int index>
TagReference getTag ()
 
cond::Tag_t getTagInfo (const std::string &tag)
 
const std::map< std::string, std::string > & inputParamValues () const
 
bool isSingleIov () const
 
bool isTwoTags () const
 
unsigned int ntags () const
 
std::string payloadType () const
 
 PlotBase ()
 
std::string title () const
 
std::string type () const
 
virtual ~PlotBase ()=default
 

Additional Inherited Members

- Public Types inherited from cond::payloadInspector::Histogram1< AxisType, PayloadType, IOV_M >
typedef Plot2D< PayloadType, AxisType, AxisType, IOV_M, 1 > Base
 
- Public Types inherited from cond::payloadInspector::Plot2D< PayloadType, AxisType, AxisType, IOV_M, 1 >
typedef PlotImpl< IOV_M, NTAGS > Base
 
- Protected Attributes inherited from cond::payloadInspector::Plot2D< PayloadType, AxisType, AxisType, IOV_M, 1 >
std::vector< std::tuple< AxisType, AxisType > > m_plotData
 
- Protected Attributes inherited from cond::payloadInspector::PlotBase
std::set< std::string > m_inputParams
 
std::map< std::string, std::string > m_inputParamValues
 
PlotAnnotations m_plotAnnotations
 
std::vector< std::pair< cond::Time_t, cond::Time_t > > m_tagBoundaries
 
std::vector< std::vector< std::tuple< cond::Time_t, cond::Hash > > > m_tagIovs
 
std::vector< std::string > m_tagNames
 

Detailed Description

template<index ii>
class JME::JetScaleFactorVsEta< ii >

Definition at line 476 of file JetResolution_PayloadInspector.cc.

Constructor & Destructor Documentation

◆ JetScaleFactorVsEta()

template<index ii>
JME::JetScaleFactorVsEta< ii >::JetScaleFactorVsEta ( )
inline

Member Function Documentation

◆ fill()

template<index ii>
bool JME::JetScaleFactorVsEta< ii >::fill ( )
inlineoverridevirtual

Implements cond::payloadInspector::PlotImpl< IOV_M, NTAGS >.

Definition at line 485 of file JetResolution_PayloadInspector.cc.

References heavyIonCSV_trainingSettings::idx, cuy::ii, cond::payloadInspector::PlotBase::inputParamValues(), MAX_ETA, MIN_ETA, NBIN_ETA, jetsAK4_Puppi_cff::payload, AlCaHarvesting_cff::record, JME::JetParameters::setJetEta(), JME::JetParameters::setJetPt(), and makeGlobalPositionRcd_cfg::tag.

485  {
486  double par_Pt = 100.;
487  double par_Eta = 1.;
488 
490  auto ip = paramValues.find("Jet_Pt");
491  if (ip != paramValues.end()) {
492  par_Pt = std::stod(ip->second);
493  edm::LogPrint("JER_PI") << "Jet Pt: " << par_Pt;
494  }
495  ip = paramValues.find("Jet_Eta");
496  if (ip != paramValues.end()) {
497  par_Eta = std::stod(ip->second);
498  edm::LogPrint("JER_PI") << "Jet Eta: " << par_Eta;
499  }
500 
501  auto tag = PlotBase::getTag<0>();
502  for (auto const& iov : tag.iovs) {
503  std::shared_ptr<JetResolutionObject> payload = Base::fetchPayload(std::get<1>(iov));
504  if (payload.get()) {
505  if (!payload->getRecords().empty() && // No formula for SF
506  payload->getDefinition().getFormulaString().compare("") != 0)
507  return false;
508 
509  for (size_t idx = 0; idx <= NBIN_ETA; idx++) {
510  par_Eta = (idx + 0.5) * (MAX_ETA - MIN_ETA) / NBIN_ETA + MIN_ETA;
511 
512  JetParameters j_param;
513  j_param.setJetPt(par_Pt);
514  j_param.setJetEta(par_Eta);
515 
516  if (payload->getRecord(j_param) == nullptr) {
517  continue;
518  }
519 
520  const JetResolutionObject::Record record = *(payload->getRecord(j_param));
521  if (record.getParametersValues().size() == 3) { // norm, down, up
522  double sf = record.getParametersValues()[ii];
523  fillWithBinAndValue(idx + 1, sf);
524  }
525  } // x-axis
526  } else
527  return false;
528  } // for
529  return true;
530  } // fill
Log< level::Warning, true > LogPrint
ii
Definition: cuy.py:589
const std::map< std::string, std::string > & inputParamValues() const
std::shared_ptr< PayloadType > fetchPayload(const cond::Hash &payloadHash)
void fillWithBinAndValue(size_t bin, AxisType weight=1)