Skip to content
Snippets Groups Projects

Added specialized similarity transform

Merged Laurent Dufour requested to merge ldufour-specialized-similarity into master
2 files
+ 59
0
Compare changes
  • Side-by-side
  • Inline
Files
2
@@ -64,6 +64,7 @@ namespace LHCb::Math {
void similarity_5_1( span<const double, 15> Ci, span<const double, 5> Fi, span<double, 1> Ti );
void similarity_5_5( span<const double, 15> Ci, span<const double, 25> Fi, span<double, 15> Ti );
void similarity_5_5_transport_matrix( span<const double, 15> Ci, span<const double, 25> Fi, span<double, 15> Ti );
void similarity_5_7( span<const double, 15> Ci, span<const double, 35> Fi, span<double, 28> Ti );
void similarity_2_5( span<const double, 3> Ci, span<const double, 10> Fi, span<double, 15> Ti );
@@ -96,6 +97,15 @@ namespace LHCb::Math {
detail::similarity_5_5( detail::to_span( origin ), detail::to_span( F ), detail::to_span( target ) );
}
// 'target' and 'origin' are NOT allowed to be the same object.
// specialized version of standard 5x5 similarity transform
// for track transport matrices. (i.e. for transporting covariances)
inline void Similarity_transport_matrix( const Gaudi::Matrix5x5& F, const Gaudi::SymMatrix5x5& origin,
Gaudi::SymMatrix5x5& target ) {
detail::similarity_5_5_transport_matrix( detail::to_span( origin ), detail::to_span( F ),
detail::to_span( target ) );
}
inline Gaudi::SymMatrix5x5 Similarity( const Gaudi::Matrix5x5& F, //
const Gaudi::SymMatrix5x5& origin ) {
Gaudi::SymMatrix5x5 target;
Loading