83 class DetectorPropertiesData;
100 const std::shared_ptr<const Interactor>& interactor);
117 const std::shared_ptr<const Interactor>&
130 const std::shared_ptr<const Surface>& psurf,
138 const std::shared_ptr<const Surface>& porient,
143 const std::shared_ptr<const Surface>& psurf,
151 const std::shared_ptr<const Surface>& psurf,
159 const std::shared_ptr<const Surface>& psurf,
167 const std::shared_ptr<const Surface>& psurf,
173 std::optional<double>
dedx_prop(
double pinv,
double mass,
double s,
double* deriv = 0)
const;
KSymMatrix< 5 >::type TrackError
Track error matrix, dimension 5x5.
virtual std::optional< double > short_vec_prop(KTrack &trk, const std::shared_ptr< const Surface > &psurf, PropDirection dir, bool doDedx, TrackMatrix *prop_matrix=0, TrackError *noise_matrix=0) const =0
Propagate without error (short distance).
virtual std::optional< double > origin_vec_prop(KTrack &trk, const std::shared_ptr< const Surface > &porient, TrackMatrix *prop_matrix=0) const =0
Propagate without error to surface whose origin parameters coincide with track position.
Base class for Kalman filter track interactor.
const std::shared_ptr< const Interactor > & getInteractor() const
double fTcut
Maximum delta ray energy for dE/dx.
virtual ~Propagator()
Destructor.
virtual Propagator * clone() const =0
Clone method.
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).
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.
detinfo::DetectorPropertiesData const & fDetProp
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.
PropDirection
Propagation direction enum.
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.
Kalman filter linear algebra typedefs.
KMatrix< 5, 5 >::type TrackMatrix
General 5x5 matrix.
std::optional< double > dedx_prop(double pinv, double mass, double s, double *deriv=0) const
Method to calculate updated momentum due to dE/dx.
then echo File list $list not found else cat $list while read file do echo $file sed s
std::shared_ptr< const Interactor > fInteractor
Interactor (for calculating noise).
bool fDoDedx
Energy loss enable flag.
Basic Kalman filter track class, with error.
Propagator(detinfo::DetectorPropertiesData const &detProp, double tcut, bool doDedx, const std::shared_ptr< const Interactor > &interactor)
Constructor.
PropDirection
Propagation direction enum.