15 if ((momentum.
x()*diff.
x() + momentum.
y()*diff.
y() * momentum.
z()*diff.
z()) < 0 )
17 return unsignedDistance;
28 + vtx2PositionError.
matrix();
35 double dist=diff.
mag();
37 double err2 = ROOT::Math::Similarity(error,vDiff);
39 if (dist != 0) err =
sqrt(err2)/dist;
56 if (error == theNullMatrix)
return FLT_MAX;
66 bool ifail = !error.InvertChol();
68 throw cms::Exception(
"VertexDistance3D::matrix inversion problem");
71 return ROOT::Math::Similarity(error,vDiff);
virtual Measurement1D distance(const GlobalPoint &vtx1Position, const GlobalError &vtx1PositionError, const GlobalPoint &vtx2Position, const GlobalError &vtx2PositionError) const
T y() const
Cartesian y coordinate.
T x() const
Cartesian x coordinate.
const AlgebraicSymMatrix33 & matrix() const
const Point & position() const
position
ROOT::Math::SMatrix< double, 3, 3, ROOT::Math::MatRepSym< double, 3 > > AlgebraicSymMatrix33
T z() const
Cartesian z coordinate.
ROOT::Math::SVector< double, 3 > AlgebraicVector3
virtual Measurement1D signedDistance(const reco::Vertex &primVtx, const reco::Vertex &secVtx, const GlobalVector &momentum) const
virtual float compatibility(const GlobalPoint &vtx1Position, const GlobalError &vtx1PositionError, const GlobalPoint &vtx2Position, const GlobalError &vtx2PositionError) const