18 #ifndef LIBMESH_SINGLE_PREDICATES_H 19 #define LIBMESH_SINGLE_PREDICATES_H 28 #ifdef LIBMESH_FORWARD_DECLARE_ENUMS 62 template <
typename T>
struct abstract_multi_predicate;
72 virtual bool operator()(
const T & it)
const = 0;
87 virtual bool operator()(
const T & it)
const override {
return *it ==
nullptr; }
109 template <
typename T>
113 virtual bool operator()(
const T & it)
const override {
return (*it)->active(); }
122 template <
typename T>
135 template <
typename T>
139 virtual bool operator()(
const T & it)
const override {
return (*it)->ancestor(); }
148 template <
typename T>
161 template <
typename T>
165 virtual bool operator()(
const T & it)
const override {
return (*it)->subactive(); }
174 template <
typename T>
188 template <
typename T>
195 virtual bool operator()(
const T & it)
const override {
return (*it)->processor_id() ==
_pid; }
207 template <
typename T>
218 virtual bool operator()(
const T & it)
const override;
231 template <
typename T>
240 virtual bool operator()(
const T & it)
const override;
253 template <
typename T>
260 virtual bool operator()(
const T & it)
const override {
return (*it)->is_semilocal(
_pid); }
273 template <
typename T>
282 if ((*it)->processor_id() ==
_pid)
284 for (
auto n : (*it)->neighbor_ptr_range())
285 if (n && n->processor_id() ==
_pid)
300 template <
typename T>
317 template <
typename T>
332 #ifdef LIBMESH_ENABLE_AMR 338 template <
typename T>
344 virtual bool operator()(
const T & it)
const override {
return (*it)->refinement_flag() ==
_rflag; }
350 #endif // LIBMESH_ENABLE_AMR 360 template <
typename T>
379 template <
typename T>
396 template <
typename T>
402 return (*it)->on_boundary();
418 template <
typename T>
424 return it.side_on_boundary();
435 template <
typename T>
454 template <
typename T>
474 template <
typename T>
478 unsigned int var_num) :
483 virtual bool operator()(
const T & it)
const override;
497 #endif // LIBMESH_SINGLE_PREDICATES_H virtual predicate< T > * clone() const override
virtual bool operator()(const T &it) const override
const unsigned int _level
const processor_id_type _pid
flagged(unsigned char rflag)
virtual predicate< T > * clone() const override
virtual predicate< T > * clone() const override
virtual predicate< T > * clone() 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
facelocal_pid(processor_id_type p)
virtual bool operator()(const T &it) const override
virtual predicate< T > * clone() 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
uint8_t processor_id_type
virtual predicate< T > * clone() const override
virtual predicate< T > * clone() const override
virtual bool operator()(const T &it) const override
virtual predicate< T > * clone() const override
virtual bool operator()(const T &it) const override
bnd(const BoundaryInfo &bndry_info)
virtual bool operator()(const T &it) const override
virtual bool operator()(const T &it) const override
virtual predicate< T > * clone() const override
virtual bool operator()(const T &it) const override
virtual bool operator()(const T &it) const override
virtual predicate< T > * clone() const override
virtual predicate * clone() const =0
virtual predicate< T > * clone() const override
const BoundaryInfo & _bndry_info
virtual predicate< T > * clone() const override
virtual predicate< T > * clone() const override
Manages the degrees of freedom (DOFs) in a simulation.
const boundary_id_type _bid
const unsigned char _rflag
evaluable(const DofMap &dof_map, unsigned int var_num)
virtual bool operator()(const T &it) const override
virtual bool operator()(const T &it) const override
const processor_id_type _pid
virtual predicate< T > * clone() const override
virtual bool operator()(const T &it) const =0
not_level(unsigned int l)
bid(boundary_id_type b_id, const BoundaryInfo &bndry_info)
not_pid(processor_id_type p)
Used by the Mesh to keep track of boundary nodes and elements.
virtual bool operator()(const T &it) const override
virtual bool operator()(const T &it) const override
semilocal_pid(processor_id_type p)
subdomain(subdomain_id_type sid)
virtual predicate< T > * clone() const override
virtual predicate< T > * clone() const override
virtual predicate< T > * clone() const override
virtual predicate< T > * clone() const override
virtual predicate< T > * clone() const override
virtual predicate< T > * clone() const override
virtual bool operator()(const T &it) const override
virtual predicate< T > * clone() const override
subdomain_set(std::set< subdomain_id_type > sset)
const BoundaryInfo & _bndry_info
virtual bool operator()(const T &it) const override
virtual predicate< T > * clone() const override
const subdomain_id_type _subdomain
virtual bool operator()(const T &it) const override
virtual predicate< T > * clone() const override
virtual bool operator()(const T &it) const override
const processor_id_type _pid
const ElemType _elem_type
const std::set< subdomain_id_type > _subdomain_set
virtual bool operator()(const T &it) const override