#include <PropYZPlane.h>
Public Member Functions | |
PropYZPlane (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 plane. More... | |
bool | transformYZPlane (double phi1, double phi2, TrackVector &vec, Surface::TrackDirection &dir, TrackMatrix *prop_matrix) const |
Transform yz plane -> yz plane. More... | |
bool | transformXYZPlane (double theta1, double phi1, double phi2, TrackVector &vec, Surface::TrackDirection &dir, TrackMatrix *prop_matrix) const |
Transform xyz plane -> yz plane. 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 PropYZPlane.h.
trkf::PropYZPlane::PropYZPlane | ( | 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 PropYZPlane.cxx.
|
inlineoverridevirtual |
Clone method.
Implements trkf::Propagator.
Definition at line 30 of file PropYZPlane.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 259 of file PropYZPlane.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 PropYZPlane.cxx.
|
private |
Transform xyz plane -> yz plane.
Definition at line 648 of file PropYZPlane.cxx.
|
private |
Transform yz line -> yz plane.
The following methods transform the track parameters from initial surface to SurfYZPlane 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 360 of file PropYZPlane.cxx.
|
private |
Transform yz plane -> yz plane.
Definition at line 552 of file PropYZPlane.cxx.