13 #include "CLHEP/Vector/RotationInterfaces.h" 23 theAlignmentPositionError(
nullptr),
24 theInitializedFlag(
false)
88 edm::LogInfo(
"Alignment") <<
"@SUB=AlignableBeamSpot::setSurfaceDeformation" 89 <<
"Useless method for beam spot, do nothing.";
95 edm::LogInfo(
"Alignment") <<
"@SUB=AlignableBeamSpot::addSurfaceDeformation" 96 <<
"Useless method for beam spot, do nothing.";
109 <<
" has 0 components" << std::endl
110 <<
" position = " << this->
globalPosition() <<
", orientation:" << std::endl << std::flush
112 <<
" dxdz = " << gv.
x()/gv.
z() <<
" dydz = " << gv.
y()/gv.
z() << std::endl;
123 CLHEP::HepRotation clhepRotation( CLHEP::HepRep3x3( rot.
xx(), rot.
xy(), rot.
xz(),
124 rot.
yx(), rot.
yy(), rot.
yz(),
125 rot.
zx(), rot.
zy(), rot.
zz() ) );
131 m_alignments->
m_align.push_back( transform );
143 CLHEP::HepSymMatrix clhepSymMatrix(6,0);
147 m_alignmentErrors->
m_alignError.push_back( transformError );
149 return m_alignmentErrors;
161 double angleY = std::atan(dxdz);
162 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)
const GlobalVector & displacement() const
Return change of the global position since the creation of the object.
void dump() const override
Recursive printout of alignable structure.
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.
AlignmentErrorsExtended * alignmentErrors() const override
Return vector of alignment errors.
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
const RotationType & rotation() const
Return change of orientation since the creation of the object.
Cos< T >::type cos(const T &t)
~AlignableBeamSpot() override
Destructor.
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_
static const DetId detId()
std::vector< AlignTransformErrorExtended > m_alignError
StructureType alignableObjectId() const override
Return the alignable type identifier.
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.
AlignableSurface theSurface
Alignments * alignments() const override
Return vector of alignment data.