12#ifndef DUMUX_DISCRETIZATION_FACECENTERED_STAGGERED_ELEMENT_BOUNDARY_TYPES_HH 
   13#define DUMUX_DISCRETIZATION_FACECENTERED_STAGGERED_ELEMENT_BOUNDARY_TYPES_HH 
   37    template<
class Problem, 
class FVElementGeometry>
 
   39                const typename FVElementGeometry::Element& element,
 
   40                const FVElementGeometry& fvGeometry)
 
   42        if (!fvGeometry.hasBoundaryScvf())
 
   45        bcTypes_.resize(fvGeometry.numScvf());
 
   50        for (
const auto& scvf : scvfs(fvGeometry))
 
   54                bcTypes_[scvf.localIndex()] = problem.boundaryTypes(element, scvf);
 
 
 
This class stores an array of BoundaryTypes objects.
Definition facecentered/staggered/elementboundarytypes.hh:25
bool hasDirichlet_
Definition facecentered/staggered/elementboundarytypes.hh:87
std::vector< BoundaryTypes > bcTypes_
Definition facecentered/staggered/elementboundarytypes.hh:86
BTypes BoundaryTypes
Definition facecentered/staggered/elementboundarytypes.hh:27
bool hasNeumann() const
Returns whether the element potentially features a Neumann boundary segment.
Definition facecentered/staggered/elementboundarytypes.hh:72
bool hasDirichlet() const
Returns whether the element has a vertex which contains a Dirichlet value.
Definition facecentered/staggered/elementboundarytypes.hh:65
const BoundaryTypes & operator[](std::size_t i) const
Definition facecentered/staggered/elementboundarytypes.hh:79
bool hasNeumann_
Definition facecentered/staggered/elementboundarytypes.hh:88
void update(const Problem &problem, const typename FVElementGeometry::Element &element, const FVElementGeometry &fvGeometry)
Update the boundary types for all vertices of an element.
Definition facecentered/staggered/elementboundarytypes.hh:38