test
CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
EcalUncalibRecHitWorkerMultiFit.h
Go to the documentation of this file.
1 #ifndef RecoLocalCalo_EcalRecProducers_EcalUncalibRecHitRecWorkerGlobal_hh
2 #define RecoLocalCalo_EcalRecProducers_EcalUncalibRecHitRecWorkerGlobal_hh
3 
31 
32 
33 namespace edm {
34  class Event;
35  class EventSetup;
36  class ParameterSet;
38 }
39 
41 
42  public:
46  private:
47  void set(const edm::EventSetup& es) override;
48  void set(const edm::Event& evt) override;
50  public:
52  private:
53 
59 
60  double timeCorrection(float ampli,
61  const std::vector<float>& amplitudeBins, const std::vector<float>& shiftBins);
62 
63  const SampleMatrix & noisecor(bool barrel, int gain) const { return *noisecors[barrel?1:0][gain];}
64 
65  // multifit method
72  SampleMatrix const * const noisecors[2][3] =
79 
82 
83  // determine which of the samples must actually be used by ECAL local reco
85 
86  // time algorithm to be used to set the jitter and its uncertainty
89 
90  // time weights method
100 
101  // ratio method
102  std::vector<double> EBtimeFitParameters_;
103  std::vector<double> EEtimeFitParameters_;
104  std::vector<double> EBamplitudeFitParameters_;
105  std::vector<double> EEamplitudeFitParameters_;
106  std::pair<double,double> EBtimeFitLimits_;
107  std::pair<double,double> EEtimeFitLimits_;
108 
111 
127 
129 
132  std::vector<double> ebPulseShape_;
133  std::vector<double> eePulseShape_;
134 
135 
136  // chi2 thresholds for flags settings
141 
142 
143 };
144 
145 #endif
EcalUncalibRecHitMultiFitAlgo multiFitMethod_
boost::transform_iterator< IterHelp, boost::counting_iterator< int > > const_iterator
EcalUncalibRecHitTimeWeightsAlgo< EEDataFrame > weightsMethod_endcap_
edm::ESHandle< EcalWeightXtalGroups > grps
edm::EDGetTokenT< unsigned int > bunchSpacing_
EcalUncalibRecHitRatioMethodAlgo< EBDataFrame > ratioMethod_barrel_
bool run(const edm::Event &evt, const EcalDigiCollection::const_iterator &digi, EcalUncalibratedRecHitCollection &result) override
tuple result
Definition: mps_fire.py:84
EcalUncalibRecHitRatioMethodAlgo< EEDataFrame > ratioMethod_endcap_
edm::ESHandle< EcalPulseShapes > pulseshapes
edm::ESHandle< EcalTimeCalibConstants > itime
double timeCorrection(float ampli, const std::vector< float > &amplitudeBins, const std::vector< float > &shiftBins)
edm::ESHandle< EcalTimeBiasCorrections > timeCorrBias_
edm::ParameterSetDescription getAlgoDescription()
void set(const edm::EventSetup &es) override
edm::ESHandle< EcalPulseCovariances > pulsecovariances
EcalUncalibRecHitTimeWeightsAlgo< EBDataFrame > weightsMethod_barrel_
edm::ESHandle< EcalTimeOffsetConstant > offtime
SampleMatrix const *const noisecors[2][3]
math::Matrix< 3, 10 >::type EcalWeightMatrix
Definition: EcalWeightSet.h:22
const SampleMatrix & noisecor(bool barrel, int gain) const
edm::ESHandle< EcalSampleMask > sampleMaskHand_
const EcalWeightSet::EcalWeightMatrix * weights[2]
edm::ESHandle< EcalSamplesCorrelation > noisecovariances
Eigen::Matrix< double, 10, 10 > SampleMatrix