Skip to content

Refactor states, add endvelo and beamline Kalman states

Maxime Schubiger requested to merge end_velo_state_maxime into master

This MR does a significant refactor of VELO states. The short of it is: Two states come out of VeloKalmanFilter, which is now done at the end of the VELO sequence. These states are beamline and endvelo, and they both contain the 5D statevector and a simplified covariance matrix.

  • VeloState is gone.
  • KalmanVeloState and MiniState remain.
  • The default Velo States_t, accessible with Velo::ConstStates and Velo::States, contains now the 5D state + covariance information, stored in SOA(AOS{state}, AOS{covariance}).
  • A linear fit is calculated as an intermediate step to calculate the beamline and endvelo states, in the algorithm VeloKalmanFilter.
  • All algorithms in the sequence use now the endvelo state with notable exceptions being the PV finder and UT select velo tracks, who use the beamline state.
  • VeloKalmanFilter also provides the "not so good, old" least means square fit. It is used solely in algorithm CompassUT, which somehow performs better with that state rather than any Kalman state (which triggered issue #169 (closed)).
  • The states class constructor now accepts an optional offset.

Reference changes introduced in this MR: !410 (87e0e118)

Closes #147 (closed)

Edited by Daniel Campora Perez

Merge request reports