12 if ((momentum.
x() * diff.
x() + momentum.
y() * diff.
y() * momentum.
z() * diff.
z()) < 0)
14 return unsignedDistance;
28 double dist = diff.
mag();
30 double err2 = ROOT::Math::Similarity(error, vDiff);
33 err =
sqrt(err2) / dist;
46 if (error == theNullMatrix)
57 bool ifail = !error.InvertChol();
59 throw cms::Exception(
"VertexDistance3D::matrix inversion problem");
62 return ROOT::Math::Similarity(error, vDiff);
T y() const
Cartesian y coordinate.
T x() const
Cartesian x coordinate.
const AlgebraicSymMatrix33 matrix() const
const Point & position() const
position
T z() const
Cartesian z coordinate.
Measurement1D signedDistance(const reco::Vertex &primVtx, const reco::Vertex &secVtx, const GlobalVector &momentum) const override
Measurement1D distance(const GlobalPoint &vtx1Position, const GlobalError &vtx1PositionError, const GlobalPoint &vtx2Position, const GlobalError &vtx2PositionError) const override
float compatibility(const GlobalPoint &vtx1Position, const GlobalError &vtx1PositionError, const GlobalPoint &vtx2Position, const GlobalError &vtx2PositionError) const override
ROOT::Math::SVector< double, 3 > AlgebraicVector3
ROOT::Math::SMatrix< double, 3, 3, ROOT::Math::MatRepSym< double, 3 > > AlgebraicSymMatrix33