CMS 3D CMS Logo

KalmanUtilsMPlex.h
Go to the documentation of this file.
1 #ifndef RecoTracker_MkFitCore_src_KalmanUtilsMPlex_h
2 #define RecoTracker_MkFitCore_src_KalmanUtilsMPlex_h
3 
5 #include "Matrix.h"
6 
7 namespace mkfit {
8 
9  //------------------------------------------------------------------------------
10 
12 
13  //------------------------------------------------------------------------------
14 
15  void kalmanUpdate(const MPlexLS& psErr,
16  const MPlexLV& psPar,
17  const MPlexHS& msErr,
18  const MPlexHV& msPar,
19  MPlexLS& outErr,
20  MPlexLV& outPar,
21  const int N_proc);
22 
23  void kalmanPropagateAndUpdate(const MPlexLS& psErr,
24  const MPlexLV& psPar,
25  MPlexQI& Chg,
26  const MPlexHS& msErr,
27  const MPlexHV& msPar,
28  MPlexLS& outErr,
29  MPlexLV& outPar,
30  MPlexQI& outFailFlag,
31  const int N_proc,
32  const PropagationFlags propFlags,
33  const bool propToHit);
34 
35  void kalmanComputeChi2(const MPlexLS& psErr,
36  const MPlexLV& psPar,
37  const MPlexQI& inChg,
38  const MPlexHS& msErr,
39  const MPlexHV& msPar,
40  MPlexQF& outChi2,
41  const int N_proc);
42 
43  void kalmanPropagateAndComputeChi2(const MPlexLS& psErr,
44  const MPlexLV& psPar,
45  const MPlexQI& inChg,
46  const MPlexHS& msErr,
47  const MPlexHV& msPar,
48  MPlexQF& outChi2,
49  MPlexLV& propPar,
50  MPlexQI& outFailFlag,
51  const int N_proc,
52  const PropagationFlags propFlags,
53  const bool propToHit);
54 
55  void kalmanOperation(const int kfOp,
56  const MPlexLS& psErr,
57  const MPlexLV& psPar,
58  const MPlexHS& msErr,
59  const MPlexHV& msPar,
60  MPlexLS& outErr,
61  MPlexLV& outPar,
62  MPlexQF& outChi2,
63  const int N_proc);
64 
65  //------------------------------------------------------------------------------
66 
67  void kalmanUpdateEndcap(const MPlexLS& psErr,
68  const MPlexLV& psPar,
69  const MPlexHS& msErr,
70  const MPlexHV& msPar,
71  MPlexLS& outErr,
72  MPlexLV& outPar,
73  const int N_proc);
74 
75  void kalmanPropagateAndUpdateEndcap(const MPlexLS& psErr,
76  const MPlexLV& psPar,
77  MPlexQI& Chg,
78  const MPlexHS& msErr,
79  const MPlexHV& msPar,
80  MPlexLS& outErr,
81  MPlexLV& outPar,
82  MPlexQI& outFailFlag,
83  const int N_proc,
84  const PropagationFlags propFlags,
85  const bool propToHit);
86 
87  void kalmanComputeChi2Endcap(const MPlexLS& psErr,
88  const MPlexLV& psPar,
89  const MPlexQI& inChg,
90  const MPlexHS& msErr,
91  const MPlexHV& msPar,
92  MPlexQF& outChi2,
93  const int N_proc);
94 
96  const MPlexLV& psPar,
97  const MPlexQI& inChg,
98  const MPlexHS& msErr,
99  const MPlexHV& msPar,
100  MPlexQF& outChi2,
101  MPlexLV& propPar,
102  MPlexQI& outFailFlag,
103  const int N_proc,
104  const PropagationFlags propFlags,
105  const bool propToHit);
106 
107  void kalmanOperationEndcap(const int kfOp,
108  const MPlexLS& psErr,
109  const MPlexLV& psPar,
110  const MPlexHS& msErr,
111  const MPlexHV& msPar,
112  MPlexLS& outErr,
113  MPlexLV& outPar,
114  MPlexQF& outChi2,
115  const int N_proc);
116 
117 } // end namespace mkfit
118 #endif
void kalmanOperationEndcap(const int kfOp, const MPlexLS &psErr, const MPlexLV &psPar, const MPlexHS &msErr, const MPlexHV &msPar, MPlexLS &outErr, MPlexLV &outPar, MPlexQF &outChi2, const int N_proc)
Matriplex::Matriplex< float, HH, 1, NN > MPlexHV
Definition: Matrix.h:53
void kalmanUpdate(const MPlexLS &psErr, const MPlexLV &psPar, const MPlexHS &msErr, const MPlexHV &msPar, MPlexLS &outErr, MPlexLV &outPar, const int N_proc)
KalmanFilterOperation
Matriplex::Matriplex< float, LL, 1, NN > MPlexLV
Definition: Matrix.h:49
void kalmanOperation(const int kfOp, const MPlexLS &psErr, const MPlexLV &psPar, const MPlexHS &msErr, const MPlexHV &msPar, MPlexLS &outErr, MPlexLV &outPar, MPlexQF &outChi2, const int N_proc)
void kalmanUpdateEndcap(const MPlexLS &psErr, const MPlexLV &psPar, const MPlexHS &msErr, const MPlexHV &msPar, MPlexLS &outErr, MPlexLV &outPar, const int N_proc)
void kalmanPropagateAndComputeChi2(const MPlexLS &psErr, const MPlexLV &psPar, const MPlexQI &inChg, const MPlexHS &msErr, const MPlexHV &msPar, MPlexQF &outChi2, MPlexLV &propPar, MPlexQI &outFailFlag, const int N_proc, const PropagationFlags propFlags, const bool propToHit)
void kalmanComputeChi2Endcap(const MPlexLS &psErr, const MPlexLV &psPar, const MPlexQI &inChg, const MPlexHS &msErr, const MPlexHV &msPar, MPlexQF &outChi2, const int N_proc)
void kalmanPropagateAndUpdate(const MPlexLS &psErr, const MPlexLV &psPar, MPlexQI &Chg, const MPlexHS &msErr, const MPlexHV &msPar, MPlexLS &outErr, MPlexLV &outPar, MPlexQI &outFailFlag, const int N_proc, const PropagationFlags propFlags, const bool propToHit)
void kalmanPropagateAndComputeChi2Endcap(const MPlexLS &psErr, const MPlexLV &psPar, const MPlexQI &inChg, const MPlexHS &msErr, const MPlexHV &msPar, MPlexQF &outChi2, MPlexLV &propPar, MPlexQI &outFailFlag, const int N_proc, const PropagationFlags propFlags, const bool propToHit)
void kalmanPropagateAndUpdateEndcap(const MPlexLS &psErr, const MPlexLV &psPar, MPlexQI &Chg, const MPlexHS &msErr, const MPlexHV &msPar, MPlexLS &outErr, MPlexLV &outPar, MPlexQI &outFailFlag, const int N_proc, const PropagationFlags propFlags, const bool propToHit)
Matriplex::Matriplex< int, 1, 1, NN > MPlexQI
Definition: Matrix.h:66
Matriplex::Matriplex< float, 1, 1, NN > MPlexQF
Definition: Matrix.h:65
Matriplex::MatriplexSym< float, HH, NN > MPlexHS
Definition: Matrix.h:54
Matriplex::MatriplexSym< float, LL, NN > MPlexLS
Definition: Matrix.h:50
void kalmanComputeChi2(const MPlexLS &psErr, const MPlexLV &psPar, const MPlexQI &inChg, const MPlexHS &msErr, const MPlexHV &msPar, MPlexQF &outChi2, const int N_proc)