Skip to content
Snippets Groups Projects
Commit 63a9700f authored by Oliver Sander's avatar Oliver Sander Committed by sander@FU-BERLIN.DE
Browse files

more cleanup

[[Imported from SVN: r7062]]
parent d55935d3
No related branches found
No related tags found
No related merge requests found
...@@ -547,17 +547,12 @@ iterate(std::map<std::pair<std::string,std::string>, RigidBodyMotion<3> >& lambd ...@@ -547,17 +547,12 @@ iterate(std::map<std::pair<std::string,std::string>, RigidBodyMotion<3> >& lambd
RodConfigurationType rodX = rods_["rod"].solver_->getSol(); RodConfigurationType rodX = rods_["rod"].solver_->getSol();
// /////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////
// Extract Neumann values and transfer it to the 3d object // Flip orientation of all rod forces, to account for opposing normals.
// /////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////
RigidBodyMotion<3>::TangentVector resultantForceTorque
= rod("rod").assembler_->getResultantForce(complex_.coupling(interfaceName).rodInterfaceBoundary_, rodX);
// Flip orientation
resultantForceTorque *= -1;
std::cout << "resultant force and torque: " << resultantForceTorque << std::endl; for (ForceIterator it = rodForceTorque.begin(); it != rodForceTorque.end(); ++it)
it->second *= -1;
typedef P1NodalBasis<typename ContinuumGridType::LeafGridView,double> P1Basis; typedef P1NodalBasis<typename ContinuumGridType::LeafGridView,double> P1Basis;
...@@ -568,7 +563,7 @@ iterate(std::map<std::pair<std::string,std::string>, RigidBodyMotion<3> >& lambd ...@@ -568,7 +563,7 @@ iterate(std::map<std::pair<std::string,std::string>, RigidBodyMotion<3> >& lambd
VectorType rhs3d; VectorType rhs3d;
// Using that index 0 is always the left boundary for a uniformly refined OneDGrid // Using that index 0 is always the left boundary for a uniformly refined OneDGrid
computeAveragePressure<typename ContinuumGridType::LeafGridView>(resultantForceTorque, computeAveragePressure<typename ContinuumGridType::LeafGridView>(rodForceTorque.begin()->second,
complex_.coupling(interfaceName).continuumInterfaceBoundary_, complex_.coupling(interfaceName).continuumInterfaceBoundary_,
rodX[0].r, rodX[0].r,
neumannValues); neumannValues);
...@@ -624,27 +619,6 @@ iterate(std::map<std::pair<std::string,std::string>, RigidBodyMotion<3> >& lambd ...@@ -624,27 +619,6 @@ iterate(std::map<std::pair<std::string,std::string>, RigidBodyMotion<3> >& lambd
#if 0 #if 0
std::cout << "resultant continuum force and torque: " << std::endl;
for (ForceIterator it = continuumForceTorque.begin(); it != continuumForceTorque.end(); ++it)
std::cout << " [" << it->first.first << ", " << it->first.second << "] -- "
<< it->second << std::endl;
///////////////////////////////////////////////////////////////
// Compute the overall Steklov-Poincare residual
///////////////////////////////////////////////////////////////
// Flip orientation of all rod forces, to account for opposing normals.
for (ForceIterator it = rodForceTorque.begin(); it != rodForceTorque.end(); ++it)
it->second *= -1;
std::map<std::pair<std::string,std::string>, RigidBodyMotion<3>::TangentVector> residualForceTorque = rodForceTorque;
for (ForceIterator it = residualForceTorque.begin(), it2 = continuumForceTorque.begin();
it != residualForceTorque.end();
++it, ++it2) {
assert(it->first == it2->first);
it->second += it2->second;
}
/////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////
// Apply the preconditioner // Apply the preconditioner
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment