diff --git a/dune/gfe/rodassembler.cc b/dune/gfe/rodassembler.cc index 89a94c64ae92e395dc16c0d1fce62009217c68a7..9af57e408f5765be58eb47bf06476157c9a479ae 100644 --- a/dune/gfe/rodassembler.cc +++ b/dune/gfe/rodassembler.cc @@ -142,7 +142,7 @@ getStress(const std::vector<RigidBodyMotion<3> >& sol, template <class GridView> template <class PatchGridView> Dune::FieldVector<double,6> RodAssembler<GridView,3>:: -getResultantForce(const BoundaryPatchBase<PatchGridView>& boundary, +getResultantForce(const BoundaryPatch<PatchGridView>& boundary, const std::vector<RigidBodyMotion<3> >& sol) const { using namespace Dune; @@ -159,8 +159,8 @@ getResultantForce(const BoundaryPatchBase<PatchGridView>& boundary, FieldVector<double,3> canonicalTorque(0); // Loop over the given boundary - typename BoundaryPatchBase<PatchGridView>::iterator it = boundary.begin(); - typename BoundaryPatchBase<PatchGridView>::iterator endIt = boundary.end(); + typename BoundaryPatch<PatchGridView>::iterator it = boundary.begin(); + typename BoundaryPatch<PatchGridView>::iterator endIt = boundary.end(); for (; it!=endIt; ++it) { diff --git a/dune/gfe/rodassembler.hh b/dune/gfe/rodassembler.hh index 640736a8406662de0ba514a6d69545cb28434fa9..cd49bd4276745fda70a3a08261405f9951d96f4d 100644 --- a/dune/gfe/rodassembler.hh +++ b/dune/gfe/rodassembler.hh @@ -66,6 +66,10 @@ public: dynamic_cast<RodLocalStiffness<GridView, double>* >(this->localStiffness_)->setReferenceConfiguration(referenceConfiguration); } + std::vector<RigidBodyMotion<3> > getRefConfig() + { return dynamic_cast<RodLocalStiffness<GridView, double>* >(this->localStiffness_)->referenceConfiguration_; + } + void assembleGradient(const std::vector<RigidBodyMotion<3> >& sol, Dune::BlockVector<Dune::FieldVector<double, blocksize> >& grad) const; @@ -79,7 +83,7 @@ public: \note Linear run-time in the size of the grid */ template <class PatchGridView> - Dune::FieldVector<double,6> getResultantForce(const BoundaryPatchBase<PatchGridView>& boundary, + Dune::FieldVector<double,6> getResultantForce(const BoundaryPatch<PatchGridView>& boundary, const std::vector<RigidBodyMotion<3> >& sol) const; }; // end class