CMS 3D CMS Logo

EcalUncalibRecHitWorkerGlobal.h
Go to the documentation of this file.
1 #ifndef RecoLocalCalo_EcalRecProducers_EcalUncalibRecHitRecWorkerGlobal_hh
2 #define RecoLocalCalo_EcalRecProducers_EcalUncalibRecHitRecWorkerGlobal_hh
3 
36 
37 namespace edm {
38  class Event;
39  class EventSetup;
40  class ParameterSet;
42 } // namespace edm
43 
45 public:
49 
50  void set(const edm::EventSetup& es) override;
51  bool run(const edm::Event& evt,
54 
56 
57 protected:
58  double pedVec[3];
59  double pedRMSVec[3];
60  double gainRatios[3];
61 
66 
67  template <class C>
68  int isSaturated(const C& digi);
69 
70  double timeCorrection(float ampli, const std::vector<float>& amplitudeBins, const std::vector<float>& shiftBins);
71 
72  // weights method
81  EEShape testbeamEEShape; // used in the chi2
82  EBShape testbeamEBShape; // can be replaced by simple shape arrays of float in the future
83 
84  // determie which of the samples must actually be used by ECAL local reco
87 
88  // ratio method
89  std::vector<double> EBtimeFitParameters_;
90  std::vector<double> EEtimeFitParameters_;
91  std::vector<double> EBamplitudeFitParameters_;
92  std::vector<double> EEamplitudeFitParameters_;
93  std::pair<double, double> EBtimeFitLimits_;
94  std::pair<double, double> EEtimeFitLimits_;
95 
98 
114 
117 
122  std::vector<double> ebPulseShape_;
123  std::vector<double> eePulseShape_;
124 
125  // chi2 method
130  std::vector<double> EBchi2Parameters_;
131  std::vector<double> EEchi2Parameters_;
132 };
133 
134 #endif
EcalUncalibRecHitWorkerGlobal::isSaturated
int isSaturated(const C &digi)
Definition: EcalUncalibRecHitWorkerGlobal.cc:90
EcalUncalibRecHitWorkerGlobal::grps_
edm::ESHandle< EcalWeightXtalGroups > grps_
Definition: EcalUncalibRecHitWorkerGlobal.h:75
EcalUncalibRecHitRecWeightsAlgo< EBDataFrame >
EcalPedestals.h
EcalUncalibRecHitWorkerGlobal::tokenGrps_
edm::ESGetToken< EcalWeightXtalGroups, EcalWeightXtalGroupsRcd > tokenGrps_
Definition: EcalUncalibRecHitWorkerGlobal.h:73
EcalUncalibRecHitRecWeightsAlgo.h
EcalUncalibRecHitWorkerGlobal::outOfTimeThreshG61pEE_
double outOfTimeThreshG61pEE_
Definition: EcalUncalibRecHitWorkerGlobal.h:109
ESHandle.h
edm::DataFrameContainer::const_iterator
boost::transform_iterator< IterHelp, boost::counting_iterator< int > > const_iterator
Definition: DataFrameContainer.h:61
EcalUncalibRecHitWorkerGlobal::testbeamEEShape
EEShape testbeamEEShape
Definition: EcalUncalibRecHitWorkerGlobal.h:81
EcalUncalibRecHitWorkerGlobal::tokenItime_
edm::ESGetToken< EcalTimeCalibConstants, EcalTimeCalibConstantsRcd > tokenItime_
Definition: EcalUncalibRecHitWorkerGlobal.h:118
EcalUncalibRecHitWorkerGlobal::timeCorrBias_
edm::ESHandle< EcalTimeBiasCorrections > timeCorrBias_
Definition: EcalUncalibRecHitWorkerGlobal.h:116
EcalUncalibRecHitWorkerGlobal::set
void set(const edm::EventSetup &es) override
Definition: EcalUncalibRecHitWorkerGlobal.cc:63
EcalUncalibRecHitWorkerGlobal::tokenPeds_
edm::ESGetToken< EcalPedestals, EcalPedestalsRcd > tokenPeds_
Definition: EcalUncalibRecHitWorkerGlobal.h:62
EBShape
Definition: EBShape.h:6
EcalUncalibRecHitWorkerGlobal::eePulseShape_
std::vector< double > eePulseShape_
Definition: EcalUncalibRecHitWorkerGlobal.h:123
edm
HLT enums.
Definition: AlignableModifier.h:19
EcalUncalibRecHitWorkerGlobal::tokenSampleMask_
edm::ESGetToken< EcalSampleMask, EcalSampleMaskRcd > tokenSampleMask_
Definition: EcalUncalibRecHitWorkerGlobal.h:85
EcalUncalibRecHitWorkerGlobal::timeCorrection
double timeCorrection(float ampli, const std::vector< float > &amplitudeBins, const std::vector< float > &shiftBins)
Definition: EcalUncalibRecHitWorkerGlobal.cc:114
EcalUncalibRecHitWorkerGlobal::chi2ThreshEE_
double chi2ThreshEE_
Definition: EcalUncalibRecHitWorkerGlobal.h:129
edm::ParameterSetDescription
Definition: ParameterSetDescription.h:52
EcalUncalibRecHitWorkerGlobal::offtime_
edm::ESHandle< EcalTimeOffsetConstant > offtime_
Definition: EcalUncalibRecHitWorkerGlobal.h:121
EcalUncalibRecHitWorkerGlobal::weightsMethod_barrel_
EcalUncalibRecHitRecWeightsAlgo< EBDataFrame > weightsMethod_barrel_
Definition: EcalUncalibRecHitWorkerGlobal.h:79
edm::SortedCollection
Definition: SortedCollection.h:49
EcalUncalibRecHitWorkerGlobal::testbeamEBShape
EBShape testbeamEBShape
Definition: EcalUncalibRecHitWorkerGlobal.h:82
EcalUncalibRecHitWorkerGlobal::EEchi2Parameters_
std::vector< double > EEchi2Parameters_
Definition: EcalUncalibRecHitWorkerGlobal.h:131
EcalTimeCalibConstants.h
EcalUncalibRecHitWorkerGlobal
Definition: EcalUncalibRecHitWorkerGlobal.h:44
EcalUncalibRecHitWorkerGlobal::tokenGains_
edm::ESGetToken< EcalGainRatios, EcalGainRatiosRcd > tokenGains_
Definition: EcalUncalibRecHitWorkerGlobal.h:63
EcalUncalibRecHitWorkerGlobal::pedRMSVec
double pedRMSVec[3]
Definition: EcalUncalibRecHitWorkerGlobal.h:59
EcalUncalibRecHitWorkerGlobal::gainRatios
double gainRatios[3]
Definition: EcalUncalibRecHitWorkerGlobal.h:60
EcalUncalibRecHitRatioMethodAlgo.h
EcalUncalibRecHitWorkerGlobal::kPoorRecoFlagEB_
bool kPoorRecoFlagEB_
Definition: EcalUncalibRecHitWorkerGlobal.h:126
ESGetToken.h
EcalWeightXtalGroups.h
EcalUncalibRecHitWorkerGlobal::outOfTimeThreshG61mEB_
double outOfTimeThreshG61mEB_
Definition: EcalUncalibRecHitWorkerGlobal.h:106
EcalUncalibRecHitWorkerGlobal::ratioMethod_endcap_
EcalUncalibRecHitRatioMethodAlgo< EEDataFrame > ratioMethod_endcap_
Definition: EcalUncalibRecHitWorkerGlobal.h:97
EcalTBWeights.h
EBShape.h
EcalUncalibRecHitWorkerGlobal::EEtimeConstantTerm_
double EEtimeConstantTerm_
Definition: EcalUncalibRecHitWorkerGlobal.h:101
EEShape.h
EcalWeightSet::EcalWeightMatrix
math::Matrix< 3, 10 >::type EcalWeightMatrix
Definition: EcalWeightSet.h:19
EcalUncalibRecHitWorkerGlobal::outOfTimeThreshG12pEE_
double outOfTimeThreshG12pEE_
Definition: EcalUncalibRecHitWorkerGlobal.h:107
EcalTimeOffsetConstant.h
EcalUncalibRecHitWorkerGlobal::EBtimeFitParameters_
std::vector< double > EBtimeFitParameters_
Definition: EcalUncalibRecHitWorkerGlobal.h:89
EcalUncalibRecHitWorkerGlobal::EBtimeConstantTerm_
double EBtimeConstantTerm_
Definition: EcalUncalibRecHitWorkerGlobal.h:99
EcalUncalibRecHitWorkerRunOneDigiBase
Definition: EcalUncalibRecHitWorkerRunOneDigiBase.h:10
EcalTimeOffsetConstantRcd.h
edm::ESHandle
Definition: DTSurvey.h:22
EcalUncalibRecHitWorkerGlobal::outOfTimeThreshG12mEE_
double outOfTimeThreshG12mEE_
Definition: EcalUncalibRecHitWorkerGlobal.h:108
EcalUncalibRecHitWorkerGlobal::tokenTimeCorrBias_
edm::ESGetToken< EcalTimeBiasCorrections, EcalTimeBiasCorrectionsRcd > tokenTimeCorrBias_
Definition: EcalUncalibRecHitWorkerGlobal.h:115
EcalUncalibRecHitWorkerGlobal::outOfTimeThreshG61pEB_
double outOfTimeThreshG61pEB_
Definition: EcalUncalibRecHitWorkerGlobal.h:105
Event
EcalUncalibRecHitWorkerGlobal::EBtimeNconst_
double EBtimeNconst_
Definition: EcalUncalibRecHitWorkerGlobal.h:100
EcalUncalibRecHitWorkerGlobal::ebPulseShape_
std::vector< double > ebPulseShape_
Definition: EcalUncalibRecHitWorkerGlobal.h:122
EEShape
Definition: EEShape.h:6
EcalUncalibRecHitRecChi2Algo.h
EcalUncalibRecHitWorkerGlobal::run
bool run(const edm::Event &evt, const EcalDigiCollection::const_iterator &digi, EcalUncalibratedRecHitCollection &result) override
Definition: EcalUncalibRecHitWorkerGlobal.cc:163
EcalUncalibRecHitRatioMethodAlgo< EBDataFrame >
EcalSampleMaskRcd.h
funct::true
true
Definition: Factorize.h:173
edm::ParameterSet
Definition: ParameterSet.h:47
EcalUncalibRecHitWorkerGlobal::chi2ThreshEB_
double chi2ThreshEB_
Definition: EcalUncalibRecHitWorkerGlobal.h:128
EcalUncalibRecHitWorkerGlobal::amplitudeThreshEB_
double amplitudeThreshEB_
Definition: EcalUncalibRecHitWorkerGlobal.h:111
ParameterSet
Definition: Functions.h:16
EcalUncalibRecHitWorkerGlobal::ratioMethod_barrel_
EcalUncalibRecHitRatioMethodAlgo< EBDataFrame > ratioMethod_barrel_
Definition: EcalUncalibRecHitWorkerGlobal.h:96
EcalWeightSet::EcalChi2WeightMatrix
math::Matrix< 10, 10 >::type EcalChi2WeightMatrix
Definition: EcalWeightSet.h:20
EcalUncalibRecHitWorkerGlobal::EBamplitudeFitParameters_
std::vector< double > EBamplitudeFitParameters_
Definition: EcalUncalibRecHitWorkerGlobal.h:91
EcalUncalibRecHitWorkerGlobal::EBchi2Parameters_
std::vector< double > EBchi2Parameters_
Definition: EcalUncalibRecHitWorkerGlobal.h:130
EcalUncalibRecHitWorkerGlobal::EcalUncalibRecHitWorkerGlobal
EcalUncalibRecHitWorkerGlobal()
Definition: EcalUncalibRecHitWorkerGlobal.h:47
EcalUncalibRecHitWorkerGlobal::weights
const EcalWeightSet::EcalWeightMatrix * weights[2]
Definition: EcalUncalibRecHitWorkerGlobal.h:77
EcalUncalibRecHitWorkerGlobal::outOfTimeThreshG61mEE_
double outOfTimeThreshG61mEE_
Definition: EcalUncalibRecHitWorkerGlobal.h:110
EcalUncalibRecHitWorkerGlobal::gains_
edm::ESHandle< EcalGainRatios > gains_
Definition: EcalUncalibRecHitWorkerGlobal.h:65
EcalUncalibRecHitWorkerRunOneDigiBase.h
edm::EventSetup
Definition: EventSetup.h:58
EcalGainRatiosRcd.h
EcalUncalibRecHitWorkerGlobal::peds_
edm::ESHandle< EcalPedestals > peds_
Definition: EcalUncalibRecHitWorkerGlobal.h:64
edm::ESGetToken
Definition: EventSetup.h:48
EcalGainRatios.h
EcalSampleMask.h
EcalUncalibRecHitWorkerGlobal::EBtimeFitLimits_
std::pair< double, double > EBtimeFitLimits_
Definition: EcalUncalibRecHitWorkerGlobal.h:93
EcalUncalibRecHitWorkerGlobal::outOfTimeThreshG12mEB_
double outOfTimeThreshG12mEB_
Definition: EcalUncalibRecHitWorkerGlobal.h:104
EcalUncalibRecHitWorkerGlobal::chi2mat
const EcalWeightSet::EcalChi2WeightMatrix * chi2mat[2]
Definition: EcalUncalibRecHitWorkerGlobal.h:78
EcalUncalibRecHitWorkerGlobal::tokenOfftime_
edm::ESGetToken< EcalTimeOffsetConstant, EcalTimeOffsetConstantRcd > tokenOfftime_
Definition: EcalUncalibRecHitWorkerGlobal.h:119
gen::C
C
Definition: PomwigHadronizer.cc:78
EcalUncalibRecHitWorkerGlobal::~EcalUncalibRecHitWorkerGlobal
~EcalUncalibRecHitWorkerGlobal() override
Definition: EcalUncalibRecHitWorkerGlobal.h:48
EcalUncalibRecHitWorkerGlobal::wgts_
edm::ESHandle< EcalTBWeights > wgts_
Definition: EcalUncalibRecHitWorkerGlobal.h:76
ParameterSetDescription
EcalUncalibRecHitWorkerGlobal::getAlgoDescription
edm::ParameterSetDescription getAlgoDescription() override
Definition: EcalUncalibRecHitWorkerGlobal.cc:441
EcalUncalibRecHitWorkerGlobal::sampleMaskHand_
edm::ESHandle< EcalSampleMask > sampleMaskHand_
Definition: EcalUncalibRecHitWorkerGlobal.h:86
EcalPedestalsRcd.h
EcalUncalibRecHitWorkerGlobal::amplitudeThreshEE_
double amplitudeThreshEE_
Definition: EcalUncalibRecHitWorkerGlobal.h:112
EcalUncalibRecHitWorkerGlobal::kPoorRecoFlagEE_
bool kPoorRecoFlagEE_
Definition: EcalUncalibRecHitWorkerGlobal.h:127
mps_fire.result
result
Definition: mps_fire.py:311
EcalUncalibRecHitWorkerGlobal::EEtimeFitParameters_
std::vector< double > EEtimeFitParameters_
Definition: EcalUncalibRecHitWorkerGlobal.h:90
EventSetup
EcalUncalibRecHitWorkerGlobal::outOfTimeThreshG12pEB_
double outOfTimeThreshG12pEB_
Definition: EcalUncalibRecHitWorkerGlobal.h:103
EcalUncalibRecHitWorkerGlobal::pedVec
double pedVec[3]
Definition: EcalUncalibRecHitWorkerGlobal.h:58
EcalUncalibRecHitWorkerGlobal::itime_
edm::ESHandle< EcalTimeCalibConstants > itime_
Definition: EcalUncalibRecHitWorkerGlobal.h:120
EcalTimeCalibConstantsRcd.h
EcalUncalibRecHitWorkerGlobal::tokenWgts_
edm::ESGetToken< EcalTBWeights, EcalTBWeightsRcd > tokenWgts_
Definition: EcalUncalibRecHitWorkerGlobal.h:74
c
auto & c
Definition: CAHitNtupletGeneratorKernelsImpl.h:56
EcalUncalibRecHitWorkerGlobal::EEtimeNconst_
double EEtimeNconst_
Definition: EcalUncalibRecHitWorkerGlobal.h:102
edm::Event
Definition: Event.h:73
EcalTimeBiasCorrectionsRcd.h
EcalUncalibRecHitWorkerGlobal::EEamplitudeFitParameters_
std::vector< double > EEamplitudeFitParameters_
Definition: EcalUncalibRecHitWorkerGlobal.h:92
EcalWeightXtalGroupsRcd.h
EcalUncalibRecHitWorkerGlobal::EEtimeFitLimits_
std::pair< double, double > EEtimeFitLimits_
Definition: EcalUncalibRecHitWorkerGlobal.h:94
EcalTBWeightsRcd.h
edm::ConsumesCollector
Definition: ConsumesCollector.h:45
EcalTimeBiasCorrections.h
EcalUncalibRecHitWorkerGlobal::ebSpikeThresh_
double ebSpikeThresh_
Definition: EcalUncalibRecHitWorkerGlobal.h:113
EcalUncalibRecHitWorkerGlobal::weightsMethod_endcap_
EcalUncalibRecHitRecWeightsAlgo< EEDataFrame > weightsMethod_endcap_
Definition: EcalUncalibRecHitWorkerGlobal.h:80