27 double Theta = -position_.theta() + 0.5 *
M_PI;
28 double Eta = position_.eta();
29 double Phi = TVector2::Phi_mpi_pi(position_.phi());
33 const float X0 = 0.89;
38 std::vector<std::pair<DetId, float> > crystals_vector = bclus.
hitsAndFractions();
42 for (
unsigned int icry = 0; icry != crystals_vector.size(); ++icry) {
45 auto cell =
geom->getGeometry(crystal);
46 const TruncatedPyramid *cpyr = dynamic_cast<const TruncatedPyramid *>(cell.get());
48 double EtaCentr = center_pos.
eta();
49 double PhiCentr = TVector2::Phi_mpi_pi(center_pos.phi());
54 crystalseed = crystal;
62 auto cell =
geom->getGeometry(crystalseed);
63 const TruncatedPyramid *cpyr = dynamic_cast<const TruncatedPyramid *>(cell.get());
70 double PhiCentr = TVector2::Phi_mpi_pi(center_pos.
phi());
71 double PhiWidth = (
M_PI / 180.);
72 phicry = (TVector2::Phi_mpi_pi(
Phi - PhiCentr)) / PhiWidth;
77 double ThetaCentr = -center_pos.
theta() + 0.5 *
M_PI;
78 double ThetaWidth = (
M_PI / 180.) *
std::cos(ThetaCentr);
79 etacry = (Theta - ThetaCentr) / ThetaWidth;
102 double Eta = position_.eta();
103 double Phi = TVector2::Phi_mpi_pi(position_.phi());
104 double X = position_.x();
105 double Y = position_.y();
109 const float X0 = 0.89;
118 std::vector<std::pair<DetId, float> > crystals_vector = bclus.
hitsAndFractions();
122 for (
unsigned int icry = 0; icry != crystals_vector.size(); ++icry) {
125 auto cell =
geom->getGeometry(crystal);
126 const TruncatedPyramid *cpyr = dynamic_cast<const TruncatedPyramid *>(cell.get());
128 double EtaCentr = center_pos.
eta();
129 double PhiCentr = TVector2::Phi_mpi_pi(center_pos.phi());
134 crystalseed = crystal;
138 ix = crystalseed.
ix();
139 iy = crystalseed.
iy();
142 auto cell =
geom->getGeometry(crystalseed);
143 const TruncatedPyramid *cpyr = dynamic_cast<const TruncatedPyramid *>(cell.get());
150 double XCentr = center_pos.
x();
151 double XWidth = 2.59;
152 xcry = (
X - XCentr) / XWidth;
154 double YCentr = center_pos.
y();
155 double YWidth = 2.59;
156 ycry = (
Y - YCentr) / YWidth;