diff --git a/dumux/discretization/staggered/freeflow/boundarytypes.hh b/dumux/discretization/staggered/freeflow/boundarytypes.hh index e521a3b0a47e9aaf82f4bbde69b83af74584c6b2..3ad4f51e7b40bb6c7104e6ae64d51092b601780d 100644 --- a/dumux/discretization/staggered/freeflow/boundarytypes.hh +++ b/dumux/discretization/staggered/freeflow/boundarytypes.hh @@ -24,8 +24,8 @@ #ifndef STAGGERED_FREEFLOW_BOUNDARY_TYPES_HH #define STAGGERED_FREEFLOW_BOUNDARY_TYPES_HH -#include <dumux/common/properties.hh> #include <dumux/common/boundarytypes.hh> +#include <dumux/common/typetraits/typetraits.hh> namespace Dumux { @@ -102,6 +102,23 @@ public: bool isSymmetry() const { return boundaryInfo_[0].isSymmetry; } + /*! + * \brief Prevent setting all boundary conditions to Dirichlet. + */ + template<class T = void> + void setAllDirichlet() + { + static_assert(AlwaysFalse<T>::value, "Setting all boundary types to Dirichlet not permitted!"); + } + + /*! + * \brief Prevent setting all boundary conditions to Neumann. + */ + template<class T = void> + void setAllNeumann() + { + static_assert(AlwaysFalse<T>::value, "Setting all boundary types to Neumann not permitted!"); + } protected: struct StaggeredFreeFlowBoundaryInfo {