libmesh解析
本工作只是尝试解析原libmesh的代码,供学习使用
 全部  命名空间 文件 函数 变量 类型定义 枚举 枚举值 友元 
| 类型定义 | 函数
libMesh::Predicates 命名空间参考

This namespace defines several multi_predicates which are used by the element and node iterators. 更多...

struct  multi_predicate
 
struct  abstract_multi_predicate
 
struct  movable_il
 Helper object for creating a std::vector from a std::initializer_list https://stackoverflow.com/questions/46737054/vectorunique-ptra-using-initialization-list. 更多...
 
struct  IsNull
 Used to iterate over nullptr entries in a container. 更多...
 
struct  NotNull
 Used to iterate over non-nullptr entries in a container. 更多...
 
struct  Active
 Used to iterate over non-nullptr, active entries in a container. 更多...
 
struct  NotActive
 Used to iterate over non-nullptr, inactive entries in a container. 更多...
 
struct  Ancestor
 Used to iterate over non-nullptr, entries that have children (i.e. 更多...
 
struct  NotAncestor
 Used to iterate over non-nullptr, entries that have no children (i.e. 更多...
 
struct  SubActive
 Used to iterate over non-nullptr, subactive entries (i.e. 更多...
 
struct  NotSubActive
 Used to iterate over non-nullptr, non-subactive entries (i.e. 更多...
 
struct  Local
 Used to iterate over non-nullptr, local entries (i.e. 更多...
 
struct  ActiveSemiLocal
 Used to iterate over non-nullptr, semi-local entries (i.e. 更多...
 
struct  FaceLocal
 Used to iterate over non-nullptr, face-local entries (i.e. 更多...
 
struct  NotLocal
 Used to iterate over non-nullptr, non-local entries in a container. 更多...
 
struct  ActiveNotLocal
 Used to iterate over non-nullptr, active, non-local entries in a container. 更多...
 
struct  Type
 Used to iterate over non-nullptr, elements of a given geometric type. 更多...
 
struct  ActiveType
 Used to iterate over non-nullptr, active elements of a given geometric type. 更多...
 
struct  Flagged
 Used to iterate over non-nullptr, elements with a given refinement flag. 更多...
 
struct  FlaggedPID
 Used to iterate over non-nullptr, elements with a given refinement flag belonging to a given processor. 更多...
 
struct  ActivePID
 Used to iterate over non-nullptr, active elements owned by a given processor. 更多...
 
struct  ActiveLocal
 Used to iterate over non-nullptr, active, local elements owned by a given processor. 更多...
 
struct  PID
 Used to iterate over non-nullptr elements owned by a given processor. 更多...
 
struct  BID
 Used to iterate over non-nullptr elements on the boundary with a given ID. 更多...
 
struct  BND
 Used to iterate over non-nullptr elements on the boundary. 更多...
 
struct  NotPID
 Used to iterate over non-nullptr elements not owned by a given processor. 更多...
 
struct  Level
 Used to iterate over non-nullptr elements of a specified (refinement) level. 更多...
 
struct  NotLevel
 Used to iterate over non-nullptr elements not of a specified (refinement) level. 更多...
 
struct  LocalLevel
 Used to iterate over non-nullptr local elements with a specified (refinement) level. 更多...
 
struct  LocalNotLevel
 Used to iterate over non-nullptr local elements not of a specified (refinement) level. 更多...
 
struct  ActiveOnBoundary
 Used to iterate over non-nullptr, active elements which are on the boundary. 更多...
 
struct  BoundarySide
 Used to iterate over the sides of an element which are on the boundary of the Mesh. 更多...
 
struct  ActiveLocalSubdomain
 Used to iterate over non-nullptr, active elements with a given PID on a given subdomain. 更多...
 
struct  ActiveSubdomain
 Used to iterate over non-nullptr, active elements on a given subdomain. 更多...
 
struct  ActiveSubdomainSet
 Used to iterate over non-nullptr, active elements whose subdomains are in a user-specified set. 更多...
 
struct  ActiveLocalSubdomainSet
 Used to iterate over non-nullptr, active elements with a given PID whose subdomains are in a user-specified set. 更多...
 
struct  Ghost
 Used to iterate over non-nullptr elements not owned by a given processor but semi-local to that processor, i.e. 更多...
 
struct  Evaluable
 Used to iterate over elements where solutions indexed by a given DofMap are evaluable for a given variable var_num. 更多...
 
struct  MultiEvaluable
 Used to iterate over elements where solutions indexed by a given vector of DofMaps are evaluable for all variables. 更多...
 
struct  predicate
 
struct  is_null
 
struct  not_null
 
struct  active
 
struct  not_active
 
struct  ancestor
 
struct  not_ancestor
 
struct  subactive
 
struct  not_subactive
 
struct  pid
 
struct  bid
 
struct  bnd
 
struct  semilocal_pid
 
struct  facelocal_pid
 
struct  not_pid
 
struct  elem_type
 
struct  flagged
 
struct  level
 
struct  not_level
 
struct  null_neighbor
 
struct  boundary_side
 
struct  subdomain
 
struct  subdomain_set
 
struct  evaluable
 
struct  multi_evaluable
 

类型定义

template<typename T >
using pred_ptr = std::unique_ptr< predicate< T >>
 

函数

 INSTANTIATE_ELEM_PREDICATES (std::vector< Elem * >::iterator)
 
 INSTANTIATE_ELEM_PREDICATES (std::vector< Elem * >::const_iterator)
 
 INSTANTIATE_NODAL_PREDICATES (std::vector< Node * >::iterator)
 
 INSTANTIATE_NODAL_PREDICATES (std::vector< Node * >::const_iterator)
 
 INSTANTIATE_ELEM_PREDICATES (DistributedMesh::dofobject_container< Elem >::veclike_iterator)
 
 INSTANTIATE_ELEM_PREDICATES (DistributedMesh::dofobject_container< Elem >::const_veclike_iterator)
 
 INSTANTIATE_NODAL_PREDICATES (DistributedMesh::dofobject_container< Node >::veclike_iterator)
 
 INSTANTIATE_NODAL_PREDICATES (DistributedMesh::dofobject_container< Node >::const_veclike_iterator)
 
template<class T >
std::vector< T > make_vec (std::initializer_list< movable_il< T > > il)
 Helper function that creates a std::vector from an initializer_list of movable_il objects. 更多...
 

详细描述

This namespace defines several multi_predicates which are used by the element and node iterators.

This file declares several predicates in the Predicates namespace.

These classes are not in general used by the user, although they could be.

作者
John W. Peterson
日期
2004

They are called "single predicates" since the purpose of each one is to act as a single functor which returns true or false depending on the result of the operator() function. The single predicates are used together as building blocks to create the "multi predicates" which can be found in the multi_predicates.h header file.

作者
John W. Peterson
日期
2004

类型定义说明

template<typename T >
using libMesh::Predicates::pred_ptr = typedef std::unique_ptr<predicate<T>>

在文件 multi_predicates.h57 行定义.

函数说明

libMesh::Predicates::INSTANTIATE_ELEM_PREDICATES ( std::vector< Elem * >::iterator  )
libMesh::Predicates::INSTANTIATE_ELEM_PREDICATES ( std::vector< Elem * >::const_iterator  )
libMesh::Predicates::INSTANTIATE_ELEM_PREDICATES ( DistributedMesh::dofobject_container< Elem >::veclike_iterator  )
libMesh::Predicates::INSTANTIATE_ELEM_PREDICATES ( DistributedMesh::dofobject_container< Elem >::const_veclike_iterator  )
libMesh::Predicates::INSTANTIATE_NODAL_PREDICATES ( std::vector< Node * >::iterator  )
libMesh::Predicates::INSTANTIATE_NODAL_PREDICATES ( std::vector< Node * >::const_iterator  )
libMesh::Predicates::INSTANTIATE_NODAL_PREDICATES ( DistributedMesh::dofobject_container< Node >::veclike_iterator  )
libMesh::Predicates::INSTANTIATE_NODAL_PREDICATES ( DistributedMesh::dofobject_container< Node >::const_veclike_iterator  )
template<class T >
std::vector<T> libMesh::Predicates::make_vec ( std::initializer_list< movable_il< T > >  il)

Helper function that creates a std::vector from an initializer_list of movable_il objects.

在文件 multi_predicates.h151 行定义.

152 {
153  std::vector<T> r( std::make_move_iterator(il.begin()), std::make_move_iterator(il.end()) );
154  return r;
155 }