51 : recoEcalCandidateProducer_(consumes(
config.getParameter<
edm::
InputTag>(
"recoEcalCandidateProducer"))),
56 EtaOrIeta_(
config.getParameter<
bool>(
"isIeta")),
57 multThresEB_(
config.getParameter<
double>(
"multThresEB")),
58 multThresEE_(
config.getParameter<
double>(
"multThresEE")) {
60 produces<reco::RecoEcalCandidateIsolationMap>();
61 produces<reco::RecoEcalCandidateIsolationMap>(
"sigmaIEtaIEta5x5");
62 produces<reco::RecoEcalCandidateIsolationMap>(
"sigmaIEtaIEta5x5NoiseCleaned");
72 desc.add<
bool>((
"isIeta"),
true);
75 descriptions.
add((
"hltEgammaHLTClusterShapeProducer"),
desc);
95 for (
unsigned int iRecoEcalCand = 0; iRecoEcalCand < recoecalcandHandle->size(); iRecoEcalCand++) {
97 if (recoecalcandref->superCluster()->seed()->seed().det() !=
DetId::Ecal) {
98 clshMap.
insert(recoecalcandref, 0);
99 clsh5x5Map.
insert(recoecalcandref, 0);
105 const auto& vCov = lazyTools.localCovariances(*(recoecalcandref->superCluster()->seed()));
106 sigmaee =
sqrt(vCov[0]);
108 const auto& vCov = lazyTools.covariances(*(recoecalcandref->superCluster()->seed()));
109 sigmaee =
sqrt(vCov[0]);
110 double EtaSC = recoecalcandref->eta();
112 sigmaee = sigmaee - 0.02 * (EtaSC - 2.3);
115 double sigmaee5x5 =
sqrt(lazyTools5x5.
localCovariances(*(recoecalcandref->superCluster()->seed()))[0]);
116 double sigmaee5x5NoiseCleaned =
sqrt(lazyTools5x5.
localCovariances(*(recoecalcandref->superCluster()->seed()),
121 clshMap.
insert(recoecalcandref, sigmaee);
122 clsh5x5Map.
insert(recoecalcandref, sigmaee5x5);
123 clsh5x5NoiseCleanedMap.
insert(recoecalcandref, sigmaee5x5NoiseCleaned);
126 iEvent.put(std::make_unique<reco::RecoEcalCandidateIsolationMap>(clshMap));
127 iEvent.put(std::make_unique<reco::RecoEcalCandidateIsolationMap>(clsh5x5Map),
"sigmaIEtaIEta5x5");
128 iEvent.put(std::make_unique<reco::RecoEcalCandidateIsolationMap>(clsh5x5NoiseCleanedMap),
129 "sigmaIEtaIEta5x5NoiseCleaned");