diff --git a/dune/tectonic/mydirectionalconvexfunction.hh b/dune/tectonic/mydirectionalconvexfunction.hh
index ec870c3ac0e0e2e6e117a23296197f19cc71288e..cd05e083de92672480895ea53d9278190da38d7f 100644
--- a/dune/tectonic/mydirectionalconvexfunction.hh
+++ b/dune/tectonic/mydirectionalconvexfunction.hh
@@ -23,9 +23,7 @@ double computeDirectionalA(MatrixType const &A, VectorType const &v) {
 template <class MatrixType, class VectorType>
 double computeDirectionalb(MatrixType const &A, VectorType const &b,
                            VectorType const &u, VectorType const &v) {
-  VectorType tmp = b;
-  Arithmetic::addProduct(tmp, -1.0, A, u);
-  return tmp * v;
+  return Arithmetic::bmAxy(A, b, u, v);
 }
 
 template <class NonlinearityType> class MyDirectionalConvexFunction {