CMS 3D CMS Logo

List of all members | Public Member Functions | Static Public Attributes | Private Member Functions | Private Attributes | Friends
L1GctJetFinderParams Class Reference

#include <L1GctJetFinderParams.h>

Public Member Functions

uint16_t correctedEtGct (const double correctedEt) const
 Convert the corrected Et value to a linear Et for Ht summing. More...
 
double correctedEtGeV (const double et, const unsigned eta, const bool tauVeto) const
 Eta takes a value from 0-10, corresponding to jet regions running from eta=0.0 to eta=5.0. More...
 
unsigned getCenForJetEtaBoundary () const
 
unsigned getCenJetEtSeedGct () const
 
double getCenJetEtSeedGeV () const
 
bool getConvertToEnergy () const
 
unsigned getCorrType () const
 Access to jet Et calibration parameters. More...
 
unsigned getForJetEtSeedGct () const
 
double getForJetEtSeedGeV () const
 
unsigned getHtJetEtThresholdGct () const
 
double getHtJetEtThresholdGeV () const
 
double getHtLsbGeV () const
 
const std::vector< std::vector< double > > & getJetCorrCoeffs () const
 
unsigned getMHtJetEtThresholdGct () const
 
double getMHtJetEtThresholdGeV () const
 
double getRgnEtLsbGeV () const
 
const std::vector< std::vector< double > > & getTauCorrCoeffs () const
 
unsigned getTauIsoEtThresholdGct () const
 
double getTauIsoEtThresholdGeV () const
 
unsigned getTauJetEtSeedGct () const
 
double getTauJetEtSeedGeV () const
 
 L1GctJetFinderParams ()
 
 L1GctJetFinderParams (double rgnEtLsb, double htLsb, double cJetSeed, double fJetSeed, double tJetSeed, double tauIsoEtThresh, double htJetEtThresh, double mhtJetEtThresh, unsigned etaBoundary, unsigned corrType, const std::vector< std::vector< double > > &jetCorrCoeffs, const std::vector< std::vector< double > > &tauCorrCoeffs, bool convertToEnergy, const std::vector< double > &energyConvCoeffs)
 
void setHtSumParams (const double htLsb, const double htJetEtThresh, const double mhtJetEtThresh)
 
void setJetEtCalibrationParams (const unsigned corrType, const std::vector< std::vector< double > > &jetCorrCoeffs, const std::vector< std::vector< double > > &tauCorrCoeffs)
 
void setJetEtConvertToEnergyOff ()
 
void setJetEtConvertToEnergyOn (const std::vector< double > &energyConvCoeffs)
 
void setParams (const double rgnEtLsb, const double htLsb, const double cJetSeed, const double fJetSeed, const double tJetSeed, const double tauIsoEtThresh, const double htJetEtThresh, const double mhtJetEtThresh, const unsigned etaBoundary, const unsigned corrType, const std::vector< std::vector< double > > &jetCorrCoeffs, const std::vector< std::vector< double > > &tauCorrCoeffs)
 
void setRegionEtLsb (const double rgnEtLsb)
 
void setSlidingWindowParams (const double cJetSeed, const double fJetSeed, const double tJetSeed, const unsigned etaBoundary)
 
void setTauAlgorithmParams (const double tauIsoEtThresh)
 
 ~L1GctJetFinderParams ()
 

Static Public Attributes

static const unsigned N_CENTRAL_ETA_VALUES = 7
 Number of eta bins used in correction. More...
 
static const unsigned NUMBER_ETA_VALUES = 11
 Number of eta bins used in correction. More...
 

Private Member Functions

double correctionFunction (const double Et, const std::vector< double > &coeffs) const
 
double findCorrectedEt (const double Et, const std::vector< double > &coeffs) const
 
double orcaStyleCorrect (const double Et, const std::vector< double > &coeffs) const
 
double pfCorrect (const double Et, const std::vector< double > &coeffs) const
 
double piecewiseCubicCorrect (const double Et, const std::vector< double > &coeffs) const
 
double powerSeriesCorrect (const double Et, const std::vector< double > &coeffs) const
 
template<class Archive >
void serialize (Archive &ar, const unsigned int version)
 
double simpleCorrect (const double Et, const std::vector< double > &coeffs) const
 

Private Attributes

unsigned cenForJetEtaBoundary_
 
double cenJetEtSeed_
 
bool convertToEnergy_
 
unsigned corrType_
 
std::vector< double > energyConversionCoeffs_
 
double forJetEtSeed_
 
double htJetEtThreshold_
 
double htLsb_
 
std::vector< std::vector< double > > jetCorrCoeffs_
 
double mhtJetEtThreshold_
 
double rgnEtLsb_
 
std::vector< std::vector< double > > tauCorrCoeffs_
 
double tauIsoEtThreshold_
 
double tauJetEtSeed_
 

Friends

class boost::serialization::access
 
template<typename CondSerializationT , typename Enabled >
struct cond::serialization::access
 

Detailed Description

Definition at line 10 of file L1GctJetFinderParams.h.

Constructor & Destructor Documentation

◆ L1GctJetFinderParams() [1/2]

L1GctJetFinderParams::L1GctJetFinderParams ( )

Definition at line 17 of file L1GctJetFinderParams.cc.

18  : rgnEtLsb_(0.),
19  htLsb_(0.),
20  cenJetEtSeed_(0.),
21  forJetEtSeed_(0.),
22  tauJetEtSeed_(0.),
27  corrType_(0),
30  convertToEnergy_(false),
std::vector< std::vector< double > > tauCorrCoeffs_
std::vector< std::vector< double > > jetCorrCoeffs_
std::vector< double > energyConversionCoeffs_

◆ L1GctJetFinderParams() [2/2]

L1GctJetFinderParams::L1GctJetFinderParams ( double  rgnEtLsb,
double  htLsb,
double  cJetSeed,
double  fJetSeed,
double  tJetSeed,
double  tauIsoEtThresh,
double  htJetEtThresh,
double  mhtJetEtThresh,
unsigned  etaBoundary,
unsigned  corrType,
const std::vector< std::vector< double > > &  jetCorrCoeffs,
const std::vector< std::vector< double > > &  tauCorrCoeffs,
bool  convertToEnergy,
const std::vector< double > &  energyConvCoeffs 
)

Definition at line 33 of file L1GctJetFinderParams.cc.

References corrType_, energyConversionCoeffs_, Exception, jetCorrCoeffs_, LogDebug, N_CENTRAL_ETA_VALUES, NUMBER_ETA_VALUES, and tauCorrCoeffs_.

47  : rgnEtLsb_(rgnEtLsb),
48  htLsb_(htLsb),
49  cenJetEtSeed_(cJetSeed),
50  forJetEtSeed_(fJetSeed),
51  tauJetEtSeed_(tJetSeed),
52  tauIsoEtThreshold_(tauIsoEtThresh),
53  htJetEtThreshold_(htJetEtThresh),
54  mhtJetEtThreshold_(mhtJetEtThresh),
55  cenForJetEtaBoundary_(etaBoundary),
56  corrType_(corrType),
57  jetCorrCoeffs_(jetCorrCoeffs),
58  tauCorrCoeffs_(tauCorrCoeffs),
59  convertToEnergy_(convertToEnergy),
60  energyConversionCoeffs_(energyConvCoeffs) {
61  // check number of eta bins
64  LogDebug("L1-O2O") << "GCT jet corrections constructed with " << jetCorrCoeffs_.size() << " bins, expected "
65  << NUMBER_ETA_VALUES << std::endl;
66  LogDebug("L1-O2O") << "GCT tau corrections constructed with " << tauCorrCoeffs_.size() << " bins, expected "
67  << N_CENTRAL_ETA_VALUES << std::endl;
68  LogDebug("L1-O2O") << "GCT energy corrections constructed with " << energyConversionCoeffs_.size()
69  << " bins, expected " << NUMBER_ETA_VALUES << std::endl;
70 
71  throw cms::Exception("InconsistentConfig")
72  << "L1GctJetFinderParams constructed with wrong number of eta bins : " << jetCorrCoeffs_.size() << " jets, "
73  << tauCorrCoeffs_.size() << " taus, " << energyConversionCoeffs_.size() << " energy conversion bins"
74  << std::endl;
75  }
76 
77  // check number of coefficients against expectation
78  unsigned expCoeffs = 0;
79  if (corrType_ == 2)
80  expCoeffs = 8; // ORCA style
81  if (corrType_ == 3)
82  expCoeffs = 4; // Simple
83  if (corrType_ == 4)
84  expCoeffs = 15; // piecewise-cubic
85  if (corrType_ == 5)
86  expCoeffs = 6; // PF
87 
88  // correction types 1 and 4 can have any number of parameters
89  if (corrType_ != 1 && corrType_ != 4) {
90  std::vector<std::vector<double> >::const_iterator itr;
91  for (itr = jetCorrCoeffs_.begin(); itr != jetCorrCoeffs_.end(); ++itr) {
92  if (itr->size() != expCoeffs) {
93  throw cms::Exception("InconsistentConfig")
94  << "L1GctJetFinderParams constructed with " << itr->size() << " jet correction coefficients, when "
95  << expCoeffs << " expected" << std::endl;
96  }
97  }
98  for (itr = tauCorrCoeffs_.begin(); itr != tauCorrCoeffs_.end(); ++itr) {
99  if (itr->size() != expCoeffs) {
100  throw cms::Exception("InconsistentConfig")
101  << "L1GctJetFinderParams constructed with " << itr->size() << " tau correction coefficients, when "
102  << expCoeffs << " expected" << std::endl;
103  }
104  }
105  }
106 }
static const unsigned N_CENTRAL_ETA_VALUES
Number of eta bins used in correction.
std::vector< std::vector< double > > tauCorrCoeffs_
static const unsigned NUMBER_ETA_VALUES
Number of eta bins used in correction.
std::vector< std::vector< double > > jetCorrCoeffs_
std::vector< double > energyConversionCoeffs_
#define LogDebug(id)

◆ ~L1GctJetFinderParams()

L1GctJetFinderParams::~L1GctJetFinderParams ( )

Definition at line 108 of file L1GctJetFinderParams.cc.

108 {}

Member Function Documentation

◆ correctedEtGct()

uint16_t L1GctJetFinderParams::correctedEtGct ( const double  correctedEt) const

Convert the corrected Et value to a linear Et for Ht summing.

Convert the corrected Et value to an integer Et for Ht summing.

Definition at line 198 of file L1GctJetFinderParams.cc.

References htLsb_, and L1GctStaticParameters::jetCalibratedEtMax.

198  {
199  double scaledEt = correctedEt / htLsb_;
200 
201  uint16_t jetEtOut = static_cast<uint16_t>(scaledEt);
202 
205  } else {
206  return jetEtOut;
207  }
208 }
static const unsigned jetCalibratedEtMax

◆ correctedEtGeV()

double L1GctJetFinderParams::correctedEtGeV ( const double  et,
const unsigned  eta,
const bool  tauVeto 
) const

Eta takes a value from 0-10, corresponding to jet regions running from eta=0.0 to eta=5.0.

Definition at line 177 of file L1GctJetFinderParams.cc.

References cenForJetEtaBoundary_, convertToEnergy_, correctionFunction(), energyConversionCoeffs_, EgHLTOffHistBins_cfi::et, PVValHelper::eta, jetCorrCoeffs_, NUMBER_ETA_VALUES, mps_fire::result, and tauCorrCoeffs_.

Referenced by L1GctJetEtCalibrationLut::value().

177  {
178  if (eta >= NUMBER_ETA_VALUES) {
179  return 0;
180  } else {
181  double result = 0;
182  if ((eta >= cenForJetEtaBoundary_) || tauVeto) {
183  // Use jetCorrCoeffs for central and forward jets.
184  // In forward eta bins we ignore the tau flag (as in the firmware)
186  } else {
187  // Use tauCorrCoeffs for tau jets (in central eta bins)
189  }
190  if (convertToEnergy_) {
192  }
193  return result;
194  }
195 }
double correctionFunction(const double Et, const std::vector< double > &coeffs) const
std::vector< std::vector< double > > tauCorrCoeffs_
static const unsigned NUMBER_ETA_VALUES
Number of eta bins used in correction.
std::vector< std::vector< double > > jetCorrCoeffs_
std::vector< double > energyConversionCoeffs_

◆ correctionFunction()

double L1GctJetFinderParams::correctionFunction ( const double  Et,
const std::vector< double > &  coeffs 
) const
private

Definition at line 212 of file L1GctJetFinderParams.cc.

References corrType_, orcaStyleCorrect(), pfCorrect(), piecewiseCubicCorrect(), powerSeriesCorrect(), mps_fire::result, and simpleCorrect().

Referenced by correctedEtGeV().

212  {
213  double result = 0;
214  switch (corrType_) {
215  case 0: // no correction
216  result = Et;
217  break;
218  case 1: // power series correction
219  result = powerSeriesCorrect(Et, coeffs);
220  break;
221  case 2: // ORCA style correction
222  result = orcaStyleCorrect(Et, coeffs);
223  break;
224  case 3: // simple correction (JetMEt style)
225  result = simpleCorrect(Et, coeffs);
226  break;
227  case 4: // piecwise cubic correction a la Greg Landsberg et al
228  result = piecewiseCubicCorrect(Et, coeffs);
229  break;
230  case 5: // PF correction
231  result = pfCorrect(Et, coeffs);
232  break;
233  default:
234  result = Et;
235  }
236  return result;
237 }
double piecewiseCubicCorrect(const double Et, const std::vector< double > &coeffs) const
double pfCorrect(const double Et, const std::vector< double > &coeffs) const
double orcaStyleCorrect(const double Et, const std::vector< double > &coeffs) const
double powerSeriesCorrect(const double Et, const std::vector< double > &coeffs) const
double simpleCorrect(const double Et, const std::vector< double > &coeffs) const

◆ findCorrectedEt()

double L1GctJetFinderParams::findCorrectedEt ( const double  Et,
const std::vector< double > &  coeffs 
) const
private

◆ getCenForJetEtaBoundary()

unsigned L1GctJetFinderParams::getCenForJetEtaBoundary ( ) const
inline

◆ getCenJetEtSeedGct()

unsigned L1GctJetFinderParams::getCenJetEtSeedGct ( ) const
inline

◆ getCenJetEtSeedGeV()

double L1GctJetFinderParams::getCenJetEtSeedGeV ( ) const
inline

Definition at line 37 of file L1GctJetFinderParams.h.

References cenJetEtSeed_.

37 { return cenJetEtSeed_; }

◆ getConvertToEnergy()

bool L1GctJetFinderParams::getConvertToEnergy ( ) const
inline

Definition at line 44 of file L1GctJetFinderParams.h.

References convertToEnergy_.

◆ getCorrType()

unsigned L1GctJetFinderParams::getCorrType ( ) const
inline

Access to jet Et calibration parameters.

Definition at line 88 of file L1GctJetFinderParams.h.

References corrType_.

88 { return corrType_; }

◆ getForJetEtSeedGct()

unsigned L1GctJetFinderParams::getForJetEtSeedGct ( ) const
inline

Definition at line 48 of file L1GctJetFinderParams.h.

References forJetEtSeed_, and rgnEtLsb_.

Referenced by L1GctJetFinderBase::setJetFinderParams().

48 { return static_cast<unsigned>(forJetEtSeed_ / rgnEtLsb_); }

◆ getForJetEtSeedGeV()

double L1GctJetFinderParams::getForJetEtSeedGeV ( ) const
inline

Definition at line 38 of file L1GctJetFinderParams.h.

References forJetEtSeed_.

38 { return forJetEtSeed_; }

◆ getHtJetEtThresholdGct()

unsigned L1GctJetFinderParams::getHtJetEtThresholdGct ( ) const
inline

Definition at line 51 of file L1GctJetFinderParams.h.

References htJetEtThreshold_, and htLsb_.

Referenced by L1GctJetFinderBase::setJetFinderParams().

51 { return static_cast<unsigned>(htJetEtThreshold_ / htLsb_); }

◆ getHtJetEtThresholdGeV()

double L1GctJetFinderParams::getHtJetEtThresholdGeV ( ) const
inline

Definition at line 41 of file L1GctJetFinderParams.h.

References htJetEtThreshold_.

Referenced by L1GctValidation::analyze().

◆ getHtLsbGeV()

double L1GctJetFinderParams::getHtLsbGeV ( ) const
inline

◆ getJetCorrCoeffs()

const std::vector<std::vector<double> >& L1GctJetFinderParams::getJetCorrCoeffs ( ) const
inline

Definition at line 89 of file L1GctJetFinderParams.h.

References jetCorrCoeffs_.

89 { return jetCorrCoeffs_; }
std::vector< std::vector< double > > jetCorrCoeffs_

◆ getMHtJetEtThresholdGct()

unsigned L1GctJetFinderParams::getMHtJetEtThresholdGct ( ) const
inline

Definition at line 52 of file L1GctJetFinderParams.h.

References htLsb_, and mhtJetEtThreshold_.

Referenced by L1GctJetFinderBase::setJetFinderParams().

52 { return static_cast<unsigned>(mhtJetEtThreshold_ / htLsb_); }

◆ getMHtJetEtThresholdGeV()

double L1GctJetFinderParams::getMHtJetEtThresholdGeV ( ) const
inline

Definition at line 42 of file L1GctJetFinderParams.h.

References mhtJetEtThreshold_.

Referenced by L1GctValidation::analyze().

◆ getRgnEtLsbGeV()

double L1GctJetFinderParams::getRgnEtLsbGeV ( ) const
inline

Definition at line 35 of file L1GctJetFinderParams.h.

References rgnEtLsb_.

Referenced by L1GctValidation::analyze().

35 { return rgnEtLsb_; }

◆ getTauCorrCoeffs()

const std::vector<std::vector<double> >& L1GctJetFinderParams::getTauCorrCoeffs ( ) const
inline

Definition at line 90 of file L1GctJetFinderParams.h.

References tauCorrCoeffs_.

90 { return tauCorrCoeffs_; }
std::vector< std::vector< double > > tauCorrCoeffs_

◆ getTauIsoEtThresholdGct()

unsigned L1GctJetFinderParams::getTauIsoEtThresholdGct ( ) const
inline

Definition at line 50 of file L1GctJetFinderParams.h.

References rgnEtLsb_, and tauIsoEtThreshold_.

Referenced by L1GctJetFinderBase::setJetFinderParams().

50 { return static_cast<unsigned>(tauIsoEtThreshold_ / rgnEtLsb_); }

◆ getTauIsoEtThresholdGeV()

double L1GctJetFinderParams::getTauIsoEtThresholdGeV ( ) const
inline

Definition at line 40 of file L1GctJetFinderParams.h.

References tauIsoEtThreshold_.

◆ getTauJetEtSeedGct()

unsigned L1GctJetFinderParams::getTauJetEtSeedGct ( ) const
inline

◆ getTauJetEtSeedGeV()

double L1GctJetFinderParams::getTauJetEtSeedGeV ( ) const
inline

Definition at line 39 of file L1GctJetFinderParams.h.

References tauJetEtSeed_.

39 { return tauJetEtSeed_; }

◆ orcaStyleCorrect()

double L1GctJetFinderParams::orcaStyleCorrect ( const double  Et,
const std::vector< double > &  coeffs 
) const
private

Definition at line 247 of file L1GctJetFinderParams.cc.

References A, B, correctionTermsCaloMet_cff::C, mathSSE::sqrt(), and remoteMonitoring_LASER_era2018_cfg::threshold.

Referenced by correctionFunction().

247  {
248  // The coefficients are arranged in groups of four
249  // The first in each group is a threshold value of Et.
250 
251  std::vector<double>::const_iterator next_coeff = coeffs.begin();
252  while (next_coeff != coeffs.end()) {
253  double threshold = *next_coeff++;
254  double A = *next_coeff++;
255  double B = *next_coeff++;
256  double C = *next_coeff++;
257  if (Et > threshold) {
258  // This function is an inverse quadratic:
259  // (input Et) = A + B*(output Et) + C*(output Et)^2
260  return 2 * (Et - A) / (B + sqrt(B * B - 4 * A * C + 4 * Et * C));
261  }
262  // If we are below all specified thresholds (or the vector is empty), return output=input.
263  }
264  return Et;
265 }
Definition: APVGainStruct.h:7
T sqrt(T t)
Definition: SSEVec.h:19
Definition: APVGainStruct.h:7

◆ pfCorrect()

double L1GctJetFinderParams::pfCorrect ( const double  Et,
const std::vector< double > &  coeffs 
) const
private

Definition at line 303 of file L1GctJetFinderParams.cc.

References EgHLTOffHistBins_cfi::et, JetChargeProducer_cfi::exp, and conifer::pow().

Referenced by correctionFunction().

303  {
304  //
305  // corr_factor = [0]+[1]/(pow(log10(x),2)+[2])+[3]*exp(-[4]*(log10(x)-[5])*(log10(x)-[5]))
306  // Et_out = Et_in * corr_factor
307  //
308 
309  return et * (coeffs.at(0) + coeffs.at(1) / (pow(log10(et), 2) + coeffs.at(2)) +
310  coeffs.at(3) * exp(-coeffs.at(4) * (log10(et) - coeffs.at(5)) * (log10(et) - coeffs.at(5))));
311 }
constexpr int pow(int x)
Definition: conifer.h:24

◆ piecewiseCubicCorrect()

double L1GctJetFinderParams::piecewiseCubicCorrect ( const double  Et,
const std::vector< double > &  coeffs 
) const
private

Definition at line 277 of file L1GctJetFinderParams.cc.

References A, B, correctionTermsCaloMet_cff::C, and remoteMonitoring_LASER_era2018_cfg::threshold.

Referenced by correctionFunction().

277  {
278  // The correction fuction is a set of 3rd order polynomials
279  // Et_out = Et_in + (p0 + p1*Et_in + p2*Et_in^2 + p3*Et_in^3)
280  // with different coefficients for different energy ranges.
281  // The parameters are arranged in groups of five.
282  // The first in each group is a threshold value of input Et,
283  // followed by the four coefficients for the cubic function.
284  double etOut = Et;
285  std::vector<double>::const_iterator next_coeff = coeffs.begin();
286  while (next_coeff != coeffs.end()) {
287  // Read the coefficients from the vector
288  double threshold = *next_coeff++;
289  double A = *next_coeff++; //p0
290  double B = *next_coeff++; //p1
291  double C = *next_coeff++; //p2
292  double D = *next_coeff++; //p3
293 
294  // Check we are in the right energy range and make correction
295  if (Et > threshold) {
296  etOut += (A + etOut * (B + etOut * (C + etOut * D)));
297  break;
298  }
299  }
300  return etOut;
301 }
Definition: APVGainStruct.h:7
DecomposeProduct< arg, typename Div::arg > D
Definition: Factorize.h:141
Definition: APVGainStruct.h:7

◆ powerSeriesCorrect()

double L1GctJetFinderParams::powerSeriesCorrect ( const double  Et,
const std::vector< double > &  coeffs 
) const
private

Definition at line 239 of file L1GctJetFinderParams.cc.

References mps_fire::i, and conifer::pow().

Referenced by correctionFunction().

239  {
240  double corrEt = Et;
241  for (unsigned i = 0; i < coeffs.size(); i++) {
242  corrEt += coeffs.at(i) * pow(Et, (int)i);
243  }
244  return corrEt;
245 }
constexpr int pow(int x)
Definition: conifer.h:24

◆ serialize()

template<class Archive >
void L1GctJetFinderParams::serialize ( Archive &  ar,
const unsigned int  version 
)
private

◆ setHtSumParams()

void L1GctJetFinderParams::setHtSumParams ( const double  htLsb,
const double  htJetEtThresh,
const double  mhtJetEtThresh 
)

Definition at line 145 of file L1GctJetFinderParams.cc.

References htJetEtThreshold_, htLsb_, and mhtJetEtThreshold_.

Referenced by setParams().

145  {
146  htLsb_ = htLsb;
147  htJetEtThreshold_ = htJetEtThresh;
148  mhtJetEtThreshold_ = mhtJetEtThresh;
149 }

◆ setJetEtCalibrationParams()

void L1GctJetFinderParams::setJetEtCalibrationParams ( const unsigned  corrType,
const std::vector< std::vector< double > > &  jetCorrCoeffs,
const std::vector< std::vector< double > > &  tauCorrCoeffs 
)

Definition at line 127 of file L1GctJetFinderParams.cc.

References corrType_, jetCorrCoeffs_, and tauCorrCoeffs_.

Referenced by setParams().

129  {
130  corrType_ = corrType;
131  jetCorrCoeffs_ = jetCorrCoeffs;
132  tauCorrCoeffs_ = tauCorrCoeffs;
133 }
std::vector< std::vector< double > > tauCorrCoeffs_
std::vector< std::vector< double > > jetCorrCoeffs_

◆ setJetEtConvertToEnergyOff()

void L1GctJetFinderParams::setJetEtConvertToEnergyOff ( )

Definition at line 140 of file L1GctJetFinderParams.cc.

References convertToEnergy_, and energyConversionCoeffs_.

140  {
141  convertToEnergy_ = false;
142  energyConversionCoeffs_.clear();
143 }
std::vector< double > energyConversionCoeffs_

◆ setJetEtConvertToEnergyOn()

void L1GctJetFinderParams::setJetEtConvertToEnergyOn ( const std::vector< double > &  energyConvCoeffs)

Definition at line 135 of file L1GctJetFinderParams.cc.

References convertToEnergy_, and energyConversionCoeffs_.

135  {
136  convertToEnergy_ = true;
137  energyConversionCoeffs_ = energyConvCoeffs;
138 }
std::vector< double > energyConversionCoeffs_

◆ setParams()

void L1GctJetFinderParams::setParams ( const double  rgnEtLsb,
const double  htLsb,
const double  cJetSeed,
const double  fJetSeed,
const double  tJetSeed,
const double  tauIsoEtThresh,
const double  htJetEtThresh,
const double  mhtJetEtThresh,
const unsigned  etaBoundary,
const unsigned  corrType,
const std::vector< std::vector< double > > &  jetCorrCoeffs,
const std::vector< std::vector< double > > &  tauCorrCoeffs 
)

Definition at line 153 of file L1GctJetFinderParams.cc.

References setHtSumParams(), setJetEtCalibrationParams(), setRegionEtLsb(), setSlidingWindowParams(), and setTauAlgorithmParams().

164  {
165  setRegionEtLsb(rgnEtLsb);
166  setSlidingWindowParams(cJetSeed, fJetSeed, tJetSeed, etaBoundary);
167  setJetEtCalibrationParams(corrType, jetCorrCoeffs, tauCorrCoeffs);
168  setHtSumParams(htLsb, htJetEtThresh, mhtJetEtThresh);
169  setTauAlgorithmParams(tauIsoEtThresh);
170 }
void setHtSumParams(const double htLsb, const double htJetEtThresh, const double mhtJetEtThresh)
void setRegionEtLsb(const double rgnEtLsb)
void setJetEtCalibrationParams(const unsigned corrType, const std::vector< std::vector< double > > &jetCorrCoeffs, const std::vector< std::vector< double > > &tauCorrCoeffs)
void setTauAlgorithmParams(const double tauIsoEtThresh)
void setSlidingWindowParams(const double cJetSeed, const double fJetSeed, const double tJetSeed, const unsigned etaBoundary)

◆ setRegionEtLsb()

void L1GctJetFinderParams::setRegionEtLsb ( const double  rgnEtLsb)

Definition at line 115 of file L1GctJetFinderParams.cc.

References rgnEtLsb_.

Referenced by setParams().

115 { rgnEtLsb_ = rgnEtLsb; }

◆ setSlidingWindowParams()

void L1GctJetFinderParams::setSlidingWindowParams ( const double  cJetSeed,
const double  fJetSeed,
const double  tJetSeed,
const unsigned  etaBoundary 
)

Definition at line 117 of file L1GctJetFinderParams.cc.

References cenForJetEtaBoundary_, cenJetEtSeed_, forJetEtSeed_, and tauJetEtSeed_.

Referenced by setParams().

120  {
121  cenJetEtSeed_ = cJetSeed;
122  forJetEtSeed_ = fJetSeed;
123  tauJetEtSeed_ = tJetSeed;
124  cenForJetEtaBoundary_ = etaBoundary;
125 }

◆ setTauAlgorithmParams()

void L1GctJetFinderParams::setTauAlgorithmParams ( const double  tauIsoEtThresh)

Definition at line 151 of file L1GctJetFinderParams.cc.

References tauIsoEtThreshold_.

Referenced by setParams().

151 { tauIsoEtThreshold_ = tauIsoEtThresh; }

◆ simpleCorrect()

double L1GctJetFinderParams::simpleCorrect ( const double  Et,
const std::vector< double > &  coeffs 
) const
private

Definition at line 267 of file L1GctJetFinderParams.cc.

References conifer::pow().

Referenced by correctionFunction().

267  {
268  // function is :
269  // Et_out = A + B/[ (log10(Et_in))^C + D ] + E/Et_in
270  //
271  // fitcor_as_str = "[0]+[1]/(pow(log10(x),[2])+[3]) + [4]/x"
272  //
273 
274  return coeffs.at(0) + coeffs.at(1) / (pow(log10(Et), coeffs.at(2)) + coeffs.at(3)) + (coeffs.at(4) / Et);
275 }
constexpr int pow(int x)
Definition: conifer.h:24

Friends And Related Function Documentation

◆ boost::serialization::access

friend class boost::serialization::access
friend

Definition at line 127 of file L1GctJetFinderParams.h.

◆ cond::serialization::access

template<typename CondSerializationT , typename Enabled >
friend struct cond::serialization::access
friend

Definition at line 127 of file L1GctJetFinderParams.h.

Member Data Documentation

◆ cenForJetEtaBoundary_

unsigned L1GctJetFinderParams::cenForJetEtaBoundary_
private

◆ cenJetEtSeed_

double L1GctJetFinderParams::cenJetEtSeed_
private

◆ convertToEnergy_

bool L1GctJetFinderParams::convertToEnergy_
private

◆ corrType_

unsigned L1GctJetFinderParams::corrType_
private

◆ energyConversionCoeffs_

std::vector<double> L1GctJetFinderParams::energyConversionCoeffs_
private

◆ forJetEtSeed_

double L1GctJetFinderParams::forJetEtSeed_
private

◆ htJetEtThreshold_

double L1GctJetFinderParams::htJetEtThreshold_
private

◆ htLsb_

double L1GctJetFinderParams::htLsb_
private

◆ jetCorrCoeffs_

std::vector<std::vector<double> > L1GctJetFinderParams::jetCorrCoeffs_
private

◆ mhtJetEtThreshold_

double L1GctJetFinderParams::mhtJetEtThreshold_
private

◆ N_CENTRAL_ETA_VALUES

const unsigned L1GctJetFinderParams::N_CENTRAL_ETA_VALUES = 7
static

Number of eta bins used in correction.

Definition at line 13 of file L1GctJetFinderParams.h.

Referenced by L1GctConfigProducers::L1GctConfigProducers(), L1GctJetFinderParams(), and L1GctJetFinderParamsOnlineProd::newObject().

◆ NUMBER_ETA_VALUES

const unsigned L1GctJetFinderParams::NUMBER_ETA_VALUES = 11
static

◆ rgnEtLsb_

double L1GctJetFinderParams::rgnEtLsb_
private

◆ tauCorrCoeffs_

std::vector<std::vector<double> > L1GctJetFinderParams::tauCorrCoeffs_
private

◆ tauIsoEtThreshold_

double L1GctJetFinderParams::tauIsoEtThreshold_
private

◆ tauJetEtSeed_

double L1GctJetFinderParams::tauJetEtSeed_
private