14 #include "GaudiKernel/PhysicalConstants.h"
15 #include "GaudiKernel/MsgStream.h"
56 double alpha =
n.mag();
57 if(alpha!=0.)
n /= alpha;
58 double B = bfield.mag();
66 double nu =
n.dot(curvUVT.
curvU());
67 double nv =
n.dot(curvUVT.
curvV());
69 double oneOverSinTheta = 1./sinTheta;
72 (*this)(2,0) = -alpha*Q*oneOverSinTheta*nu*tlx;
73 (*this)(2,1) = - alpha*Q*oneOverSinTheta*nu*tly;
75 (*this)(3,0) = alpha*Q*nv*tlx;
76 (*this)(3,1) = alpha*Q*nv*tly;
84 sl << std::setiosflags(std::ios::fixed);
85 sl << std::setprecision(6);
86 sl <<
MSG::DEBUG <<
"Trk::JacobianLocalToCurvilinear" << std::endl;
87 sl <<
"______________________________________________________________________" << std::endl;
88 for (
int irow = 0; irow<5; irow++){
90 sl << (jac)(irow,
icol);
91 if (irow < 4 ||
icol < 4 ) { sl <<
" ";}
95 sl <<
"______________________________________________________________________";
101 sl << std::setiosflags(std::ios::fixed);
102 sl << std::setprecision(7);
103 sl <<
"Trk::JacobianLocalToCurvilinear " << std::endl;
104 sl <<
"______________________________________________________________________" << std::endl;
105 for (
int irow = 0; irow<5; irow++){
107 sl << (jac)(irow,
icol);
108 if (irow < 4 ||
icol < 4 ) { sl <<
" "; }
112 sl <<
"______________________________________________________________________";