CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Attributes
PreshowerPhiClusterProducer Class Reference
Inheritance diagram for PreshowerPhiClusterProducer:
edm::stream::EDProducer<>

Public Types

typedef math::XYZPoint Point
 
- Public Types inherited from edm::stream::EDProducer<>
using CacheTypes = CacheContexts< T... >
 
using GlobalCache = typename CacheTypes::GlobalCache
 
using HasAbility = AbilityChecker< T... >
 
using InputProcessBlockCache = typename CacheTypes::InputProcessBlockCache
 
using LuminosityBlockCache = typename CacheTypes::LuminosityBlockCache
 
using LuminosityBlockContext = LuminosityBlockContextT< LuminosityBlockCache, RunCache, GlobalCache >
 
using LuminosityBlockSummaryCache = typename CacheTypes::LuminosityBlockSummaryCache
 
using RunCache = typename CacheTypes::RunCache
 
using RunContext = RunContextT< RunCache, GlobalCache >
 
using RunSummaryCache = typename CacheTypes::RunSummaryCache
 

Public Member Functions

 PreshowerPhiClusterProducer (const edm::ParameterSet &ps)
 
void produce (edm::Event &evt, const edm::EventSetup &es) override
 
void set (const edm::EventSetup &es)
 
 ~PreshowerPhiClusterProducer () override
 
- Public Member Functions inherited from edm::stream::EDProducer<>
 EDProducer ()=default
 
 EDProducer (const EDProducer &)=delete
 
bool hasAbilityToProduceInBeginLumis () const final
 
bool hasAbilityToProduceInBeginProcessBlocks () const final
 
bool hasAbilityToProduceInBeginRuns () const final
 
bool hasAbilityToProduceInEndLumis () const final
 
bool hasAbilityToProduceInEndProcessBlocks () const final
 
bool hasAbilityToProduceInEndRuns () const final
 
const EDProduceroperator= (const EDProducer &)=delete
 

Private Attributes

double aEta_ [4]
 
double alpha0_
 
double alpha1_
 
double alpha2_
 
double alpha3_
 
std::string assocSClusterCollection_
 
double bEta_ [4]
 
edm::ESGetToken< CaloGeometry, CaloGeometryRecordcaloGeometryToken_
 
edm::EDGetTokenT< reco::SuperClusterCollectionendcapSClusterToken_
 
edm::ESHandle< ESChannelStatusesChannelStatus_
 
edm::ESGetToken< ESChannelStatus, ESChannelStatusRcdesChannelStatusToken_
 
edm::ESHandle< ESEEIntercalibConstantsesEEInterCalib_
 
edm::ESGetToken< ESEEIntercalibConstants, ESEEIntercalibConstantsRcdesEEInterCalibToken_
 
edm::ESHandle< ESGainesgain_
 
edm::ESGetToken< ESGain, ESGainRcdesGainToken_
 
edm::ESHandle< ESMIPToGeVConstantesMIPToGeV_
 
edm::ESGetToken< ESMIPToGeVConstant, ESMIPToGeVConstantRcdesMIPToGeVToken_
 
edm::ESHandle< ESMissingEnergyCalibrationesMissingECalib_
 
edm::ESGetToken< ESMissingEnergyCalibration, ESMissingEnergyCalibrationRcdesMissingECalibToken_
 
float esPhiClusterDeltaEta_
 
float esPhiClusterDeltaPhi_
 
double etThresh_
 
double gamma0_
 
double gamma1_
 
double gamma2_
 
double gamma3_
 
double mip_
 
int nEvt_
 
PreshowerPhiClusterAlgopresh_algo
 
std::string preshClusterCollectionX_
 
std::string preshClusterCollectionY_
 
edm::EDGetTokenT< EcalRecHitCollectionpreshHitToken_
 

Detailed Description

Definition at line 46 of file PreshowerPhiClusterProducer.cc.

Member Typedef Documentation

◆ Point

Definition at line 48 of file PreshowerPhiClusterProducer.cc.

Constructor & Destructor Documentation

◆ PreshowerPhiClusterProducer()

PreshowerPhiClusterProducer::PreshowerPhiClusterProducer ( const edm::ParameterSet ps)
explicit

Definition at line 111 of file PreshowerPhiClusterProducer.cc.

111  {
112  // use configuration file to setup input/output collection names
113  preshHitToken_ = consumes<EcalRecHitCollection>(ps.getParameter<edm::InputTag>("preshRecHitProducer"));
114 
115  // Name of a SuperClusterCollection to make associations:
117  consumes<reco::SuperClusterCollection>(ps.getParameter<edm::InputTag>("endcapSClusterProducer"));
118 
119  esGainToken_ = esConsumes<ESGain, ESGainRcd>();
120  esMIPToGeVToken_ = esConsumes<ESMIPToGeVConstant, ESMIPToGeVConstantRcd>();
121  esEEInterCalibToken_ = esConsumes<ESEEIntercalibConstants, ESEEIntercalibConstantsRcd>();
122  esMissingECalibToken_ = esConsumes<ESMissingEnergyCalibration, ESMissingEnergyCalibrationRcd>();
123  esChannelStatusToken_ = esConsumes<ESChannelStatus, ESChannelStatusRcd>();
124  caloGeometryToken_ = esConsumes<CaloGeometry, CaloGeometryRecord>();
125 
126  // Output collections:
127  preshClusterCollectionX_ = ps.getParameter<std::string>("preshClusterCollectionX");
128  preshClusterCollectionY_ = ps.getParameter<std::string>("preshClusterCollectionY");
129 
130  assocSClusterCollection_ = ps.getParameter<std::string>("assocSClusterCollection");
131 
132  produces<reco::PreshowerClusterCollection>(preshClusterCollectionX_);
133  produces<reco::PreshowerClusterCollection>(preshClusterCollectionY_);
134  produces<reco::SuperClusterCollection>(assocSClusterCollection_);
135 
136  float esStripECut = ps.getParameter<double>("esStripEnergyCut");
137  esPhiClusterDeltaEta_ = ps.getParameter<double>("esPhiClusterDeltaEta");
138  esPhiClusterDeltaPhi_ = ps.getParameter<double>("esPhiClusterDeltaPhi");
139 
140  etThresh_ = ps.getParameter<double>("etThresh");
141 
142  presh_algo = new PreshowerPhiClusterAlgo(esStripECut);
143 }

References edm::ParameterSet::getParameter(), and AlCaHLTBitMon_QueryRunRegistry::string.

◆ ~PreshowerPhiClusterProducer()

PreshowerPhiClusterProducer::~PreshowerPhiClusterProducer ( )
override

Definition at line 145 of file PreshowerPhiClusterProducer.cc.

145 { delete presh_algo; }

Member Function Documentation

◆ produce()

void PreshowerPhiClusterProducer::produce ( edm::Event evt,
const edm::EventSetup es 
)
override

Definition at line 147 of file PreshowerPhiClusterProducer.cc.

147  {
150 
151  // get the ECAL geometry:
153 
154  // retrieve ES-EE intercalibration constants and channel status
155  set(es);
156  const ESChannelStatus* channelStatus = esChannelStatus_.product();
157 
158  const CaloSubdetectorGeometry* geometry_p = (geoHandle->getSubdetectorGeometry(DetId::Ecal, EcalPreshower));
159 
160  // create unique_ptr to a PreshowerClusterCollection
161  auto clusters_p1 = std::make_unique<reco::PreshowerClusterCollection>();
162  auto clusters_p2 = std::make_unique<reco::PreshowerClusterCollection>();
163  // create new collection of corrected super clusters
164  auto superclusters_p = std::make_unique<reco::SuperClusterCollection>();
165 
166  // fetch the product (pSuperClusters)
167  evt.getByToken(endcapSClusterToken_, pSuperClusters);
168  const reco::SuperClusterCollection* SClusts = pSuperClusters.product();
169 
170  // fetch the product (RecHits)
171  evt.getByToken(preshHitToken_, pRecHits);
172  // pointer to the object in the product
173  const EcalRecHitCollection* rechits = pRecHits.product(); // EcalRecHitCollection hit_collection = *rhcHandle;
174 
175  LogTrace("EcalClusters") << "PreshowerPhiClusterProducerInfo: ### Total # of preshower RecHits: " << rechits->size();
176 
177  // make the map of rechits:
178  std::map<DetId, EcalRecHit> rechits_map;
180  for (it = rechits->begin(); it != rechits->end(); it++) {
181  // remove bad ES rechits
182  if (it->recoFlag() == 1 || it->recoFlag() == 14 || (it->recoFlag() <= 10 && it->recoFlag() >= 5))
183  continue;
184  //Make the map of DetID, EcalRecHit pairs
185  rechits_map.insert(std::make_pair(it->id(), *it));
186  }
187  // The set of used DetID's for a given event:
188  std::set<DetId> used_strips;
189  used_strips.clear();
190  LogTrace("EcalClusters") << "PreshowerPhiClusterProducerInfo: ### rechits_map of size " << rechits_map.size()
191  << " was created!";
192 
193  reco::PreshowerClusterCollection clusters1, clusters2; // output collection of corrected PCs
194  reco::SuperClusterCollection new_SC; // output collection of corrected SCs
195 
196  //make cycle over super clusters
197  reco::SuperClusterCollection::const_iterator it_super;
198  int isc = 0;
199  for (it_super = SClusts->begin(); it_super != SClusts->end(); ++it_super) {
200  float e1 = 0;
201  float e2 = 0;
202  float deltaE = 0;
203 
205  ++isc;
206  LogTrace("EcalClusters") << " superE = " << it_super->energy() << " superETA = " << it_super->eta()
207  << " superPHI = " << it_super->phi();
208 
209  //cout<<"=== new SC ==="<<endl;
210  //cout<<"superE = "<<it_super->energy()<<" superETA = "<<it_super->eta()<<" superPHI = "<<it_super->phi()<<endl;
211 
212  int nBC = 0;
213  int condP1 = 1; // 0: dead channel; 1: active channel
214  int condP2 = 1;
215  float maxDeltaPhi = 0;
216  float minDeltaPhi = 0;
217  float refPhi = 0;
218 
219  reco::CaloCluster_iterator bc_iter = it_super->clustersBegin();
220  for (; bc_iter != it_super->clustersEnd(); ++bc_iter) {
221  if (nBC == 0) {
222  refPhi = (*bc_iter)->phi();
223  } else {
224  if (reco::deltaPhi((*bc_iter)->phi(), refPhi) > 0 && reco::deltaPhi((*bc_iter)->phi(), refPhi) > maxDeltaPhi)
225  maxDeltaPhi = reco::deltaPhi((*bc_iter)->phi(), refPhi);
226  if (reco::deltaPhi((*bc_iter)->phi(), refPhi) < 0 && reco::deltaPhi((*bc_iter)->phi(), refPhi) < minDeltaPhi)
227  minDeltaPhi = reco::deltaPhi((*bc_iter)->phi(), refPhi);
228  //cout<<"delta phi : "<<reco::deltaPhi((*bc_iter)->phi(), refPhi)<<endl;
229  }
230  //cout<<"BC : "<<nBC<<" "<<(*bc_iter)->energy()<<" "<<(*bc_iter)->eta()<<" "<<(*bc_iter)->phi()<<endl;
231  nBC++;
232  }
235 
236  nBC = 0;
237  for (bc_iter = it_super->clustersBegin(); bc_iter != it_super->clustersEnd(); ++bc_iter) {
238  if (geometry_p) {
239  // Get strip position at intersection point of the line EE - Vertex:
240  double X = (*bc_iter)->x();
241  double Y = (*bc_iter)->y();
242  double Z = (*bc_iter)->z();
243  const GlobalPoint point(X, Y, Z);
244 
245  DetId tmp1 = (dynamic_cast<const EcalPreshowerGeometry*>(geometry_p))->getClosestCellInPlane(point, 1);
246  DetId tmp2 = (dynamic_cast<const EcalPreshowerGeometry*>(geometry_p))->getClosestCellInPlane(point, 2);
247  ESDetId strip1 = (tmp1 == DetId(0)) ? ESDetId(0) : ESDetId(tmp1);
248  ESDetId strip2 = (tmp2 == DetId(0)) ? ESDetId(0) : ESDetId(tmp2);
249 
250  if (nBC == 0) {
251  if (strip1 != ESDetId(0) && strip2 != ESDetId(0)) {
252  ESChannelStatusMap::const_iterator status_p1 = channelStatus->getMap().find(strip1);
253  ESChannelStatusMap::const_iterator status_p2 = channelStatus->getMap().find(strip2);
254  if (status_p1->getStatusCode() == 1)
255  condP1 = 0;
256  if (status_p2->getStatusCode() == 1)
257  condP2 = 0;
258  } else if (strip1 == ESDetId(0)) {
259  condP1 = 0;
260  } else if (strip2 == ESDetId(0)) {
261  condP2 = 0;
262  }
263 
264  //cout<<"starting cluster : "<<maxDeltaPhi<<" "<<minDeltaPhi<<" "<<esPhiClusterDeltaEta_<<endl;
265  //cout<<"do plane 1 === "<<strip1.zside()<<" "<<strip1.plane()<<" "<<strip1.six()<<" "<<strip1.siy()<<" "<<strip1.strip()<<endl;
266  // Get a vector of ES clusters (found by the PreshSeeded algorithm) associated with a given EE basic cluster.
268  strip1, &used_strips, &rechits_map, geometry_p, esPhiClusterDeltaEta_, minDeltaPhi, maxDeltaPhi);
269  cl1.setBCRef(*bc_iter);
270  clusters1.push_back(cl1);
271  e1 += cl1.energy();
272 
273  //cout<<"do plane 2 === "<<strip2.zside()<<" "<<strip2.plane()<<" "<<strip2.six()<<" "<<strip2.siy()<<" "<<strip2.strip()<<endl;
275  strip2, &used_strips, &rechits_map, geometry_p, esPhiClusterDeltaEta_, minDeltaPhi, maxDeltaPhi);
276  cl2.setBCRef(*bc_iter);
277  clusters2.push_back(cl2);
278  e2 += cl2.energy();
279  }
280  }
281 
282  new_BC.push_back(*bc_iter);
283  nBC++;
284  } // end of cycle over BCs
285 
286  LogTrace("EcalClusters") << " For SC #" << isc - 1 << ", containing " << it_super->clustersSize()
287  << " basic clusters, PreshowerPhiClusterAlgo made " << clusters1.size()
288  << " in X plane and " << clusters2.size() << " in Y plane "
289  << " preshower clusters ";
290 
291  // update energy of the SuperCluster
292  if (e1 + e2 > 1.0e-10) {
293  e1 = e1 / mip_; // GeV to #MIPs
294  e2 = e2 / mip_;
295 
296  if (condP1 == 1 && condP2 == 1) {
297  deltaE = gamma0_ * (e1 + alpha0_ * e2);
298  } else if (condP1 == 1 && condP2 == 0) {
299  deltaE = gamma1_ * (e1 + alpha1_ * e2);
300  } else if (condP1 == 0 && condP2 == 1) {
301  deltaE = gamma2_ * (e1 + alpha2_ * e2);
302  } else if (condP1 == 0 && condP2 == 0) {
303  deltaE = gamma3_ * (e1 + alpha3_ * e2);
304  }
305  }
306 
307  //corrected Energy
308  float E = it_super->energy() + deltaE;
309 
310  LogTrace("EcalClusters") << " Creating corrected SC ";
311 
312  reco::SuperCluster sc(E, it_super->position(), it_super->seed(), new_BC, deltaE);
314  sc.setPreshowerEnergyPlane2(e2 * mip_);
315  if (condP1 == 1 && condP2 == 1)
316  sc.setPreshowerPlanesStatus(0);
317  else if (condP1 == 1 && condP2 == 0)
318  sc.setPreshowerPlanesStatus(1);
319  else if (condP1 == 0 && condP2 == 1)
320  sc.setPreshowerPlanesStatus(2);
321  else if (condP1 == 0 && condP2 == 0)
322  sc.setPreshowerPlanesStatus(3);
323 
324  if (etThresh_ > 0) { // calling postion().theta can be expensive
325  if (sc.energy() * sin(sc.position().theta()) > etThresh_)
326  new_SC.push_back(sc);
327  } else {
328  new_SC.push_back(sc);
329  }
330 
331  } // end of cycle over SCs
332 
333  // copy the preshower clusters into collections and put in the Event:
334  clusters_p1->assign(clusters1.begin(), clusters1.end());
335  clusters_p2->assign(clusters2.begin(), clusters2.end());
336  // put collection of preshower clusters to the event
337  evt.put(std::move(clusters_p1), preshClusterCollectionX_);
338  evt.put(std::move(clusters_p2), preshClusterCollectionY_);
339  LogTrace("EcalClusters") << "Preshower clusters added to the event";
340 
341  // put collection of corrected super clusters to the event
342  superclusters_p->assign(new_SC.begin(), new_SC.end());
343  evt.put(std::move(superclusters_p), assocSClusterCollection_);
344  LogTrace("EcalClusters") << "Corrected SClusters added to the event";
345 }

References GetRecoTauVFromDQM_MC_cff::cl2, EgHLTOffHistBins_cfi::deltaE, reco::deltaPhi(), MillePedeFileConverter_cfg::e, StorageManager_cfg::e1, DetId::Ecal, EcalPreshower, reco::CaloCluster::energy(), ESCondObjectContainer< T >::find(), edm::Event::getByToken(), edm::EventSetup::getHandle(), ESCondObjectContainer< T >::getMap(), CaloGeometry::getSubdetectorGeometry(), LogTrace, CommPDSkim_cfg::maxDeltaPhi, VBFGenJetFilter_cfi::minDeltaPhi, eostools::move(), point, edm::Handle< T >::product(), edm::PtrVector< T >::push_back(), edm::Event::put(), HI_PhotonSkim_cff::rechits, reco::PreshowerCluster::setBCRef(), reco::SuperCluster::setPreshowerEnergyPlane1(), funct::sin(), X, BeamSpotPI::Y, and BeamSpotPI::Z.

◆ set()

void PreshowerPhiClusterProducer::set ( const edm::EventSetup es)

Definition at line 347 of file PreshowerPhiClusterProducer.cc.

347  {
349  const ESGain* gain = esgain_.product();
350 
351  double ESGain = gain->getESGain();
352 
354  const ESMIPToGeVConstant* mipToGeV = esMIPToGeV_.product();
355 
356  mip_ = (ESGain == 1) ? mipToGeV->getESValueLow() : mipToGeV->getESValueHigh();
357 
359 
361  const ESEEIntercalibConstants* esEEInterCalib = esEEInterCalib_.product();
362 
363  // both planes work
364  gamma0_ = (ESGain == 1) ? 0.02 : esEEInterCalib->getGammaHigh0();
365  alpha0_ = (ESGain == 1) ? esEEInterCalib->getAlphaLow0() : esEEInterCalib->getAlphaHigh0();
366 
367  // only first plane works
368  gamma1_ = (ESGain == 1) ? (0.02 * esEEInterCalib->getGammaLow1()) : esEEInterCalib->getGammaHigh1();
369  alpha1_ = (ESGain == 1) ? esEEInterCalib->getAlphaLow1() : esEEInterCalib->getAlphaHigh1();
370 
371  // only second plane works
372  gamma2_ = (ESGain == 1) ? (0.02 * esEEInterCalib->getGammaLow2()) : esEEInterCalib->getGammaHigh2();
373  alpha2_ = (ESGain == 1) ? esEEInterCalib->getAlphaLow2() : esEEInterCalib->getAlphaHigh2();
374 
375  // both planes do not work
376  gamma3_ = (ESGain == 1) ? 0.02 : esEEInterCalib->getGammaHigh3();
377  alpha3_ = (ESGain == 1) ? esEEInterCalib->getAlphaLow3() : esEEInterCalib->getAlphaHigh3();
378 
380  const ESMissingEnergyCalibration* esMissingECalib = esMissingECalib_.product();
381 
382  // |eta| < 1.9
383  aEta_[0] = esMissingECalib->getConstAEta0();
384  bEta_[0] = esMissingECalib->getConstBEta0();
385 
386  // 1.9 < |eta| < 2.1
387  aEta_[1] = esMissingECalib->getConstAEta1();
388  bEta_[1] = esMissingECalib->getConstBEta1();
389 
390  // 2.1 < |eta| < 2.3
391  aEta_[2] = esMissingECalib->getConstAEta2();
392  bEta_[2] = esMissingECalib->getConstBEta2();
393 
394  // 2.3 < |eta| < 2.5
395  aEta_[3] = esMissingECalib->getConstAEta3();
396  bEta_[3] = esMissingECalib->getConstBEta3();
397 }

References PedestalClient_cfi::gain, ESEEIntercalibConstants::getAlphaHigh0(), ESEEIntercalibConstants::getAlphaHigh1(), ESEEIntercalibConstants::getAlphaHigh2(), ESEEIntercalibConstants::getAlphaHigh3(), ESEEIntercalibConstants::getAlphaLow0(), ESEEIntercalibConstants::getAlphaLow1(), ESEEIntercalibConstants::getAlphaLow2(), ESEEIntercalibConstants::getAlphaLow3(), ESMissingEnergyCalibration::getConstAEta0(), ESMissingEnergyCalibration::getConstAEta1(), ESMissingEnergyCalibration::getConstAEta2(), ESMissingEnergyCalibration::getConstAEta3(), ESMissingEnergyCalibration::getConstBEta0(), ESMissingEnergyCalibration::getConstBEta1(), ESMissingEnergyCalibration::getConstBEta2(), ESMissingEnergyCalibration::getConstBEta3(), ESMIPToGeVConstant::getESValueHigh(), ESMIPToGeVConstant::getESValueLow(), ESEEIntercalibConstants::getGammaHigh0(), ESEEIntercalibConstants::getGammaHigh1(), ESEEIntercalibConstants::getGammaHigh2(), ESEEIntercalibConstants::getGammaHigh3(), ESEEIntercalibConstants::getGammaLow1(), ESEEIntercalibConstants::getGammaLow2(), and edm::EventSetup::getHandle().

Member Data Documentation

◆ aEta_

double PreshowerPhiClusterProducer::aEta_[4]
private

Definition at line 92 of file PreshowerPhiClusterProducer.cc.

◆ alpha0_

double PreshowerPhiClusterProducer::alpha0_
private

Definition at line 88 of file PreshowerPhiClusterProducer.cc.

◆ alpha1_

double PreshowerPhiClusterProducer::alpha1_
private

Definition at line 89 of file PreshowerPhiClusterProducer.cc.

◆ alpha2_

double PreshowerPhiClusterProducer::alpha2_
private

Definition at line 90 of file PreshowerPhiClusterProducer.cc.

◆ alpha3_

double PreshowerPhiClusterProducer::alpha3_
private

Definition at line 91 of file PreshowerPhiClusterProducer.cc.

◆ assocSClusterCollection_

std::string PreshowerPhiClusterProducer::assocSClusterCollection_
private

Definition at line 70 of file PreshowerPhiClusterProducer.cc.

◆ bEta_

double PreshowerPhiClusterProducer::bEta_[4]
private

Definition at line 93 of file PreshowerPhiClusterProducer.cc.

◆ caloGeometryToken_

edm::ESGetToken<CaloGeometry, CaloGeometryRecord> PreshowerPhiClusterProducer::caloGeometryToken_
private

Definition at line 82 of file PreshowerPhiClusterProducer.cc.

◆ endcapSClusterToken_

edm::EDGetTokenT<reco::SuperClusterCollection> PreshowerPhiClusterProducer::endcapSClusterToken_
private

Definition at line 63 of file PreshowerPhiClusterProducer.cc.

◆ esChannelStatus_

edm::ESHandle<ESChannelStatus> PreshowerPhiClusterProducer::esChannelStatus_
private

Definition at line 76 of file PreshowerPhiClusterProducer.cc.

◆ esChannelStatusToken_

edm::ESGetToken<ESChannelStatus, ESChannelStatusRcd> PreshowerPhiClusterProducer::esChannelStatusToken_
private

Definition at line 81 of file PreshowerPhiClusterProducer.cc.

◆ esEEInterCalib_

edm::ESHandle<ESEEIntercalibConstants> PreshowerPhiClusterProducer::esEEInterCalib_
private

Definition at line 74 of file PreshowerPhiClusterProducer.cc.

◆ esEEInterCalibToken_

edm::ESGetToken<ESEEIntercalibConstants, ESEEIntercalibConstantsRcd> PreshowerPhiClusterProducer::esEEInterCalibToken_
private

Definition at line 79 of file PreshowerPhiClusterProducer.cc.

◆ esgain_

edm::ESHandle<ESGain> PreshowerPhiClusterProducer::esgain_
private

Definition at line 72 of file PreshowerPhiClusterProducer.cc.

◆ esGainToken_

edm::ESGetToken<ESGain, ESGainRcd> PreshowerPhiClusterProducer::esGainToken_
private

Definition at line 77 of file PreshowerPhiClusterProducer.cc.

◆ esMIPToGeV_

edm::ESHandle<ESMIPToGeVConstant> PreshowerPhiClusterProducer::esMIPToGeV_
private

Definition at line 73 of file PreshowerPhiClusterProducer.cc.

◆ esMIPToGeVToken_

edm::ESGetToken<ESMIPToGeVConstant, ESMIPToGeVConstantRcd> PreshowerPhiClusterProducer::esMIPToGeVToken_
private

Definition at line 78 of file PreshowerPhiClusterProducer.cc.

◆ esMissingECalib_

edm::ESHandle<ESMissingEnergyCalibration> PreshowerPhiClusterProducer::esMissingECalib_
private

Definition at line 75 of file PreshowerPhiClusterProducer.cc.

◆ esMissingECalibToken_

edm::ESGetToken<ESMissingEnergyCalibration, ESMissingEnergyCalibrationRcd> PreshowerPhiClusterProducer::esMissingECalibToken_
private

Definition at line 80 of file PreshowerPhiClusterProducer.cc.

◆ esPhiClusterDeltaEta_

float PreshowerPhiClusterProducer::esPhiClusterDeltaEta_
private

Definition at line 101 of file PreshowerPhiClusterProducer.cc.

◆ esPhiClusterDeltaPhi_

float PreshowerPhiClusterProducer::esPhiClusterDeltaPhi_
private

Definition at line 102 of file PreshowerPhiClusterProducer.cc.

◆ etThresh_

double PreshowerPhiClusterProducer::etThresh_
private

Definition at line 95 of file PreshowerPhiClusterProducer.cc.

◆ gamma0_

double PreshowerPhiClusterProducer::gamma0_
private

Definition at line 84 of file PreshowerPhiClusterProducer.cc.

◆ gamma1_

double PreshowerPhiClusterProducer::gamma1_
private

Definition at line 85 of file PreshowerPhiClusterProducer.cc.

◆ gamma2_

double PreshowerPhiClusterProducer::gamma2_
private

Definition at line 86 of file PreshowerPhiClusterProducer.cc.

◆ gamma3_

double PreshowerPhiClusterProducer::gamma3_
private

Definition at line 87 of file PreshowerPhiClusterProducer.cc.

◆ mip_

double PreshowerPhiClusterProducer::mip_
private

Definition at line 83 of file PreshowerPhiClusterProducer.cc.

◆ nEvt_

int PreshowerPhiClusterProducer::nEvt_
private

Definition at line 58 of file PreshowerPhiClusterProducer.cc.

◆ presh_algo

PreshowerPhiClusterAlgo* PreshowerPhiClusterProducer::presh_algo
private

Definition at line 97 of file PreshowerPhiClusterProducer.cc.

◆ preshClusterCollectionX_

std::string PreshowerPhiClusterProducer::preshClusterCollectionX_
private

Definition at line 66 of file PreshowerPhiClusterProducer.cc.

◆ preshClusterCollectionY_

std::string PreshowerPhiClusterProducer::preshClusterCollectionY_
private

Definition at line 67 of file PreshowerPhiClusterProducer.cc.

◆ preshHitToken_

edm::EDGetTokenT<EcalRecHitCollection> PreshowerPhiClusterProducer::preshHitToken_
private

Definition at line 61 of file PreshowerPhiClusterProducer.cc.

edm::ESHandle::product
T const * product() const
Definition: ESHandle.h:86
ESGain
Definition: ESGain.h:7
ESMissingEnergyCalibration
Definition: ESMissingEnergyCalibration.h:7
ESMissingEnergyCalibration::getConstBEta1
float getConstBEta1() const
Definition: ESMissingEnergyCalibration.h:28
PreshowerPhiClusterProducer::esgain_
edm::ESHandle< ESGain > esgain_
Definition: PreshowerPhiClusterProducer.cc:72
edm::SortedCollection< EcalRecHit >::const_iterator
std::vector< EcalRecHit >::const_iterator const_iterator
Definition: SortedCollection.h:80
PreshowerPhiClusterProducer::gamma0_
double gamma0_
Definition: PreshowerPhiClusterProducer.cc:84
edm::Handle::product
T const * product() const
Definition: Handle.h:70
PreshowerPhiClusterProducer::preshClusterCollectionX_
std::string preshClusterCollectionX_
Definition: PreshowerPhiClusterProducer.cc:66
PreshowerPhiClusterProducer::aEta_
double aEta_[4]
Definition: PreshowerPhiClusterProducer.cc:92
PreshowerPhiClusterProducer::esChannelStatus_
edm::ESHandle< ESChannelStatus > esChannelStatus_
Definition: PreshowerPhiClusterProducer.cc:76
ESEEIntercalibConstants::getGammaLow2
float getGammaLow2() const
Definition: ESEEIntercalibConstants.h:39
reco::SuperCluster
Definition: SuperCluster.h:18
X
#define X(str)
Definition: MuonsGrabber.cc:38
reco::deltaPhi
constexpr double deltaPhi(double phi1, double phi2)
Definition: deltaPhi.h:26
PreshowerPhiClusterProducer::set
void set(const edm::EventSetup &es)
Definition: PreshowerPhiClusterProducer.cc:347
PreshowerPhiClusterProducer::gamma2_
double gamma2_
Definition: PreshowerPhiClusterProducer.cc:86
PreshowerPhiClusterProducer::gamma3_
double gamma3_
Definition: PreshowerPhiClusterProducer.cc:87
ESMissingEnergyCalibration::getConstBEta0
float getConstBEta0() const
Definition: ESMissingEnergyCalibration.h:23
ESCondObjectContainer::find
const_iterator find(uint32_t rawId) const
Definition: ESCondObjectContainer.h:33
reco::PreshowerCluster
Definition: PreshowerCluster.h:17
PreshowerPhiClusterProducer::mip_
double mip_
Definition: PreshowerPhiClusterProducer.cc:83
CaloGeometry::getSubdetectorGeometry
const CaloSubdetectorGeometry * getSubdetectorGeometry(const DetId &id) const
access the subdetector geometry for the given subdetector directly
Definition: CaloGeometry.cc:34
PreshowerPhiClusterProducer::esPhiClusterDeltaPhi_
float esPhiClusterDeltaPhi_
Definition: PreshowerPhiClusterProducer.cc:102
edm::PtrVectorItr
Definition: PtrVector.h:51
edm::SortedCollection< EcalRecHit >
ESEEIntercalibConstants::getGammaHigh1
float getGammaHigh1() const
Definition: ESEEIntercalibConstants.h:54
GetRecoTauVFromDQM_MC_cff.cl2
cl2
Definition: GetRecoTauVFromDQM_MC_cff.py:44
ESDetId
Definition: ESDetId.h:15
ESEEIntercalibConstants::getGammaLow1
float getGammaLow1() const
Definition: ESEEIntercalibConstants.h:34
PreshowerPhiClusterProducer::esEEInterCalibToken_
edm::ESGetToken< ESEEIntercalibConstants, ESEEIntercalibConstantsRcd > esEEInterCalibToken_
Definition: PreshowerPhiClusterProducer.cc:79
ESMIPToGeVConstant::getESValueHigh
float getESValueHigh() const
Definition: ESMIPToGeVConstant.h:15
edm::Handle
Definition: AssociativeIterator.h:50
PreshowerPhiClusterProducer::esMIPToGeVToken_
edm::ESGetToken< ESMIPToGeVConstant, ESMIPToGeVConstantRcd > esMIPToGeVToken_
Definition: PreshowerPhiClusterProducer.cc:78
funct::sin
Sin< T >::type sin(const T &t)
Definition: Sin.h:22
PreshowerPhiClusterProducer::gamma1_
double gamma1_
Definition: PreshowerPhiClusterProducer.cc:85
reco::SuperClusterCollection
std::vector< SuperCluster > SuperClusterCollection
collection of SuperCluser objectr
Definition: SuperClusterFwd.h:9
PreshowerPhiClusterAlgo::makeOneCluster
reco::PreshowerCluster makeOneCluster(ESDetId strip, HitsID *used_strips, RecHitsMap *rechits_map, const CaloSubdetectorGeometry *geometry_p, double deltaEta, double minDeltaPhi, double maxDeltaPhi)
Definition: PreshowerPhiClusterAlgo.cc:15
DetId
Definition: DetId.h:17
PreshowerPhiClusterProducer::esChannelStatusToken_
edm::ESGetToken< ESChannelStatus, ESChannelStatusRcd > esChannelStatusToken_
Definition: PreshowerPhiClusterProducer.cc:81
PreshowerPhiClusterProducer::esMIPToGeV_
edm::ESHandle< ESMIPToGeVConstant > esMIPToGeV_
Definition: PreshowerPhiClusterProducer.cc:73
ESMissingEnergyCalibration::getConstAEta2
float getConstAEta2() const
Definition: ESMissingEnergyCalibration.h:31
ESEEIntercalibConstants::getAlphaHigh3
float getAlphaHigh3() const
Definition: ESEEIntercalibConstants.h:66
ESEEIntercalibConstants::getAlphaHigh0
float getAlphaHigh0() const
Definition: ESEEIntercalibConstants.h:51
edm::PtrVector< CaloCluster >
PreshowerPhiClusterProducer::esGainToken_
edm::ESGetToken< ESGain, ESGainRcd > esGainToken_
Definition: PreshowerPhiClusterProducer.cc:77
ESEEIntercalibConstants::getGammaHigh0
float getGammaHigh0() const
Definition: ESEEIntercalibConstants.h:49
edm::ESHandle< CaloGeometry >
ESCondObjectContainer::const_iterator
std::vector< Item >::const_iterator const_iterator
Definition: ESCondObjectContainer.h:17
ESEEIntercalibConstants::getAlphaHigh2
float getAlphaHigh2() const
Definition: ESEEIntercalibConstants.h:61
reco::PreshowerClusterCollection
std::vector< PreshowerCluster > PreshowerClusterCollection
collection of PreshowerCluster objects
Definition: PreshowerClusterFwd.h:12
HI_PhotonSkim_cff.rechits
rechits
Definition: HI_PhotonSkim_cff.py:76
edm::Event::getByToken
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:539
Point3DBase< float, GlobalTag >
reco::SuperCluster::setPreshowerEnergyPlane1
void setPreshowerEnergyPlane1(double preshowerEnergy1)
Definition: SuperCluster.h:71
PreshowerPhiClusterProducer::alpha3_
double alpha3_
Definition: PreshowerPhiClusterProducer.cc:91
edm::PtrVector::push_back
void push_back(Ptr< T > const &iPtr)
Definition: PtrVector.h:149
ESEEIntercalibConstants::getGammaHigh2
float getGammaHigh2() const
Definition: ESEEIntercalibConstants.h:59
ESMissingEnergyCalibration::getConstAEta0
float getConstAEta0() const
Definition: ESMissingEnergyCalibration.h:21
ESEEIntercalibConstants::getAlphaLow3
float getAlphaLow3() const
Definition: ESEEIntercalibConstants.h:46
EgHLTOffHistBins_cfi.deltaE
deltaE
Definition: EgHLTOffHistBins_cfi.py:28
StorageManager_cfg.e1
e1
Definition: StorageManager_cfg.py:16
ESEEIntercalibConstants::getAlphaLow0
float getAlphaLow0() const
Definition: ESEEIntercalibConstants.h:31
PreshowerPhiClusterProducer::esPhiClusterDeltaEta_
float esPhiClusterDeltaEta_
Definition: PreshowerPhiClusterProducer.cc:101
edm::Event::put
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
Definition: Event.h:133
edm::EventSetup::getHandle
ESHandle< T > getHandle(const ESGetToken< T, R > &iToken) const
Definition: EventSetup.h:155
ESEEIntercalibConstants::getAlphaLow2
float getAlphaLow2() const
Definition: ESEEIntercalibConstants.h:41
ESEEIntercalibConstants::getAlphaLow1
float getAlphaLow1() const
Definition: ESEEIntercalibConstants.h:36
ESMissingEnergyCalibration::getConstBEta2
float getConstBEta2() const
Definition: ESMissingEnergyCalibration.h:33
PreshowerPhiClusterProducer::caloGeometryToken_
edm::ESGetToken< CaloGeometry, CaloGeometryRecord > caloGeometryToken_
Definition: PreshowerPhiClusterProducer.cc:82
ESMIPToGeVConstant
Definition: ESMIPToGeVConstant.h:7
ESMissingEnergyCalibration::getConstAEta1
float getConstAEta1() const
Definition: ESMissingEnergyCalibration.h:26
DetId::Ecal
Definition: DetId.h:27
ESMissingEnergyCalibration::getConstBEta3
float getConstBEta3() const
Definition: ESMissingEnergyCalibration.h:38
ESEEIntercalibConstants::getGammaHigh3
float getGammaHigh3() const
Definition: ESEEIntercalibConstants.h:64
ESCondObjectContainer
Definition: ESCondObjectContainer.h:11
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
PreshowerPhiClusterProducer::esMissingECalibToken_
edm::ESGetToken< ESMissingEnergyCalibration, ESMissingEnergyCalibrationRcd > esMissingECalibToken_
Definition: PreshowerPhiClusterProducer.cc:80
PreshowerPhiClusterProducer::alpha2_
double alpha2_
Definition: PreshowerPhiClusterProducer.cc:90
PreshowerPhiClusterProducer::esEEInterCalib_
edm::ESHandle< ESEEIntercalibConstants > esEEInterCalib_
Definition: PreshowerPhiClusterProducer.cc:74
PreshowerPhiClusterProducer::assocSClusterCollection_
std::string assocSClusterCollection_
Definition: PreshowerPhiClusterProducer.cc:70
PedestalClient_cfi.gain
gain
Definition: PedestalClient_cfi.py:37
EcalPreshower
Definition: EcalSubdetector.h:10
ESMIPToGeVConstant::getESValueLow
float getESValueLow() const
Definition: ESMIPToGeVConstant.h:13
eostools.move
def move(src, dest)
Definition: eostools.py:511
ESCondObjectContainer::getMap
const self & getMap() const
Definition: ESCondObjectContainer.h:41
PreshowerPhiClusterProducer::alpha0_
double alpha0_
Definition: PreshowerPhiClusterProducer.cc:88
PreshowerPhiClusterProducer::etThresh_
double etThresh_
Definition: PreshowerPhiClusterProducer.cc:95
PreshowerPhiClusterProducer::esMissingECalib_
edm::ESHandle< ESMissingEnergyCalibration > esMissingECalib_
Definition: PreshowerPhiClusterProducer.cc:75
PreshowerPhiClusterAlgo
Definition: PreshowerPhiClusterAlgo.h:17
PreshowerPhiClusterProducer::preshClusterCollectionY_
std::string preshClusterCollectionY_
Definition: PreshowerPhiClusterProducer.cc:67
ESMissingEnergyCalibration::getConstAEta3
float getConstAEta3() const
Definition: ESMissingEnergyCalibration.h:36
PreshowerPhiClusterProducer::bEta_
double bEta_[4]
Definition: PreshowerPhiClusterProducer.cc:93
CommPDSkim_cfg.maxDeltaPhi
maxDeltaPhi
Definition: CommPDSkim_cfg.py:74
CaloSubdetectorGeometry
Definition: CaloSubdetectorGeometry.h:22
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
BeamSpotPI::Y
Definition: BeamSpotPayloadInspectorHelper.h:32
ESEEIntercalibConstants::getAlphaHigh1
float getAlphaHigh1() const
Definition: ESEEIntercalibConstants.h:56
PreshowerPhiClusterProducer::preshHitToken_
edm::EDGetTokenT< EcalRecHitCollection > preshHitToken_
Definition: PreshowerPhiClusterProducer.cc:61
ESEEIntercalibConstants
Definition: ESEEIntercalibConstants.h:7
LogTrace
#define LogTrace(id)
Definition: MessageLogger.h:234
BeamSpotPI::Z
Definition: BeamSpotPayloadInspectorHelper.h:33
PreshowerPhiClusterProducer::presh_algo
PreshowerPhiClusterAlgo * presh_algo
Definition: PreshowerPhiClusterProducer.cc:97
point
*vegas h *****************************************************used in the default bin number in original ***version of VEGAS is ***a higher bin number might help to derive a more precise ***grade subtle point
Definition: invegas.h:5
reco::PreshowerCluster::setBCRef
void setBCRef(const CaloClusterPtr &r)
DetIds of component RecHits – now inherited from CaloCluster.
Definition: PreshowerCluster.h:53
reco::CaloCluster::energy
double energy() const
cluster energy
Definition: CaloCluster.h:149
VBFGenJetFilter_cfi.minDeltaPhi
minDeltaPhi
Definition: VBFGenJetFilter_cfi.py:13
edm::InputTag
Definition: InputTag.h:15
MillePedeFileConverter_cfg.e
e
Definition: MillePedeFileConverter_cfg.py:37
PreshowerPhiClusterProducer::alpha1_
double alpha1_
Definition: PreshowerPhiClusterProducer.cc:89
PreshowerPhiClusterProducer::endcapSClusterToken_
edm::EDGetTokenT< reco::SuperClusterCollection > endcapSClusterToken_
Definition: PreshowerPhiClusterProducer.cc:63