CbmRoot
L1Filtration.h
Go to the documentation of this file.
1 #ifndef L1Filtration_h
2 #define L1Filtration_h
3 
4 #include "CbmL1Def.h"
5 #include "L1TrackPar.h"
6 #include "L1UMeasurementInfo.h"
7 #include "L1XYMeasurementInfo.h"
8 
9 //#define cnst static const fvec
10 #define cnst const fvec
11 
12 
13 inline void FilterTime(L1TrackPar& T, fvec t0, fvec dt0, fvec w = 1.) {
14  fvec wi, zeta, zetawi, HCH;
15  fvec F0, F1, F2, F3, F4, F5;
16  fvec K1, K2, K3, K4, K5;
17 
18  zeta = T.t - t0;
19 
20  // F = CH'
21  F0 = T.C50;
22  F1 = T.C51;
23 
24  HCH = T.C55;
25 
26  F2 = T.C52;
27  F3 = T.C53;
28  F4 = T.C54;
29  F5 = T.C55;
30 
31 #if 0 // use mask
32  const fvec mask = (HCH < info.sigma2 * 16.);
33  wi = w/( (mask & info.sigma2) +HCH );
34  zetawi = zeta *wi;
35  T.chi2 += mask & (zeta * zetawi);
36 #else
37  wi = w / (dt0 * dt0 + HCH);
38  zetawi = zeta * wi;
39  T.chi2 += zeta * zetawi;
40 #endif // 0
41  T.NDF += w;
42 
43  K1 = F1 * wi;
44  K2 = F2 * wi;
45  K3 = F3 * wi;
46  K4 = F4 * wi;
47  K5 = F5 * wi;
48 
49  T.x -= F0 * zetawi;
50  T.y -= F1 * zetawi;
51  T.tx -= F2 * zetawi;
52  T.ty -= F3 * zetawi;
53  T.qp -= F4 * zetawi;
54  T.t -= F5 * zetawi;
55 
56  T.C00 -= F0 * F0 * wi;
57  T.C10 -= K1 * F0;
58  T.C11 -= K1 * F1;
59  T.C20 -= K2 * F0;
60  T.C21 -= K2 * F1;
61  T.C22 -= K2 * F2;
62  T.C30 -= K3 * F0;
63  T.C31 -= K3 * F1;
64  T.C32 -= K3 * F2;
65  T.C33 -= K3 * F3;
66  T.C40 -= K4 * F0;
67  T.C41 -= K4 * F1;
68  T.C42 -= K4 * F2;
69  T.C43 -= K4 * F3;
70  T.C44 -= K4 * F4;
71  T.C50 -= K5 * F0;
72  T.C51 -= K5 * F1;
73  T.C52 -= K5 * F2;
74  T.C53 -= K5 * F3;
75  T.C54 -= K5 * F4;
76  T.C55 -= K5 * F5;
77 }
78 
79 inline void
81  fvec wi, zeta, zetawi, HCH;
82  fvec F0, F1, F2, F3, F4, F5;
83  fvec K1, K2, K3, K4, K5;
84 
85  zeta = info.cos_phi * T.x + info.sin_phi * T.y - u;
86 
87  // F = CH'
88  F0 = info.cos_phi * T.C00 + info.sin_phi * T.C10;
89  F1 = info.cos_phi * T.C10 + info.sin_phi * T.C11;
90 
91  HCH = (F0 * info.cos_phi + F1 * info.sin_phi);
92 
93  F2 = info.cos_phi * T.C20 + info.sin_phi * T.C21;
94  F3 = info.cos_phi * T.C30 + info.sin_phi * T.C31;
95  F4 = info.cos_phi * T.C40 + info.sin_phi * T.C41;
96  F5 = info.cos_phi * T.C50 + info.sin_phi * T.C51;
97 
98 #if 0 // use mask
99  const fvec mask = (HCH < info.sigma2 * 16.);
100  wi = w/( (mask & info.sigma2) +HCH );
101  zetawi = zeta *wi;
102  T.chi2 += mask & (zeta * zetawi);
103 #else
104  wi = w / (info.sigma2 + HCH);
105  zetawi = zeta * wi;
106  T.chi2 += zeta * zetawi;
107 #endif // 0
108  T.NDF += w;
109 
110  K1 = F1 * wi;
111  K2 = F2 * wi;
112  K3 = F3 * wi;
113  K4 = F4 * wi;
114  K5 = F5 * wi;
115 
116  T.x -= F0 * zetawi;
117  T.y -= F1 * zetawi;
118  T.tx -= F2 * zetawi;
119  T.ty -= F3 * zetawi;
120  T.qp -= F4 * zetawi;
121  T.t -= F5 * zetawi;
122 
123  T.C00 -= F0 * F0 * wi;
124  T.C10 -= K1 * F0;
125  T.C11 -= K1 * F1;
126  T.C20 -= K2 * F0;
127  T.C21 -= K2 * F1;
128  T.C22 -= K2 * F2;
129  T.C30 -= K3 * F0;
130  T.C31 -= K3 * F1;
131  T.C32 -= K3 * F2;
132  T.C33 -= K3 * F3;
133  T.C40 -= K4 * F0;
134  T.C41 -= K4 * F1;
135  T.C42 -= K4 * F2;
136  T.C43 -= K4 * F3;
137  T.C44 -= K4 * F4;
138  T.C50 -= K5 * F0;
139  T.C51 -= K5 * F1;
140  T.C52 -= K5 * F2;
141  T.C53 -= K5 * F3;
142  T.C54 -= K5 * F4;
143  T.C55 -= K5 * F5;
144 }
145 
146 inline void
148  fvec wi, zeta, zetawi, HCH;
149  fvec F0, F1, F2, F3, F4, F5;
150  fvec K1, K2, K3, K4, K5;
151 
152  zeta = info.cos_phi * T.x + info.sin_phi * T.y - u;
153 
154  // F = CH'
155  F0 = info.cos_phi * T.C00 + info.sin_phi * T.C10;
156  F1 = info.cos_phi * T.C10 + info.sin_phi * T.C11;
157 
158  HCH = (F0 * info.cos_phi + F1 * info.sin_phi);
159 
160  F2 = info.cos_phi * T.C20 + info.sin_phi * T.C21;
161  F3 = info.cos_phi * T.C30 + info.sin_phi * T.C31;
162  F4 = info.cos_phi * T.C40 + info.sin_phi * T.C41;
163  F5 = info.cos_phi * T.C50 + info.sin_phi * T.C51;
164 
165 #if 0 // use mask
166  const fvec mask = (HCH < info.sigma2 * 16.);
167  wi = w/( (mask & info.sigma2) +HCH );
168  zetawi = zeta *wi;
169  T.chi2 += mask & (zeta * zetawi);
170 #else
171  wi = w / (info.sigma2 + HCH);
172  zetawi = zeta * wi;
173 
174  T.chi2 += zeta * zetawi;
175 
176 
177 #endif // 0
178  T.NDF += w;
179 
180  K1 = F1 * wi;
181  K2 = F2 * wi;
182  K3 = F3 * wi;
183  K4 = F4 * wi;
184  K5 = F5 * wi;
185 
186  T.x -= F0 * zetawi;
187  T.y -= F1 * zetawi;
188  T.tx -= F2 * zetawi;
189  T.ty -= F3 * zetawi;
190  // T.qp -= F4*zetawi;
191  T.t -= F5 * zetawi;
192 
193  T.C00 -= F0 * F0 * wi;
194  T.C10 -= K1 * F0;
195  T.C11 -= K1 * F1;
196 
197  T.C20 -= K2 * F0;
198  T.C21 -= K2 * F1;
199  T.C22 -= K2 * F2;
200  T.C30 -= K3 * F0;
201  T.C31 -= K3 * F1;
202  T.C32 -= K3 * F2;
203  T.C33 -= K3 * F3;
204  // T.C40-= K4*F0;
205  // T.C41-= K4*F1;
206  // T.C42-= K4*F2;
207  // T.C43-= K4*F3;
208  // T.C44-= K4*F4;
209  T.C50 -= K5 * F0;
210  T.C51 -= K5 * F1;
211  T.C52 -= K5 * F2;
212  T.C53 -= K5 * F3;
213  T.C54 -= K5 * F4;
214  T.C55 -= K5 * F5;
215 }
216 
217 inline void L1FilterChi2(const L1UMeasurementInfo& info,
218  const fvec& x,
219  const fvec& y,
220  const fvec& C00,
221  const fvec& C10,
222  const fvec& C11,
223  fvec& chi2,
224  const fvec& u) {
225  fvec zeta, HCH;
226  fvec F0, F1;
227 
228  zeta = info.cos_phi * x + info.sin_phi * y - u;
229 
230  // F = CH'
231  F0 = info.cos_phi * C00 + info.sin_phi * C10;
232  F1 = info.cos_phi * C10 + info.sin_phi * C11;
233 
234  HCH = (F0 * info.cos_phi + F1 * info.sin_phi);
235 
236  chi2 += zeta * zeta / (info.sigma2 + HCH);
237 }
238 
240  fvec& x,
241  fvec& y,
242  fvec& C00,
243  fvec& C10,
244  fvec& C11,
245  fvec& chi2,
246  const fvec& u) {
247  fvec wi, zeta, zetawi, HCH;
248  fvec F0, F1;
249  fvec K1;
250 
251  zeta = info.cos_phi * x + info.sin_phi * y - u;
252 
253  // F = CH'
254  F0 = info.cos_phi * C00 + info.sin_phi * C10;
255  F1 = info.cos_phi * C10 + info.sin_phi * C11;
256 
257  HCH = (F0 * info.cos_phi + F1 * info.sin_phi);
258 
259  wi = 1. / (info.sigma2 + HCH);
260  zetawi = zeta * wi;
261  chi2 += zeta * zetawi;
262 
263  K1 = F1 * wi;
264 
265  x -= F0 * zetawi;
266  y -= F1 * zetawi;
267 
268  C00 -= F0 * F0 * wi;
269  C10 -= K1 * F0;
270  C11 -= K1 * F1;
271 }
272 
273 inline void L1FilterVtx(L1TrackPar& T,
274  fvec x,
275  fvec y,
276  L1XYMeasurementInfo& info,
277  fvec extrDx,
278  fvec extrDy,
279  fvec J[]) {
280  cnst TWO = 2.;
281 
282  fvec zeta0, zeta1, S00, S10, S11, si;
283  fvec F00, F10, F20, F30, F40, F01, F11, F21, F31, F41;
284  fvec K00, K10, K20, K30, K40, K01, K11, K21, K31, K41;
285 
286  //zeta0 = T.x + J[0]*T.tx + J[1]*T.ty + J[2]*T.qp - x;
287  //zeta1 = T.y + J[3]*T.tx + J[4]*T.ty + J[5]*T.qp - y;
288 
289  zeta0 = T.x + extrDx - x;
290  zeta1 = T.y + extrDy - y;
291 
292  // H = 1 0 J[0] J[1] J[2]
293  // 0 1 J[3] J[4] J[5]
294 
295  // F = CH'
296  F00 = T.C00;
297  F01 = T.C10;
298  F10 = T.C10;
299  F11 = T.C11;
300  F20 = J[0] * T.C22;
301  F21 = J[3] * T.C22;
302  F30 = J[1] * T.C33;
303  F31 = J[4] * T.C33;
304  F40 = J[2] * T.C44;
305  F41 = J[5] * T.C44;
306 
307  S00 = info.C00 + F00 + J[0] * F20 + J[1] * F30 + J[2] * F40;
308  S10 = info.C10 + F10 + J[3] * F20 + J[4] * F30 + J[5] * F40;
309  S11 = info.C11 + F11 + J[3] * F21 + J[4] * F31 + J[5] * F41;
310 
311  si = 1. / (S00 * S11 - S10 * S10);
312  //si = fvec(rcp(fvec((S00*S11 - S10*S10)[0])));
313  fvec S00tmp = S00;
314  S00 = si * S11;
315  S10 = -si * S10;
316  S11 = si * S00tmp;
317 
318  T.chi2 +=
319  zeta0 * zeta0 * S00 + 2. * zeta0 * zeta1 * S10 + zeta1 * zeta1 * S11;
320  T.NDF += TWO;
321 
322  K00 = F00 * S00 + F01 * S10;
323  K01 = F00 * S10 + F01 * S11;
324  K10 = F10 * S00 + F11 * S10;
325  K11 = F10 * S10 + F11 * S11;
326  K20 = F20 * S00 + F21 * S10;
327  K21 = F20 * S10 + F21 * S11;
328  K30 = F30 * S00 + F31 * S10;
329  K31 = F30 * S10 + F31 * S11;
330  K40 = F40 * S00 + F41 * S10;
331  K41 = F40 * S10 + F41 * S11;
332 
333  T.x -= K00 * zeta0 + K01 * zeta1;
334  T.y -= K10 * zeta0 + K11 * zeta1;
335  T.tx -= K20 * zeta0 + K21 * zeta1;
336  T.ty -= K30 * zeta0 + K31 * zeta1;
337  T.qp -= K40 * zeta0 + K41 * zeta1;
338 
339  T.C00 -= (K00 * F00 + K01 * F01);
340  T.C10 -= (K10 * F00 + K11 * F01);
341  T.C11 -= (K10 * F10 + K11 * F11);
342  T.C20 = -(K20 * F00 + K21 * F01);
343  T.C21 = -(K20 * F10 + K21 * F11);
344  T.C22 -= (K20 * F20 + K21 * F21);
345  T.C30 = -(K30 * F00 + K31 * F01);
346  T.C31 = -(K30 * F10 + K31 * F11);
347  T.C32 = -(K30 * F20 + K31 * F21);
348  T.C33 -= (K30 * F30 + K31 * F31);
349  T.C40 = -(K40 * F00 + K41 * F01);
350  T.C41 = -(K40 * F10 + K41 * F11);
351  T.C42 = -(K40 * F20 + K41 * F21);
352  T.C43 = -(K40 * F30 + K41 * F31);
353  T.C44 -= (K40 * F40 + K41 * F41);
354 }
355 
356 
357 inline void
359  cnst TWO = 2.;
360 
361  fvec zeta0, zeta1, S00, S10, S11, si;
362  fvec F00, F10, F20, F30, F40, F01, F11, F21, F31, F41;
363  fvec K00, K10, K20, K30, K40, K01, K11, K21, K31, K41;
364 
365  zeta0 = T.x - x;
366  zeta1 = T.y - y;
367 
368  // F = CH'
369  F00 = T.C00;
370  F10 = T.C10;
371  F20 = T.C20;
372  F30 = T.C30;
373  F40 = T.C40;
374  F01 = T.C10;
375  F11 = T.C11;
376  F21 = T.C21;
377  F31 = T.C31;
378  F41 = T.C41;
379 
380  S00 = F00 + info.C00;
381  S10 = F10 + info.C10;
382  S11 = F11 + info.C11;
383 
384  si = 1. / (S00 * S11 - S10 * S10);
385  fvec S00tmp = S00;
386  S00 = si * S11;
387  S10 = -si * S10;
388  S11 = si * S00tmp;
389 
390  T.chi2 +=
391  zeta0 * zeta0 * S00 + 2. * zeta0 * zeta1 * S10 + zeta1 * zeta1 * S11;
392  T.NDF += TWO;
393 
394  K00 = F00 * S00 + F01 * S10;
395  K01 = F00 * S10 + F01 * S11;
396  K10 = F10 * S00 + F11 * S10;
397  K11 = F10 * S10 + F11 * S11;
398  K20 = F20 * S00 + F21 * S10;
399  K21 = F20 * S10 + F21 * S11;
400  K30 = F30 * S00 + F31 * S10;
401  K31 = F30 * S10 + F31 * S11;
402  K40 = F40 * S00 + F41 * S10;
403  K41 = F40 * S10 + F41 * S11;
404 
405  T.x -= K00 * zeta0 + K01 * zeta1;
406  T.y -= K10 * zeta0 + K11 * zeta1;
407  T.tx -= K20 * zeta0 + K21 * zeta1;
408  T.ty -= K30 * zeta0 + K31 * zeta1;
409  T.qp -= K40 * zeta0 + K41 * zeta1;
410 
411  T.C00 -= K00 * F00 + K01 * F01;
412  T.C10 -= K10 * F00 + K11 * F01;
413  T.C11 -= K10 * F10 + K11 * F11;
414  T.C20 -= K20 * F00 + K21 * F01;
415  T.C21 -= K20 * F10 + K21 * F11;
416  T.C22 -= K20 * F20 + K21 * F21;
417  T.C30 -= K30 * F00 + K31 * F01;
418  T.C31 -= K30 * F10 + K31 * F11;
419  T.C32 -= K30 * F20 + K31 * F21;
420  T.C33 -= K30 * F30 + K31 * F31;
421  T.C40 -= K40 * F00 + K41 * F01;
422  T.C41 -= K40 * F10 + K41 * F11;
423  T.C42 -= K40 * F20 + K41 * F21;
424  T.C43 -= K40 * F30 + K41 * F31;
425  T.C44 -= K40 * F40 + K41 * F41;
426 }
427 
428 
429 /*
430 inline void L1Filter1D( L1TrackPar &T, fvec &u, fvec &sigma2, fvec H[] )
431 {
432 
433  cnst ZERO = 0.0, ONE = 1.;
434 
435  fvec wi, zeta, zetawi, HCH;
436  fvec F0, F1, F2, F3, F4;
437  fvec K1, K2, K3, K4;
438 
439  zeta = H[0]*T.x +H[1]*T.y +H[2]*T.tx +H[3]*T.ty +H[4]*T.qp - u;
440 
441  // F = CH'
442  F0 = H[0]*T.C00 + H[1]*T.C10 + H[2]*T.C20+ H[3]*T.C30+ H[4]*T.C40;
443  F1 = H[0]*T.C10 + H[1]*T.C11 + H[2]*T.C21+ H[3]*T.C31+ H[4]*T.C41;
444  F2 = H[0]*T.C20 + H[1]*T.C21 + H[2]*T.C22+ H[3]*T.C32+ H[4]*T.C42;
445  F3 = H[0]*T.C30 + H[1]*T.C31 + H[2]*T.C32+ H[3]*T.C33+ H[4]*T.C43;
446  F4 = H[0]*T.C40 + H[1]*T.C41 + H[2]*T.C42+ H[3]*T.C43+ H[4]*T.C44;
447 
448  HCH = H[0]*F0 +H[1]*F1 +H[2]*F2 +H[3]*F3 +H[4]*F4 ;
449 
450  wi = rcp(fvec(sigma2 +HCH));
451  zetawi = zeta * wi;
452  T.chi2 += zeta * zetawi;
453  T.NDF += ONE;
454 
455  K1 = F1*wi;
456  K2 = F2*wi;
457  K3 = F3*wi;
458  K4 = F4*wi;
459 
460  T.x -= F0*zetawi;
461  T.y -= F1*zetawi;
462  T.tx -= F2*zetawi;
463  T.ty -= F3*zetawi;
464  T.qp -= F4*zetawi;
465 
466  T.C00-= F0*F0*wi;
467  T.C10-= K1*F0;
468  T.C11-= K1*F1;
469  T.C20-= K2*F0;
470  T.C21-= K2*F1;
471  T.C22-= K2*F2;
472  T.C30-= K3*F0;
473  T.C31-= K3*F1;
474  T.C32-= K3*F2;
475  T.C33-= K3*F3;
476  T.C40-= K4*F0;
477  T.C41-= K4*F1;
478  T.C42-= K4*F2;
479  T.C43-= K4*F3;
480  T.C44-= K4*F4;
481 }
482 
483 
484 inline void L1Filter2D( L1TrackPar &T, fvec &x, fvec &y, L1XYMeasurementInfo &info, fvec H[] )
485 {
486  cnst TWO = 2.;
487 
488  fvec zeta0, zeta1, S00, S10, S11, si;
489  fvec F00, F10, F20, F30, F40, F01, F11, F21, F31, F41 ;
490  fvec K00, K10, K20, K30, K40, K01, K11, K21, K31, K41;
491 
492  zeta0 = H[0]*T.x +H[1]*T.y +H[2]*T.tx +H[3]*T.ty +H[4]*T.qp - x;
493  zeta1 = H[5]*T.x +H[6]*T.y +H[7]*T.tx +H[8]*T.ty +H[9]*T.qp - y;
494 
495  // F = CH'
496  F00 = H[0]*T.C00 + H[1]*T.C10 + H[2]*T.C20+ H[3]*T.C30+ H[4]*T.C40;
497  F10 = H[0]*T.C10 + H[1]*T.C11 + H[2]*T.C21+ H[3]*T.C31+ H[4]*T.C41;
498  F20 = H[0]*T.C20 + H[1]*T.C21 + H[2]*T.C22+ H[3]*T.C32+ H[4]*T.C42;
499  F30 = H[0]*T.C30 + H[1]*T.C31 + H[2]*T.C32+ H[3]*T.C33+ H[4]*T.C43;
500  F40 = H[0]*T.C40 + H[1]*T.C41 + H[2]*T.C42+ H[3]*T.C43+ H[4]*T.C44;
501  F01 = H[5]*T.C00 + H[6]*T.C10 + H[7]*T.C20+ H[8]*T.C30+ H[9]*T.C40;
502  F11 = H[5]*T.C10 + H[6]*T.C11 + H[7]*T.C21+ H[8]*T.C31+ H[9]*T.C41;
503  F21 = H[5]*T.C20 + H[6]*T.C21 + H[7]*T.C22+ H[8]*T.C32+ H[9]*T.C42;
504  F31 = H[5]*T.C30 + H[6]*T.C31 + H[7]*T.C32+ H[8]*T.C33+ H[9]*T.C43;
505  F41 = H[5]*T.C40 + H[6]*T.C41 + H[7]*T.C42+ H[8]*T.C43+ H[9]*T.C44;
506 
507  S00 = H[0]*F00 +H[1]*F10 +H[2]*F20 +H[3]*F30 +H[4]*F40 + info.C00;
508  S10 = H[5]*F00 +H[6]*F10 +H[7]*F20 +H[8]*F30 +H[9]*F40 + info.C10;
509  S11 = H[5]*F01 +H[6]*F11 +H[7]*F21 +H[8]*F31 +H[9]*F41 + info.C11;
510 
511  si = rcp(fvec(S00*S11 - S10*S10));
512  fvec S00tmp = S00;
513  S00 = si*S11;
514  S10 = -si*S10;
515  S11 = si*S00tmp;
516 
517  T.chi2+= zeta0*zeta0*S00 + 2.*zeta0*zeta1*S10 + zeta1*zeta1*S11;
518  T.NDF += TWO;
519 
520  K00 = F00*S00 + F01*S10; K01 = F00*S10 + F01*S11;
521  K10 = F10*S00 + F11*S10; K11 = F10*S10 + F11*S11;
522  K20 = F20*S00 + F21*S10; K21 = F20*S10 + F21*S11;
523  K30 = F30*S00 + F31*S10; K31 = F30*S10 + F31*S11;
524  K40 = F40*S00 + F41*S10; K41 = F40*S10 + F41*S11;
525 
526  T.x -= K00*zeta0 + K01*zeta1;
527  T.y -= K10*zeta0 + K11*zeta1;
528  T.tx -= K20*zeta0 + K21*zeta1;
529  T.ty -= K30*zeta0 + K31*zeta1;
530  T.qp -= K40*zeta0 + K41*zeta1;
531 
532  T.C00-= K00*F00 + K01*F01;
533  T.C10-= K10*F00 + K11*F01;
534  T.C11-= K10*F10 + K11*F11;
535  T.C20-= K20*F00 + K21*F01;
536  T.C21-= K20*F10 + K21*F11;
537  T.C22-= K20*F20 + K21*F21;
538  T.C30-= K30*F00 + K31*F01;
539  T.C31-= K30*F10 + K31*F11;
540  T.C32-= K30*F20 + K31*F21;
541  T.C33-= K30*F30 + K31*F31;
542  T.C40-= K40*F00 + K41*F01;
543  T.C41-= K40*F10 + K41*F11;
544  T.C42-= K40*F20 + K41*F21;
545  T.C43-= K40*F30 + K41*F31;
546  T.C44-= K40*F40 + K41*F41;
547 }
548 
549 
550 
551 
552 inline void L1FilterFirst( fvec *T, L1Cov &C, fvec &Chi2, fvec &NDF, L1XYMeasurementInfo &info, fvec &x, fvec &y, fvec &w )
553 {
554  cnst ZERO = 0.0, ONE = 1.;
555 
556  fvec w1 = !w;
557  C.C00= w&info.C00 + w1&INF;
558  C.C10= w&info.C10 + w1&INF; C.C11= w&info.C11 + w1&INF;
559  C.C20= ZERO; C.C21= ZERO; C.C22= INF;
560  C.C30= ZERO; C.C31= ZERO; C.C32= ZERO; C.C33= INF;
561  C.C40= ZERO; C.C41= ZERO; C.C42= ZERO; C.C43= ZERO; C.C44= INF;
562 
563  T[0] = w&x + w1&T[0];
564  T[1] = w&y + w1&T[1];
565  NDF = -3.0;
566  Chi2 = ZERO;
567 }
568 */
569 
570 #undef cnst
571 
572 #endif
L1TrackPar::C54
fvec C54
Definition: L1TrackPar.h:10
L1FilterNoField
void L1FilterNoField(L1TrackPar &T, L1UMeasurementInfo &info, fvec u, fvec w=1.)
Definition: L1Filtration.h:147
L1TrackPar::C10
fvec C10
Definition: L1TrackPar.h:9
L1TrackPar::qp
fvec qp
Definition: L1TrackPar.h:9
L1TrackPar::t
fvec t
Definition: L1TrackPar.h:9
L1FilterChi2XYC00C10C11
void L1FilterChi2XYC00C10C11(const L1UMeasurementInfo &info, fvec &x, fvec &y, fvec &C00, fvec &C10, fvec &C11, fvec &chi2, const fvec &u)
Definition: L1Filtration.h:239
L1TrackPar::C20
fvec C20
Definition: L1TrackPar.h:9
F32vec4
Definition: L1/vectors/P4_F32vec4.h:47
L1XYMeasurementInfo::C11
fvec C11
Definition: L1XYMeasurementInfo.h:11
L1XYMeasurementInfo::C10
fvec C10
Definition: L1XYMeasurementInfo.h:11
L1TrackPar::C41
fvec C41
Definition: L1TrackPar.h:10
L1TrackPar::C51
fvec C51
Definition: L1TrackPar.h:10
L1TrackPar::C30
fvec C30
Definition: L1TrackPar.h:9
L1TrackPar::C31
fvec C31
Definition: L1TrackPar.h:9
L1TrackPar::C53
fvec C53
Definition: L1TrackPar.h:10
L1FilterChi2
void L1FilterChi2(const L1UMeasurementInfo &info, const fvec &x, const fvec &y, const fvec &C00, const fvec &C10, const fvec &C11, fvec &chi2, const fvec &u)
Definition: L1Filtration.h:217
FilterTime
void FilterTime(L1TrackPar &T, fvec t0, fvec dt0, fvec w=1.)
Definition: L1Filtration.h:13
L1XYMeasurementInfo.h
L1TrackPar::C42
fvec C42
Definition: L1TrackPar.h:10
L1UMeasurementInfo::sigma2
fvec sigma2
Definition: L1UMeasurementInfo.h:12
L1FilterVtx
void L1FilterVtx(L1TrackPar &T, fvec x, fvec y, L1XYMeasurementInfo &info, fvec extrDx, fvec extrDy, fvec J[])
Definition: L1Filtration.h:273
L1FilterXY
void L1FilterXY(L1TrackPar &T, fvec x, fvec y, L1XYMeasurementInfo &info)
Definition: L1Filtration.h:358
L1UMeasurementInfo::sin_phi
fvec sin_phi
Definition: L1UMeasurementInfo.h:12
L1TrackPar::ty
fvec ty
Definition: L1TrackPar.h:9
L1TrackPar::C32
fvec C32
Definition: L1TrackPar.h:9
L1TrackPar::y
fvec y
Definition: L1TrackPar.h:9
CbmL1Def.h
L1UMeasurementInfo.h
L1TrackPar::C44
fvec C44
Definition: L1TrackPar.h:10
L1TrackPar::chi2
fvec chi2
Definition: L1TrackPar.h:10
L1Filter
void L1Filter(L1TrackPar &T, L1UMeasurementInfo &info, fvec u, fvec w=1.)
Definition: L1Filtration.h:80
L1TrackPar::NDF
fvec NDF
Definition: L1TrackPar.h:10
L1TrackPar::tx
fvec tx
Definition: L1TrackPar.h:9
L1XYMeasurementInfo
Definition: L1XYMeasurementInfo.h:7
L1TrackPar.h
L1TrackPar::C50
fvec C50
Definition: L1TrackPar.h:10
L1TrackPar::C21
fvec C21
Definition: L1TrackPar.h:9
L1TrackPar::x
fvec x
Definition: L1TrackPar.h:9
L1TrackPar::C00
fvec C00
Definition: L1TrackPar.h:9
cnst
#define cnst
Definition: L1Filtration.h:10
L1UMeasurementInfo
Definition: L1UMeasurementInfo.h:7
L1TrackPar::C33
fvec C33
Definition: L1TrackPar.h:9
L1TrackPar::C52
fvec C52
Definition: L1TrackPar.h:10
x
Double_t x
Definition: CbmMvdSensorDigiToHitTask.cxx:68
L1TrackPar
Definition: L1TrackPar.h:6
L1TrackPar::C55
fvec C55
Definition: L1TrackPar.h:10
y
Double_t y
Definition: CbmMvdSensorDigiToHitTask.cxx:68
L1TrackPar::C40
fvec C40
Definition: L1TrackPar.h:10
L1TrackPar::C11
fvec C11
Definition: L1TrackPar.h:9
L1UMeasurementInfo::cos_phi
fvec cos_phi
Definition: L1UMeasurementInfo.h:12
L1TrackPar::C43
fvec C43
Definition: L1TrackPar.h:10
L1XYMeasurementInfo::C00
fvec C00
Definition: L1XYMeasurementInfo.h:11
L1TrackPar::C22
fvec C22
Definition: L1TrackPar.h:9