Definition at line 101 of file MultipleScatteringUpdator.cc.
References a, zMuMuMuonUserData::beta, GetRecoTauVFromDQM_MC_cff::cl, gather_cfg::cout, ztail::d, MillePedeFileConverter_cfg::e, TrajectoryStateOnSurface::globalMomentum(), MediumProperties::isValid(), TrajectoryStateOnSurface::localError(), TrajectoryStateOnSurface::localMomentum(), dqm-mbProfile::log, visualization-live-secondInstance_cfg::m, PV3DBase< T, PVType, FrameType >::mag(), MaterialEffectsUpdator::mass(), LocalTrajectoryError::matrix(), Surface::mediumProperties(), AlCaHLTBitMon_ParallelJobs::p, PV3DBase< T, PVType, FrameType >::perp(), ALCARECOTkAlMinBias_cff::pMin, MediumProperties::radLen(), fastSimProducer_cff::radLen, mathSSE::sqrt(), TrajectoryStateOnSurface::surface(), PV3DBase< T, PVType, FrameType >::x(), PV3DBase< T, PVType, FrameType >::y(), and PV3DBase< T, PVType, FrameType >::z().
117 float xf = 1. / fabs(d.
z());
119 const float amscon = 1.8496e-4;
120 const float m =
mass;
121 float e =
sqrt(p * p + m * m);
128 float a = (1. + 0.038 *
log(radLen)) / (beta * p);
130 sigt2 = amscon * radLen *
a;
138 float error2_QoverP = covMatrix(0, 0);
142 sigt2 *= (1. + (p *
p) * error2_QoverP * (1. + 5 * m * m / (e * e) + 3 * m * m * beta * beta * error2_QoverP));
150 float betaMin = pMin /
sqrt(pMin * pMin + m * m);
151 float a_max = (1. + 0.038 *
log(radLen)) / (betaMin * pMin);
153 float sigt2_max = amscon * radLen * a_max;
154 if (sigt2 > sigt2_max)
157 std::cout <<
" after P constraint (" << pMin <<
") = " <<
sqrt(sigt2);
158 std::cout <<
" for track with 1/p=" << 1 / p <<
"+-" <<
sqrt(error2_QoverP) << std::endl;
164 float cf = d.
x() / sl;
165 float sf = d.
y() / sl;
168 std::cout <<
"old " << sigt2 * (sf * sf * cl * cl + cf * cf) / (cl * cl * cl * cl) <<
" " 169 << sigt2 * (cf * sf * sl * sl) / (cl * cl * cl * cl) <<
" " 170 << sigt2 * (cf * cf * cl * cl + sf * sf) / (cl * cl * cl * cl) << std::endl;
LocalVector localMomentum() const
const SurfaceType & surface() const
const AlgebraicSymMatrix55 & matrix() const
const LocalTrajectoryError & localError() const
ROOT::Math::SMatrix< double, 5, 5, ROOT::Math::MatRepSym< double, 5 > > AlgebraicSymMatrix55
GlobalVector globalMomentum() const
const MediumProperties & mediumProperties() const