From 18a5b96734a777431d60afb71b1fd56bd70d253f Mon Sep 17 00:00:00 2001 From: Simon Praetorius <simon.praetorius@tu-dresden.de> Date: Thu, 19 Jul 2018 15:05:00 +0200 Subject: [PATCH] added dot() for FieldMatrix with 1 row --- src/amdis/common/FieldMatVec.hpp | 3 +++ src/amdis/common/FieldMatVec.inc.hpp | 6 ++++++ 2 files changed, 9 insertions(+) diff --git a/src/amdis/common/FieldMatVec.hpp b/src/amdis/common/FieldMatVec.hpp index 3786be2b..7d0a438f 100644 --- a/src/amdis/common/FieldMatVec.hpp +++ b/src/amdis/common/FieldMatVec.hpp @@ -53,6 +53,9 @@ namespace AMDiS REQUIRES( N!=1 && M!=1 )> auto operator*(FieldVector<T,N> const& v, FieldVector<T,M> const& w); + template <class T, class S, int N> + auto dot(FieldMatrix<T,1,N> const& vec1, FieldMatrix<S,1,N> const& vec2); + // ---------------------------------------------------------------------------- /// Sum of vector entires. diff --git a/src/amdis/common/FieldMatVec.inc.hpp b/src/amdis/common/FieldMatVec.inc.hpp index 83254c16..b60db4cc 100644 --- a/src/amdis/common/FieldMatVec.inc.hpp +++ b/src/amdis/common/FieldMatVec.inc.hpp @@ -85,6 +85,12 @@ auto operator*(FieldVector<T,N> const& v, FieldVector<T,M> const& w) return v.dot(w); } +template <class T, class S, int N> +auto dot(FieldMatrix<T,1,N> const& vec1, FieldMatrix<S,1,N> const& vec2) +{ + return vec1[0].dot(vec2[0]); +} + // ---------------------------------------------------------------------------- namespace Impl -- GitLab