#include <AbstractCachedMeshReader.hpp>
Public Member Functions | |
AbstractCachedMeshReader () | |
virtual | ~AbstractCachedMeshReader () |
unsigned | GetNumElements () const |
unsigned | GetNumNodes () const |
unsigned | GetNumFaces () const |
unsigned | GetNumEdges () const |
unsigned | GetMaxNodeIndex () |
unsigned | GetMinNodeIndex () |
std::vector< double > | GetNextNode () |
void | Reset () |
ElementData | GetNextElementData () |
ElementData | GetNextEdgeData () |
ElementData | GetNextFaceData () |
Protected Member Functions | |
std::vector< std::string > | GetRawDataFromFile (const std::string &rFileName) |
Protected Attributes | |
unsigned | mNumNodeAttributes |
unsigned | mMaxNodeBdyMarker |
unsigned | mNumElementNodes |
unsigned | mNumElementAttributes |
unsigned | mMaxFaceBdyMarker |
std::vector< std::string > | mNodeRawData |
std::vector< std::string > | mElementRawData |
std::vector< std::string > | mFaceRawData |
std::vector< std::vector < double > > | mNodeData |
std::vector< std::vector < unsigned > > | mElementData |
std::vector< std::vector < unsigned > > | mFaceData |
std::vector< std::vector < double > >::iterator | mpNodeIterator |
std::vector< std::vector < unsigned > >::iterator | mpElementIterator |
std::vector< std::vector < unsigned > >::iterator | mpFaceIterator |
bool | mIndexFromZero |
A derived class TrianglesMeshReader exists for reading meshes generated by Triangles (in 2-d) and TetGen (in 3-d).
A derived class MemfemMeshReader reads 3D data from the Tulane University code
A derived class FemlabMeshReader reads 2D data from Femlab or Matlab PDEToolbox
Definition at line 50 of file AbstractCachedMeshReader.hpp.
AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::AbstractCachedMeshReader | ( | ) | [inline] |
Constructor
Definition at line 39 of file AbstractCachedMeshReader.cpp.
virtual AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::~AbstractCachedMeshReader | ( | ) | [inline, virtual] |
Destructor.
Definition at line 87 of file AbstractCachedMeshReader.hpp.
std::vector< std::string > AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::GetRawDataFromFile | ( | const std::string & | rFileName | ) | [inline, protected] |
Reads an input file rFileName, removes comments (indicated by a #) and blank lines and returns a vector of strings. Each string corresponds to one line of the input file.
rFileName | the name of the file to read from, relative to the output directory |
Definition at line 51 of file AbstractCachedMeshReader.cpp.
Referenced by FemlabMeshReader< ELEMENT_DIM, SPACE_DIM >::FemlabMeshReader(), and MemfemMeshReader< ELEMENT_DIM, SPACE_DIM >::MemfemMeshReader().
unsigned AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNumElements | ( | ) | const [inline, virtual] |
Returns the number of elements in the mesh.
Implements AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >.
Definition at line 214 of file AbstractCachedMeshReader.cpp.
References AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mElementData.
unsigned AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNumNodes | ( | ) | const [inline, virtual] |
Returns the number of nodes in the mesh.
Implements AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >.
Definition at line 220 of file AbstractCachedMeshReader.cpp.
References AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mNodeData.
unsigned AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNumFaces | ( | ) | const [inline, virtual] |
Returns the number of faces in the mesh (synonym of GetNumEdges())
Implements AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >.
Definition at line 226 of file AbstractCachedMeshReader.cpp.
References AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mFaceData.
unsigned AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNumEdges | ( | ) | const [inline, virtual] |
Returns the number of edges in the mesh (synonym of GetNumFaces())
Implements AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >.
Definition at line 232 of file AbstractCachedMeshReader.cpp.
References AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mFaceData.
unsigned AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::GetMaxNodeIndex | ( | ) | [inline] |
Returns the maximum node index. Used in testing to check that output nodes are always indexed from zero even if they are input indexed from one.
Definition at line 97 of file AbstractCachedMeshReader.cpp.
References AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mElementData.
unsigned AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::GetMinNodeIndex | ( | ) | [inline] |
Returns the minimum node index. Used in testing to check that output nodes are always indexed from zero even if they are input indexed from one.
Definition at line 121 of file AbstractCachedMeshReader.cpp.
References AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mElementData.
std::vector< double > AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNextNode | ( | ) | [inline, virtual] |
Returns a vector of the coordinates of each node in turn, starting with node 0 the first time it is called followed by nodes 1, 2, ... , mNumNodes-1.
Implements AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >.
Definition at line 145 of file AbstractCachedMeshReader.cpp.
References AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mNodeData, and AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mpNodeIterator.
void AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::Reset | ( | ) | [inline, virtual] |
Resets pointers to beginning
Implements AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >.
Definition at line 181 of file AbstractCachedMeshReader.cpp.
References AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mElementData, AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mFaceData, AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mNodeData, AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mpElementIterator, AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mpFaceIterator, and AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mpNodeIterator.
ElementData AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNextElementData | ( | ) | [inline, virtual] |
Returns a vector of the nodes of each element in turn, starting with element 0 the first time it is called followed by elements 1, 2, ... , mNumElements-1.
Implements AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >.
Definition at line 162 of file AbstractCachedMeshReader.cpp.
References ElementData::AttributeValue, AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mElementData, AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mpElementIterator, and ElementData::NodeIndices.
ElementData AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNextEdgeData | ( | ) | [inline] |
Returns a vector of the nodes of each edge in turn, starting with edge 0 the first time it is called followed by edges 1, 2, ... , mNumFaces-1.
Is a synonym of GetNextFace(). The two functions can be used interchangeably, i.e. they use the same iterator.
Definition at line 208 of file AbstractCachedMeshReader.cpp.
References AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNextFaceData().
ElementData AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNextFaceData | ( | ) | [inline, virtual] |
Returns a vector of the nodes of each face in turn, starting with face 0 the first time it is called followed by faces 1, 2, ... , mNumFaces-1.
Is a synonum of GetNextEdge(). The two functions can be used interchangeably, i.e. they use the same iterator.
Implements AbstractMeshReader< ELEMENT_DIM, SPACE_DIM >.
Definition at line 189 of file AbstractCachedMeshReader.cpp.
References ElementData::AttributeValue, AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mFaceData, AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mpFaceIterator, and ElementData::NodeIndices.
Referenced by AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNextEdgeData().
unsigned AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mNumNodeAttributes [protected] |
Is the number of attributes stored at each node
Definition at line 54 of file AbstractCachedMeshReader.hpp.
unsigned AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mMaxNodeBdyMarker [protected] |
Is the maximum node boundary marker
Definition at line 55 of file AbstractCachedMeshReader.hpp.
unsigned AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mNumElementNodes [protected] |
Is the number of nodes per element
Definition at line 56 of file AbstractCachedMeshReader.hpp.
unsigned AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mNumElementAttributes [protected] |
Is the number of attributes stored for each element
Definition at line 57 of file AbstractCachedMeshReader.hpp.
unsigned AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mMaxFaceBdyMarker [protected] |
Is the maximum face (or edge) boundary marker
Definition at line 58 of file AbstractCachedMeshReader.hpp.
std::vector<std::string> AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mNodeRawData [protected] |
Contents of node input file with comments removed
Definition at line 60 of file AbstractCachedMeshReader.hpp.
Referenced by FemlabMeshReader< ELEMENT_DIM, SPACE_DIM >::FemlabMeshReader(), and MemfemMeshReader< ELEMENT_DIM, SPACE_DIM >::MemfemMeshReader().
std::vector<std::string> AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mElementRawData [protected] |
Contents of element input file with comments removed
Definition at line 61 of file AbstractCachedMeshReader.hpp.
Referenced by FemlabMeshReader< ELEMENT_DIM, SPACE_DIM >::FemlabMeshReader(), and MemfemMeshReader< ELEMENT_DIM, SPACE_DIM >::MemfemMeshReader().
std::vector<std::string> AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mFaceRawData [protected] |
Contents of face (or edge) input file with comments removed
Definition at line 62 of file AbstractCachedMeshReader.hpp.
Referenced by FemlabMeshReader< ELEMENT_DIM, SPACE_DIM >::FemlabMeshReader(), and MemfemMeshReader< ELEMENT_DIM, SPACE_DIM >::MemfemMeshReader().
std::vector< std::vector<double> > AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mNodeData [protected] |
Is an array of node coordinates ((i,j)th entry is the jth coordinate of node i)
Definition at line 64 of file AbstractCachedMeshReader.hpp.
Referenced by FemlabMeshReader< ELEMENT_DIM, SPACE_DIM >::FemlabMeshReader(), AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNextNode(), AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNumNodes(), MemfemMeshReader< ELEMENT_DIM, SPACE_DIM >::MemfemMeshReader(), and AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::Reset().
std::vector< std::vector<unsigned> > AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mElementData [protected] |
Is an array of the nodes in each element ((i,j)th entry is the jth node of element i)
Definition at line 65 of file AbstractCachedMeshReader.hpp.
Referenced by FemlabMeshReader< ELEMENT_DIM, SPACE_DIM >::FemlabMeshReader(), AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::GetMaxNodeIndex(), AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::GetMinNodeIndex(), AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNextElementData(), AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNumElements(), MemfemMeshReader< ELEMENT_DIM, SPACE_DIM >::MemfemMeshReader(), and AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::Reset().
std::vector< std::vector<unsigned> > AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mFaceData [protected] |
Is an array of the nodes in each face ((i,j)th entry is the jth node of face i)
Definition at line 66 of file AbstractCachedMeshReader.hpp.
Referenced by FemlabMeshReader< ELEMENT_DIM, SPACE_DIM >::FemlabMeshReader(), AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNextFaceData(), AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNumEdges(), AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNumFaces(), MemfemMeshReader< ELEMENT_DIM, SPACE_DIM >::MemfemMeshReader(), and AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::Reset().
std::vector< std::vector<double> >::iterator AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mpNodeIterator [protected] |
Is an iterator for the node data
Definition at line 68 of file AbstractCachedMeshReader.hpp.
Referenced by FemlabMeshReader< ELEMENT_DIM, SPACE_DIM >::FemlabMeshReader(), AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNextNode(), MemfemMeshReader< ELEMENT_DIM, SPACE_DIM >::MemfemMeshReader(), and AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::Reset().
std::vector< std::vector<unsigned> >::iterator AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mpElementIterator [protected] |
Is an iterator for the element data
Definition at line 69 of file AbstractCachedMeshReader.hpp.
Referenced by FemlabMeshReader< ELEMENT_DIM, SPACE_DIM >::FemlabMeshReader(), AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNextElementData(), MemfemMeshReader< ELEMENT_DIM, SPACE_DIM >::MemfemMeshReader(), and AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::Reset().
std::vector< std::vector<unsigned> >::iterator AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mpFaceIterator [protected] |
Is an iterator for the face data
Definition at line 70 of file AbstractCachedMeshReader.hpp.
Referenced by FemlabMeshReader< ELEMENT_DIM, SPACE_DIM >::FemlabMeshReader(), AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::GetNextFaceData(), MemfemMeshReader< ELEMENT_DIM, SPACE_DIM >::MemfemMeshReader(), and AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::Reset().
bool AbstractCachedMeshReader< ELEMENT_DIM, SPACE_DIM >::mIndexFromZero [protected] |
True if input data is numbered from zero, false otherwise
Definition at line 72 of file AbstractCachedMeshReader.hpp.