diff --git a/reco/L1/L1Algo/L1CATrackFinder.cxx b/reco/L1/L1Algo/L1CATrackFinder.cxx index 54212c1dc7ba62e84213a9446d1b94c305aa3885..025e1bf16ff4440b0dad2af9b13154590ede9cad 100644 --- a/reco/L1/L1Algo/L1CATrackFinder.cxx +++ b/reco/L1/L1Algo/L1CATrackFinder.cxx @@ -219,7 +219,7 @@ inline void L1Algo::findSingletsStep1( /// input 1st stage of singlet search T.chi2 = 0.; T.NDF = 2.; - if ((isec == kAllSecIter) || (isec == kAllSecEIter) || (isec == kAllSecJumpIter)) T.NDF = 0; + if ((isec == kAllSecIter) || (isec == kAllSecEIter) || (isec == kAllSecJumpIter)) T.NDF = fvec(0.); T.tx = tx; T.ty = ty; T.t = time; @@ -230,7 +230,7 @@ inline void L1Algo::findSingletsStep1( /// input 1st stage of singlet search T.C40 = T.C41 = T.C42 = T.C43 = fvec(0.); T.C50 = T.C51 = T.C52 = T.C53 = T.C54 = fvec(0.); T.C22 = T.C33 = fMaxSlopePV * fMaxSlopePV / fvec(9.); - if (kGlobal == fTrackingMode || kMcbm == fTrackingMode) T.C22 = T.C33 = 10; + if (kGlobal == fTrackingMode || kMcbm == fTrackingMode) T.C22 = T.C33 = fvec(10.); T.C44 = fMaxInvMom / fvec(3.) * fMaxInvMom / fvec(3.); T.C55 = timeEr * timeEr; @@ -252,12 +252,12 @@ inline void L1Algo::findSingletsStep1( /// input 1st stage of singlet search for (int ista = 0; ista <= istal - 1; ista++) { if constexpr (L1Constants::control::kIfUseRadLengthTable) { - fit.L1AddMaterial(T, fParameters.GetMaterialThickness(ista, T.x, T.y), fMaxInvMom, 1); + fit.L1AddMaterial(T, fParameters.GetMaterialThickness(ista, T.x, T.y), fMaxInvMom, fvec::One()); } else { - fit.L1AddMaterial(T, fParameters.GetStation(ista).materialInfo, fMaxInvMom, 1); + fit.L1AddMaterial(T, fParameters.GetStation(ista).materialInfo, fMaxInvMom, fvec::One()); } - if (ista == fNstationsBeforePipe - 1) fit.L1AddPipeMaterial(T, fMaxInvMom, 1); + if (ista == fNstationsBeforePipe - 1) fit.L1AddPipeMaterial(T, fMaxInvMom, fvec::One()); } // add left hit @@ -335,21 +335,21 @@ inline void L1Algo::findSingletsStep1( /// input 1st stage of singlet search if constexpr (L1Constants::control::kIfUseRadLengthTable) { if (kMcbm == fTrackingMode) { - fit.L1AddThickMaterial(T, fParameters.GetMaterialThickness(istal, T.x, T.y), fMaxInvMom, 1, + fit.L1AddThickMaterial(T, fParameters.GetMaterialThickness(istal, T.x, T.y), fMaxInvMom, fvec::One(), stal.materialInfo.thick, 1); } else if (kGlobal == fTrackingMode) { - fit.L1AddMaterial(T, fParameters.GetMaterialThickness(istal, T.x, T.y), fMaxInvMom, 1); + fit.L1AddMaterial(T, fParameters.GetMaterialThickness(istal, T.x, T.y), fMaxInvMom, fvec::One()); } else { - fit.L1AddMaterial(T, fParameters.GetMaterialThickness(istal, T.x, T.y), fMaxInvMom, 1); + fit.L1AddMaterial(T, fParameters.GetMaterialThickness(istal, T.x, T.y), fMaxInvMom, fvec::One()); } } else { - fit.L1AddMaterial(T, stal.materialInfo, fMaxInvMom, 1); + fit.L1AddMaterial(T, stal.materialInfo, fMaxInvMom, fvec::One()); } if ((istam >= fNstationsBeforePipe) && (istal <= fNstationsBeforePipe - 1)) { - fit.L1AddPipeMaterial(T, fMaxInvMom, 1); + fit.L1AddPipeMaterial(T, fMaxInvMom, fvec::One()); } //assert(T.IsConsistent(true, -1)); @@ -564,8 +564,6 @@ inline void L1Algo::findTripletsStep0( // input L1HitIndex_t hitsl_2[fvec::size()]; L1HitIndex_t hitsm_2_tmp[fvec::size()]; - fvec fvec_0 = 0.f; - fvec fvec_1 = 1.f; L1TrackPar L1TrackPar_0; // SG!! to avoid nans in unfilled part //TODO: SG: investigate, it changes the results !! @@ -584,13 +582,13 @@ inline void L1Algo::findTripletsStep0( // input Tindex n3_V = 0, n3_4 = 0; T_3.push_back(L1TrackPar_0); - u_front_3.push_back(fvec_0); - u_back_3.push_back(fvec_0); - z_Pos_3.push_back(fvec_0); - du_.push_back(fvec_1); - dv_.push_back(fvec_1); - timeR.push_back(fvec_0); - timeER.push_back(fvec_1); + u_front_3.push_back(fvec::Zero()); + u_back_3.push_back(fvec::Zero()); + z_Pos_3.push_back(fvec::Zero()); + du_.push_back(fvec::One()); + dv_.push_back(fvec::One()); + timeR.push_back(fvec::Zero()); + timeER.push_back(fvec::One()); assert(istar < fParameters.GetNstationsActive()); //TODO SG!!! check if it is needed @@ -711,18 +709,18 @@ inline void L1Algo::findTripletsStep0( // input if constexpr (L1Constants::control::kIfUseRadLengthTable) { if (kMcbm == fTrackingMode) { - fit.L1AddThickMaterial(T2, fParameters.GetMaterialThickness(istam, T2.x, T2.y), fMaxInvMom, 1, + fit.L1AddThickMaterial(T2, fParameters.GetMaterialThickness(istam, T2.x, T2.y), fMaxInvMom, fvec::One(), stam.materialInfo.thick, 1); } else if (kGlobal == fTrackingMode) { - fit.L1AddMaterial(T2, fParameters.GetMaterialThickness(istam, T2.x, T2.y), fMaxInvMom, 1); + fit.L1AddMaterial(T2, fParameters.GetMaterialThickness(istam, T2.x, T2.y), fMaxInvMom, fvec::One()); } else { - fit.L1AddMaterial(T2, fParameters.GetMaterialThickness(istam, T2.x, T2.y), T2.qp, 1); + fit.L1AddMaterial(T2, fParameters.GetMaterialThickness(istam, T2.x, T2.y), T2.qp, fvec::One()); } } else { - fit.L1AddMaterial(T2, stam.materialInfo, T2.qp, 1); + fit.L1AddMaterial(T2, stam.materialInfo, T2.qp, fvec::One()); } if ((istar >= fNstationsBeforePipe) && (istam <= fNstationsBeforePipe - 1)) { fit.L1AddPipeMaterial(T2, T2.qp, 1); } @@ -899,15 +897,15 @@ inline void L1Algo::findTripletsStep0( // input if (!n3_4) { T_3.push_back(L1TrackPar_0); - u_front_3.push_back(fvec_0); - u_back_3.push_back(fvec_0); - z_Pos_3.push_back(fvec_0); - // dx_.push_back(fvec_0); - // dy_.push_back(fvec_0); - du_.push_back(fvec_0); - dv_.push_back(fvec_0); - timeR.push_back(fvec_0); - timeER.push_back(fvec_0); + u_front_3.push_back(fvec::Zero()); + u_back_3.push_back(fvec::Zero()); + z_Pos_3.push_back(fvec::Zero()); + // dx_.push_back(fvec::Zero()); + // dy_.push_back(fvec::Zero()); + du_.push_back(fvec::Zero()); + dv_.push_back(fvec::Zero()); + timeR.push_back(fvec::Zero()); + timeER.push_back(fvec::Zero()); } #ifndef FAST_CODE @@ -1091,12 +1089,12 @@ inline void L1Algo::findTripletsStep2( // input // TODO not updated after gaps for (int ih = 1; ih < NHits; ++ih) { L1Extrapolate(T, z[ih], T.qp, fld); if constexpr (L1Constants::control::kIfUseRadLengthTable) { - fit.L1AddMaterial(T, fParameters.GetMaterialThickness(ista[ih], T.x, T.y), T.qp, 1); + fit.L1AddMaterial(T, fParameters.GetMaterialThickness(ista[ih], T.x, T.y), T.qp, fvec::One()); } else { - fit.L1AddMaterial(T, sta[ih].materialInfo, T.qp, 1); + fit.L1AddMaterial(T, sta[ih].materialInfo, T.qp, fvec::One()); } - if (ista[ih] == fNstationsBeforePipe - 1) { fit.L1AddPipeMaterial(T, T.qp, 1); } + if (ista[ih] == fNstationsBeforePipe - 1) { fit.L1AddPipeMaterial(T, T.qp, fvec::One()); } L1Filter(T, sta[ih].frontInfo, u[ih]); L1Filter(T, sta[ih].backInfo, v[ih]); } @@ -1126,12 +1124,12 @@ inline void L1Algo::findTripletsStep2( // input // TODO not updated after gaps for (ih = NHits - 2; ih >= 0; ih--) { L1Extrapolate(T, z[ih], T.qp, fld); if constexpr (L1Constants::control::kIfUseRadLengthTable) { - fit.L1AddMaterial(T, fParameters.GetMaterialThickness(ista[ih], T.x, T.y), T.qp, 1); + fit.L1AddMaterial(T, fParameters.GetMaterialThickness(ista[ih], T.x, T.y), T.qp, fvec::One()); } else { - fit.L1AddMaterial(T, sta[ih].materialInfo, T.qp, 1); + fit.L1AddMaterial(T, sta[ih].materialInfo, T.qp, fvec::One()); } - if (ista[ih] == fNstationsBeforePipe) fit.L1AddPipeMaterial(T, T.qp, 1); + if (ista[ih] == fNstationsBeforePipe) fit.L1AddPipeMaterial(T, T.qp, fvec::One()); L1Filter(T, sta[ih].frontInfo, u[ih]); L1Filter(T, sta[ih].backInfo, v[ih]); @@ -1158,12 +1156,12 @@ inline void L1Algo::findTripletsStep2( // input // TODO not updated after gaps for (ih = 1; ih < NHits; ++ih) { L1Extrapolate(T, z[ih], T.qp, fld); if constexpr (L1Constants::control::kIfUseRadLengthTable) { - fit.L1AddMaterial(T, fParameters.GetMaterialThickness(ista[ih], T.x, T.y), T.qp, 1); + fit.L1AddMaterial(T, fParameters.GetMaterialThickness(ista[ih], T.x, T.y), T.qp, fvec::One()); } else { - fit.L1AddMaterial(T, sta[ih].materialInfo, T.qp, 1); + fit.L1AddMaterial(T, sta[ih].materialInfo, T.qp, fvec::One()); } - if (ista[ih] == fNstationsBeforePipe + 1) fit.L1AddPipeMaterial(T, T.qp, 1); + if (ista[ih] == fNstationsBeforePipe + 1) fit.L1AddPipeMaterial(T, T.qp, fvec::One()); L1Filter(T, sta[ih].frontInfo, u[ih]); L1Filter(T, sta[ih].backInfo, v[ih]); diff --git a/reco/L1/L1Algo/L1CloneMerger.cxx b/reco/L1/L1Algo/L1CloneMerger.cxx index 73053037798a1ae50ec096bc931aa6f12754caa4..33d239964aff0b119585776d0f94c5cd785c4660 100644 --- a/reco/L1/L1Algo/L1CloneMerger.cxx +++ b/reco/L1/L1Algo/L1CloneMerger.cxx @@ -72,7 +72,7 @@ void L1CloneMerger::Exec(L1Vector<L1Track>& extTracks, L1Vector<L1HitIndex_t>& e isStored[iTr] = false; neighbour[iTr] = kNoNeighbour; - trackChi2[iTr] = 100000; + trackChi2[iTr] = 100000.; isDownstreamNeighbour[iTr] = false; } @@ -187,12 +187,12 @@ void L1CloneMerger::Exec(L1Vector<L1Track>& extTracks, L1Vector<L1HitIndex_t>& e if (Chi2Tracks[0] < trackChi2[iTr] || Chi2Tracks[0] < trackChi2[jTr]) { if (neighbour[iTr] < kNoNeighbour) { neighbour[neighbour[iTr]] = kNoNeighbour; - trackChi2[neighbour[iTr]] = 100000; + trackChi2[neighbour[iTr]] = 100000.; isDownstreamNeighbour[neighbour[iTr]] = false; } if (neighbour[jTr] < kNoNeighbour) { neighbour[neighbour[jTr]] = kNoNeighbour; - trackChi2[neighbour[jTr]] = 100000; + trackChi2[neighbour[jTr]] = 100000.; isDownstreamNeighbour[neighbour[jTr]] = false; } neighbour[iTr] = jTr; diff --git a/reco/L1/L1Algo/L1Extrapolation.cxx b/reco/L1/L1Algo/L1Extrapolation.cxx index 735528a41b138be93c8eafddc4b3d979759f8ed8..73174f8d406eba33d33265b3cc43650e5cc51bec 100644 --- a/reco/L1/L1Algo/L1Extrapolation.cxx +++ b/reco/L1/L1Algo/L1Extrapolation.cxx @@ -36,10 +36,10 @@ void L1ExtrapolateAnalytic(L1TrackPar& T, // input track parameters (x,y,tx,ty, // Part of the analytic extrapolation formula with error (c_light*B*dz)^4/4! // - cnst c_light = 0.000299792458; + cnst c_light(0.000299792458); - cnst c1 = 1., c2 = 2., c3 = 3., c4 = 4., c6 = 6., c9 = 9., c15 = 15., c18 = 18., c45 = 45., c2i = 1. / 2., - c3i = 1. / 3., c6i = 1. / 6., c12i = 1. / 12.; + cnst c1(1.), c2(2.), c3(3.), c4(4.), c6(6.), c9(9.), c15(15.), c18(18.), c45(45.), c2i(1. / 2.), c3i(1. / 3.), + c6i(1. / 6.), c12i(1. / 12.); const fvec qp = T.qp; fvec dz = (z_out - T.z); @@ -110,18 +110,18 @@ void L1ExtrapolateAnalytic(L1TrackPar& T, // input track parameters (x,y,tx,ty, fvec syz; { - constexpr double d = 1. / 360.; - cnst c00(30. * 6. * d), c01(30. * 2. * d), c02(30. * d), c10(3. * 40. * d), c11(3. * 15. * d), c12(3. * 8. * d), - c20(2. * 45. * d), c21(2. * 2. * 9. * d), c22(2. * 2. * 5. * d); + constexpr double d = 360.; + cnst c00(30. * 6. / d), c01(30. * 2. / d), c02(30. / d), c10(3. * 40. / d), c11(3. * 15. / d), c12(3. * 8. / d), + c20(2. * 45. / d), c21(2. * 2. * 9. / d), c22(2. * 2. * 5. / d); syz = Fy0 * (c00 * Fz0 + c01 * Fz1 + c02 * Fz2) + Fy1 * (c10 * Fz0 + c11 * Fz1 + c12 * Fz2) + Fy2 * (c20 * Fz0 + c21 * Fz1 + c22 * Fz2); } fvec Syz; { - constexpr double d = 1. / 2520.; - cnst c00(21. * 20. * d), c01(21. * 5. * d), c02(21. * 2. * d), c10(7. * 30. * d), c11(7. * 9. * d), - c12(7. * 4. * d), c20(2. * 63. * d), c21(2. * 21. * d), c22(2. * 10. * d); + constexpr double d = 2520.; + cnst c00(21. * 20. / d), c01(21. * 5. / d), c02(21. * 2. / d), c10(7. * 30. / d), c11(7. * 9. / d), + c12(7. * 4. / d), c20(2. * 63. / d), c21(2. * 21. / d), c22(2. * 10. / d); Syz = Fy0 * (c00 * Fz0 + c01 * Fz1 + c02 * Fz2) + Fy1 * (c10 * Fz0 + c11 * Fz1 + c12 * Fz2) + Fy2 * (c20 * Fz0 + c21 * Fz1 + c22 * Fz2); } @@ -131,16 +131,16 @@ void L1ExtrapolateAnalytic(L1TrackPar& T, // input track parameters (x,y,tx,ty, fvec Syy; { - constexpr double d = 1. / 2520.; - cnst c00(420. * d), c01(21. * 15. * d), c02(21. * 8. * d), c03(63. * d), c04(70. * d), c05(20. * d); + constexpr double d = 2520.; + cnst c00(420. / d), c01(21. * 15. / d), c02(21. * 8. / d), c03(63. / d), c04(70. / d), c05(20. / d); Syy = Fy0 * (c00 * Fy0 + c01 * Fy1 + c02 * Fy2) + Fy1 * (c03 * Fy1 + c04 * Fy2) + c05 * Fy2 * Fy2; } fvec Syyy; { - constexpr double d = 1. / 181440.; - cnst c000(7560 * d), c001(9 * 1008 * d), c002(5 * 1008 * d), c011(21 * 180 * d), c012(24 * 180 * d), - c022(7 * 180 * d), c111(540 * d), c112(945 * d), c122(560 * d), c222(112 * d); + constexpr double d = 181440.; + cnst c000(7560 / d), c001(9 * 1008 / d), c002(5 * 1008 / d), c011(21 * 180 / d), c012(24 * 180 / d), + c022(7 * 180 / d), c111(540 / d), c112(945 / d), c122(560 / d), c222(112 / d); const fvec Fy22 = Fy2 * Fy2; Syyy = Fy0 * (Fy0 * (c000 * Fy0 + c001 * Fy1 + c002 * Fy2) + Fy1 * (c011 * Fy1 + c012 * Fy2) + c022 * Fy22) + Fy1 * (Fy1 * (c111 * Fy1 + c112 * Fy2) + c122 * Fy22) + c222 * Fy22 * Fy2; @@ -323,11 +323,11 @@ void L1ExtrapolateRungeKutta // extrapolates track parameters and returns jacob //======================================================================== - cnst c_light = 0.000299792458; + cnst c_light(0.000299792458); - const fvec a[4] = {0.0f, 0.5f, 0.5f, 1.0f}; - const fvec c[4] = {1.0f / 6.0f, 1.0f / 3.0f, 1.0f / 3.0f, 1.0f / 6.0f}; - const fvec b[4] = {0.0f, 0.5f, 0.5f, 1.0f}; + const fvec a[4] = {fvec(0.), fvec(0.5), fvec(0.5), fvec(1.)}; + const fvec c[4] = {fvec(1. / 6.), fvec(1. / 3.), fvec(1. / 3.), fvec(1. / 6.)}; + const fvec b[4] = {fvec(0.), fvec(0.5), fvec(0.5), fvec(1.)}; int step4; fvec k[16], x0[4], x[4], k1[16]; @@ -370,20 +370,20 @@ void L1ExtrapolateRungeKutta // extrapolates track parameters and returns jacob fvec tx2 = tx * tx; fvec ty2 = ty * ty; fvec txty = tx * ty; - fvec tx2ty21 = 1.f + tx2 + ty2; + fvec tx2ty21 = fvec(1.) + tx2 + ty2; // if( tx2ty21 > 1.e4 ) return 1; - fvec I_tx2ty21 = 1.f / tx2ty21 * qp0; + fvec I_tx2ty21 = fvec(1.) / tx2ty21 * qp0; fvec tx2ty2 = sqrt(tx2ty21); // fvec I_tx2ty2 = qp0 * hC / tx2ty2 ; unsused ??? tx2ty2 *= hC; fvec tx2ty2qp = tx2ty2 * qp0; - Ax[step] = (txty * B[step][0] + ty * B[step][2] - (1.f + tx2) * B[step][1]) * tx2ty2; - Ay[step] = (-txty * B[step][1] - tx * B[step][2] + (1.f + ty2) * B[step][0]) * tx2ty2; + Ax[step] = (txty * B[step][0] + ty * B[step][2] - (fvec(1.) + tx2) * B[step][1]) * tx2ty2; + Ay[step] = (-txty * B[step][1] - tx * B[step][2] + (fvec(1.) + ty2) * B[step][0]) * tx2ty2; - Ax_tx[step] = Ax[step] * tx * I_tx2ty21 + (ty * B[step][0] - 2.f * tx * B[step][1]) * tx2ty2qp; + Ax_tx[step] = Ax[step] * tx * I_tx2ty21 + (ty * B[step][0] - fvec(2.) * tx * B[step][1]) * tx2ty2qp; Ax_ty[step] = Ax[step] * ty * I_tx2ty21 + (tx * B[step][0] + B[step][2]) * tx2ty2qp; Ay_tx[step] = Ay[step] * tx * I_tx2ty21 + (-ty * B[step][1] - B[step][2]) * tx2ty2qp; - Ay_ty[step] = Ay[step] * ty * I_tx2ty21 + (-tx * B[step][1] + 2.f * ty * B[step][0]) * tx2ty2qp; + Ay_ty[step] = Ay[step] * ty * I_tx2ty21 + (-tx * B[step][1] + fvec(2.) * ty * B[step][0]) * tx2ty2qp; step4 = step * 4; k[step4] = tx * h; @@ -405,10 +405,10 @@ void L1ExtrapolateRungeKutta // extrapolates track parameters and returns jacob // Derivatives dx/dqp // - x0[0] = 0.f; - x0[1] = 0.f; - x0[2] = 0.f; - x0[3] = 0.f; + x0[0] = fvec(0.); + x0[1] = fvec(0.); + x0[2] = fvec(0.); + x0[3] = fvec(0.); // // Runge-Kutta step for derivatives dx/dqp @@ -433,7 +433,7 @@ void L1ExtrapolateRungeKutta // extrapolates track parameters and returns jacob for (i = 0; i < 4; ++i) { J[20 + i] = x0[i] + c[0] * k1[i] + c[1] * k1[4 + i] + c[2] * k1[8 + i] + c[3] * k1[12 + i]; } - J[24] = 1.; + J[24] = fvec(1.); // // end of derivatives dx/dqp // @@ -441,10 +441,10 @@ void L1ExtrapolateRungeKutta // extrapolates track parameters and returns jacob // Derivatives dx/tx // - x0[0] = 0.f; - x0[1] = 0.f; - x0[2] = 1.f; - x0[3] = 0.f; + x0[0] = fvec(0.); + x0[1] = fvec(0.); + x0[2] = fvec(1.); + x0[3] = fvec(0.); // // Runge-Kutta step for derivatives dx/dtx @@ -469,16 +469,16 @@ void L1ExtrapolateRungeKutta // extrapolates track parameters and returns jacob if (i != 2) { J[10 + i] = x0[i] + c[0] * k1[i] + c[1] * k1[4 + i] + c[2] * k1[8 + i] + c[3] * k1[12 + i]; } } // end of derivatives dx/dtx - J[12] = 1.f; - J[14] = 0.f; + J[12] = fvec(1.); + J[14] = fvec(0.); // Derivatives dx/ty // - x0[0] = 0.f; - x0[1] = 0.f; - x0[2] = 0.f; - x0[3] = 1.f; + x0[0] = fvec(0.); + x0[1] = fvec(0.); + x0[2] = fvec(0.); + x0[3] = fvec(1.); // // Runge-Kutta step for derivatives dx/dty @@ -505,17 +505,17 @@ void L1ExtrapolateRungeKutta // extrapolates track parameters and returns jacob J[15 + i] = x0[i] + c[0] * k1[i] + c[1] * k1[4 + i] + c[2] * k1[8 + i] + c[3] * k1[12 + i]; } // end of derivatives dx/dty - J[18] = 1.; - J[19] = 0.; + J[18] = fvec(1.); + J[19] = fvec(0.); // // derivatives dx/dx and dx/dy for (i = 0; i < 10; ++i) { - J[i] = 0.; + J[i] = fvec(0.); } - J[0] = 1.; - J[6] = 1.; + J[0] = fvec(1.); + J[6] = fvec(1.); fvec dqp = qp_in - qp0; @@ -593,9 +593,9 @@ void L1Extrapolate0(L1TrackPar& T, // input track parameters (x,y,tx,ty,Q/p) // Part of the analytic extrapolation formula with error (c_light*B*dz)^4/4! // - cnst c_light = 0.000299792458; + cnst c_light(0.000299792458); - cnst c1 = 1., c2i = 1. / 2., c3i = 1. / 3., c6i = 1. / 6., c12i = 1. / 12.; + cnst c1(1.), c2i(1. / 2.), c3i(1. / 3.), c6i(1. / 6.), c12i(1. / 12.); const fvec qp = T.qp; @@ -692,10 +692,10 @@ void L1ExtrapolateTime(L1TrackPar& T, // input track parameters (x,y,tx,ty,Q/p) cnst c_light(29.9792458); dz.setZero(timeInfo <= fvec::Zero()); - T.t += dz * sqrt((T.tx * T.tx) + (T.ty * T.ty) + 1) / c_light; + T.t += dz * sqrt(T.tx * T.tx + T.ty * T.ty + fvec(1.)) / c_light; - const fvec k1 = dz * T.tx / (c_light * sqrt((T.tx * T.tx) + (T.ty * T.ty) + fvec(1.))); - const fvec k2 = dz * T.ty / (c_light * sqrt((T.tx * T.tx) + (T.ty * T.ty) + fvec(1.))); + const fvec k1 = dz * T.tx / (c_light * sqrt(T.tx * T.tx + T.ty * T.ty + fvec(1.))); + const fvec k2 = dz * T.ty / (c_light * sqrt(T.tx * T.tx + T.ty * T.ty + fvec(1.))); fvec c52 = T.C52; fvec c53 = T.C53; @@ -710,7 +710,7 @@ void L1ExtrapolateTime(L1TrackPar& T, // input track parameters (x,y,tx,ty,Q/p) void L1ExtrapolateLine(L1TrackPar& T, fvec z_out) { - fvec dz = (z_out - T.z); + fvec dz = z_out - T.z; T.x += T.tx * dz; T.y += T.ty * dz; @@ -747,11 +747,10 @@ void L1ExtrapolateJXY // is not used currently // Part of the analytic extrapolation formula with error (c_light*B*dz)^4/4! // - // cnst ZERO = 0.0, ONE = 1.; - cnst c_light = 0.000299792458; + cnst c_light(0.000299792458); - cnst c1 = 1., c2 = 2., c3 = 3., c4 = 4., c6 = 6., c9 = 9., c15 = 15., c18 = 18., c45 = 45., c2i = 1. / 2., - c6i = 1. / 6., c12i = 1. / 12.; + cnst c1(1.), c2(2.), c3(3.), c4(4.), c6(6.), c9(9.), c15(15.), c18(18.), c45(45.), c2i(1. / 2.), c6i(1. / 6.), + c12i(1. / 12.); fvec dz2 = dz * dz; fvec dz3 = dz2 * dz; @@ -828,9 +827,9 @@ void L1ExtrapolateJXY // is not used currently fvec Syyy; { - constexpr double d = 1. / 181440.; - cnst c000(7560 * d), c001(9 * 1008 * d), c002(5 * 1008 * d), c011(21 * 180 * d), c012(24 * 180 * d), - c022(7 * 180 * d), c111(540 * d), c112(945 * d), c122(560 * d), c222(112 * d); + constexpr double d = 181440.; + cnst c000(7560 / d), c001(9 * 1008 / d), c002(5 * 1008 / d), c011(21 * 180 / d), c012(24 * 180 / d), + c022(7 * 180 / d), c111(540 / d), c112(945 / d), c122(560 / d), c222(112 / d); fvec Fy22 = Fy2 * Fy2; Syyy = Fy0 * (Fy0 * (c000 * Fy0 + c001 * Fy1 + c002 * Fy2) + Fy1 * (c011 * Fy1 + c012 * Fy2) + c022 * Fy22) + Fy1 * (Fy1 * (c111 * Fy1 + c112 * Fy2) + c122 * Fy22) + c222 * Fy22 * Fy2; @@ -891,7 +890,7 @@ void L1ExtrapolateJXY0(fvec& tx, fvec dz, // extrapolate to this dz position L1FieldRegion& F, fvec& extrDx, fvec& extrDy, fvec& J04, fvec& J14) { - cnst c_light = 0.000299792458, c1 = 1., c2i = 0.5, c6i = 1. / 6., c12i = 1. / 12.; + cnst c_light(0.000299792458), c1(1.), c2i(0.5), c6i(1. / 6.), c12i(1. / 12.); fvec dz2 = dz * dz; fvec dzc6i = dz * c6i;