diff --git a/dune/gfe/coupling/rodcontinuumsteklovpoincarestep.hh b/dune/gfe/coupling/rodcontinuumsteklovpoincarestep.hh index c64dc02f311c541a12bc3891e1b9a672477402db..4a973c4d72f7a962ec3f50acd42a7ced5ef44c2c 100644 --- a/dune/gfe/coupling/rodcontinuumsteklovpoincarestep.hh +++ b/dune/gfe/coupling/rodcontinuumsteklovpoincarestep.hh @@ -567,12 +567,19 @@ continuumDirichletToNeumannMap(const std::string& continuumName, if (couplingName.second != continuumName) continue; - + + const LeafBoundaryPatch<ContinuumGridType>& interfaceBoundary = complex_.coupling(couplingName).continuumInterfaceBoundary_; + + VectorType neumannForces(residual.size()); + neumannForces = 0; + + weakToStrongBoundaryStress(interfaceBoundary, residual, neumannForces); + /** \todo Is referenceInterface.r the correct center of rotation? */ const RigidBodyMotion<dim>& referenceInterface = complex_.coupling(couplingName).referenceInterface_; - computeTotalForceAndTorque(complex_.coupling(couplingName).continuumInterfaceBoundary_, - residual, + computeTotalForceAndTorque(interfaceBoundary, + neumannForces, referenceInterface.r, continuumForce, continuumTorque);