35 double radius,
const double *inErr) {
38 if (slope == 0.) slope = 0.00000001;
39 double slinv = 1./slope;
40 _par1 = slope / sqrt(1. + radius*radius * slope*slope);
41 double temp = 1. -
_par1*
_par1 * radius*radius;
42 if (temp < 0.) temp = 0.;
43 double dphi0ds = -radius *
_par1 * sqrt(temp) * slinv;
48 _errmat[0] = inErr[2] * dphi0ds * dphi0ds + inErr[0] +
49 inErr[1] * 2. * dphi0ds;
56 inErr[1] *
_par1 * slinv * temp;
59 std::cout <<
" ErrMsg(warning) "
60 <<
"Failed to invert matrix -- MdcSegInfo::calcFromOrigin" << endl