Skip to content
Snippets Groups Projects

Restructuring of Matrix and Vector and linear-algebra backends

Merged Praetorius, Simon requested to merge feature/linear_algebra_restructuring into master
1 file
+ 6
5
Compare changes
  • Side-by-side
  • Inline
@@ -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};
Loading