diff --git a/detail/coord.hpp b/detail/coord.hpp index c1e22882..302c9585 100644 --- a/detail/coord.hpp +++ b/detail/coord.hpp @@ -110,6 +110,15 @@ namespace util { double operator[] (size_t i) const { return data[i]; } }; + template + double dot (const coord_data &a, const coord_data &b) + { + double sum = 0; + for (size_t i = 0; i < S; ++i) + sum += a.data[i] * b.data[i]; + return sum; + } + template <> struct coord_data<4> { union {