DAPTA::Mesh< Traits > Class Template Reference

Mesh container More...

#include <Mesh.hpp>

List of all members.

Public Types

typedef Traits::VertexType VertexType
typedef Traits::VertexHandle VertexHandle
typedef Traits::ElementType ElementType
typedef Traits::ElementHandle ElementHandle
typedef Traits::CohElementType CohElementType
typedef Traits::CohElementHandle CohElementHandle
typedef Traits::FaceElementType FaceElementType
typedef Traits::FaceElementHandle FaceElementHandle
typedef Traits::EdgeElementType EdgeElementType
typedef Traits::EdgeElementHandle EdgeElementHandle
typedef Traits::ElementConListType ElementConListType
typedef Traits::ElementConListHandle ElementConListHandle
typedef std::vector< VertexHandleVertexMapType
 Vertices container.
typedef VertexMapType::iterator VertexMapIterator
 Iterator for vertices container.
typedef std::vector< ElementHandleElementMapType
 Elements container.
typedef ElementMapType::iterator ElementMapIterator
 Iterator for elements container.
typedef std::vector< CohElementHandleCohElementMapType
 Cohesive elements container.
typedef CohElementMapType::iterator CohElementMapIterator
 Iterator for cohesive elements container.
typedef std::map< FaceElementType,
ElementHandle
FaceMapType
 Faces container.
typedef FaceMapType::iterator FaceMapIterator
 Iterator for faces container.
typedef std::map< EdgeElementType,
ElementConListHandle
EdgeMapType
 Edges container.
typedef EdgeMapType::iterator EdgeMapIterator
 Iterator for edges container.

Public Member Functions

VertexMapIterator VertexMapBegin ()
VertexMapIterator VertexMapEnd ()
ElementMapIterator ElementMapBegin ()
ElementMapIterator ElementMapEnd ()
CohElementMapIterator CohElementMapBegin ()
CohElementMapIterator CohElementMapEnd ()
FaceMapIterator FaceMapBegin ()
FaceMapIterator FaceMapEnd ()
EdgeMapIterator EdgeMapBegin ()
EdgeMapIterator EdgeMapEnd ()
 Mesh ()
 ~Mesh ()
void FractureFace (ElementHandle e, int i)
 First part of fracture - fracture the i'th face of element e.
void UpdateEdges ()
 Second part of fracture - update the edge rings and duplicate edges as necessary.
bool ReadFile (std::istream &in)
 Read a mesh in from an istream.
std::string ExportFile ()
 Export the mesh to a file.
std::string ExportDomainFile (std::set< VertexHandle > part_vert, std::set< ElementHandle > part_elem)
 Export part of the mesh to a file.
bool ClearMesh ()
 Remove all vertices and elements from the mesh.
bool RemoveElement (ElementHandle e)
 Remove an element from the mesh.
bool RemoveElements (std::vector< int > elems)
 Remove elements from the mesh (used for parallel to get rid of elements not on this domain).
bool RemoveVertex (VertexHandle v)
 Remove a vertex from the mesh.
bool RemoveVertices (std::vector< int > verts)
 Remove vertices from the mesh (used for parallel to get rid of vertices not on this domain).
bool SetActive (std::vector< int > elems)
 Remove all elements except the ones identified in elems.
VertexHandle FindVertexFromIndex (int index)
 Return VertexHandle of the vertex with given index.
ElementHandle FindElementFromIndex (int index)
 Return ElementHandle of the element with given index.
std::vector< VertexHandleGetCentres ()
 Return a list of vertices denoting the centres of all the elements in the mesh. Each vertex will have its global ID set to the global ID of the element.

Public Attributes

std::vector< VertexHandlevertices
 Vertices container.
std::vector< ElementHandleelements
 Elements container.
std::vector< CohElementHandlecohelements
 Cohesive elements container.
std::vector< VertexHandlevertices_inactive
 Inactive vertices container.
std::map< FaceElementType,
ElementHandle
faces
 Faces container, used to work out which element a new element is connected to.
std::map< EdgeElementType,
ElementConListHandle
edges
 Edges container.

Private Member Functions

void ConnectElement (ElementHandle e)
void AddElementToConLists (ElementHandle e)
bool AddVertex (VertexHandle v)
 Add a vertex to the mesh and give new ID.
bool AddElement (ElementHandle e)
 Add an element to the mesh and give new ID.
bool AddCohElement (CohElementHandle e)
 Add a cohesive element to the mesh and give new ID.

Private Attributes

std::vector< ElementHandleelements_inactive
 Inactive elements container.
int maxVertex
 Maximum vertex number.
int maxElement
 Maximum element number.
int maxCohElement
 Maximum cohesive element number.
int newPrefix
 Prefix for new vertices.

Friends

class MeshParalleliser< Traits >


Detailed Description

template<typename Traits = Tetra4MeshTraits>
class DAPTA::Mesh< Traits >

Mesh container

Data structure to hold the vertex and element lists for a mesh. This provides the interface to the mesh geometry and has functions for adding & removing elements and functions for adaptation of the mesh such as fracture.

Definition at line 23 of file Mesh.hpp.


The documentation for this class was generated from the following files:
Generated on Tue May 29 17:13:55 2007 for DAPTA by  doxygen 1.5.1