53 int copyNo = startCopyNo;
55 double xphi = xQuadrant*tiltAngle;
56 double yphi = yQuadrant*tiltAngle;
57 double theta = 90.*CLHEP::deg;
60 double phiZ = 3*
theta;
64 double offsetX = xQuadrant*0.5*offsetXY;
65 double offsetY = yQuadrant*0.5*offsetXY;
68 int rowmax(0), column(0);
79 double limit1 =
sqrt((offsetX+0.5*xQuadrant*offsetXY)*
80 (offsetX+0.5*xQuadrant*offsetXY) +
81 (offsetY+0.5*yQuadrant*offsetXY)*
82 (offsetY+0.5*yQuadrant*offsetXY) );
83 double limit2 =
sqrt((offsetX-0.5*xQuadrant*offsetXY)*
84 (offsetX-0.5*xQuadrant*offsetXY) +
85 (offsetY-0.5*yQuadrant*offsetXY)*
86 (offsetY-0.5*yQuadrant*offsetXY) );
91 <<
"," << row <<
"): offsetX,Y = " << offsetX <<
"," 92 << offsetY <<
" limit=" << limit1 <<
":" << limit2
93 <<
" rMin, rMax = " <<
m_rMin <<
"," <<
m_rMax << std::endl;
100 rotstr += std::to_string(copyNo);
104 std::make_unique<DDRotationMatrix>( *
DDcreateRotationMatrix( theta, phiX, theta + yphi, phiY, -yphi, phiZ )
110 edm::LogInfo(
"HGCalGeom") <<
"Module " << copyNo <<
": location = " 111 << tran <<
" Rotation " <<
rotation;
119 std::cout <<
" (" << column <<
"," << row <<
"): offsetX,Y = " 120 << offsetX <<
"," << offsetY <<
" is out of limit=" << limit1
121 <<
":" << limit2 <<
" rMin, rMax = " <<
m_rMin <<
"," 126 yphi += yQuadrant*2.*tiltAngle;
127 offsetY += yQuadrant*offsetXY;
131 if (row > rowmax) rowmax = row;
133 xphi += xQuadrant*2.*tiltAngle;
134 yphi = yQuadrant*tiltAngle;
135 offsetY = yQuadrant*0.5*offsetXY;
136 offsetX += xQuadrant*offsetXY;
140 std::cout << rowmax <<
" rows and " << column <<
" columns in quadrant " 141 << xQuadrant <<
":" << yQuadrant << std::endl;
Geom::Theta< T > theta() const
DDName is used to identify DDD entities uniquely.
std::string m_idNameSpace
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< double > > DDTranslation
Represents a uniquely identifyable rotation matrix.
Abs< T >::type abs(const T &t)
void position(const DDLogicalPart &self, const DDLogicalPart &parent, const std::string ©no, const DDTranslation &trans, const DDRotation &rot, const DDDivision *div=0)