diff --git a/dune/gfe/coupling/rodcontinuumcomplex.hh b/dune/gfe/coupling/rodcontinuumcomplex.hh index 2e9aab63237027e574469da55a5c8492ddc8a3b4..cd974ce0784654439a90a7d36376fee2fd55d979 100644 --- a/dune/gfe/coupling/rodcontinuumcomplex.hh +++ b/dune/gfe/coupling/rodcontinuumcomplex.hh @@ -6,19 +6,47 @@ #include <dune/common/shared_ptr.hh> +#include <dune/istl/bvector.hh> + +#include <dune/gfe/rigidbodymotion.hh> + /** \brief A set of rods and a set of continua, all coupled to each other */ template <class RodGrid, class ContinuumGrid> class RodContinuumComplex { + typedef std::vector<RigidBodyMotion<3> > RodConfiguration; + + typedef Dune::BlockVector<Dune::FieldVector<double,3> > ContinuumConfiguration; + public: + ///////////////////////////////////////////////////////////////////// + // Data concerning the individual rod problems + ///////////////////////////////////////////////////////////////////// + /** \brief The set of rods, accessible by name (string) */ std::map<std::string, Dune::shared_ptr<RodGrid> > rodGrids_; - /** \brief The set of rods, accessible by name (string) */ + /** \brief A Dirichlet boundary for each rod */ + std::map<std::string, LeafBoundaryPatch<RodGrid> > rodDirichletBoundaries_; + + /** \brief The Dirichlet values for each rod */ + std::map<std::string, RodConfiguration> rodDirichletValues_; + + ///////////////////////////////////////////////////////////////////// + // Data concerning the individual continuum problems + ///////////////////////////////////////////////////////////////////// + + /** \brief The set of continua, accessible by name (string) */ std::map<std::string, Dune::shared_ptr<ContinuumGrid> > continuumGrids_; + /** \brief A Dirichlet boundary for each continuum */ + std::map<std::string, LeafBoundaryPatch<ContinuumGrid> > continuumDirichletBoundaries_; + + /** \brief The Dirichlet values for each continuum */ + std::map<std::string, ContinuumConfiguration> continuumDirichletValues_; + }; #endif // ROD_CONTINUUM_COMPLEX_HH \ No newline at end of file