19#include "libmesh/single_predicates.h"
20#include "libmesh/enum_elem_type.h"
21#include "libmesh/boundary_info.h"
22#include "libmesh/dof_map.h"
23#include "libmesh/distributed_mesh.h"
36 return _bndry_info.has_boundary_id(*it, _bid);
45 return (_bndry_info.n_boundary_ids(*it) > 0);
52 return _dof_map.is_evaluable(**it, _var_num);
59 for (
const auto *
const dof_map : _dof_maps)
62 if (!dof_map->is_evaluable(**it))
71#define INSTANTIATE_NODAL_PREDICATES(IterType) \
72 template LIBMESH_EXPORT bool bid<IterType>::operator()(const IterType &) const; \
73 template LIBMESH_EXPORT bool bnd<IterType>::operator()(const IterType &) const; \
74 template LIBMESH_EXPORT bool evaluable<IterType>::operator()(const IterType &) const; \
75 template LIBMESH_EXPORT bool multi_evaluable<IterType>::operator()(const IterType &) const
77#define INSTANTIATE_ELEM_PREDICATES(IterType) \
78 template LIBMESH_EXPORT bool evaluable<IterType>::operator()(const IterType &) const; \
79 template LIBMESH_EXPORT bool multi_evaluable<IterType>::operator()(const IterType &) const
82#define LIBMESH_COMMA ,
INSTANTIATE_ELEM_PREDICATES(std::vector< Elem * >::iterator)
INSTANTIATE_NODAL_PREDICATES(std::vector< Node * >::iterator)
The libMesh namespace provides an interface to certain functionality in the library.
virtual bool operator()(const T &it) const override
virtual bool operator()(const T &it) const override
virtual bool operator()(const T &it) const override
virtual bool operator()(const T &it) const override