14 const float TrackerBoundsRadius = 112;
15 const float TrackerBoundsHalfLength = 273.5;
17 return ((
point.transverse() < TrackerBoundsRadius) && (
abs(
point.z()) < TrackerBoundsHalfLength));
25 return constrain(
track, priorVertexState);
35 double field =
track.field()->inInverseGeV(
track.impactPointState().globalPosition()).z();
36 int nominalBfield =
track.field()->nominalValue();
37 if ((fabs(field) < 1
e-4) && (fabs(nominalBfield) != 0)) {
38 LogDebug(
"RecoVertex/SingleTrackVertexConstraint")
39 <<
"Initial state is very far, field is close to zero (<1e-4): " << field <<
"\n";
43 RefCountedLinearizedTrackState lTrData = theLTrackFactory.linearizedTrackState(priorVertexState.
position(),
track);
44 RefCountedVertexTrack vertexTrack = theVTrackFactory.vertexTrack(lTrData, priorVertexState);
48 std::vector<RefCountedVertexTrack> initialTracks;
53 }
else if (doTrackerBoundCheck_ && (!insideTrackerBounds(
vertex.position()))) {
54 LogDebug(
"RecoVertex/SingleTrackVertexConstraint") <<
"Fitted position is out of tracker bounds.\n";
58 RefCountedVertexTrack
nTrack = theVertexTrackUpdator.update(
vertex, vertexTrack);
65 return constrain(ttFactory.build(fts), priorPos, priorError);
71 return constrain(
track, priorVertexState);
77 return constrain(ttFactory.build(fts), priorVertexState);
std::tuple< bool, reco::TransientTrack, float > BTFtuple
BTFtuple constrain(const reco::TransientTrack &track, const GlobalPoint &priorPos, const GlobalError &priorError) const
Abs< T >::type abs(const T &t)
*vegas h *****************************************************used in the default bin number in original ***version of VEGAS is ***a higher bin number might help to derive a more precise ***grade subtle point
GlobalPoint position() const