The APF Mesh interface. More...
Go to the source code of this file.
Classes | |
struct | apf::Up |
statically sized container for upward adjacency queries. More... | |
struct | apf::Copy |
a reference to an object representing the same entity More... | |
class | apf::Mesh |
Interface to a mesh part. More... | |
class | apf::Migration |
Migration plan object: local elements to destinations. More... | |
struct | apf::Sharing |
abstract description of entity copy sharing More... | |
Namespaces | |
namespace | apf |
All APF symbols are contained in this namespace. | |
Typedefs | |
typedef NumberingOf< int > | apf::Numbering |
Numbering is meant to be a 32-bit local numbering. | |
typedef NumberingOf< long > | apf::GlobalNumbering |
Global numberings use 64-bit integers. | |
typedef std::map< int, MeshEntity * > | apf::Copies |
Remote copy container. | |
typedef std::set< int > | apf::Parts |
Set of unique part ids. | |
typedef DynamicArray < MeshEntity * > | apf::Adjacent |
Set of adjacent mesh entities. | |
typedef MeshEntity * | apf::Downward [12] |
a static array type downward adjacency queries. | |
typedef Copy | apf::Match |
matches are just a special case of copies | |
typedef DynamicArray< Copy > | apf::CopyArray |
a set of copies, possibly multiple copies per part | |
typedef CopyArray | apf::Matches |
a set of matched copies | |
Functions | |
void | apf::verify (Mesh *m) |
run consistency checks on an apf::Mesh structure | |
int | apf::getDimension (Mesh *m, MeshEntity *e) |
get the dimension of a mesh entity | |
void | apf::unite (Parts &into, Parts const &from) |
unite two sets of unique part ids | |
void | apf::removeTagFromDimension (Mesh *m, MeshTag *tag, int d) |
removes a tag from all entities of dimension (d) | |
MeshEntity * | apf::findUpward (Mesh *m, int type, MeshEntity **down) |
find an entity from one-level downward adjacencies | |
MeshEntity * | apf::findElement (Mesh *m, int type, MeshEntity **verts) |
finds an entity from a set of vertices | |
MeshEntity * | apf::getEdgeVertOppositeVert (Mesh *m, MeshEntity *edge, MeshEntity *v) |
get the other vertex of an edge | |
void | apf::getBridgeAdjacent (Mesh *m, MeshEntity *origin, int bridgeDimension, int targetDimension, Adjacent &result) |
get 2nd-order adjacent entities | |
int | apf::countEntitiesOfType (Mesh *m, int type) |
count all on-part entities of one topological type | |
bool | apf::isSimplex (int type) |
return true if the topological type is a simplex | |
Vector3 | apf::getLinearCentroid (Mesh *m, MeshEntity *e) |
get the average of the entity's vertex coordinates | |
Sharing * | apf::getSharing (Mesh *m) |
create a default sharing object for this mesh | |
void | apf::getPeers (Mesh *m, int d, Parts &peers) |
scan the part for [vtx|edge|face]-adjacent part ids | |
int | apf::findIn (MeshEntity **a, int n, MeshEntity *e) |
find pointer (e) in array (a) of length (n) | |
void | apf::findTriDown (Mesh *m, MeshEntity **verts, MeshEntity **down) |
given the vertices of a triangle, find its edges | |
void | apf::changeMeshShape (Mesh *m, FieldShape *newShape, bool project=true) |
deprecated wrapper for apf::Mesh::changeShape | |
void | apf::unfreezeFields (Mesh *m) |
unfreeze all associated fields | |
int | apf::countEntitiesOn (Mesh *m, ModelEntity *me, int dim) |
count the number of mesh entities classified on a model entity | |
int | apf::countOwned (Mesh *m, int dim) |
count the number of owned entities of dimension (dim) | |
void | apf::printStats (Mesh *m) |
print global mesh entity counts per dimension | |
void | apf::warnAboutEmptyParts (Mesh *m) |
print to stderr the number of empty parts, if any | |
Copy | apf::getOtherCopy (Mesh *m, MeshEntity *s) |
given a mesh face, return its remote copy | |
int | apf::getFirstType (Mesh *m, int dim) |
get the type of the first entity in this dimension | |
void | apf::getAlignment (Mesh *m, MeshEntity *elem, MeshEntity *boundary, int &which, bool &flip, int &rotate) |
boundary entity alignment to an element | |
Variables | |
int const | apf::tri_edge_verts [3][2] |
map from triangle edge order to triangle vertex order | |
int const | apf::quad_edge_verts [4][2] |
map from quad edge order to quad vertex order | |
int const | apf::tet_edge_verts [6][2] |
map from tet edge order to tet vertex order | |
int const | apf::prism_edge_verts [9][2] |
map from prism edge order to prism vertex order | |
int const | apf::pyramid_edge_verts [8][2] |
map from pyramid edge order to pyramid vertex order | |
int const | apf::tet_tri_verts [4][3] |
map from tet triangle order to tet vertex order | |
int const | apf::hex_quad_verts [6][4] |
map from hex quad order to hex vertex order | |
int const | apf::prism_tri_verts [2][3] |
map from prism triangle order to prism vertex order | |
int const | apf::prism_quad_verts [3][4] |
map from prism quad order to prism vertex order | |
int const | apf::pyramid_tri_verts [4][3] |
map from pyramid triangle order to pyramid vertex order |
The APF Mesh interface.