diff --git a/reco/L1/L1Algo/L1TrackParFit.cxx b/reco/L1/L1Algo/L1TrackParFit.cxx
index 3f9b543dd69f61ca4fd297d0987e3663f4520db3..2f5277b494b5599985ba60ad60e5a56b1f5a7829 100644
--- a/reco/L1/L1Algo/L1TrackParFit.cxx
+++ b/reco/L1/L1Algo/L1TrackParFit.cxx
@@ -451,8 +451,8 @@ void
 
   fvec f0[4];  // ( dx )
   fvec f1[4];  // ( dy )
-  fvec f2[4];  // ( dtx ) / qp0
-  fvec f3[4];  // ( dty ) / qp0
+  fvec f2[4];  // ( dtx )
+  fvec f3[4];  // ( dty )
   fvec f4[4];  // ( dqp )
   fvec f5[4];  // ( dt )
 
@@ -516,7 +516,7 @@ void
       f5[step]    = hvi * L;
       f5_tx[step] = hvi * tx / L;
       f5_ty[step] = hvi * ty / L;
-      f5_qp[step] = f5[step] * (m2 * qp0) / (fvec(1.) + m2 * qp0 * qp0);
+      f5_qp[step] = (m2 * qp0) * (h * L / sqrt(fvec(1.) + m2 * qp0 * qp0) / fvec(29.9792458f));
 
       k[step][0] = f0[step];
       k[step][1] = f1[step];
@@ -564,7 +564,6 @@ void
       k[step][0] = p2 * h;
       k[step][1] = p3 * h;
       k[step][2] = f2_tx[step] * p2 + f2_ty[step] * p3;
-      k[step][2] = 0.;  //SG: why?
       k[step][3] = f3_tx[step] * p2 + f3_ty[step] * p3;
       k[step][4] = f5_tx[step] * p2 + f5_ty[step] * p3;
     }
@@ -573,7 +572,6 @@ void
       Jtx[i] = p0[i] + c[0] * k[0][i] + c[1] * k[1][i] + c[2] * k[2][i] + c[3] * k[3][i];
     }
 
-    Jtx[2] = fvec(1.);  // dtx/dtx
     Jtx[4] = fvec(0.);  // dqp/dtx
     Jtx[5] = p0[4] + c[0] * k[0][4] + c[1] * k[1][4] + c[2] * k[2][4] + c[3] * k[3][4];
 
@@ -600,7 +598,6 @@ void
       k[step][1] = p3 * h;
       k[step][2] = f2_tx[step] * p2 + f2_ty[step] * p3;
       k[step][3] = f3_tx[step] * p2 + f3_ty[step] * p3;
-      k[step][3] = 0.;  //SG: why?
       k[step][4] = f5_tx[step] * p2 + f5_ty[step] * p3;
     }
 
@@ -608,7 +605,6 @@ void
       Jty[i] = p0[i] + c[0] * k[0][i] + c[1] * k[1][i] + c[2] * k[2][i] + c[3] * k[3][i];
     }
 
-    Jty[3] = fvec(1.);
     Jty[4] = fvec(0.);
     Jty[5] = p0[4] + c[0] * k[0][4] + c[1] * k[1][4] + c[2] * k[2][4] + c[3] * k[3][4];
 
@@ -637,9 +633,7 @@ void
       k[step][2] = f2_qp[step] + f2_tx[step] * p2 + f2_ty[step] * p3;
       k[step][3] = f3_qp[step] + f3_tx[step] * p2 + f3_ty[step] * p3;
       k[step][4] = 0.;
-      //k[step][5] = f5_qp[step] + f5_tx[step] * p2 + f5_ty[step] * p3;
-      // SG: bug?
-      k[step][5] = f5[step] + f5_tx[step] * p2 + f5_ty[step] * p3;
+      k[step][5] = f5_qp[step] + f5_tx[step] * p2 + f5_ty[step] * p3;
     }
     for (int i = 0; i < 4; ++i) {
       Jqp[i] = p0[i] + c[0] * k[0][i] + c[1] * k[1][i] + c[2] * k[2][i] + c[3] * k[3][i];
@@ -667,7 +661,7 @@ void
   //          covariance matrix transport
 
   // debug mode: full matrix multiplication in double precision
-  if (0) {
+  if (1) {
     for (unsigned int iv = 0; iv < fvec::Size; iv++) {  // loop over SIMD vector compoinents
       double J[6][6];
       for (int i = 0; i < 6; i++) {