Sundance::IncrementallyCreatableMesh Class Reference

IncrementallyCreatableMesh is an interface for the creation of meshes by adding vertices, then elements. More...

Inheritance diagram for Sundance::IncrementallyCreatableMesh:

Sundance::MeshBase Sundance::ObjectWithClassVerbosity< MeshBase > Sundance::ObjectWithInstanceID< MeshBase > Playa::ObjectWithVerbosity Sundance::BasicSimplicialMesh

List of all members.

Public Member Functions

 IncrementallyCreatableMesh (int dim, const MPIComm &comm, const MeshEntityOrder &meshOrder)
 Construct an empty mesh of the given dimension, distributed over processors in the MPI communicator.
virtual ~IncrementallyCreatableMesh ()
 virtual dtor
virtual void estimateNumVertices (int nPts)
 Optional preallocation of space for an estimated number of vertices.
virtual void estimateNumElements (int nElems)
 Optional preallocation of space for an estimated number of elements.
virtual int addVertex (int globalIndex, const Point &x, int ownerProcID, int label)=0
 Add new new vertex to the mesh.
virtual int addElement (int globalIndex, const Array< int > &vertexGIDs, int ownerProcID, int label)=0
 Add a new element to the mesh.


Detailed Description

IncrementallyCreatableMesh is an interface for the creation of meshes by adding vertices, then elements.

Definition at line 46 of file SundanceIncrementallyCreatableMesh.hpp.


Constructor & Destructor Documentation

Sundance::IncrementallyCreatableMesh::IncrementallyCreatableMesh ( int  dim,
const MPIComm comm,
const MeshEntityOrder meshOrder 
) [inline]

Construct an empty mesh of the given dimension, distributed over processors in the MPI communicator.

Definition at line 51 of file SundanceIncrementallyCreatableMesh.hpp.

virtual Sundance::IncrementallyCreatableMesh::~IncrementallyCreatableMesh (  )  [inline, virtual]

virtual dtor

Definition at line 56 of file SundanceIncrementallyCreatableMesh.hpp.


Member Function Documentation

virtual int Sundance::IncrementallyCreatableMesh::addElement ( int  globalIndex,
const Array< int > &  vertexGIDs,
int  ownerProcID,
int  label 
) [pure virtual]

Add a new element to the mesh.

Parameters:
globalIndex the GID of the new element
vertexGIDs tuple of GIDs for the vertices defining this element.
ownerProcID the processor that "owns" this element
label a label for this element (optionally used in setting loads, material properties, etc)
Returns:
the LID of the element

Implemented in Sundance::BasicSimplicialMesh.

Referenced by Sundance::Mesh::addElement().

virtual int Sundance::IncrementallyCreatableMesh::addVertex ( int  globalIndex,
const Point x,
int  ownerProcID,
int  label 
) [pure virtual]

Add new new vertex to the mesh.

Parameters:
globalIndex the GID of the new vertex
x the spatial position of the new vertex
ownerProcID the processor that "owns" this vertex
label a label for this vertex (optionally used in setting loads, boundary conditions, etc)
Returns:
the LID of the vertex.

Implemented in Sundance::BasicSimplicialMesh.

Referenced by Sundance::Mesh::addVertex().

virtual void Sundance::IncrementallyCreatableMesh::estimateNumElements ( int  nElems  )  [inline, virtual]

Optional preallocation of space for an estimated number of elements.

Reimplemented in Sundance::BasicSimplicialMesh.

Definition at line 62 of file SundanceIncrementallyCreatableMesh.hpp.

Referenced by Sundance::Mesh::estimateNumElements().

virtual void Sundance::IncrementallyCreatableMesh::estimateNumVertices ( int  nPts  )  [inline, virtual]

Optional preallocation of space for an estimated number of vertices.

Reimplemented in Sundance::BasicSimplicialMesh.

Definition at line 59 of file SundanceIncrementallyCreatableMesh.hpp.

Referenced by Sundance::Mesh::estimateNumVertices().

Site Contact