41 #ifndef KALMANFILTERALG_H 42 #define KALMANFILTERALG_H 53 #include "TPaveText.h" 162 mutable std::vector<std::unique_ptr<TCanvas> >
fCanvases;
163 mutable std::vector<TVirtualPad*>
fPads;
bool fGTrace
Graphical trace flag.
bool fFitMomRange
Fit momentum using range.
bool fitMomentumRange(const KGTrack &trg, const Propagator *prop, KETrack &tremom) const
Estimate track momentum using range.
double fMaxPropDist
Maximum propagation distance to candidate surface.
double fGapDist
Minimum gap distance.
bool fFitMomMS
Fit momentum using multiple scattering.
std::map< int, TMarker * > fMarkerMap
Markers in current canvas.
double fMaxEndChisq
Maximum incremental chisquare for endpoint hit.
bool smoothTrack(KGTrack &trg, KGTrack *trg1, const Propagator *prop) const
Smooth track.
KalmanFilterAlg(const fhicl::ParameterSet &pset)
Constructor.
A collection of KHitGroups.
bool extendTrack(KGTrack &trg, const Propagator *prop, KHitContainer &hits) const
Add hits to existing track.
void cleanTrack(KGTrack &trg) const
Clean track by removing noise hits near endpoints.
~KalmanFilterAlg()
Destructor.
void setTrace(bool trace)
Set trace config parameter.
bool fitMomentum(const KGTrack &trg, const Propagator *prop, KETrack &tremom) const
Estimate track momentum using either range or multiple scattering.
std::vector< double > fGTraceZMin
Graphical trace minimum z for each view.
double fMaxLDist
Maximum distance for linearized propagation.
double fMaxSortDist
Sort high distance threshold.
double fMaxSeedPredDist
Maximum prediciton distance to accept a hit in seed phase.
double fMaxPredDist
Maximum prediciton distance to accept a hit.
M::value_type trace(const M &m)
double fGTraceWH
Window height.
TVirtualPad * fInfoPad
Information pad.
void reconfigure(const fhicl::ParameterSet &pset)
Reconfigure method.
std::vector< std::unique_ptr< TCanvas > > fCanvases
Graphical trace canvases.
bool updateMomentum(const KETrack &tremom, const Propagator *prop, KGTrack &trg) const
Set track momentum at each track surface.
double fGTraceXMin
Graphical trace minimum x.
Base class for Kalman filter track propagator.
double fGoodPErr
Pointing error threshold for switching to free propagation.
TPaveText * fMessages
Message box.
bool smoothTrackIter(int niter, KGTrack &trg, const Propagator *prop) const
Iteratively smooth a track.
double fMaxSeedIncChisq
Maximum incremental chisquare to accept a hit in seed phase.
double fMaxSmoothIncChisq
Maximum incremental chisquare to accept a hit in smooth phase.
double fMaxIncChisq
Maximum incremental chisquare to accept a hit.
double fMinSampleDist
Minimum sample distance (for momentum measurement).
double fMinSortDist
Sort low distance threshold.
bool fitMomentumMS(const KGTrack &trg, const Propagator *prop, KETrack &tremom) const
Estimate track momentum using multiple scattering.
double fGTraceXMax
Graphical trace maximum x.
std::vector< TVirtualPad * > fPads
View pads in current canvas.
void setPlane(int plane)
Set preferred view plane.
double fGTraceWW
Window width.
int getPlane() const
Preferred view plane.
std::vector< double > fGTraceZMax
Graphical trace maximum z for each view.
bool buildTrack(const KTrack &trk, KGTrack &trg, const Propagator *prop, const Propagator::PropDirection dir, KHitContainer &hits, bool linear) const
Make a new track.
int fMaxSamePlane
Maximum consecutive hits in same plane.
int fMaxNoiseHits
Maximum number of hits in noise cluster.
A collection of KHitTracks.
bool getTrace() const
Trace config parameters.
double fMaxPErr
Maximum pointing error for free propagation.
int fMinLHits
Minimum number of hits to turn off linearized propagation.
PropDirection
Propagation direction enum.
int fPlane
Preferred view plane.