13 #include "CLHEP/Vector/RotationInterfaces.h"
23 theAlignmentPositionError(nullptr),
24 theInitializedFlag(
false) {}
69 edm::LogInfo(
"Alignment") <<
"@SUB=AlignableBeamSpot::setSurfaceDeformation"
70 <<
"Useless method for beam spot, do nothing.";
75 edm::LogInfo(
"Alignment") <<
"@SUB=AlignableBeamSpot::addSurfaceDeformation"
76 <<
"Useless method for beam spot, do nothing.";
88 <<
" position = " << this->
globalPosition() <<
", orientation:" << std::endl
90 << std::flush <<
" dxdz = " << gv.
x() / gv.
z() <<
" dydz = " << gv.
y() / gv.
z()
101 CLHEP::HepRotation clhepRotation(
102 CLHEP::HepRep3x3(rot.
xx(), rot.
xy(), rot.
xz(), rot.
yx(), rot.
yy(), rot.
yz(), rot.
zx(), rot.
zy(), rot.
zz()));
108 m_alignments->
m_align.push_back(transform);
119 CLHEP::HepSymMatrix clhepSymMatrix(6, 0);
123 m_alignmentErrors->
m_alignError.push_back(transformError);
125 return m_alignmentErrors;
136 double angleY = std::atan(dxdz);
137 double angleX = -std::atan(dydz);
void initialize(double x, double y, double z, double dxdz, double dydz)
initialize the alignable with the passed beam spot parameters
CLHEP::HepMatrix asHepMatrix(const ROOT::Math::SMatrix< double, N1, N2, typename ROOT::Math::MatRepStd< double, N1, N2 > > &rm)
void update(align::ID, const AlignableSurface &)
void move(const GlobalVector &displacement) override
Move with respect to the global reference frame.
Sin< T >::type sin(const T &t)
void rotateInGlobalFrame(const RotationType &rotation) override
Rotation interpreted in global reference frame.
void move(const GlobalVector &displacement)
const RotationType & globalRotation() const
Return the global orientation of the object.
void setAlignmentPositionError(const AlignmentPositionError &ape, bool propagateDown) override
Set the AlignmentPositionError and, if (propagateDown), to all components.
std::vector< AlignTransform > m_align
const GlobalErrorExtended & globalError() const
void dump() const override
Recursive printout of alignable structure.
Cos< T >::type cos(const T &t)
~AlignableBeamSpot() override
Destructor.
uint16_t const *__restrict__ x
void addSurfaceDeformation(const SurfaceDeformation *, bool) override
do no use, for compatibility only
void addAlignmentPositionError(const AlignmentPositionError &ape, bool propagateDown) override
void addAlignmentPositionErrorFromRotation(const RotationType &rot, bool propagateDown) override
const AlgebraicSymMatrix66 & matrix() const
void addAlignmentPositionErrorFromLocalRotation(const RotationType &rotation, bool propagateDown) override
static const Alignables emptyComponents_
Log< level::Info, false > LogInfo
AlignmentErrorsExtended * alignmentErrors() const override
Return vector of alignment errors.
StructureType alignableObjectId() const override
Return the alignable type identifier.
static const DetId detId()
std::vector< AlignTransformErrorExtended > m_alignError
void addRotation(const RotationType &rotation)
AlignmentPositionError * theAlignmentPositionError
void addDisplacement(const GlobalVector &displacement)
std::vector< Alignable * > Alignables
void rotate(const RotationType &rotation)
void reset()
reset beam spot to the uninitialized state
align::GlobalPoints toGlobal(const align::LocalPoints &) const
Return in global coord given a set of local points.
void setSurfaceDeformation(const SurfaceDeformation *, bool) override
do no use, for compatibility only
const PositionType & globalPosition() const
Return the global position of the object.
Alignments * alignments() const override
Return vector of alignment data.
AlignableSurface theSurface