CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
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::L1GctJetFinderParams ( )

Definition at line 17 of file L1GctJetFinderParams.cc.

17  :
18  rgnEtLsb_(0.),
19  htLsb_(0.),
20  cenJetEtSeed_(0.),
21  forJetEtSeed_(0.),
22  tauJetEtSeed_(0.),
27  corrType_(0),
30  convertToEnergy_(false),
32 { }
std::vector< std::vector< double > > jetCorrCoeffs_
std::vector< std::vector< double > > tauCorrCoeffs_
std::vector< double > energyConversionCoeffs_
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 34 of file L1GctJetFinderParams.cc.

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

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

Definition at line 102 of file L1GctJetFinderParams.cc.

102 {}

Member Function Documentation

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 209 of file L1GctJetFinderParams.cc.

References htLsb_, and L1GctStaticParameters::jetCalibratedEtMax.

210 {
211  double scaledEt = correctedEt / htLsb_;
212 
213  uint16_t jetEtOut = static_cast<uint16_t>(scaledEt);
214 
217  } else {
218  return jetEtOut;
219  }
220 }
static const unsigned jetCalibratedEtMax
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 185 of file L1GctJetFinderParams.cc.

References cenForJetEtaBoundary_, convertToEnergy_, correctionFunction(), energyConversionCoeffs_, jetCorrCoeffs_, NUMBER_ETA_VALUES, query::result, and tauCorrCoeffs_.

Referenced by L1GctJetEtCalibrationLut::value().

187  {
188 
189  if (eta>=NUMBER_ETA_VALUES) {
190  return 0;
191  } else {
192  double result=0;
193  if ((eta>=cenForJetEtaBoundary_) || tauVeto) {
194  // Use jetCorrCoeffs for central and forward jets.
195  // In forward eta bins we ignore the tau flag (as in the firmware)
196  result=correctionFunction(et, jetCorrCoeffs_.at(eta));
197  } else {
198  // Use tauCorrCoeffs for tau jets (in central eta bins)
199  result=correctionFunction(et, tauCorrCoeffs_.at(eta));
200  }
201  if (convertToEnergy_) { result *= energyConversionCoeffs_.at(eta); }
202  return result;
203  }
204 
205 }
std::vector< std::vector< double > > jetCorrCoeffs_
T eta() const
std::vector< std::vector< double > > tauCorrCoeffs_
double correctionFunction(const double Et, const std::vector< double > &coeffs) const
tuple result
Definition: query.py:137
static const unsigned NUMBER_ETA_VALUES
Number of eta bins used in correction.
std::vector< double > energyConversionCoeffs_
double L1GctJetFinderParams::correctionFunction ( const double  Et,
const std::vector< double > &  coeffs 
) const
private

Definition at line 226 of file L1GctJetFinderParams.cc.

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

Referenced by correctedEtGeV().

227 {
228  double result=0;
229  switch (corrType_)
230  {
231  case 0: // no correction
232  result = Et;
233  break;
234  case 1: // power series correction
235  result = powerSeriesCorrect(Et, coeffs);
236  break;
237  case 2: // ORCA style correction
238  result = orcaStyleCorrect(Et, coeffs);
239  break;
240  case 3: // simple correction (JetMEt style)
241  result = simpleCorrect(Et, coeffs);
242  break;
243  case 4: // piecwise cubic correction a la Greg Landsberg et al
244  result = piecewiseCubicCorrect(Et, coeffs);
245  break;
246  case 5: // PF correction
247  result = pfCorrect(Et, coeffs);
248  break;
249  default:
250  result = Et;
251  }
252  return result;
253 }
double powerSeriesCorrect(const double Et, const std::vector< double > &coeffs) const
double simpleCorrect(const double Et, const std::vector< double > &coeffs) const
tuple result
Definition: query.py:137
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 L1GctJetFinderParams::findCorrectedEt ( const double  Et,
const std::vector< double > &  coeffs 
) const
private
unsigned L1GctJetFinderParams::getCenForJetEtaBoundary ( ) const
inline
unsigned L1GctJetFinderParams::getCenJetEtSeedGct ( ) const
inline
double L1GctJetFinderParams::getCenJetEtSeedGeV ( ) const
inline

Definition at line 39 of file L1GctJetFinderParams.h.

References cenJetEtSeed_.

Referenced by operator<<().

39 { return cenJetEtSeed_; }
bool L1GctJetFinderParams::getConvertToEnergy ( ) const
inline

Definition at line 46 of file L1GctJetFinderParams.h.

References convertToEnergy_.

unsigned L1GctJetFinderParams::getCorrType ( ) const
inline

Access to jet Et calibration parameters.

Definition at line 92 of file L1GctJetFinderParams.h.

References corrType_.

Referenced by operator<<().

92 { return corrType_; }
unsigned L1GctJetFinderParams::getForJetEtSeedGct ( ) const
inline

Definition at line 50 of file L1GctJetFinderParams.h.

References forJetEtSeed_, and rgnEtLsb_.

Referenced by L1GctJetFinderBase::setJetFinderParams().

50 { return static_cast<unsigned>(forJetEtSeed_/rgnEtLsb_); }
double L1GctJetFinderParams::getForJetEtSeedGeV ( ) const
inline

Definition at line 40 of file L1GctJetFinderParams.h.

References forJetEtSeed_.

Referenced by operator<<().

40 { return forJetEtSeed_; }
unsigned L1GctJetFinderParams::getHtJetEtThresholdGct ( ) const
inline

Definition at line 53 of file L1GctJetFinderParams.h.

References htJetEtThreshold_, and htLsb_.

Referenced by L1GctJetFinderBase::setJetFinderParams().

53 { return static_cast<unsigned>(htJetEtThreshold_/htLsb_); }
double L1GctJetFinderParams::getHtJetEtThresholdGeV ( ) const
inline

Definition at line 43 of file L1GctJetFinderParams.h.

References htJetEtThreshold_.

Referenced by operator<<().

43 { return htJetEtThreshold_; }
double L1GctJetFinderParams::getHtLsbGeV ( ) const
inline

Definition at line 38 of file L1GctJetFinderParams.h.

References htLsb_.

Referenced by operator<<(), and L1GctGlobalEnergyAlgos::setJetFinderParams().

38 { return htLsb_; }
const std::vector< std::vector<double> >& L1GctJetFinderParams::getJetCorrCoeffs ( ) const
inline

Definition at line 93 of file L1GctJetFinderParams.h.

References jetCorrCoeffs_.

Referenced by operator<<().

93 { return jetCorrCoeffs_; }
std::vector< std::vector< double > > jetCorrCoeffs_
unsigned L1GctJetFinderParams::getMHtJetEtThresholdGct ( ) const
inline

Definition at line 54 of file L1GctJetFinderParams.h.

References htLsb_, and mhtJetEtThreshold_.

Referenced by L1GctJetFinderBase::setJetFinderParams().

54 { return static_cast<unsigned>(mhtJetEtThreshold_/htLsb_); }
double L1GctJetFinderParams::getMHtJetEtThresholdGeV ( ) const
inline

Definition at line 44 of file L1GctJetFinderParams.h.

References mhtJetEtThreshold_.

Referenced by operator<<().

44 { return mhtJetEtThreshold_; }
double L1GctJetFinderParams::getRgnEtLsbGeV ( ) const
inline

Definition at line 37 of file L1GctJetFinderParams.h.

References rgnEtLsb_.

Referenced by operator<<().

37 { return rgnEtLsb_; }
const std::vector< std::vector<double> >& L1GctJetFinderParams::getTauCorrCoeffs ( ) const
inline

Definition at line 94 of file L1GctJetFinderParams.h.

References tauCorrCoeffs_.

Referenced by operator<<().

94 { return tauCorrCoeffs_; }
std::vector< std::vector< double > > tauCorrCoeffs_
unsigned L1GctJetFinderParams::getTauIsoEtThresholdGct ( ) const
inline

Definition at line 52 of file L1GctJetFinderParams.h.

References rgnEtLsb_, and tauIsoEtThreshold_.

Referenced by L1GctJetFinderBase::setJetFinderParams().

52 { return static_cast<unsigned>(tauIsoEtThreshold_/rgnEtLsb_); }
double L1GctJetFinderParams::getTauIsoEtThresholdGeV ( ) const
inline

Definition at line 42 of file L1GctJetFinderParams.h.

References tauIsoEtThreshold_.

Referenced by operator<<().

42 { return tauIsoEtThreshold_; }
unsigned L1GctJetFinderParams::getTauJetEtSeedGct ( ) const
inline
double L1GctJetFinderParams::getTauJetEtSeedGeV ( ) const
inline

Definition at line 41 of file L1GctJetFinderParams.h.

References tauJetEtSeed_.

Referenced by operator<<().

41 { return tauJetEtSeed_; }
double L1GctJetFinderParams::orcaStyleCorrect ( const double  Et,
const std::vector< double > &  coeffs 
) const
private

Definition at line 264 of file L1GctJetFinderParams.cc.

References funct::A, funct::C, mathSSE::sqrt(), and dtDQMClient_cfg::threshold.

Referenced by correctionFunction().

265 {
266 
267  // The coefficients are arranged in groups of four
268  // The first in each group is a threshold value of Et.
269 
270  std::vector<double>::const_iterator next_coeff=coeffs.begin();
271  while (next_coeff != coeffs.end()) {
272  double threshold = *next_coeff++;
273  double A = *next_coeff++;
274  double B = *next_coeff++;
275  double C = *next_coeff++;
276  if (Et>threshold) {
277  // This function is an inverse quadratic:
278  // (input Et) = A + B*(output Et) + C*(output Et)^2
279  return 2*(Et-A)/(B+sqrt(B*B-4*A*C+4*Et*C));
280  }
281  // If we are below all specified thresholds (or the vector is empty), return output=input.
282  }
283  return Et;
284 }
T sqrt(T t)
Definition: SSEVec.h:48
double L1GctJetFinderParams::pfCorrect ( const double  Et,
const std::vector< double > &  coeffs 
) const
private

Definition at line 329 of file L1GctJetFinderParams.cc.

References create_public_lumi_plots::exp, and funct::pow().

Referenced by correctionFunction().

330 {
331  //
332  // corr_factor = [0]+[1]/(pow(log10(x),2)+[2])+[3]*exp(-[4]*(log10(x)-[5])*(log10(x)-[5]))
333  // Et_out = Et_in * corr_factor
334  //
335 
336  return et * (coeffs.at(0)+coeffs.at(1)/(pow(log10(et),2)+coeffs.at(2))+coeffs.at(3)*exp(-coeffs.at(4)*(log10(et)-coeffs.at(5))*(log10(et)-coeffs.at(5))));
337 
338 }
Power< A, B >::type pow(const A &a, const B &b)
Definition: Power.h:40
double L1GctJetFinderParams::piecewiseCubicCorrect ( const double  Et,
const std::vector< double > &  coeffs 
) const
private

Definition at line 298 of file L1GctJetFinderParams.cc.

References funct::A, funct::C, and dtDQMClient_cfg::threshold.

Referenced by correctionFunction().

299 {
300 
301  // The correction fuction is a set of 3rd order polynomials
302  // Et_out = Et_in + (p0 + p1*Et_in + p2*Et_in^2 + p3*Et_in^3)
303  // with different coefficients for different energy ranges.
304  // The parameters are arranged in groups of five.
305  // The first in each group is a threshold value of input Et,
306  // followed by the four coefficients for the cubic function.
307  double etOut = Et;
308  std::vector<double>::const_iterator next_coeff=coeffs.begin();
309  while (next_coeff != coeffs.end()) {
310 
311  // Read the coefficients from the vector
312  double threshold = *next_coeff++;
313  double A = *next_coeff++; //p0
314  double B = *next_coeff++; //p1
315  double C = *next_coeff++; //p2
316  double D = *next_coeff++; //p3
317 
318  // Check we are in the right energy range and make correction
319  if (Et>threshold) {
320  etOut += (A + etOut*(B + etOut*(C + etOut*D))) ;
321  break;
322  }
323 
324  }
325  return etOut;
326 
327 }
DecomposeProduct< arg, typename Div::arg > D
Definition: Factorize.h:150
double L1GctJetFinderParams::powerSeriesCorrect ( const double  Et,
const std::vector< double > &  coeffs 
) const
private

Definition at line 255 of file L1GctJetFinderParams.cc.

References i, and funct::pow().

Referenced by correctionFunction().

256 {
257  double corrEt = Et;
258  for (unsigned i=0; i<coeffs.size();i++) {
259  corrEt += coeffs.at(i)*pow(Et,(int)i);
260  }
261  return corrEt;
262 }
int i
Definition: DBlmapReader.cc:9
Power< A, B >::type pow(const A &a, const B &b)
Definition: Power.h:40
template<class Archive >
void L1GctJetFinderParams::serialize ( Archive &  ar,
const unsigned int  version 
)
private
void L1GctJetFinderParams::setHtSumParams ( const double  htLsb,
const double  htJetEtThresh,
const double  mhtJetEtThresh 
)

Definition at line 146 of file L1GctJetFinderParams.cc.

References htJetEtThreshold_, htLsb_, and mhtJetEtThreshold_.

Referenced by setParams().

149 {
150  htLsb_ = htLsb;
151  htJetEtThreshold_ = htJetEtThresh;
152  mhtJetEtThreshold_ = mhtJetEtThresh;
153 }
void L1GctJetFinderParams::setJetEtCalibrationParams ( const unsigned  corrType,
const std::vector< std::vector< double > > &  jetCorrCoeffs,
const std::vector< std::vector< double > > &  tauCorrCoeffs 
)

Definition at line 125 of file L1GctJetFinderParams.cc.

References corrType_, jetCorrCoeffs_, and tauCorrCoeffs_.

Referenced by setParams().

128 {
129  corrType_ = corrType;
130  jetCorrCoeffs_ = jetCorrCoeffs;
131  tauCorrCoeffs_ = tauCorrCoeffs;
132 }
std::vector< std::vector< double > > jetCorrCoeffs_
std::vector< std::vector< double > > tauCorrCoeffs_
void L1GctJetFinderParams::setJetEtConvertToEnergyOff ( )

Definition at line 140 of file L1GctJetFinderParams.cc.

References convertToEnergy_, and energyConversionCoeffs_.

141 {
142  convertToEnergy_ = false;
143  energyConversionCoeffs_.clear();
144 }
std::vector< double > energyConversionCoeffs_
void L1GctJetFinderParams::setJetEtConvertToEnergyOn ( const std::vector< double > &  energyConvCoeffs)

Definition at line 134 of file L1GctJetFinderParams.cc.

References convertToEnergy_, and energyConversionCoeffs_.

135 {
136  convertToEnergy_ = true;
137  energyConversionCoeffs_ = energyConvCoeffs;
138 }
std::vector< double > energyConversionCoeffs_
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 160 of file L1GctJetFinderParams.cc.

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

172 {
173  setRegionEtLsb (rgnEtLsb);
174  setSlidingWindowParams(cJetSeed, fJetSeed, tJetSeed, etaBoundary);
175  setJetEtCalibrationParams(corrType, jetCorrCoeffs, tauCorrCoeffs);
176  setHtSumParams(htLsb, htJetEtThresh, mhtJetEtThresh);
177  setTauAlgorithmParams(tauIsoEtThresh);
178 }
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)
void L1GctJetFinderParams::setRegionEtLsb ( const double  rgnEtLsb)

Definition at line 109 of file L1GctJetFinderParams.cc.

References rgnEtLsb_.

Referenced by setParams().

110 {
111  rgnEtLsb_ = rgnEtLsb;
112 }
void L1GctJetFinderParams::setSlidingWindowParams ( const double  cJetSeed,
const double  fJetSeed,
const double  tJetSeed,
const unsigned  etaBoundary 
)

Definition at line 114 of file L1GctJetFinderParams.cc.

References cenForJetEtaBoundary_, cenJetEtSeed_, forJetEtSeed_, and tauJetEtSeed_.

Referenced by setParams().

118 {
119  cenJetEtSeed_ = cJetSeed;
120  forJetEtSeed_ = fJetSeed;
121  tauJetEtSeed_ = tJetSeed;
122  cenForJetEtaBoundary_ = etaBoundary;
123 }
void L1GctJetFinderParams::setTauAlgorithmParams ( const double  tauIsoEtThresh)

Definition at line 155 of file L1GctJetFinderParams.cc.

References tauIsoEtThreshold_.

Referenced by setParams().

156 {
157  tauIsoEtThreshold_ = tauIsoEtThresh;
158 }
double L1GctJetFinderParams::simpleCorrect ( const double  Et,
const std::vector< double > &  coeffs 
) const
private

Definition at line 286 of file L1GctJetFinderParams.cc.

References funct::pow().

Referenced by correctionFunction().

287 {
288  // function is :
289  // Et_out = A + B/[ (log10(Et_in))^C + D ] + E/Et_in
290  //
291  // fitcor_as_str = "[0]+[1]/(pow(log10(x),[2])+[3]) + [4]/x"
292  //
293 
294  return coeffs.at(0) + coeffs.at(1)/(pow(log10(Et),coeffs.at(2))+coeffs.at(3)) + (coeffs.at(4)/Et);
295 
296 }
Power< A, B >::type pow(const A &a, const B &b)
Definition: Power.h:40

Friends And Related Function Documentation

friend class boost::serialization::access
friend

Definition at line 134 of file L1GctJetFinderParams.h.

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

Definition at line 134 of file L1GctJetFinderParams.h.

Member Data Documentation

unsigned L1GctJetFinderParams::cenForJetEtaBoundary_
private
double L1GctJetFinderParams::cenJetEtSeed_
private
bool L1GctJetFinderParams::convertToEnergy_
private
unsigned L1GctJetFinderParams::corrType_
private
std::vector<double> L1GctJetFinderParams::energyConversionCoeffs_
private
double L1GctJetFinderParams::forJetEtSeed_
private
double L1GctJetFinderParams::htJetEtThreshold_
private
double L1GctJetFinderParams::htLsb_
private
std::vector< std::vector<double> > L1GctJetFinderParams::jetCorrCoeffs_
private
double L1GctJetFinderParams::mhtJetEtThreshold_
private
const unsigned L1GctJetFinderParams::N_CENTRAL_ETA_VALUES = 7
static

Number of eta bins used in correction.

Definition at line 15 of file L1GctJetFinderParams.h.

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

const unsigned L1GctJetFinderParams::NUMBER_ETA_VALUES = 11
static
double L1GctJetFinderParams::rgnEtLsb_
private
std::vector< std::vector<double> > L1GctJetFinderParams::tauCorrCoeffs_
private
double L1GctJetFinderParams::tauIsoEtThreshold_
private
double L1GctJetFinderParams::tauJetEtSeed_
private