diff --git a/src/amdis/BoundaryCondition.hpp b/src/amdis/BoundaryCondition.hpp index aa6c134099c2cabcacc74c3c8aef706d7734b718..1b10038ff0f401860ecfcb0529d8ba88f034ee48 100644 --- a/src/amdis/BoundaryCondition.hpp +++ b/src/amdis/BoundaryCondition.hpp @@ -11,16 +11,11 @@ namespace AMDiS { public: BoundaryCondition() = default; - BoundaryCondition(std::shared_ptr<BoundaryManagerBase const> const& boundaryManager, BoundaryType id) : boundaryManager_(boundaryManager) , id_(id) {} - BoundaryCondition(BoundaryManagerBase const& boundaryManager, BoundaryType id) - : BoundaryCondition(Dune::stackobject_to_shared_ptr(boundaryManager), id) - {} - /// Return true if intersection is on boundary with id template <class Intersection> bool onBoundary(Intersection const& is) const @@ -28,6 +23,12 @@ namespace AMDiS return is.boundary() && (!boundaryManager_ || boundaryManager_->boundaryId(is) == id_); } + template <class RowBasis, class ColBasis> + void init(RowBasis const& rowBasis, ColBasis const& colBasis) { /* do nothing */ } + + template <class Matrix, class X, class B, class RN, class RTP, class CN, class CTP> + void fillBoundaryCondition(Matrix& A, X& x, B& b, RN const& rowNode, RTP rowTreePath, CN const& colNode, CTP colTreePath) { /* do nothing */ } + protected: std::shared_ptr<BoundaryManagerBase const> boundaryManager_{nullptr}; BoundaryType id_{0};