#include <PropYZLine.h>
Public Member Functions | |
PropYZLine (detinfo::DetectorPropertiesData const &detProp, double tcut, bool doDedx) | |
Propagator * | clone () const override |
Clone method. More... | |
std::optional< double > | short_vec_prop (KTrack &trk, const std::shared_ptr< const Surface > &surf, Propagator::PropDirection dir, bool doDedx, TrackMatrix *prop_matrix=0, TrackError *noise_matrix=0) const override |
Propagate without error. More... | |
std::optional< double > | origin_vec_prop (KTrack &trk, const std::shared_ptr< const Surface > &porient, TrackMatrix *prop_matrix=0) const override |
Propagate without error to surface whose origin parameters coincide with track position. More... | |
Public Member Functions inherited from trkf::Propagator | |
Propagator (detinfo::DetectorPropertiesData const &detProp, double tcut, bool doDedx, const std::shared_ptr< const Interactor > &interactor) | |
Constructor. More... | |
virtual | ~Propagator () |
Destructor. More... | |
double | getTcut () const |
bool | getDoDedx () const |
const std::shared_ptr< const Interactor > & | getInteractor () const |
std::optional< double > | vec_prop (KTrack &trk, const std::shared_ptr< const Surface > &psurf, PropDirection dir, bool doDedx, TrackMatrix *prop_matrix=0, TrackError *noise_matrix=0) const |
Propagate without error (long distance). More... | |
std::optional< double > | lin_prop (KTrack &trk, const std::shared_ptr< const Surface > &psurf, PropDirection dir, bool doDedx, KTrack *ref=0, TrackMatrix *prop_matrix=0, TrackError *noise_matrix=0) const |
Linearized propagate without error. More... | |
std::optional< double > | err_prop (KETrack &tre, const std::shared_ptr< const Surface > &psurf, PropDirection dir, bool doDedx, KTrack *ref=0, TrackMatrix *prop_matrix=0) const |
Propagate with error, but without noise. More... | |
std::optional< double > | noise_prop (KETrack &tre, const std::shared_ptr< const Surface > &psurf, PropDirection dir, bool doDedx, KTrack *ref=0) const |
Propagate with error and noise. More... | |
std::optional< double > | dedx_prop (double pinv, double mass, double s, double *deriv=0) const |
Method to calculate updated momentum due to dE/dx. More... | |
Private Member Functions | |
bool | transformYZLine (double phi1, double phi2, TrackVector &vec, Surface::TrackDirection &dir, TrackMatrix *prop_matrix) const |
Transform yz line -> yz line. More... | |
bool | transformYZPlane (double phi1, double phi2, TrackVector &vec, Surface::TrackDirection &dir, TrackMatrix *prop_matrix) const |
Transform yz plane -> yz line. More... | |
bool | transformXYZPlane (double theta1, double phi1, double phi2, TrackVector &vec, Surface::TrackDirection &dir, TrackMatrix *prop_matrix) const |
Transform xyz plane -> yz line. More... | |
Additional Inherited Members | |
Public Types inherited from trkf::Propagator | |
enum | PropDirection { FORWARD, BACKWARD, UNKNOWN } |
Propagation direction enum. More... | |
Definition at line 24 of file PropYZLine.h.
trkf::PropYZLine::PropYZLine | ( | detinfo::DetectorPropertiesData const & | detProp, |
double | tcut, | ||
bool | doDedx | ||
) |
Constructor.
Arguments.
tcut - Delta ray energy cutoff for calculating dE/dx. doDedx - dE/dx enable flag.
Definition at line 28 of file PropYZLine.cxx.
|
inlineoverridevirtual |
Clone method.
Implements trkf::Propagator.
Definition at line 29 of file PropYZLine.h.
|
overridevirtual |
Propagate without error to surface whose origin parameters coincide with track position.
Propagate without error to dynamically generated origin surface. Optionally return propagation matrix.
Arguments:
trk - Track to propagate. porient - Orientation surface. prop_matrix - Pointer to optional propagation matrix.
Returned value: propagation distance + success flag.
Propagation distance is always zero after successful propagation.
Implements trkf::Propagator.
Definition at line 267 of file PropYZLine.cxx.
|
overridevirtual |
Propagate without error.
Propagate without error. Optionally return propagation matrix and noise matrix.
Arguments:
trk - Track to propagate. psurf - Destination surface. dir - Propagation direction (FORWARD, BACKWARD, or UNKNOWN). doDedx - dE/dx enable/disable flag. prop_matrix - Pointer to optional propagation matrix. noise_matrix - Pointer to optional noise matrix.
Returned value: propagation distance + success flag.
Implements trkf::Propagator.
Definition at line 51 of file PropYZLine.cxx.
|
private |
Transform xyz plane -> yz line.
Definition at line 733 of file PropYZLine.cxx.
|
private |
Transform yz line -> yz line.
The following methods transform the track parameters from initial surface to SurfYZLine origin surface, and generate a propagation matrix. The first group of function parameters are the orientation surface parameters of the initial surface. The second group of function parameters are the orientation parameters of the of the destination surface. The origin parameters of the destination surface are assumed to match the position of the track.
Definition at line 368 of file PropYZLine.cxx.
|
private |
Transform yz plane -> yz line.
Definition at line 558 of file PropYZLine.cxx.