Modernize TrackExtrapolators

Merged Gerhard Raven requested to merge modernize-runge-kutta into master
  • declare Boost headers to be 'system' headers
  • prefer std::abs over fabs
  • prefer Gaudi::Property
  • add final
  • prefer implicit (compiler generated) destructors
  • do not cache msgLevel(MSG::DEBUG)
  • modernize TrackRungeKuttaExtrapolator
    • create dedicated type to select Butcher Tableaux as property
    • group various magic numbers in explicit Butcher Tableaux
    • use boost::variant to keep track of various Tableaux
    • pass the above variant to extrapolate
    • make templated evaluateRKStep, evaluateRKStepJacobian and instantiated it for the various Butcher Tableaux
    • according to cachegrind, this uses 5% less cycles...

Merge request reports