17#ifndef O2_MCH_TRACKFITTER_H_
18#define O2_MCH_TRACKFITTER_H_
41 void initField(
float l3Current,
float dipoleCurrent);
58 void fit(
Track& track,
bool smooth =
true,
bool finalize =
true,
59 std::list<TrackParam>::reverse_iterator* itStartingParam =
nullptr,
60 bool skipLocalChi2Calculation =
false);
65 static constexpr double getMaxChi2() {
return SMaxChi2; }
70 void smoothTrack(
Track& track,
bool finalize,
bool skipLocalChi2Calculation);
73 static constexpr double SMaxChi2 = 2.e10;
75 static constexpr double SDefaultChamberZ[10] = {-526.16, -545.24, -676.4, -695.4, -967.5,
76 -998.5, -1276.5, -1307.5, -1406.6, -1437.6};
78 static constexpr double SChamberThicknessInX0[10] = {0.065, 0.065, 0.075, 0.075, 0.035,
79 0.035, 0.035, 0.035, 0.035, 0.035};
81 double mBendingVertexDispersion2 = 4900.;
85 bool mUseChamberResolution =
false;
86 double mChamberResolutionX2 = 0.04;
87 double mChamberResolutionY2 = 0.04;
94 mChamberResolutionX2 = ex * ex;
95 mChamberResolutionY2 = ey * ey;
Definition of the MCH track for internal use.
Definition of the MCH track parameters for internal use.
Class to fit a track to a set of clusters.
TrackFitter & operator=(const TrackFitter &)=delete
void setChamberResolution(double ex, double ey)
void useChamberResolution()
Use the chamber resolution instead of cluster resolution during the fit.
void initField(float l3Current, float dipoleCurrent)
void useClusterResolution()
Use the own resolution of each cluster during the fit (default)
void setBendingVertexDispersion(double ey)
Set the vertex dispersion in y direction used for the track covariance seed.
bool isSmootherEnabled()
Return the smoother enable/disable flag.
void smoothTracks(bool smooth)
Enable/disable the smoother (and the saving of related parameters)
static constexpr double getMaxChi2()
Return the maximum chi2 above which the track can be considered as abnormal.
TrackFitter(const TrackFitter &)=delete
TrackFitter(TrackFitter &&)=delete
TrackFitter & operator=(TrackFitter &&)=delete
void runKalmanFilter(TrackParam &trackParam)
track parameters for internal use
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...
cluster minimal structure