5 #include <amdis/Boundary.hpp> 6 #include <amdis/BoundaryManager.hpp> 7 #include <amdis/common/Concepts.hpp> 8 #include <amdis/common/ConceptsBase.hpp> 24 using Domain =
typename IS::GlobalCoordinate;
27 using Intersection = IS;
31 : predicate_([](Intersection const& is) ->
bool {
return is.boundary(); })
36 : predicate_([&boundaryManager, id](Intersection const& is) ->
bool {
37 return is.boundary() && boundaryManager.
boundaryId(is) == id;
45 : predicate_([predicate](Intersection const& is) ->
bool {
46 return predicate(is.geometry().center());
53 return predicate_(is);
57 std::shared_ptr<BoundaryManagerBase const> boundaryManager_;
59 std::function<bool(Intersection const&)> predicate_;
bool operator()(Intersection const &is) const
Return true if intersection is on boundary segment.
Definition: BoundarySubset.hpp:51
Class defining a subset of a domain boundary.
Definition: BoundarySubset.hpp:22
constexpr bool Functor
A Functor is a function F with signature Signature.
Definition: Concepts.hpp:134
constexpr bool Predicate
A predicate is a function that returns a boolean.
Definition: Concepts.hpp:142
Contains all classes needed for solving linear and non linear equation systems.
Definition: AdaptBase.hpp:6
BoundaryType boundaryId(Intersection const &intersection) const
Return the stored boundary id for the given intersection.
Definition: BoundaryManager.hpp:23
Definition: BoundaryManager.hpp:14
BoundarySubset(Predicate &&predicate)
Use a predicate of the form bool(GlobalCoordinate) to determine a subset.
Definition: BoundarySubset.hpp:44
BoundarySubset(BoundaryManagerBase &boundaryManager, BoundaryType id)
Use a boundary manager and id to determine a subset.
Definition: BoundarySubset.hpp:35
BoundarySubset()
Default constructor. Uses a predicate that returns true on the complete boundary. ...
Definition: BoundarySubset.hpp:30