diff --git a/dune/fufem/assemblers/localassemblers/scaledsumfunctionalassembler.hh b/dune/fufem/assemblers/localassemblers/scaledsumfunctionalassembler.hh index bd1e6c011bae193f6ab436171e4bb21d9a946584..6b8e73704013bb5492b9e4ed2a57bee745993d53 100644 --- a/dune/fufem/assemblers/localassemblers/scaledsumfunctionalassembler.hh +++ b/dune/fufem/assemblers/localassemblers/scaledsumfunctionalassembler.hh @@ -44,6 +44,7 @@ public: */ virtual void assemble(const Element& element, LocalVector& localVector, const FE& tFE) const { + localVector = 0.0; for (auto&& scaledAssembler : scaledAssemblers_) { LocalVector v(localVector.size()); scaledAssembler.second->assemble(element, v = 0.0, tFE); diff --git a/dune/fufem/assemblers/localassemblers/scaledsumoperatorassembler.hh b/dune/fufem/assemblers/localassemblers/scaledsumoperatorassembler.hh index b47e2e72d0dc5149cae1df79084e4ec49e12cb54..c40aaf0d4800c0d38de5c7c5b133283f85fb810a 100644 --- a/dune/fufem/assemblers/localassemblers/scaledsumoperatorassembler.hh +++ b/dune/fufem/assemblers/localassemblers/scaledsumoperatorassembler.hh @@ -63,6 +63,7 @@ public: virtual void assemble(const Element& element, LocalMatrix& localMatrix, const TrialLocalFE& tFE, const AnsatzLocalFE& aFE) const { + localMatrix = 0.0; for (auto&& scaledAssembler : scaledAssemblers_) { LocalMatrix m(localMatrix.N(), localMatrix.M()); m = 0.0;