Further refactoring and cleanup of TrkGlobalChi2Fitter
In this merge request, we do some further refactoring and cleaning up of the TrkGlobalChi2Fitter
class. In short, we make the following changes:
- We migrate several instances of
std::vector<double>
and evenstd::vector<std::vector<double>>
toAmg::VectorX
andAmg::MatrixX
, respectively. The point of that is to improve readability, performance, and interoperability with Eigen classes and methods. - Replacement of some naively implemented matrix-matrix methods to use Eigen, which is possible now do the previous point.
- Deduplication of the
calculateDerivative
method, as well as the track making code, to reduce its code volume and improve clarity. - Removal of some mysterious and unused method declarations.
I've done my best to validate this change, and the results seem to be unchanged on a q431 test.