Track from a non-cascading particle.A recob::Track
consists of a recob::TrackTrajectory
, plus additional members relevant for a "fitted" track:
More...
#include <Track.h>
Public Types | |
using | Point_t = tracking::Point_t |
using | Vector_t = tracking::Vector_t |
using | Positions_t = tracking::Positions_t |
using | Momenta_t = tracking::Momenta_t |
using | Rotation_t = tracking::Rotation_t |
using | TrajectoryPoint_t = tracking::TrajectoryPoint_t |
using | SMatrixSym55 = tracking::SMatrixSym55 |
using | SMatrixSym66 = tracking::SMatrixSym66 |
using | SMatrix65 = tracking::SMatrix65 |
using | SMatrix56 = tracking::SMatrix56 |
using | SVector6 = tracking::SVector6 |
using | SVector5 = tracking::SVector5 |
using | PointFlags_t = TrackTrajectory::PointFlags_t |
using | Flags_t = TrackTrajectory::Flags_t |
Public Member Functions | |
Track ()=default | |
Track (TrackTrajectory const &Traj, int PId, float Chi2, int Ndof, SMatrixSym55 const &CovVertex, SMatrixSym55 const &CovEnd, int tkID) | |
Track (TrackTrajectory &&Traj, int PId, float Chi2, int Ndof, SMatrixSym55 &&CovVertex, SMatrixSym55 &&CovEnd, int tkID) | |
Track (Positions_t &&positions, Momenta_t &&momenta, Flags_t &&flags, bool hasMomenta, int PId, float Chi2, int Ndof, SMatrixSym55 &&CovVertex, SMatrixSym55 &&CovEnd, int tkID) | |
const recob::TrackTrajectory & | Trajectory () const |
Access to the stored recob::TrackTrajectory. More... | |
size_t | NumberTrajectoryPoints () const |
Various functions related to the presence and the number of (valid) points. More... | |
size_t | NPoints () const |
size_t | FirstPoint () const |
size_t | LastPoint () const |
size_t | FirstValidPoint () const |
size_t | NextValidPoint (size_t index) const |
size_t | PreviousValidPoint (size_t index) const |
size_t | LastValidPoint () const |
bool | HasPoint (size_t i) const |
bool | HasValidPoint (size_t i) const |
unsigned int | CountValidPoints () const |
TrajectoryPoint_t | TrajectoryPoint (size_t i) const |
Access to i-th TrajectoryPoint or its Flags. More... | |
PointFlags_t const & | FlagsAtPoint (size_t i) const |
Point_t const & | Start () const |
Access to track position at different points. More... | |
Point_t const & | Vertex () const |
Point_t const & | End () const |
Point_t const & | LocationAtPoint (size_t i) const |
Vector_t | StartDirection () const |
Access to track direction at different points. More... | |
Vector_t | VertexDirection () const |
Vector_t | EndDirection () const |
Vector_t | DirectionAtPoint (size_t i) const |
bool | HasMomentum () const |
double | MomentumAtPoint (unsigned int p) const |
double | VertexMomentum () const |
double | StartMomentum () const |
double | EndMomentum () const |
Vector_t const & | VertexMomentumVector () const |
Vector_t const & | StartMomentumVector () const |
Vector_t const & | EndMomentumVector () const |
Vector_t const & | MomentumVectorAtPoint (size_t i) const |
const SMatrixSym55 & | StartCovariance () const |
Access to covariance matrices. More... | |
const SMatrixSym55 & | VertexCovariance () const |
const SMatrixSym55 & | EndCovariance () const |
std::pair< Point_t, Point_t > | Extent () const |
Access to position, momentum or covariance at the start and end of the track. More... | |
std::pair< Vector_t, Vector_t > | Direction () const |
std::pair< SMatrixSym55, SMatrixSym55 > | Covariances () const |
double | Length (size_t p=0) const |
Access to various track properties. More... | |
float | Chi2 () const |
float | Chi2PerNdof () const |
int | Ndof () const |
int | ParticleId () const |
double | Theta () const |
Access to spherical or geographical angles at vertex or at any point. More... | |
double | Theta (size_t p) const |
double | Phi () const |
double | Phi (size_t p) const |
double | ZenithAngle () const |
double | ZenithAngle (size_t p) const |
double | AzimuthAngle () const |
double | AzimuthAngle (size_t p) const |
Rotation_t | GlobalToLocalRotationAtPoint (size_t p) const |
Rotation_t | LocalToGlobalRotationAtPoint (size_t p) const |
SVector5 | VertexParametersLocal5D () const |
Accessors to track parameters and covariance matrices in Local5D and Global6D coordinates. More... | |
SVector5 | EndParametersLocal5D () const |
const SMatrixSym55 & | VertexCovarianceLocal5D () const |
const SMatrixSym55 & | EndCovarianceLocal5D () const |
SVector6 | VertexParametersGlobal6D () const |
SVector6 | EndParametersGlobal6D () const |
SMatrixSym66 | VertexCovarianceGlobal6D () const |
SMatrixSym66 | EndCovarianceGlobal6D () const |
Templated version of homonymous functions to access to position, direction, momentum information, and covariances. | |
template<typename T > | |
T | Start () const |
Start position. Use e.g. as: More... | |
template<typename T > | |
T | Vertex () const |
Start position. Use e.g. as: More... | |
template<typename T > | |
T | End () const |
End position. Use e.g. as: More... | |
template<typename T > | |
T | LocationAtPoint (unsigned int p) const |
Position at point p. Use e.g. as: More... | |
template<typename T > | |
T | StartDirection () const |
Start direction. Use e.g. as: More... | |
template<typename T > | |
T | VertexDirection () const |
Start direction. Use e.g. as: More... | |
template<typename T > | |
T | EndDirection () const |
End direction. Use e.g. as: More... | |
template<typename T > | |
T | DirectionAtPoint (unsigned int p) const |
Direction at point p. Use e.g. as: More... | |
template<typename T > | |
T | StartMomentumVector () const |
Momentum vector at start point. Use e.g. as: More... | |
template<typename T > | |
T | VertexMomentumVector () const |
Momentum vector at start point. Use e.g. as: More... | |
template<typename T > | |
T | EndMomentumVector () const |
Momentum vector at end point. Use e.g. as: More... | |
template<typename T > | |
T | MomentumVectorAtPoint (unsigned int p) const |
Momentum vector at point p. Use e.g. as: More... | |
template<typename T > | |
T | StartCovariance () const |
Covariance matrix at start point. Use e.g. as: More... | |
template<typename T > | |
T | VertexCovariance () const |
Covariance matrix at start point. Use e.g. as: More... | |
template<typename T > | |
T | EndCovariance () const |
Covariance matrix at end point. Use e.g. as: More... | |
template<typename T > | |
std::pair< T, T > | Extent () const |
Position at start and end points. Use e.g. as: More... | |
template<typename T > | |
std::pair< T, T > | Direction () const |
Direction at start and end points. Use e.g. as: More... | |
template<typename T > | |
T | GlobalToLocalRotationAtPoint (unsigned int p) const |
Returns a rotation matrix that brings trajectory direction along z. Use e.g. as: More... | |
template<typename T > | |
T | LocalToGlobalRotationAtPoint (unsigned int p) const |
Returns a rotation matrix bringing relative directions to global. Use e.g. as: More... | |
Protected Attributes | |
TrackTrajectory | fTraj |
Stored trajectory data member. More... | |
int | fPId = 0 |
Particle ID hypothesis used in the fit (if any) More... | |
float | fChi2 = -1. |
Fit chi2. More... | |
int | fNdof = 0. |
Number of degrees of freedom of the fit. More... | |
SMatrixSym55 | fCovVertex |
Covariance matrix (local 5D representation) at start point (vertex) More... | |
SMatrixSym55 | fCovEnd |
Covariance matrix (local 5D representation) at end point. More... | |
int | fID = -1 |
track's ID More... | |
Friends | |
std::ostream & | operator<< (std::ostream &stream, Track const &a) |
int | ID () const |
bool | operator< (const Track &a, const Track &b) |
Track from a non-cascading particle.
A recob::Track
consists of a recob::TrackTrajectory
, plus additional members relevant for a "fitted" track:
Please refer to the recob::TrackTrajectory
documentation for more information about it; for a discussion on the object type for coordinates see recob::tracking::Coord_t.
In terms of interface, recob::Track
extends recob::TrackTrajectory
, so that methods of the stored recob::TrackTrajectory
can be called directly from the recob::Track interface
, e.g.:
Two different parameter conventions are used in a recob::Track
, and functions to convert from one to the other are provided:
lardataobj/RecoBase/TrackingPlane.h
for more information. Definition at line 49 of file bj/lardataobj/RecoBase/Track.h.
Definition at line 68 of file bj/lardataobj/RecoBase/Track.h.
Definition at line 56 of file bj/lardataobj/RecoBase/Track.h.
Definition at line 53 of file bj/lardataobj/RecoBase/Track.h.
Definition at line 67 of file bj/lardataobj/RecoBase/Track.h.
Definition at line 55 of file bj/lardataobj/RecoBase/Track.h.
Definition at line 57 of file bj/lardataobj/RecoBase/Track.h.
Definition at line 63 of file bj/lardataobj/RecoBase/Track.h.
Definition at line 62 of file bj/lardataobj/RecoBase/Track.h.
Definition at line 60 of file bj/lardataobj/RecoBase/Track.h.
Definition at line 61 of file bj/lardataobj/RecoBase/Track.h.
Definition at line 65 of file bj/lardataobj/RecoBase/Track.h.
Definition at line 64 of file bj/lardataobj/RecoBase/Track.h.
Definition at line 58 of file bj/lardataobj/RecoBase/Track.h.
Definition at line 54 of file bj/lardataobj/RecoBase/Track.h.
|
default |
|
inline |
Definition at line 85 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 89 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 93 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 182 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 183 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 168 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 169 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 112 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 162 of file bj/lardataobj/RecoBase/Track.h.
Definition at line 161 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Direction at start and end points. Use e.g. as:
.
Definition at line 266 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 134 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Direction at point p. Use e.g. as:
.
Definition at line 239 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 125 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
End position. Use e.g. as:
.
Definition at line 224 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 155 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Track::SMatrixSym66 Track::EndCovarianceGlobal6D | ( | ) | const |
Definition at line 85 of file bj/lardataobj/RecoBase/Track.cxx.
|
inline |
Definition at line 207 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 133 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
End direction. Use e.g. as:
.
Definition at line 236 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 144 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 147 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Momentum vector at end point. Use e.g. as:
.
Definition at line 248 of file bj/lardataobj/RecoBase/Track.h.
Track::SVector6 Track::EndParametersGlobal6D | ( | ) | const |
Definition at line 60 of file bj/lardataobj/RecoBase/Track.cxx.
Track::SVector5 Track::EndParametersLocal5D | ( | ) | const |
Definition at line 76 of file bj/lardataobj/RecoBase/Track.cxx.
Access to position, momentum or covariance at the start and end of the track.
Definition at line 160 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Position at start and end points. Use e.g. as:
.
Definition at line 263 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 104 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 106 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 118 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 190 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Returns a rotation matrix that brings trajectory direction along z. Use e.g. as:
.
Definition at line 269 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Access to track momentum at different points. The user must check that HasMomentum() returns true to ensure the validity of the result of these functions.
Definition at line 140 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 110 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 111 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Track ID number, needed to relate a track to its possible track parent (e.g. in case of a refit). Note that art Assns to the same object are not currently supported. The < operator is based on the track ID.
Definition at line 198 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 105 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 109 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Access to various track properties.
Definition at line 167 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 191 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Returns a rotation matrix bringing relative directions to global. Use e.g. as:
.
Definition at line 272 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 126 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Position at point p. Use e.g. as:
.
Definition at line 227 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 141 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 148 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Momentum vector at point p. Use e.g. as:
.
Definition at line 251 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 170 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 107 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 103 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Various functions related to the presence and the number of (valid) points.
Definition at line 102 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 171 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 178 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 179 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 108 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Access to track position at different points.
Definition at line 123 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Start position. Use e.g. as:
.
Definition at line 218 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Access to covariance matrices.
Definition at line 153 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Covariance matrix at start point. Use e.g. as:
.
|
inline |
Access to track direction at different points.
Definition at line 131 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Start direction. Use e.g. as:
.
Definition at line 230 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 143 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 146 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Momentum vector at start point. Use e.g. as:
.
Definition at line 242 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Access to spherical or geographical angles at vertex or at any point.
Definition at line 176 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 177 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Access to the stored recob::TrackTrajectory.
Definition at line 98 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Access to i-th TrajectoryPoint or its Flags.
Definition at line 117 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 124 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Start position. Use e.g. as:
.
Definition at line 221 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 154 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Covariance matrix at start point. Use e.g. as:
.
Definition at line 257 of file bj/lardataobj/RecoBase/Track.h.
Track::SMatrixSym66 Track::VertexCovarianceGlobal6D | ( | ) | const |
Definition at line 81 of file bj/lardataobj/RecoBase/Track.cxx.
|
inline |
Definition at line 206 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 132 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Start direction. Use e.g. as:
.
Definition at line 233 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 142 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 145 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Momentum vector at start point. Use e.g. as:
.
Definition at line 245 of file bj/lardataobj/RecoBase/Track.h.
Track::SVector6 Track::VertexParametersGlobal6D | ( | ) | const |
Definition at line 49 of file bj/lardataobj/RecoBase/Track.cxx.
Track::SVector5 Track::VertexParametersLocal5D | ( | ) | const |
Accessors to track parameters and covariance matrices in Local5D and Global6D coordinates.
Definition at line 71 of file bj/lardataobj/RecoBase/Track.cxx.
|
inline |
Definition at line 180 of file bj/lardataobj/RecoBase/Track.h.
|
inline |
Definition at line 181 of file bj/lardataobj/RecoBase/Track.h.
Definition at line 40 of file bj/lardataobj/RecoBase/Track.cxx.
|
friend |
Definition at line 21 of file bj/lardataobj/RecoBase/Track.cxx.
|
protected |
Fit chi2.
Definition at line 74 of file bj/lardataobj/RecoBase/Track.h.
|
protected |
Covariance matrix (local 5D representation) at end point.
Definition at line 77 of file bj/lardataobj/RecoBase/Track.h.
|
protected |
Covariance matrix (local 5D representation) at start point (vertex)
Definition at line 76 of file bj/lardataobj/RecoBase/Track.h.
|
protected |
track's ID
Definition at line 78 of file bj/lardataobj/RecoBase/Track.h.
|
protected |
Number of degrees of freedom of the fit.
Definition at line 75 of file bj/lardataobj/RecoBase/Track.h.
|
protected |
Particle ID hypothesis used in the fit (if any)
Definition at line 73 of file bj/lardataobj/RecoBase/Track.h.
|
protected |
Stored trajectory data member.
Definition at line 72 of file bj/lardataobj/RecoBase/Track.h.