|
|
Go to the documentation of this file. 1 #include "DD4hep/DetFactoryHelper.h"
12 dd4hep::SensitiveDetector& ) {
16 double eta =
args.value<
double>(
"Eta");
17 double phi =
args.value<
double>(
"Phi");
20 double distanceZ =
args.value<
double>(
"DistZ");
22 int copyNumber =
args.value<
int>(
"Number");
24 double dz =
args.value<
double>(
"Dz");
26 edm::LogVerbatim(
"HCalGeom") <<
"DDHCalTestBeamAlgo: Parameters for position"
31 <<
"\tcopyNumber " << copyNumber;
32 edm::LogVerbatim(
"HCalGeom") <<
"DDHCalTestBeamAlgo:Parent " <<
args.parentName() <<
"\tChild " << childName
33 <<
" NameSpace " << ns.
name();
38 double thetax = 90._deg +
theta;
39 double sthx =
sin(thetax);
45 double thetay = 90._deg;
46 double phiy = 90._deg + phi;
47 double thetaz =
theta;
59 double xpos =
r *
cos(phi);
60 double ypos =
r *
sin(phi);
64 childName = ns.
prepend(childName);
76 edm::LogInfo(
"HCalGeom") <<
"DDHCalTestBeamAlgo: Suggested Beam position "
78 <<
") and (dist, eta, phi) = (" <<
convertCmToMm(dist -
dz) <<
", " <<
eta <<
", " << phi
#define DECLARE_DDCMS_DETELEMENT(name, func)
constexpr NumType convertRadToDeg(NumType radians)
dd4hep::Rotation3D makeRotation3D(double thetaX, double phiX, double thetaY, double phiY, double thetaZ, double phiZ)
Sin< T >::type sin(const T &t)
Cos< T >::type cos(const T &t)
std::string prepend(const std::string &) const
Geom::Theta< T > theta() const
constexpr NumType convertCmToMm(NumType centimeters)
static long algorithm(dd4hep::Detector &, cms::DDParsingContext &ctxt, xml_h e, dd4hep::SensitiveDetector &)
Abs< T >::type abs(const T &t)
std::string_view name() const
dd4hep::Volume volume(const std::string &name, bool exc=true) const