47 : recoEcalCandidateProducer_(consumes(
config.getParameter<
edm::
InputTag>(
"recoEcalCandidateProducer"))),
51 EtaOrIeta_(
config.getParameter<
bool>(
"isIeta")) {
53 produces<reco::RecoEcalCandidateIsolationMap>();
54 produces<reco::RecoEcalCandidateIsolationMap>(
"sigmaIEtaIEta5x5");
64 desc.add<
bool>((
"isIeta"),
true);
65 descriptions.
add((
"hltEgammaHLTClusterShapeProducer"),
desc);
83 for (
unsigned int iRecoEcalCand = 0; iRecoEcalCand < recoecalcandHandle->size(); iRecoEcalCand++) {
85 if (recoecalcandref->superCluster()->seed()->seed().det() !=
DetId::Ecal) {
86 clshMap.
insert(recoecalcandref, 0);
87 clsh5x5Map.
insert(recoecalcandref, 0);
91 std::vector<float> vCov;
94 vCov = lazyTools.localCovariances(*(recoecalcandref->superCluster()->seed()));
95 sigmaee =
sqrt(vCov[0]);
97 vCov = lazyTools.covariances(*(recoecalcandref->superCluster()->seed()));
98 sigmaee =
sqrt(vCov[0]);
99 double EtaSC = recoecalcandref->eta();
101 sigmaee = sigmaee - 0.02 * (EtaSC - 2.3);
104 double sigmaee5x5 =
sqrt(lazyTools5x5.
localCovariances(*(recoecalcandref->superCluster()->seed()))[0]);
105 clshMap.
insert(recoecalcandref, sigmaee);
106 clsh5x5Map.
insert(recoecalcandref, sigmaee5x5);
109 iEvent.put(std::make_unique<reco::RecoEcalCandidateIsolationMap>(clshMap));
110 iEvent.put(std::make_unique<reco::RecoEcalCandidateIsolationMap>(clsh5x5Map),
"sigmaIEtaIEta5x5");