CMS 3D CMS Logo

IPTools.h
Go to the documentation of this file.
1 #ifndef TrackingTools_IPTools_h
2 #define TrackingTools_IPTools_h
8 #include <utility>
15 
16 namespace IPTools {
22  std::pair<bool, Measurement1D> absoluteImpactParameter3D(const reco::TransientTrack& transientTrack,
23  const reco::Vertex& vertex);
24 
31  std::pair<bool, Measurement1D> absoluteTransverseImpactParameter(const reco::TransientTrack& transientTrack,
32  const reco::Vertex& vertex);
33 
39  std::pair<bool, Measurement1D> signedTransverseImpactParameter(const reco::TransientTrack& track,
40  const GlobalVector& direction,
41  const reco::Vertex& vertex);
42 
49  std::pair<bool, Measurement1D> signedImpactParameter3D(const reco::TransientTrack& track,
50  const GlobalVector& direction,
51  const reco::Vertex& vertex);
52 
54  std::pair<bool, Measurement1D> absoluteImpactParameter(const TrajectoryStateOnSurface& tsos,
55  const reco::Vertex& vertex,
56  VertexDistance& distanceComputer);
57 
59  const GlobalPoint& vertexPosition,
60  const MagneticField* field) {
61  TransverseImpactPointExtrapolator extrapolator(field);
62  return extrapolator.extrapolate(track, vertexPosition);
63  }
64 
66  const reco::Vertex& vertex,
67  const GlobalVector& aJetDirection,
68  const MagneticField* field);
69 
71 
72  std::pair<bool, Measurement1D> linearizedSignedImpactParameter3D(const TrajectoryStateOnSurface& state,
73  const GlobalVector& direction,
74  const reco::Vertex& vertex);
75 
76  inline std::pair<bool, Measurement1D> linearizedSignedImpactParameter3D(const reco::TransientTrack& transientTrack,
77  const GlobalVector& direction,
78  const reco::Vertex& vertex) {
79  // extrapolate to the point of closest approach to the jet axis
80  TrajectoryStateOnSurface closestToJetState =
81  closestApproachToJet(transientTrack.impactPointState(), vertex, direction, transientTrack.field());
82  return linearizedSignedImpactParameter3D(closestToJetState, direction, vertex);
83  }
84 
85  std::pair<bool, Measurement1D> signedDecayLength3D(const TrajectoryStateOnSurface& state,
86  const GlobalVector& direction,
87  const reco::Vertex& vertex);
88 
89  inline std::pair<bool, Measurement1D> signedDecayLength3D(const reco::TransientTrack& transientTrack,
90  const GlobalVector& direction,
91  const reco::Vertex& vertex) {
92  // extrapolate to the point of closest approach to the jet axis
93  TrajectoryStateOnSurface closestToJetState =
94  closestApproachToJet(transientTrack.impactPointState(), vertex, direction, transientTrack.field());
95  return signedDecayLength3D(closestToJetState, direction, vertex);
96  }
97 
98  std::pair<double, Measurement1D> jetTrackDistance(const reco::TransientTrack& track,
99  const GlobalVector& direction,
100  const reco::Vertex& vertex);
101 } // namespace IPTools
102 
103 #endif
Vector3DBase
Definition: Vector3DBase.h:8
IPTools::transverseExtrapolate
TrajectoryStateOnSurface transverseExtrapolate(const TrajectoryStateOnSurface &track, const GlobalPoint &vertexPosition, const MagneticField *field)
Definition: IPTools.h:58
TrajectoryStateOnSurface.h
HLT_FULL_cff.track
track
Definition: HLT_FULL_cff.py:11724
IPTools::signedDecayLength3D
std::pair< bool, Measurement1D > signedDecayLength3D(const TrajectoryStateOnSurface &state, const GlobalVector &direction, const reco::Vertex &vertex)
Definition: IPTools.cc:105
IPTools::absoluteImpactParameter3D
std::pair< bool, Measurement1D > absoluteImpactParameter3D(const reco::TransientTrack &transientTrack, const reco::Vertex &vertex)
Definition: IPTools.cc:38
Measurement1D.h
IPTools::closestApproachToJet
TrajectoryStateOnSurface closestApproachToJet(const TrajectoryStateOnSurface &state, const reco::Vertex &vertex, const GlobalVector &aJetDirection, const MagneticField *field)
Definition: IPTools.cc:182
VertexDistance3D.h
TransverseImpactPointExtrapolator
Definition: TransverseImpactPointExtrapolator.h:26
TransientTrack.h
IPTools::signedTransverseImpactParameter
std::pair< bool, Measurement1D > signedTransverseImpactParameter(const reco::TransientTrack &track, const GlobalVector &direction, const reco::Vertex &vertex)
Definition: IPTools.cc:57
TrajectoryStateOnSurface
Definition: TrajectoryStateOnSurface.h:16
VertexDistanceXY.h
IPTools::signedImpactParameter3D
std::pair< bool, Measurement1D > signedImpactParameter3D(const reco::TransientTrack &track, const GlobalVector &direction, const reco::Vertex &vertex)
Definition: IPTools.cc:81
VertexState.h
Point3DBase< float, GlobalTag >
IPTools::jetTrackDistance
std::pair< double, Measurement1D > jetTrackDistance(const reco::TransientTrack &track, const GlobalVector &direction, const reco::Vertex &vertex)
Definition: IPTools.cc:206
VertexDistance
Definition: VertexDistance.h:16
bphysicsOniaDQM_cfi.vertex
vertex
Definition: bphysicsOniaDQM_cfi.py:7
math::GlobalVector
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< float >, ROOT::Math::GlobalCoordinateSystemTag > GlobalVector
vector in glovbal coordinate system
Definition: Vector3D.h:28
reco::TransientTrack::impactPointState
TrajectoryStateOnSurface impactPointState() const
Definition: TransientTrack.h:96
IPTools
Definition: IPTools.h:16
VertexDistance.h
IPTools::linearizedSignedImpactParameter3D
std::pair< bool, Measurement1D > linearizedSignedImpactParameter3D(const TrajectoryStateOnSurface &state, const GlobalVector &direction, const reco::Vertex &vertex)
Definition: IPTools.cc:141
reco::TransientTrack::field
const MagneticField * field() const
Definition: TransientTrack.h:108
Migration.h
reco::TransientTrack
Definition: TransientTrack.h:19
RunInfoPI::state
state
Definition: RunInfoPayloadInspectoHelper.h:16
Vertex.h
TransverseImpactPointExtrapolator.h
GlobalVector.h
TransverseImpactPointExtrapolator::extrapolate
TrajectoryStateOnSurface extrapolate(const FreeTrajectoryState &fts, const GlobalPoint &vtx) const
extrapolation with default (=geometrical) propagator
Definition: TransverseImpactPointExtrapolator.cc:23
math::GlobalPoint
ROOT::Math::PositionVector3D< ROOT::Math::Cartesian3D< float >, ROOT::Math::GlobalCoordinateSystemTag > GlobalPoint
point in global coordinate system
Definition: Point3D.h:18
IPTools::absoluteTransverseImpactParameter
std::pair< bool, Measurement1D > absoluteTransverseImpactParameter(const reco::TransientTrack &transientTrack, const reco::Vertex &vertex)
Definition: IPTools.cc:47
IPTools::linearImpactParameter
GlobalVector linearImpactParameter(const TrajectoryStateOnSurface &aTSOS, const GlobalPoint &point)
Definition: IPTools.cc:198
point
*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
Definition: invegas.h:5
MagneticField
Definition: MagneticField.h:19
reco::Vertex
Definition: Vertex.h:35
IPTools::absoluteImpactParameter
std::pair< bool, Measurement1D > absoluteImpactParameter(const TrajectoryStateOnSurface &tsos, const reco::Vertex &vertex, VertexDistance &distanceComputer)
Impact parameter without direction (internally used)
Definition: IPTools.cc:23