Go to the source code of this file.
◆ algorithm()
Definition at line 10 of file DDHCalAngular.cc.
References funct::abs(), writedatasetfile::args, cms::convert2mm(), angle_units::operators::convertRadToDeg(), filterCSVwithJSON::copy, funct::cos(), MillePedeFileConverter_cfg::e, cuy::ii, dqmiodumpmetadata::n, cms::DDNamespace::name(), PixelTestBeamValidation_cfi::Position, cms::DDNamespace::prepend(), idealTransformation::rotation, cms::s_executed, funct::sin(), AlCaHLTBitMon_QueryRunRegistry::string, and cms::DDNamespace::volume().
14 int n =
args.value<
int>(
"n");
15 int startCopyNo =
args.value<
int>(
"startCopyNo");
16 int incrCopyNo =
args.value<
int>(
"incrCopyNo");
17 double rangeAngle =
args.value<
double>(
"rangeAngle");
18 double startAngle =
args.value<
double>(
"startAngle");
19 double shiftX =
args.value<
double>(
"shiftX");
20 double shiftY =
args.value<
double>(
"shiftY");
21 double zoffset =
args.value<
double>(
"zoffset");
24 childName = ns.prepend(childName);
28 double dphi = rangeAngle /
n;
30 edm::LogVerbatim(
"HCalGeom") <<
"DDHCalAngular: Parameters for positioning::" 31 <<
" n " <<
n <<
" Start, Range, Delta " <<
convertRadToDeg(startAngle) <<
" " 34 << mother.name() <<
"\tChild " <<
child.name() <<
" NameSpace " << ns.name();
36 int copy = startCopyNo;
37 double phix = startAngle;
38 for (
int ii = 0;
ii <
n; ++
ii) {
53 double xpos = shiftX *
cos(phix) - shiftY *
sin(phix);
54 double ypos = shiftX *
sin(phix) + shiftY *
cos(phix);
Log< level::Info, true > LogVerbatim
constexpr NumType convertRadToDeg(NumType radians)
constexpr NumType convert2mm(NumType length)
Sin< T >::type sin(const T &t)
static constexpr long s_executed
Cos< T >::type cos(const T &t)
Abs< T >::type abs(const T &t)
◆ DD4HEP_OPEN_PLUGIN()
DD4HEP_OPEN_PLUGIN |
( |
dd4hep |
, |
|
|
ddcms_det_element_DDCMS_hcal_DDHCalAngular |
|
|
) |
| |