CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Types | Public Member Functions | Private Attributes
L1GctConfigProducers Class Reference

#include <L1Trigger/L1GctConfigProducers/interface/L1GctConfigProducers.h>

Inheritance diagram for L1GctConfigProducers:
edm::ESProducer edm::ESProxyFactoryProducer edm::eventsetup::DataProxyProvider

Public Types

typedef boost::shared_ptr
< L1GctChannelMask
ChanMaskReturnType
 
typedef boost::shared_ptr
< L1GctJetFinderParams
JfParamsReturnType
 
- Public Types inherited from edm::eventsetup::DataProxyProvider
typedef std::vector< std::pair
< DataKey, boost::shared_ptr
< DataProxy > > > 
KeyedProxies
 
typedef std::vector
< EventSetupRecordKey
Keys
 
typedef std::map
< EventSetupRecordKey,
KeyedProxies
RecordProxies
 

Public Member Functions

std::vector< double > etToEnergyConversion (const L1CaloGeometry *geom) const
 Legacy nonsense. More...
 
 L1GctConfigProducers (const edm::ParameterSet &)
 
ChanMaskReturnType produceChanMask (const L1GctChannelMaskRcd &)
 
JfParamsReturnType produceJfParams (const L1GctJetFinderParamsRcd &)
 
 ~L1GctConfigProducers ()
 
- Public Member Functions inherited from edm::ESProducer
 ESProducer ()
 
virtual ~ESProducer ()
 
- Public Member Functions inherited from edm::ESProxyFactoryProducer
 ESProxyFactoryProducer ()
 
virtual void newInterval (const eventsetup::EventSetupRecordKey &iRecordType, const ValidityInterval &iInterval)
 overrides DataProxyProvider method More...
 
virtual ~ESProxyFactoryProducer ()
 
- Public Member Functions inherited from edm::eventsetup::DataProxyProvider
 DataProxyProvider ()
 
const ComponentDescriptiondescription () const
 
bool isUsingRecord (const EventSetupRecordKey &) const
 
const KeyedProxieskeyedProxies (const EventSetupRecordKey &iRecordKey) const
 
void resetProxies (const EventSetupRecordKey &iRecordType)
 
void resetProxiesIfTransient (const EventSetupRecordKey &iRecordType)
 
void setAppendToDataLabel (const edm::ParameterSet &)
 
void setDescription (const ComponentDescription &iDescription)
 
std::set< EventSetupRecordKeyusingRecords () const
 
virtual ~DataProxyProvider ()
 

Private Attributes

double m_CenJetSeed
 
bool m_convertToEnergy
 
unsigned m_corrFunType
 
unsigned m_EtaBoundry
 
double m_FwdJetSeed
 
double m_htJetThresh
 
double m_htLsb
 
std::vector< std::vector
< double > > 
m_jetCalibFunc
 
unsigned m_metEtaMask
 
unsigned m_mhtEtaMask
 
double m_mhtJetThresh
 
double m_rgnEtLsb
 
std::vector< std::vector
< double > > 
m_tauCalibFunc
 
double m_tauIsoThresh
 
double m_TauJetSeed
 
unsigned m_tetEtaMask
 
unsigned m_thtEtaMask
 

Additional Inherited Members

- Static Public Member Functions inherited from edm::eventsetup::DataProxyProvider
static void prevalidate (ConfigurationDescriptions &)
 
- Protected Member Functions inherited from edm::ESProducer
template<typename T >
void setWhatProduced (T *iThis, const es::Label &iLabel=es::Label())
 
template<typename T >
void setWhatProduced (T *iThis, const char *iLabel)
 
template<typename T >
void setWhatProduced (T *iThis, const std::string &iLabel)
 
template<typename T , typename TDecorator >
void setWhatProduced (T *iThis, const TDecorator &iDec, const es::Label &iLabel=es::Label())
 
template<typename T , typename TReturn , typename TRecord >
void setWhatProduced (T *iThis, TReturn(T::*iMethod)(const TRecord &), const es::Label &iLabel=es::Label())
 
template<typename T , typename TReturn , typename TRecord , typename TArg >
void setWhatProduced (T *iThis, TReturn(T::*iMethod)(const TRecord &), const TArg &iDec, const es::Label &iLabel=es::Label())
 
- Protected Member Functions inherited from edm::ESProxyFactoryProducer
template<class TFactory >
void registerFactory (std::auto_ptr< TFactory > iFactory, const std::string &iLabel=std::string())
 
virtual void registerFactoryWithKey (const eventsetup::EventSetupRecordKey &iRecord, std::auto_ptr< eventsetup::ProxyFactoryBase > &iFactory, const std::string &iLabel=std::string())
 
virtual void registerProxies (const eventsetup::EventSetupRecordKey &iRecord, KeyedProxies &aProxyList)
 override DataProxyProvider method More...
 
- Protected Member Functions inherited from edm::eventsetup::DataProxyProvider
void eraseAll (const EventSetupRecordKey &iRecordKey)
 deletes all the Proxies in aStream More...
 
void invalidateProxies (const EventSetupRecordKey &iRecordKey)
 
template<class T >
void usingRecord ()
 
void usingRecordWithKey (const EventSetupRecordKey &)
 

Detailed Description

Description: <one line="" class="" summary>="">

Implementation: <Notes on="" implementation>="">

Definition at line 51 of file L1GctConfigProducers.h.

Member Typedef Documentation

Definition at line 57 of file L1GctConfigProducers.h.

Definition at line 56 of file L1GctConfigProducers.h.

Constructor & Destructor Documentation

L1GctConfigProducers::L1GctConfigProducers ( const edm::ParameterSet iConfig)

Definition at line 25 of file L1GctConfigProducers.cc.

References edm::ParameterSet::getParameter(), i, m_corrFunType, m_jetCalibFunc, m_tauCalibFunc, L1GctJetFinderParams::N_CENTRAL_ETA_VALUES, L1GctJetFinderParams::NUMBER_ETA_VALUES, produceChanMask(), produceJfParams(), and edm::ESProducer::setWhatProduced().

25  :
26  m_rgnEtLsb(iConfig.getParameter<double>("RctRegionEtLSB")),
27  m_htLsb(iConfig.getParameter<double>("GctHtLSB")),
28  m_CenJetSeed(iConfig.getParameter<double>("JetFinderCentralJetSeed")),
29  m_FwdJetSeed(iConfig.getParameter<double>("JetFinderForwardJetSeed")),
30  m_TauJetSeed(iConfig.getParameter<double>("JetFinderCentralJetSeed")), // no separate tau jet seed yet
31  m_tauIsoThresh(iConfig.getParameter<double>("TauIsoEtThreshold")),
32  m_htJetThresh(iConfig.getParameter<double>("HtJetEtThreshold")),
33  m_mhtJetThresh(iConfig.getParameter<double>("MHtJetEtThreshold")),
34  m_EtaBoundry(7), // not programmable!
35  m_corrFunType(0),
36  m_convertToEnergy (iConfig.getParameter<bool>("ConvertEtValuesToEnergy")),
39  m_metEtaMask(iConfig.getParameter<unsigned>("MEtEtaMask")),
40  m_tetEtaMask(iConfig.getParameter<unsigned>("TEtEtaMask")),
41  m_mhtEtaMask(iConfig.getParameter<unsigned>("MHtEtaMask")),
42  m_thtEtaMask(iConfig.getParameter<unsigned>("HtEtaMask"))
43 {
44 
45  //the following lines are needed to tell the framework what
46  // data is being produced
49 
50  //now do what ever other initialization is needed
51  std::string CalibStyle = iConfig.getParameter<std::string>("CalibrationStyle");
52  edm::ParameterSet calibCoeffs;
53 
54  if (CalibStyle == "PowerSeries") {
55  m_corrFunType = 1;
56  calibCoeffs = iConfig.getParameter<edm::ParameterSet>("PowerSeriesCoefficients");
57  }
58 
59  if (CalibStyle == "ORCAStyle") {
60  m_corrFunType = 2;
61  calibCoeffs = iConfig.getParameter<edm::ParameterSet>("OrcaStyleCoefficients");
62  }
63 
64  if (CalibStyle == "Simple") {
65  m_corrFunType = 3;
66  calibCoeffs = iConfig.getParameter<edm::ParameterSet>("SimpleCoefficients");
67  }
68 
69  if (CalibStyle == "PiecewiseCubic") {
70  m_corrFunType = 4;
71  calibCoeffs = iConfig.getParameter<edm::ParameterSet>("PiecewiseCubicCoefficients");
72  }
73 
74  if (CalibStyle == "PF") {
75  m_corrFunType = 5;
76  calibCoeffs = iConfig.getParameter<edm::ParameterSet>("PFCoefficients");
77  }
78 
79  // check
80  if (CalibStyle != "None") {
81 
82  // Read the coefficients from file
83  // coefficients for non-tau jet corrections
84  for (unsigned i=0; i<L1GctJetFinderParams::NUMBER_ETA_VALUES; ++i) {
85  std::stringstream ss;
86  std::string str;
87  ss << "nonTauJetCalib" << i;
88  ss >> str;
89  m_jetCalibFunc.push_back(calibCoeffs.getParameter< std::vector<double> >(str));
90  }
91  // coefficients for tau jet corrections
92  for (unsigned i=0; i<L1GctJetFinderParams::N_CENTRAL_ETA_VALUES; ++i) {
93  std::stringstream ss;
94  std::string str;
95  ss << "tauJetCalib" << i;
96  ss >> str;
97  m_tauCalibFunc.push_back(calibCoeffs.getParameter< std::vector<double> >(str));
98  }
99 
100  } else {
101  // No corrections to be applied
102  m_corrFunType = 0; // no correction
103  // Set the vector sizes to those expected by the CalibrationFunction
104  m_jetCalibFunc.resize(L1GctJetFinderParams::NUMBER_ETA_VALUES);
105  m_tauCalibFunc.resize(L1GctJetFinderParams::N_CENTRAL_ETA_VALUES);
106  }
107 
108  edm::LogWarning("L1GctConfig") << "Calibration Style option " << CalibStyle << std::endl;
109 
110 }
ChanMaskReturnType produceChanMask(const L1GctChannelMaskRcd &)
T getParameter(std::string const &) const
int i
Definition: DBlmapReader.cc:9
static const unsigned N_CENTRAL_ETA_VALUES
Number of eta bins used in correction.
JfParamsReturnType produceJfParams(const L1GctJetFinderParamsRcd &)
void setWhatProduced(T *iThis, const es::Label &iLabel=es::Label())
Definition: ESProducer.h:115
std::vector< std::vector< double > > m_jetCalibFunc
static const unsigned NUMBER_ETA_VALUES
Number of eta bins used in correction.
std::vector< std::vector< double > > m_tauCalibFunc
L1GctConfigProducers::~L1GctConfigProducers ( )

Definition at line 113 of file L1GctConfigProducers.cc.

114 {
115 
116  // do anything here that needs to be done at desctruction time
117  // (e.g. close files, deallocate resources etc.)
118 
119 }

Member Function Documentation

std::vector< double > L1GctConfigProducers::etToEnergyConversion ( const L1CaloGeometry geom) const

Legacy nonsense.

Calculate Et-to-energy conversion factors for eta bins

Definition at line 173 of file L1GctConfigProducers.cc.

References L1CaloGeometry::etaBinCenter(), create_public_lumi_plots::exp, and query::result.

Referenced by produceJfParams().

174  {
175  // L1CaloGeometry* geom = new L1CaloGeometry();
176  std::vector<double> result;
177  // Factors for central eta bins
178  for (unsigned ieta=0; ieta<7; ieta++) {
179  double bineta = geom->etaBinCenter(ieta, true);
180  double factor = 0.5*(exp(bineta)+exp(-bineta)); // Conversion from eta to cosec(theta)
181  result.push_back(factor);
182  }
183  // Factors for forward eta bins
184  for (unsigned ieta=0; ieta<4; ieta++) {
185  double bineta = geom->etaBinCenter(ieta, false);
186  double factor = 0.5*(exp(bineta)+exp(-bineta)); // Conversion from eta to cosec(theta)
187  result.push_back(factor);
188  }
189  return result;
190 }
double etaBinCenter(unsigned int etaIndex, bool central=true) const
tuple result
Definition: query.py:137
L1GctConfigProducers::ChanMaskReturnType L1GctConfigProducers::produceChanMask ( const L1GctChannelMaskRcd )

Definition at line 153 of file L1GctConfigProducers.cc.

References m_metEtaMask, m_mhtEtaMask, m_tetEtaMask, m_thtEtaMask, L1GctChannelMask::maskMissingEt(), L1GctChannelMask::maskMissingHt(), L1GctChannelMask::maskTotalEt(), and L1GctChannelMask::maskTotalHt().

Referenced by L1GctConfigProducers().

153  {
154 
156 
157  for (unsigned ieta=0; ieta<22; ++ieta) {
158  if (((m_metEtaMask>>ieta)&0x1)==1) mask->maskMissingEt(ieta);
159  if (((m_tetEtaMask>>ieta)&0x1)==1) mask->maskTotalEt(ieta);
160  if (((m_mhtEtaMask>>ieta)&0x1)==1) mask->maskMissingHt(ieta);
161  if (((m_thtEtaMask>>ieta)&0x1)==1) mask->maskTotalHt(ieta);
162  }
163 
164  return boost::shared_ptr<L1GctChannelMask>(mask);
165 
166 }
void maskMissingEt(unsigned ieta)
mask eta range from missing Et sum
void maskTotalHt(unsigned ieta)
mask eta range from total Ht sum
void maskTotalEt(unsigned ieta)
mask eta range from total Et sum
void maskMissingHt(unsigned ieta)
mask eta range from missing Ht sum
L1GctConfigProducers::JfParamsReturnType L1GctConfigProducers::produceJfParams ( const L1GctJetFinderParamsRcd aRcd)

Definition at line 124 of file L1GctConfigProducers.cc.

References etToEnergyConversion(), relativeConstraints::geom, edm::eventsetup::EventSetupRecord::get(), edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::getRecord(), m_CenJetSeed, m_convertToEnergy, m_corrFunType, m_EtaBoundry, m_FwdJetSeed, m_htJetThresh, m_htLsb, m_jetCalibFunc, m_mhtJetThresh, m_rgnEtLsb, m_tauCalibFunc, m_tauIsoThresh, and m_TauJetSeed.

Referenced by L1GctConfigProducers().

125 {
126  // get geometry
127  const L1CaloGeometryRecord& geomRcd = aRcd.getRecord< L1CaloGeometryRecord >() ;
129  geomRcd.get( geom ) ;
130 
131  // construct jet finder params object
132  boost::shared_ptr<L1GctJetFinderParams> pL1GctJetFinderParams =
133  boost::shared_ptr<L1GctJetFinderParams> (new L1GctJetFinderParams(m_rgnEtLsb,
134  m_htLsb,
135  m_CenJetSeed,
136  m_FwdJetSeed,
137  m_TauJetSeed,
141  m_EtaBoundry,
146  etToEnergyConversion(geom.product())) );
147 
148  return pL1GctJetFinderParams ;
149 
150 }
std::vector< std::vector< double > > m_jetCalibFunc
void get(HolderT &iHolder) const
std::vector< double > etToEnergyConversion(const L1CaloGeometry *geom) const
Legacy nonsense.
std::vector< std::vector< double > > m_tauCalibFunc

Member Data Documentation

double L1GctConfigProducers::m_CenJetSeed
private

Definition at line 68 of file L1GctConfigProducers.h.

Referenced by produceJfParams().

bool L1GctConfigProducers::m_convertToEnergy
private

Definition at line 76 of file L1GctConfigProducers.h.

Referenced by produceJfParams().

unsigned L1GctConfigProducers::m_corrFunType
private

Definition at line 75 of file L1GctConfigProducers.h.

Referenced by L1GctConfigProducers(), and produceJfParams().

unsigned L1GctConfigProducers::m_EtaBoundry
private

Definition at line 74 of file L1GctConfigProducers.h.

Referenced by produceJfParams().

double L1GctConfigProducers::m_FwdJetSeed
private

Definition at line 69 of file L1GctConfigProducers.h.

Referenced by produceJfParams().

double L1GctConfigProducers::m_htJetThresh
private

Definition at line 72 of file L1GctConfigProducers.h.

Referenced by produceJfParams().

double L1GctConfigProducers::m_htLsb
private

Definition at line 67 of file L1GctConfigProducers.h.

Referenced by produceJfParams().

std::vector< std::vector<double> > L1GctConfigProducers::m_jetCalibFunc
private

Definition at line 78 of file L1GctConfigProducers.h.

Referenced by L1GctConfigProducers(), and produceJfParams().

unsigned L1GctConfigProducers::m_metEtaMask
private

Definition at line 81 of file L1GctConfigProducers.h.

Referenced by produceChanMask().

unsigned L1GctConfigProducers::m_mhtEtaMask
private

Definition at line 83 of file L1GctConfigProducers.h.

Referenced by produceChanMask().

double L1GctConfigProducers::m_mhtJetThresh
private

Definition at line 73 of file L1GctConfigProducers.h.

Referenced by produceJfParams().

double L1GctConfigProducers::m_rgnEtLsb
private

Definition at line 66 of file L1GctConfigProducers.h.

Referenced by produceJfParams().

std::vector< std::vector<double> > L1GctConfigProducers::m_tauCalibFunc
private

Definition at line 79 of file L1GctConfigProducers.h.

Referenced by L1GctConfigProducers(), and produceJfParams().

double L1GctConfigProducers::m_tauIsoThresh
private

Definition at line 71 of file L1GctConfigProducers.h.

Referenced by produceJfParams().

double L1GctConfigProducers::m_TauJetSeed
private

Definition at line 70 of file L1GctConfigProducers.h.

Referenced by produceJfParams().

unsigned L1GctConfigProducers::m_tetEtaMask
private

Definition at line 82 of file L1GctConfigProducers.h.

Referenced by produceChanMask().

unsigned L1GctConfigProducers::m_thtEtaMask
private

Definition at line 84 of file L1GctConfigProducers.h.

Referenced by produceChanMask().