From 9aa6f282d44f73737815de9d9d787031df52c5b3 Mon Sep 17 00:00:00 2001 From: Oliver Sander <sander@igpm.rwth-aachen.de> Date: Wed, 26 Jan 2011 16:50:13 +0000 Subject: [PATCH] bugfix: forgot to turn the residual (== weak boundary stresses) into strong boundary stresses [[Imported from SVN: r6892]] --- .../gfe/coupling/rodcontinuumsteklovpoincarestep.hh | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/dune/gfe/coupling/rodcontinuumsteklovpoincarestep.hh b/dune/gfe/coupling/rodcontinuumsteklovpoincarestep.hh index c64dc02f..4a973c4d 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); -- GitLab