File indexing completed on 2023-03-17 11:13:38
0001 #ifndef L1Trigger_TrackFindingTMTT_KFParamsComb_h
0002 #define L1Trigger_TrackFindingTMTT_KFParamsComb_h
0003
0004 #include "L1Trigger/TrackFindingTMTT/interface/KFbase.h"
0005 #include "L1Trigger/TrackFindingTMTT/interface/L1track3D.h"
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027
0028
0029
0030
0031
0032
0033 namespace tmtt {
0034
0035 class KFParamsComb : public KFbase {
0036 public:
0037 KFParamsComb(const Settings* settings, const uint nHelixPar, const std::string& fitterName);
0038
0039 ~KFParamsComb() override = default;
0040
0041 protected:
0042
0043
0044
0045 TVectorD seedX(const L1track3D& l1track3D) const override;
0046 TMatrixD seedC(const L1track3D& l1track3D) const override;
0047
0048
0049 TVectorD vectorM(const Stub* stub) const override;
0050 TMatrixD matrixV(const Stub* stub, const KalmanState* state) const override;
0051
0052
0053
0054
0055 TMatrixD matrixH(const Stub* stub) const override;
0056
0057 TMatrixD matrixF(const Stub* stub, const KalmanState* state) const override;
0058
0059
0060 TVectorD trackParams(const KalmanState* state) const override;
0061 TVectorD trackParams_BeamConstr(const KalmanState* state, double& chi2rphi) const override;
0062
0063
0064 bool isGoodState(const KalmanState& state) const override;
0065
0066 protected:
0067 std::vector<double> kfLayerVsPtToler_;
0068 std::vector<double> kfLayerVsD0Cut5_;
0069 std::vector<double> kfLayerVsZ0Cut5_;
0070 std::vector<double> kfLayerVsZ0Cut4_;
0071 std::vector<double> kfLayerVsChiSq5_;
0072 std::vector<double> kfLayerVsChiSq4_;
0073 };
0074
0075 }
0076
0077 #endif