24#ifndef DUMUX_BOX_ELEMENT_BOUNDARY_TYPES_HH
25#define DUMUX_BOX_ELEMENT_BOUNDARY_TYPES_HH
50 template<
class Problem,
class Element,
class FVElementGeometry>
52 const Element &element,
53 const FVElementGeometry &fvGeometry)
55 using GridGeometry =
typename FVElementGeometry::GridGeometry;
56 using GridView =
typename GridGeometry::GridView;
64 for (
const auto& scv : scvs(fvGeometry))
66 int scvIdxLocal = scv.localDofIndex();
69 if (fvGeometry.gridGeometry().dofOnBoundary(scv.dofIndex()))
This class stores an array of BoundaryTypes objects.
Definition: discretization/box/elementboundarytypes.hh:38
std::vector< BoundaryTypes > vertexBCTypes_
Definition: discretization/box/elementboundarytypes.hh:112
bool hasOutflow() const
Returns whether the element potentially features an outflow boundary segment.
Definition: discretization/box/elementboundarytypes.hh:98
BTypes BoundaryTypes
Definition: discretization/box/elementboundarytypes.hh:40
bool hasDirichlet_
Definition: discretization/box/elementboundarytypes.hh:113
void update(const Problem &problem, const Element &element, const FVElementGeometry &fvGeometry)
Update the boundary types for all vertices of an element.
Definition: discretization/box/elementboundarytypes.hh:51
const BoundaryTypes & operator[](std::size_t i) const
Definition: discretization/box/elementboundarytypes.hh:105
bool hasDirichlet() const
Returns whether the element has a vertex which contains a Dirichlet value.
Definition: discretization/box/elementboundarytypes.hh:84
bool hasNeumann_
Definition: discretization/box/elementboundarytypes.hh:114
bool hasNeumann() const
Returns whether the element potentially features a Neumann boundary segment.
Definition: discretization/box/elementboundarytypes.hh:91
bool hasOutflow_
Definition: discretization/box/elementboundarytypes.hh:115