68 #include "CLHEP/Matrix/SymMatrix.h"
124 : theCurrentTracker(nullptr),
153 m_treeErrors =
new TTree(
"alignTreeErrors",
"alignTreeErrors");
206 for (std::vector<AlignTransform>::const_iterator
i = theAlignments->
m_align.begin();
210 CLHEP::Hep3Vector translation =
i->translation();
211 m_x = translation.x();
212 m_y = translation.y();
213 m_z = translation.z();
215 CLHEP::HepRotation
rotation =
i->rotation();
231 delete theAlignments;
233 std::vector<AlignTransformErrorExtended> alignErrors = alignmentErrors->m_alignError;
234 for (std::vector<AlignTransformErrorExtended>::const_iterator
i = alignErrors.begin();
i != alignErrors.end(); ++
i) {
236 CLHEP::HepSymMatrix errMatrix =
i->matrix();
239 m_xx = errMatrix[0][0];
240 m_xy = errMatrix[0][1];
241 m_xz = errMatrix[0][2];
242 m_yy = errMatrix[1][1];
243 m_yz = errMatrix[1][2];
244 m_zz = errMatrix[2][2];
249 auto const& detUnits = theCurTracker->
detUnits();
252 for (
auto iunit = detUnits.begin(); iunit != detUnits.end(); ++iunit) {
253 DetId detid = (*iunit)->geographicalId();
259 auto geomDetUnit = *iunit;
262 if (geomDetUnit->surfaceDeformation()) {
263 std::vector<double> surfaceDeformParams = (geomDetUnit->surfaceDeformation())->
parameters();
265 m_dNpar = surfaceDeformParams.size();
266 m_dtype = (geomDetUnit->surfaceDeformation())->
type();
267 m_d1 = surfaceDeformParams.at(0);
268 m_d2 = surfaceDeformParams.at(1);
269 m_d3 = surfaceDeformParams.at(2);
271 for (std::vector<double>::const_iterator it = surfaceDeformParams.begin(); it != surfaceDeformParams.end();