14 #include "CLHEP/Units/GlobalPhysicalConstants.h"
15 #include "CLHEP/Units/GlobalSystemOfUnits.h"
19 LogDebug(
"TrackerGeom") <<
"DDTrackerPhiAltAlgo info: Creating an instance";
35 zpos = nArgs[
"ZPosition"];
36 number = int (nArgs[
"Number"]);
40 LogDebug(
"TrackerGeom") <<
"DDTrackerPhiAltAlgo debug: Parameters for "
41 <<
"positioning--" <<
" Tilt " <<
tilt
45 <<
"\t ZPos " <<
zpos <<
"\tCopy Numbers " <<
number
52 LogDebug(
"TrackerGeom") <<
"DDTrackerPhiAltAlgo debug: Parent " << parentName
53 <<
"\tChild " <<
childName <<
" NameSpace "
60 double theta = 90.*CLHEP::deg;
72 double phix = phi -
tilt + 90.*CLHEP::deg;
73 double phiy = phix + 90.*CLHEP::deg;
74 double phideg = phix/CLHEP::deg;
81 LogDebug(
"TrackerGeom") <<
"DDTrackerPhiAltAlgo test: Creating a new"
82 <<
" rotation " << rotstr <<
"\t" <<
"90., "
83 << phix/CLHEP::deg <<
", 90.,"
84 << phiy/CLHEP::deg <<
", 0, 0";
100 cpv.
position(child, mother, copyNo, tran, rotation);
101 LogDebug(
"TrackerGeom") <<
"DDTrackerPhiAltAlgo test: " << child
102 <<
" number " << copyNo <<
" positioned in "
103 << mother <<
" at " << tran <<
" with "
virtual ~DDTrackerPhiAltAlgo()
Sin< T >::type sin(const T &t)
Geom::Theta< T > theta() const
void position(const DDLogicalPart &self, const DDLogicalPart &parent, std::string copyno, const DDTranslation &trans, const DDRotation &rot, const DDDivision *div=NULL)
const reco::GenParticle * mother(const reco::GenParticle &p, unsigned int imoth=0)
DDName is used to identify DDD entities uniquely.
static std::string & ns()
std::string dbl_to_string(const double &in)
Converts only the integer part of a double to a string.
type of data representation of DDCompactView
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< double > > DDTranslation
Represents a uniquely identifyable rotation matrix.
U second(std::pair< T, U > const &p)
Cos< T >::type cos(const T &t)
void initialize(const DDNumericArguments &nArgs, const DDVectorArguments &vArgs, const DDMapArguments &mArgs, const DDStringArguments &sArgs, const DDStringVectorArguments &vsArgs)
std::pair< std::string, std::string > DDSplit(const std::string &n)
split into (name,namespace), separator = ':'
void execute(DDCompactView &cpv)