- Author
- Kevin Klapoetke (Minnesota)
$Id:version 1.2
- Author
- K. Klapoetke – Minnesota
Definition at line 18 of file HFClusterAlgo.h.
Analyze the hits
Definition at line 86 of file HFClusterAlgo.cc.
91 std::vector<HFCompleteHit> protoseeds,
seeds;
93 std::vector<HFCompleteHit>::iterator
i;
94 std::vector<HFCompleteHit>::iterator
k;
100 bool doCluster =
false;
102 for (
j =
hf.begin();
j !=
hf.end();
j++) {
103 const int aieta =
j->id().ietaAbs();
104 int iz = (aieta - 29);
106 if (
j->id().depth() != 1)
108 if (aieta == 40 || aieta == 41 || aieta == 29)
111 if (iz < 0 || iz > 12) {
119 auto ccg =
geom->getGeometry(
j->id());
121 for (
size_t sc = 0; sc < CellCorners.
size(); sc++) {
122 if (fabs(CellCorners[sc].
z()) < 1200) {
133 double eshort = (j2 ==
hf.end()) ? (0) : (j2->energy());
136 if (((elong - eshort) / (elong + eshort)) >
m_maximumSL)
147 ahit.et = ahit.energy / cosh(
eta);
148 protoseeds.push_back(ahit);
152 if (!protoseeds.empty()) {
154 for (
i = protoseeds.begin();
i != protoseeds.end();
i++) {
158 if ((
i == protoseeds.begin()) && (isok)) {
164 for (dE = -2; dE <= 2; dE++)
165 for (dP = -4; dP <= 4; dP += 2) {
166 PWrap =
k->id.iphi() + dP;
172 if ((
i->id.iphi() == PWrap) && (
i->id.ieta() ==
k->id.ieta() + dE))
185 clusterShapes.push_back(clusShp);
186 SuperClusters.push_back(Sclus);
References HFClusterAlgo::HFCompleteHit::energy, HFClusterAlgo::HFCompleteHit::et, PVValHelper::eta, relativeConstraints::geom, HcalForward, photonIsolationHIProducer_cfi::hf, mps_fire::i, HFClusterAlgo::HFCompleteHit::id, indexByEta(), dqmiolumiharvest::j, dqmdumpme::k, DetachedQuadStep_cff::seeds, EZArrayFL< T >::size(), and jetUpdater_cfi::sort.
Referenced by HFEMClusterProducer::produce().
Definition at line 193 of file HFClusterAlgo.cc.
217 std::vector<double> coreCanid;
218 std::vector<double>::const_iterator ci;
220 std::vector<DetId> usedHits;
226 bool clusterOk =
true;
230 bool edge_type1 = seedid.
ietaAbs() == 39 && (seedid.
iphi() % 4) == 3;
234 for (de = -2; de <= 2; de++)
235 for (
dp = -4;
dp <= 4;
dp += 2) {
236 phiWrap = seedid.
iphi() +
dp;
243 if (edge_type1 && de == seedid.
zside()) {
248 }
else if (
dp == -4) {
260 double e_short = 0.0;
269 double eRatio = (e_long - e_short) /
std::max(1.0, (e_long + e_short));
273 if (
dp == 0 && de == 0)
279 if (
dp == 0 && de == 0)
286 usedHits.push_back(idl.rawId());
290 if ((de > -2) && (de < 2) && (
dp > -4) && (
dp < 4)) {
294 if ((
dp == 0) && (de == 0)) {
299 if ((de > -2) && (de < 2) && (
dp > -4) && (dp < 4) && (e_long > (.5 * e_seed))) {
300 coreCanid.push_back(e_long);
306 double d_p =
p.phi() - sp.
phi();
311 double d_e =
p.eta() - sp.
eta();
321 w_x += (
p.x()) * wgt;
322 w_y += (
p.y()) * wgt;
323 w_z += (
p.z()) * wgt;
327 if (
dp == 0 && de == 0)
333 usedHits.push_back(ids.rawId());
337 if ((de > -2) && (de < 2) && (
dp > -4) && (
dp < 4)) {
341 if ((
dp == 0) && (de == 0)) {
352 for (ci = coreCanid.begin(); ci != coreCanid.end(); ci++) {
353 if (ci == coreCanid.begin()) {
355 }
else if (*ci > .5 * l_1e) {
365 double eta = xyzclus.eta();
367 double phi = xyzclus.phi();
375 int idx = fabs(seedid.
ieta()) - 29;
376 int ipx = seedid.
iphi();
381 HFEMClusterShape myClusShp(l_1, s_1, l_3, s_3, l_5, s_5, l_1e, Ceta, Cphi, seedid);
References funct::abs(), Calorimetry_cff::dp, PVValHelper::eta, PV3DBase< T, PVType, FrameType >::eta(), relativeConstraints::geom, HcalForward, photonIsolationHIProducer_cfi::hf, heavyIonCSV_trainingSettings::idx, HcalDetId::ieta(), HcalDetId::ietaAbs(), indexByEta(), HcalDetId::iphi(), dqm-mbProfile::log, M_PI, SiStripPI::max, AlCaHLTBitMon_ParallelJobs::p, PV3DBase< T, PVType, FrameType >::phi(), jetUpdater_cfi::sort, w, and HcalDetId::zside().