11 : theJacobian(
ROOT::Math::SMatrixNoInit()) {
28 : theJacobian(
ROOT::Math::SMatrixNoInit()) {
50 double tvwX = tnl.
z(), tvwY = tnl.
x(), tvwZ = tnl.
y();
51 double cosl = tn.
perp();
54 double cosl1 = 1. / cosl;
57 double uj = un.
dot(dj);
58 double uk = un.
dot(dk);
59 double sinz = -un.
dot(hq);
62 double vj = vn.
dot(dj);
63 double vk = vn.dot(dk);
64 double cosz = vn.dot(hq);
67 for (
auto i = 1;
i < 5; ++
i)
78 for (
auto i = 0;
i < 3; ++
i) {
GlobalPoint toGlobal(const Point2DBase< Scalar, LocalTag > lp) const
LocalVector direction() const
Momentum vector unit in the local frame.
Basic3DVector< T > y() const
LocalPoint position() const
Local x and y position coordinates.
PreciseFloatType< T, U >::Type dot(const Vector3DBase< U, FrameTag > &v) const
GlobalVector magneticFieldInInverseGeV(const GlobalPoint &x) const
Basic3DVector< T > x() const
float signedInverseMomentum() const
Signed inverse momentum q/p (zero for neutrals).
GlobalVector inInverseGeV(const GlobalPoint &gp) const
Field value ad specified global point, in 1/Gev.
AlgebraicMatrix55 theJacobian
void compute(Surface::RotationType const &rot, LocalVector const &tnl, GlobalVector const &tn, GlobalVector const &hq)
const RotationType & rotation() const
The Signals That Services Can Subscribe To This is based on ActivityRegistry h
Helper function to determine trigger accepts.
JacobianLocalToCurvilinear(const Surface &surface, const LocalTrajectoryParameters &localParameters, const MagneticField &magField)