15 , m_originalPosition(nullptr)
17 , m_covariance(nullptr)
18 , m_derivatives(nullptr)
21 , m_constrained(false)
26 m_derivatives=
new std::vector<AlignModuleVertexDerivatives >(0);
34 : m_nTracks(rhs.m_nTracks)
38 , m_originalPosition(
new Amg::
Vector3D( *(rhs.m_originalPosition )))
41 , m_derivatives(
new auto(*(rhs.m_derivatives)))
44 , m_constrained(rhs.m_constrained)
54 delete m_matrix; m_matrix =
new AmgSymMatrix(3)(*(rhs.m_matrix));
59 delete m_covariance; m_covariance =
new AmgSymMatrix(3) (*(rhs.m_covariance));
61 delete m_qMatrix; m_qMatrix =
new AmgSymMatrix(3) (*(rhs.m_qMatrix));
77 , m_originalPosition(nullptr)
79 , m_covariance(nullptr)
80 , m_derivatives(nullptr)
83 , m_constrained(false)
90 m_derivatives=
new std::vector<AlignModuleVertexDerivatives >(0);
100 if( m_matrix )
delete m_matrix;
106 if( m_covariance )
delete m_covariance;
109 if( m_qMatrix )
delete m_qMatrix;
116 if( Q->rows()!=3 || V->rows()!=3 ) {
117 std::cout <<
"Unexpected size of the constraint:"<< std::endl;
118 std::cout <<
" Q size = "<< Q->rows() <<
", V size = "<< V->rows() << std::endl;
121 if( Q->determinant() < 1.0e-24 ) {
122 std::cout <<
" Suspicious Q determinant: detQ = "<< Q->determinant() << std::endl;
137 for ( ; derivIt!=derivIt_end ; ++derivIt) {
153 std::cout <<
"NULL pointer to the matrix! Bailing out..."<< std::endl;
165 m_qMatrix->computeInverseWithCheck(Qinv,invertible);
168 std::cout <<
"fitVertex: Q inversion failed. " << std::endl;
179 vec += 2.0*Qinv*vtemp;
186 covcons.computeInverseWithCheck(invcovcons,invertible);
189 std::cout <<
"fitVertex: covcons inversion failed. " << std::endl;
195 cov.computeInverseWithCheck(invcov,invertible);
198 std::cout <<
"fitVertex: cov inversion failed. " << std::endl;
213 (*m_covariance)=invcov;
222 msg<<
" vertex Position: "<< (*m_position) <<
endmsg;
223 msg<<
" vertex Covariance: "<< (*m_covariance) <<
endmsg;