TrackFitHitInfo.h
Go to the documentation of this file.
1 #ifndef TRACKFITHITINFO_H
2 #define TRACKFITHITINFO_H
3 
6 
7 namespace recob {
8 
11 
12  /// \file lardataobj/RecoBase/TrackFitHitInfo.h
13  /// \class recob::TrackFitHitInfo
14  ///
15  /// \brief Object storing per-hit information from a track fit.
16  ///
17  /// \author G. Cerati (FNAL, MicroBooNE)
18  /// \date 2017
19  /// \version 1.0
20  ///
21  /// This object stores the information related to each hit from a track fit.
22  /// In particular it stores the 1D hit position measurement (TrackFitHitInfo#fHitMeas) and its squared uncertainty (TrackFitHitInfo#fHitMeasErr2),
23  /// the ids of the wire where the hit is found (TrackFitHitInfo#fCryostatId,TrackFitHitInfo#fTpcId,TrackFitHitInfo#fPlaneId,TrackFitHitInfo#fWireId),
24  /// the track parameters (TrackFitHitInfo#fTrackStatePar) and correspoding covariance matrix (TrackFitHitInfo#fTrackStateCov).
25  /// The track parameters need to be defined at the wire location, and, in order to make and unbiased comparison of the hit and track parameters,
26  /// they should be obtained without using this hit in the fit.
27  ///
28 
30  public:
31  TrackFitHitInfo(double aHitMeas, double aHitMeasErr2, const SVector5& aTrackStatePar, const SMatrixSym55& aTrackStateCov, const geo::WireID& aWireId)
32  : fHitMeas(aHitMeas), fHitMeasErr2(aHitMeasErr2),
33  fTrackStatePar(aTrackStatePar), fTrackStateCov(aTrackStateCov),
34  fWireId(aWireId.Wire), fPlaneId(aWireId.Plane), fTpcId(aWireId.TPC), fCryostatId(aWireId.Cryostat) { }
35 
37 
38  /// hit position measurement
39  double hitMeas() const { return fHitMeas; }
40  /// squared uncertainty of the hit position measurement
41  double hitMeasErr2() const { return fHitMeasErr2; }
42 
43  /// track parameters
44  const SVector5& trackStatePar() const { return fTrackStatePar; }
45  /// covariance matrix
46  const SMatrixSym55& trackStateCov() const { return fTrackStateCov; }
47 
48  /// wire id where the hit is located
50 
51  private:
52  float fHitMeas; ///< hit position measurement
53  float fHitMeasErr2; ///< squared uncertainty of the hit position measurement
54  SVector5 fTrackStatePar; ///< track parameters
55  SMatrixSym55 fTrackStateCov; ///< covariance matrix
56  unsigned int fWireId; ///< wire id where the hit is located
57  unsigned int fPlaneId; ///< plane id where the hit is located
58  unsigned int fTpcId; ///< tpc id where the hit is located
59  unsigned int fCryostatId; ///< cryostat id where the hit is located
60  };
61 
62 }
63 
64 #endif
float fHitMeasErr2
squared uncertainty of the hit position measurement
Reconstruction base classes.
double hitMeasErr2() const
squared uncertainty of the hit position measurement
ROOT::Math::SMatrix< Double32_t, 5, 5, ROOT::Math::MatRepSym< Double32_t, 5 > > SMatrixSym55
Definition: TrackingTypes.h:85
const SMatrixSym55 & trackStateCov() const
covariance matrix
unsigned int fPlaneId
plane id where the hit is located
geo::WireID WireId() const
wire id where the hit is located
unsigned int fWireId
wire id where the hit is located
TrackFitHitInfo(double aHitMeas, double aHitMeasErr2, const SVector5 &aTrackStatePar, const SMatrixSym55 &aTrackStateCov, const geo::WireID &aWireId)
ROOT::Math::SVector< Double32_t, 5 > SVector5
Definition: TrackingTypes.h:92
IDparameter< geo::WireID > WireID
Member type of validated geo::WireID parameter.
tracking::SMatrixSym55 SMatrixSym55
Object storing per-hit information from a track fit.
double hitMeas() const
hit position measurement
float fHitMeas
hit position measurement
Definition of data types for geometry description.
SVector5 fTrackStatePar
track parameters
const SVector5 & trackStatePar() const
track parameters
tracking::SVector5 SVector5
SMatrixSym55 fTrackStateCov
covariance matrix
Class holding the regions of interest of signal from a channel.
Definition: Wire.h:118
unsigned int fCryostatId
cryostat id where the hit is located
recob::tracking::Plane Plane
Definition: TrackState.h:17
unsigned int fTpcId
tpc id where the hit is located