CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Private Member Functions | Private Attributes
TruncatedPyramid Class Referencefinal

A base class to handle the particular shape of Ecal Xtals. Taken from ORCA Calorimetry Code. More...

#include <TruncatedPyramid.h>

Inheritance diagram for TruncatedPyramid:
CaloCellGeometry

Public Types

typedef CaloCellGeometry::CCGFloat CCGFloat
 
typedef CaloCellGeometry::Pt3D Pt3D
 
typedef CaloCellGeometry::Pt3DVec Pt3DVec
 
typedef CaloCellGeometry::Tr3D Tr3D
 
- Public Types inherited from CaloCellGeometry
typedef float CCGFloat
 
typedef EZMgrFL< GlobalPointCornersMgr
 
typedef EZArrayFL< GlobalPointCornersVec
 
typedef EZMgrFL< CCGFloatParMgr
 
typedef EZArrayFL< CCGFloatParVec
 
typedef std::vector< ParVecParVecVec
 
typedef HepGeom::Point3D< CCGFloatPt3D
 
typedef std::vector< Pt3DPt3DVec
 
using RepCorners = std::array< RhoEtaPhi, k_cornerSize >
 
typedef HepGeom::Transform3D Tr3D
 

Public Member Functions

const GlobalVectoraxis () const
 
CCGFloat getPhiAxis () const
 
GlobalPoint getPosition (CCGFloat depth) const override
 
CCGFloat getThetaAxis () const
 
void getTransform (Tr3D &tr, Pt3DVec *lptr) const override
 --------— only needed by specific utility; overloaded when needed -— More...
 
TruncatedPyramidoperator= (const TruncatedPyramid &tr)
 
 TruncatedPyramid (const CornersVec &corn, const CCGFloat *par)
 
 TruncatedPyramid (const TruncatedPyramid &tr)
 
 TruncatedPyramid (CornersMgr *cMgr, const GlobalPoint &fCtr, const GlobalPoint &bCtr, const GlobalPoint &cor1, const CCGFloat *parV)
 
 TruncatedPyramid (void)
 
void vocalCorners (Pt3DVec &vec, const CCGFloat *pv, Pt3D &ref) const override
 
 ~TruncatedPyramid () override
 
- Public Member Functions inherited from CaloCellGeometry
bool emptyCorners () const
 
virtual float etaPos () const
 
virtual float etaSpan () const
 
GlobalPoint const & getBackPoint () const
 
CornersVec const & getCorners () const
 Returns the corner points of this cell's volume. More...
 
RepCorners const & getCornersREP () const
 
virtual const GlobalPointgetPosition () const
 Returns the position of reference for this cell. More...
 
virtual GlobalPoint getPosition (const Pt3D &) const
 
bool inside (const GlobalPoint &point) const
 Returns true if the specified point is inside this cell. More...
 
const CCGFloatparam () const
 
virtual float phiPos () const
 
virtual float phiSpan () const
 
RhoEtaPhi const & repPos () const
 
virtual float rhoPos () const
 
void setBackPoint (const GlobalPoint &pos)
 
virtual ~CaloCellGeometry ()
 

Static Public Member Functions

static void createCorners (const std::vector< CCGFloat > &pv, const Tr3D &tr, std::vector< GlobalPoint > &co)
 
static void localCorners (Pt3DVec &vec, const CCGFloat *pv, Pt3D &ref)
 
static void localCornersReflection (Pt3DVec &vec, const CCGFloat *pv, Pt3D &ref)
 
static void localCornersSwap (Pt3DVec &vec, const CCGFloat *pv, Pt3D &ref)
 
- Static Public Member Functions inherited from CaloCellGeometry
static const CCGFloatcheckParmPtr (const std::vector< CCGFloat > &vd, ParVecVec &pvv)
 
static const CCGFloatgetParmPtr (const std::vector< CCGFloat > &vd, ParMgr *mgr, ParVecVec &pvv)
 

Static Public Attributes

static constexpr uint32_t k_Alp1 = 6
 
static constexpr uint32_t k_Alp2 = 10
 
static constexpr uint32_t k_Dx1 = 4
 
static constexpr uint32_t k_Dx2 = 5
 
static constexpr uint32_t k_Dx3 = 8
 
static constexpr uint32_t k_Dx4 = 9
 
static constexpr uint32_t k_Dy1 = 3
 
static constexpr uint32_t k_Dy2 = 7
 
static constexpr uint32_t k_Dz = 0
 
static constexpr uint32_t k_Phi = 2
 
static constexpr uint32_t k_Theta = 1
 
- Static Public Attributes inherited from CaloCellGeometry
static constexpr unsigned int k_cornerSize = 8
 
static const CCGFloat k_ScaleFromDDDtoGeant
 

Private Member Functions

const GlobalPoint backCtr (void) const
 
void initCorners (CornersVec &) override
 
GlobalVector makeAxis (void)
 

Private Attributes

GlobalVector m_axis
 
Pt3D m_corOne
 

Additional Inherited Members

- Protected Member Functions inherited from CaloCellGeometry
 CaloCellGeometry (const CornersVec &cv, const CCGFloat *par)
 
 CaloCellGeometry (CornersVec::const_reference gp, CornersMgr *mgr, const CCGFloat *par)
 
 CaloCellGeometry (void)
 
void initSpan ()
 
void setCornerVec (const std::vector< GlobalPoint > &cor)
 
void setRefPoint (const GlobalPoint &pos)
 

Detailed Description

A base class to handle the particular shape of Ecal Xtals. Taken from ORCA Calorimetry Code.

Definition at line 19 of file TruncatedPyramid.h.

Member Typedef Documentation

◆ CCGFloat

Definition at line 21 of file TruncatedPyramid.h.

◆ Pt3D

Definition at line 22 of file TruncatedPyramid.h.

◆ Pt3DVec

Definition at line 23 of file TruncatedPyramid.h.

◆ Tr3D

Definition at line 24 of file TruncatedPyramid.h.

Constructor & Destructor Documentation

◆ TruncatedPyramid() [1/4]

TruncatedPyramid::TruncatedPyramid ( void  )

Definition at line 19 of file TruncatedPyramid.cc.

19 : CaloCellGeometry(), m_axis(0., 0., 0.), m_corOne(0., 0., 0.) {}

◆ TruncatedPyramid() [2/4]

TruncatedPyramid::TruncatedPyramid ( const TruncatedPyramid tr)

Definition at line 21 of file TruncatedPyramid.cc.

21 : CaloCellGeometry(tr) { *this = tr; }

◆ TruncatedPyramid() [3/4]

TruncatedPyramid::TruncatedPyramid ( CornersMgr cMgr,
const GlobalPoint fCtr,
const GlobalPoint bCtr,
const GlobalPoint cor1,
const CCGFloat parV 
)

Definition at line 32 of file TruncatedPyramid.cc.

34  : CaloCellGeometry(fCtr, cMgr, parV), m_axis((bCtr - fCtr).unit()), m_corOne(cor1.x(), cor1.y(), cor1.z()) {
35  initSpan();
36 }

References CaloCellGeometry::initSpan().

◆ TruncatedPyramid() [4/4]

TruncatedPyramid::TruncatedPyramid ( const CornersVec corn,
const CCGFloat par 
)

Definition at line 38 of file TruncatedPyramid.cc.

39  : CaloCellGeometry(corn, par), m_axis(makeAxis()), m_corOne(corn[0].x(), corn[0].y(), corn[0].z()) {
40  initSpan();
41 }

References CaloCellGeometry::initSpan().

◆ ~TruncatedPyramid()

TruncatedPyramid::~TruncatedPyramid ( )
override

Definition at line 43 of file TruncatedPyramid.cc.

43 {}

Member Function Documentation

◆ axis()

const GlobalVector & TruncatedPyramid::axis ( ) const

Definition at line 53 of file TruncatedPyramid.cc.

53 { return m_axis; }

References m_axis.

Referenced by getTransform().

◆ backCtr()

const GlobalPoint TruncatedPyramid::backCtr ( void  ) const
private

Definition at line 59 of file TruncatedPyramid.cc.

59  {
60  return GlobalPoint(0.25 * (getCorners()[4].x() + getCorners()[5].x() + getCorners()[6].x() + getCorners()[7].x()),
61  0.25 * (getCorners()[4].y() + getCorners()[5].y() + getCorners()[6].y() + getCorners()[7].y()),
62  0.25 * (getCorners()[4].z() + getCorners()[5].z() + getCorners()[6].z() + getCorners()[7].z()));
63 }

References CaloCellGeometry::getCorners(), x, y, and z.

Referenced by makeAxis().

◆ createCorners()

void TruncatedPyramid::createCorners ( const std::vector< CCGFloat > &  pv,
const Tr3D tr,
std::vector< GlobalPoint > &  co 
)
static

Definition at line 237 of file TruncatedPyramid.cc.

237  {
238  assert(11 == pv.size());
239  assert(8 == co.size());
240  // to get the ordering right for fast sim, we have to use their convention
241  // which were based on the old static geometry. Some gymnastics required here.
242 
243  const CCGFloat dz(pv[0]);
244  const CCGFloat h1(pv[3]);
245  const CCGFloat h2(pv[7]);
246  Pt3DVec ko(8, Pt3D(0, 0, 0));
247 
248  // if reflection, different things for barrel and endcap
249  static const FVec3D x(1, 0, 0);
250  static const FVec3D y(0, 1, 0);
251  static const FVec3D z(0, 0, 1);
252  const bool refl(((tr * x).cross(tr * y)).dot(tr * z) < 0); // has reflection!
253 
254  Pt3D tmp;
255  Pt3DVec to(8, Pt3D(0, 0, 0));
256  localCorners(to, &pv.front(), tmp);
257 
258  for (unsigned int i(0); i != 8; ++i) {
259  ko[i] = tr * to[i]; // apply transformation
260  }
261 
262  if (refl || h1 > h2) {
263  if (11.2 < dz) //barrel
264  {
265  if (!refl) {
266  to[0] = ko[3];
267  to[1] = ko[2];
268  to[2] = ko[1];
269  to[3] = ko[0];
270  to[4] = ko[7];
271  to[5] = ko[6];
272  to[6] = ko[5];
273  to[7] = ko[4];
274  } else {
275  to[0] = ko[0];
276  to[1] = ko[1];
277  to[2] = ko[2];
278  to[3] = ko[3];
279  to[4] = ko[4];
280  to[5] = ko[5];
281  to[6] = ko[6];
282  to[7] = ko[7];
283  }
284  } else //endcap
285  {
286  to[0] = ko[0];
287  to[1] = ko[3];
288  to[2] = ko[2];
289  to[3] = ko[1];
290  to[4] = ko[4];
291  to[5] = ko[7];
292  to[6] = ko[6];
293  to[7] = ko[5];
294  }
295  copy(to.begin(), to.end(), ko.begin()); // faster than ko = to ? maybe.
296  }
297  for (unsigned int i(0); i != 8; ++i) {
298  const Pt3D& p(ko[i]);
299  co[i] = GlobalPoint(p.x(), p.y(), p.z());
300  }
301 }

References cms::cuda::assert(), cms::cuda::co, filterCSVwithJSON::copy, cross(), dot(), PVValHelper::dz, mps_fire::i, localCorners(), AlCaHLTBitMon_ParallelJobs::p, MetAnalyzer::pv(), truncPyr::refl(), createJobs::tmp, x, y, and z.

◆ getPhiAxis()

CCGFloat TruncatedPyramid::getPhiAxis ( ) const

◆ getPosition()

GlobalPoint TruncatedPyramid::getPosition ( CCGFloat  depth) const
overridevirtual

◆ getThetaAxis()

CCGFloat TruncatedPyramid::getThetaAxis ( ) const

◆ getTransform()

void TruncatedPyramid::getTransform ( Tr3D tr,
Pt3DVec lptr 
) const
overridevirtual

--------— only needed by specific utility; overloaded when needed -—

Reimplemented from CaloCellGeometry.

Definition at line 65 of file TruncatedPyramid.cc.

65  {
67  const Pt3D gFront(p.x(), p.y(), p.z());
68  const DPt3D dgFront(p.x(), p.y(), p.z());
69 
70  const double dz(param()[0]);
71 
72  Pt3D lFront;
73  assert(nullptr != param());
74  std::vector<Pt3D> lc(8, Pt3D(0, 0, 0));
75  if (11.2 > dz) {
76  localCorners(lc, param(), lFront);
77  } else {
78  localCornersSwap(lc, param(), lFront);
79  }
80 
81  // figure out if reflction volume or not
82 
83  Pt3D lBack(0.25 * (lc[4] + lc[5] + lc[6] + lc[7]));
84 
85  const double disl((lFront - lc[0]).mag());
86  const double disr((lFront - lc[3]).mag());
87  const double disg((gFront - m_corOne).mag());
88 
89  const double dell(fabs(disg - disl));
90  const double delr(fabs(disg - disr));
91 
92  if (11.2 < dz && delr < dell) // reflection volume if true
93  {
94  localCornersReflection(lc, param(), lFront);
95  lBack = 0.25 * (lc[4] + lc[5] + lc[6] + lc[7]);
96  }
97 
98  const DPt3D dlFront(lFront.x(), lFront.y(), lFront.z());
99  const DPt3D dlBack(lBack.x(), lBack.y(), lBack.z());
100  const DPt3D dlOne(lc[0].x(), lc[0].y(), lc[0].z());
101 
102  const FVec3D dgAxis(axis().x(), axis().y(), axis().z());
103 
104  const DPt3D dmOne(m_corOne.x(), m_corOne.y(), m_corOne.z());
105 
106  const DPt3D dgBack(dgFront + (dlBack - dlFront).mag() * dgAxis);
107  DPt3D dgOne(dgFront + (dlOne - dlFront).mag() * (dmOne - dgFront).unit());
108 
109  const double dlangle((dlBack - dlFront).angle(dlOne - dlFront));
110  const double dgangle((dgBack - dgFront).angle(dgOne - dgFront));
111  const double dangle(dlangle - dgangle);
112 
113  if (1.e-6 < fabs(dangle)) //guard against precision problems
114  {
115  const DPlane3D dgPl(dgFront, dgOne, dgBack);
116  const DPt3D dp2(dgFront + dgPl.normal().unit());
117 
118  DPt3D dgOld(dgOne);
119 
120  dgOne = (dgFront + HepGeom::Rotate3D(-dangle, dgFront, dp2) * DVec3D(dgOld - dgFront));
121  }
122 
123  tr = Tr3D(dlFront, dlBack, dlOne, dgFront, dgBack, dgOne);
124 
125  if (nullptr != lptr)
126  (*lptr) = lc;
127 }

References angle(), cms::cuda::assert(), axis(), PVValHelper::dz, MillePedeFileConverter_cfg::e, CaloCellGeometry::getPosition(), localCorners(), localCornersReflection(), localCornersSwap(), m_corOne, mag(), AlCaHLTBitMon_ParallelJobs::p, CaloCellGeometry::param(), unit(), x, y, and z.

Referenced by initCorners().

◆ initCorners()

void TruncatedPyramid::initCorners ( CaloCellGeometry::CornersVec corners)
overrideprivatevirtual

Implements CaloCellGeometry.

Definition at line 129 of file TruncatedPyramid.cc.

129  {
130  if (corners.uninitialized()) {
131  Pt3DVec lc;
132 
133  Tr3D tr;
134  getTransform(tr, &lc);
135 
136  for (unsigned int i(0); i != 8; ++i) {
137  const Pt3D corn(tr * lc[i]);
138  corners[i] = GlobalPoint(corn.x(), corn.y(), corn.z());
139  }
140  }
141 }

References getTransform(), mps_fire::i, and EZArrayFL< T >::uninitialized().

◆ localCorners()

void TruncatedPyramid::localCorners ( Pt3DVec vec,
const CCGFloat pv,
Pt3D ref 
)
static

Definition at line 177 of file TruncatedPyramid.cc.

177  {
178  assert(nullptr != pv);
179  assert(8 == lc.size());
180 
192 
193  const CCGFloat ta1(tan(a1)); // lower plane
194  const CCGFloat ta2(tan(a2)); // upper plane
195 
196  const CCGFloat tth(tan(th));
197  const CCGFloat tthcp(tth * cos(ph));
198  const CCGFloat tthsp(tth * sin(ph));
199 
200  const unsigned int off(h1 < h2 ? 0 : 4);
201 
202  lc[0 + off] = Pt3D(-dz * tthcp - h1 * ta1 - b1, -dz * tthsp - h1, -dz); // (-,-,-)
203  lc[1 + off] = Pt3D(-dz * tthcp + h1 * ta1 - t1, -dz * tthsp + h1, -dz); // (-,+,-)
204  lc[2 + off] = Pt3D(-dz * tthcp + h1 * ta1 + t1, -dz * tthsp + h1, -dz); // (+,+,-)
205  lc[3 + off] = Pt3D(-dz * tthcp - h1 * ta1 + b1, -dz * tthsp - h1, -dz); // (+,-,-)
206  lc[4 - off] = Pt3D(dz * tthcp - h2 * ta2 - b2, dz * tthsp - h2, dz); // (-,-,+)
207  lc[5 - off] = Pt3D(dz * tthcp + h2 * ta2 - t2, dz * tthsp + h2, dz); // (-,+,+)
208  lc[6 - off] = Pt3D(dz * tthcp + h2 * ta2 + t2, dz * tthsp + h2, dz); // (+,+,+)
209  lc[7 - off] = Pt3D(dz * tthcp - h2 * ta2 + b2, dz * tthsp - h2, dz); // (+,-,+)
210 
211  ref = 0.25 * (lc[0] + lc[1] + lc[2] + lc[3]);
212 }

References testProducerWithPsetDescEmpty_cfi::a2, cms::cuda::assert(), b1, b2, funct::cos(), PVValHelper::dz, k_Alp1, k_Alp2, k_Dx1, k_Dx2, k_Dx3, k_Dx4, k_Dy1, k_Dy2, k_Dz, k_Phi, k_Theta, MetAnalyzer::pv(), funct::sin(), RandomServiceHelper::t1, RandomServiceHelper::t2, and funct::tan().

Referenced by createCorners(), getTransform(), EcalEndcapGeometry::localCorners(), localCornersReflection(), localCornersSwap(), makeEcalShape(), and vocalCorners().

◆ localCornersReflection()

void TruncatedPyramid::localCornersReflection ( Pt3DVec vec,
const CCGFloat pv,
Pt3D ref 
)
static

Definition at line 147 of file TruncatedPyramid.cc.

147  {
148  // using namespace truncPyr ;
149  localCorners(lc, pv, ref);
150  Pt3D tmp;
151  /*
152  tmp = lc[0] ;
153  lc[0] = refl( lc[2] ) ;
154  lc[2] = refl( tmp ) ;
155  tmp = lc[1] ;
156  lc[1] = refl( lc[3] ) ;
157  lc[3] = refl( tmp ) ;
158  tmp = lc[4] ;
159  lc[4] = refl( lc[6] ) ;
160  lc[6] = refl( tmp ) ;
161  tmp = lc[5] ;
162  lc[5] = refl( lc[7] ) ;
163  lc[7] = refl( tmp ) ;
164 */
165  lc[0] = truncPyr::refl(lc[0]);
166  lc[1] = truncPyr::refl(lc[1]);
167  lc[2] = truncPyr::refl(lc[2]);
168  lc[3] = truncPyr::refl(lc[3]);
169  lc[4] = truncPyr::refl(lc[4]);
170  lc[5] = truncPyr::refl(lc[5]);
171  lc[6] = truncPyr::refl(lc[6]);
172  lc[7] = truncPyr::refl(lc[7]);
173 
174  ref = 0.25 * (lc[0] + lc[1] + lc[2] + lc[3]);
175 }

References localCorners(), MetAnalyzer::pv(), truncPyr::refl(), and createJobs::tmp.

Referenced by getTransform(), and EcalBarrelGeometry::localCorners().

◆ localCornersSwap()

void TruncatedPyramid::localCornersSwap ( Pt3DVec vec,
const CCGFloat pv,
Pt3D ref 
)
static

Definition at line 214 of file TruncatedPyramid.cc.

214  {
215  localCorners(lc, pv, ref);
216 
217  Pt3D tmp;
218  tmp = lc[0];
219  lc[0] = lc[3];
220  lc[3] = tmp;
221  tmp = lc[1];
222  lc[1] = lc[2];
223  lc[2] = tmp;
224  tmp = lc[4];
225  lc[4] = lc[7];
226  lc[7] = tmp;
227  tmp = lc[5];
228  lc[5] = lc[6];
229  lc[6] = tmp;
230 
231  ref = 0.25 * (lc[0] + lc[1] + lc[2] + lc[3]);
232 }

References localCorners(), MetAnalyzer::pv(), and createJobs::tmp.

Referenced by getTransform(), and EcalBarrelGeometry::localCorners().

◆ makeAxis()

GlobalVector TruncatedPyramid::makeAxis ( void  )
private

◆ operator=()

TruncatedPyramid & TruncatedPyramid::operator= ( const TruncatedPyramid tr)

Definition at line 23 of file TruncatedPyramid.cc.

23  {
24  CaloCellGeometry::operator=(tr);
25  if (this != &tr) {
26  m_axis = tr.m_axis;
27  m_corOne = tr.m_corOne;
28  }
29  return *this;
30 }

References m_axis, and m_corOne.

◆ vocalCorners()

void TruncatedPyramid::vocalCorners ( Pt3DVec vec,
const CCGFloat pv,
Pt3D ref 
) const
overridevirtual

Implements CaloCellGeometry.

Definition at line 55 of file TruncatedPyramid.cc.

55 { localCorners(vec, pv, ref); }

References localCorners(), and MetAnalyzer::pv().

Member Data Documentation

◆ k_Alp1

constexpr uint32_t TruncatedPyramid::k_Alp1 = 6
staticconstexpr

Definition at line 36 of file TruncatedPyramid.h.

Referenced by localCorners().

◆ k_Alp2

constexpr uint32_t TruncatedPyramid::k_Alp2 = 10
staticconstexpr

Definition at line 43 of file TruncatedPyramid.h.

Referenced by localCorners().

◆ k_Dx1

constexpr uint32_t TruncatedPyramid::k_Dx1 = 4
staticconstexpr

Definition at line 32 of file TruncatedPyramid.h.

Referenced by localCorners().

◆ k_Dx2

constexpr uint32_t TruncatedPyramid::k_Dx2 = 5
staticconstexpr

Definition at line 34 of file TruncatedPyramid.h.

Referenced by localCorners().

◆ k_Dx3

constexpr uint32_t TruncatedPyramid::k_Dx3 = 8
staticconstexpr

Definition at line 39 of file TruncatedPyramid.h.

Referenced by localCorners().

◆ k_Dx4

constexpr uint32_t TruncatedPyramid::k_Dx4 = 9
staticconstexpr

Definition at line 41 of file TruncatedPyramid.h.

Referenced by localCorners().

◆ k_Dy1

constexpr uint32_t TruncatedPyramid::k_Dy1 = 3
staticconstexpr

Definition at line 31 of file TruncatedPyramid.h.

Referenced by localCorners().

◆ k_Dy2

constexpr uint32_t TruncatedPyramid::k_Dy2 = 7
staticconstexpr

Definition at line 38 of file TruncatedPyramid.h.

Referenced by localCorners().

◆ k_Dz

constexpr uint32_t TruncatedPyramid::k_Dz = 0
staticconstexpr

Definition at line 26 of file TruncatedPyramid.h.

Referenced by localCorners().

◆ k_Phi

constexpr uint32_t TruncatedPyramid::k_Phi = 2
staticconstexpr

Definition at line 29 of file TruncatedPyramid.h.

Referenced by localCorners().

◆ k_Theta

constexpr uint32_t TruncatedPyramid::k_Theta = 1
staticconstexpr

Definition at line 27 of file TruncatedPyramid.h.

Referenced by localCorners().

◆ m_axis

GlobalVector TruncatedPyramid::m_axis
private

Definition at line 91 of file TruncatedPyramid.h.

Referenced by axis(), getPhiAxis(), getPosition(), getThetaAxis(), and operator=().

◆ m_corOne

Pt3D TruncatedPyramid::m_corOne
private

Definition at line 92 of file TruncatedPyramid.h.

Referenced by getTransform(), and operator=().

dot
T dot(const Basic3DVector &v) const
Scalar product, or "dot" product, with a vector of same type.
Definition: Basic3DVectorLD.h:212
RandomServiceHelper.t2
t2
Definition: RandomServiceHelper.py:257
TruncatedPyramid::getTransform
void getTransform(Tr3D &tr, Pt3DVec *lptr) const override
--------— only needed by specific utility; overloaded when needed -—
Definition: TruncatedPyramid.cc:65
DDAxes::y
mps_fire.i
i
Definition: mps_fire.py:428
filterCSVwithJSON.copy
copy
Definition: filterCSVwithJSON.py:36
PV3DBase::x
T x() const
Definition: PV3DBase.h:59
TruncatedPyramid::k_Alp1
static constexpr uint32_t k_Alp1
Definition: TruncatedPyramid.h:36
TruncatedPyramid::k_Dy1
static constexpr uint32_t k_Dy1
Definition: TruncatedPyramid.h:31
AlCaHLTBitMon_ParallelJobs.p
p
Definition: AlCaHLTBitMon_ParallelJobs.py:153
PV3DBase::theta
Geom::Theta< T > theta() const
Definition: PV3DBase.h:72
TruncatedPyramid::k_Dx3
static constexpr uint32_t k_Dx3
Definition: TruncatedPyramid.h:39
CCGFloat
CaloCellGeometry::CCGFloat CCGFloat
Definition: CaloCellGeometry.cc:4
TruncatedPyramid::m_corOne
Pt3D m_corOne
Definition: TruncatedPyramid.h:92
TruncatedPyramid::k_Dx1
static constexpr uint32_t k_Dx1
Definition: TruncatedPyramid.h:32
to
cms::cuda::assert
assert(be >=bs)
CaloCellGeometry::getCorners
CornersVec const & getCorners() const
Returns the corner points of this cell's volume.
Definition: CaloCellGeometry.h:73
DDAxes::x
TruncatedPyramid::axis
const GlobalVector & axis() const
Definition: TruncatedPyramid.cc:53
GlobalVector
Global3DVector GlobalVector
Definition: GlobalVector.h:10
b2
static constexpr float b2
Definition: L1EGammaCrystalsEmulatorProducer.cc:83
createJobs.tmp
tmp
align.sh
Definition: createJobs.py:716
TruncatedPyramid::localCornersReflection
static void localCornersReflection(Pt3DVec &vec, const CCGFloat *pv, Pt3D &ref)
Definition: TruncatedPyramid.cc:147
testProducerWithPsetDescEmpty_cfi.a2
a2
Definition: testProducerWithPsetDescEmpty_cfi.py:35
funct::sin
Sin< T >::type sin(const T &t)
Definition: Sin.h:22
PV3DBase::z
T z() const
Definition: PV3DBase.h:61
Pt3D
CaloCellGeometry::Pt3D Pt3D
Definition: CaloCellGeometry.cc:5
b1
static constexpr float b1
Definition: L1EGammaCrystalsEmulatorProducer.cc:83
RandomServiceHelper.t1
t1
Definition: RandomServiceHelper.py:256
Vector3DBase::unit
Vector3DBase unit() const
Definition: Vector3DBase.h:54
funct::cos
Cos< T >::type cos(const T &t)
Definition: Cos.h:22
cms::cuda::co
__host__ __device__ VT * co
Definition: prefixScan.h:47
TruncatedPyramid::k_Theta
static constexpr uint32_t k_Theta
Definition: TruncatedPyramid.h:27
DDAxes::z
Tr3D
CaloCellGeometry::Tr3D Tr3D
Definition: CaloCellGeometry.cc:7
TruncatedPyramid::m_axis
GlobalVector m_axis
Definition: TruncatedPyramid.h:91
GlobalPoint
Global3DPoint GlobalPoint
Definition: GlobalPoint.h:10
Point3DBase< float, GlobalTag >
LEDCalibrationChannels.depth
depth
Definition: LEDCalibrationChannels.py:65
CaloCellGeometry::initSpan
void initSpan()
Definition: CaloCellGeometry.h:120
CaloCellGeometry::getPosition
virtual const GlobalPoint & getPosition() const
Returns the position of reference for this cell.
Definition: CaloCellGeometry.h:80
cross
Basic3DVector cross(const Basic3DVector &v) const
Vector product, or "cross" product, with a vector of same type.
Definition: Basic3DVectorLD.h:225
DPt3D
HepGeom::Point3D< double > DPt3D
Definition: CaloCellGeometry.cc:14
DPlane3D
HepGeom::Plane3D< double > DPlane3D
Definition: CaloCellGeometry.cc:13
TruncatedPyramid::k_Dz
static constexpr uint32_t k_Dz
Definition: TruncatedPyramid.h:26
CaloCellGeometry::param
const CCGFloat * param() const
Definition: CaloCellGeometry.h:99
PV3DBase::y
T y() const
Definition: PV3DBase.h:60
funct::tan
Tan< T >::type tan(const T &t)
Definition: Tan.h:22
MetAnalyzer.pv
def pv(vc)
Definition: MetAnalyzer.py:7
FVec3D
HepGeom::Vector3D< CCGFloat > FVec3D
Definition: CaloCellGeometry.cc:9
unit
Basic3DVector unit() const
Definition: Basic3DVectorLD.h:162
TruncatedPyramid::k_Phi
static constexpr uint32_t k_Phi
Definition: TruncatedPyramid.h:29
DVec3D
HepGeom::Vector3D< double > DVec3D
Definition: TruncatedPyramid.cc:13
mag
T mag() const
The vector magnitude. Equivalent to sqrt(vec.mag2())
Definition: Basic3DVectorLD.h:127
TruncatedPyramid::Tr3D
CaloCellGeometry::Tr3D Tr3D
Definition: TruncatedPyramid.h:24
TruncatedPyramid::localCorners
static void localCorners(Pt3DVec &vec, const CCGFloat *pv, Pt3D &ref)
Definition: TruncatedPyramid.cc:177
TruncatedPyramid::localCornersSwap
static void localCornersSwap(Pt3DVec &vec, const CCGFloat *pv, Pt3D &ref)
Definition: TruncatedPyramid.cc:214
PVValHelper::dz
Definition: PVValidationHelpers.h:51
TruncatedPyramid::k_Dx2
static constexpr uint32_t k_Dx2
Definition: TruncatedPyramid.h:34
angle
T angle(T x1, T y1, T z1, T x2, T y2, T z2)
Definition: angle.h:11
TruncatedPyramid::makeAxis
GlobalVector makeAxis(void)
Definition: TruncatedPyramid.cc:57
Pt3DVec
CaloCellGeometry::Pt3DVec Pt3DVec
Definition: CaloCellGeometry.cc:6
TruncatedPyramid::k_Alp2
static constexpr uint32_t k_Alp2
Definition: TruncatedPyramid.h:43
TruncatedPyramid::k_Dx4
static constexpr uint32_t k_Dx4
Definition: TruncatedPyramid.h:41
CaloCellGeometry::CaloCellGeometry
CaloCellGeometry(void)
Definition: CaloCellGeometry.cc:19
TruncatedPyramid::Pt3D
CaloCellGeometry::Pt3D Pt3D
Definition: TruncatedPyramid.h:22
truncPyr::refl
Pt3D refl(const Pt3D &p)
Definition: TruncatedPyramid.cc:144
TruncatedPyramid::k_Dy2
static constexpr uint32_t k_Dy2
Definition: TruncatedPyramid.h:38
PV3DBase::phi
Geom::Phi< T > phi() const
Definition: PV3DBase.h:66
EZArrayFL::uninitialized
bool uninitialized() const
Definition: EZArrayFL.h:63
TruncatedPyramid::backCtr
const GlobalPoint backCtr(void) const
Definition: TruncatedPyramid.cc:59
MillePedeFileConverter_cfg.e
e
Definition: MillePedeFileConverter_cfg.py:37