Chaste Release::3.1
FemlabMeshReader< ELEMENT_DIM, SPACE_DIM > Class Template Reference

#include <FemlabMeshReader.hpp>

Inheritance diagram for FemlabMeshReader< ELEMENT_DIM, SPACE_DIM >:
Collaboration diagram for FemlabMeshReader< ELEMENT_DIM, SPACE_DIM >:

List of all members.

Public Member Functions

 FemlabMeshReader (const std::string &rPathBaseName, const std::string &rNodeFileName, const std::string &rElementFileName, const std::string &rEdgeFileName)
virtual ~FemlabMeshReader ()

Private Member Functions

std::vector< std::vector
< double > > 
TokenizeStringsToDoubles (const std::vector< std::string > &rRawData)
std::vector< std::vector
< unsigned > > 
TokenizeStringsToInts (const std::vector< std::string > &rRawData, unsigned dimensionOfObject)

Detailed Description

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
class FemlabMeshReader< ELEMENT_DIM, SPACE_DIM >

Concrete version of the AbstractCachedMeshReader class. A FemlabMeshReader takes the file names of a set of Femlab mesh files. Once constructed the public methods of the AbstractCachedMeshReader (std::vector<double> GetNextNode(); etc) can be called to interrogate the data

Definition at line 49 of file FemlabMeshReader.hpp.


Constructor & Destructor Documentation

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
FemlabMeshReader< ELEMENT_DIM, SPACE_DIM >::FemlabMeshReader ( const std::string &  rPathBaseName,
const std::string &  rNodeFileName,
const std::string &  rElementFileName,
const std::string &  rEdgeFileName 
)

The constructor takes the path to and names of a set of Femlab mesh files (ie. the nodes, elements and faces files (in that order) and allows the data to be queried. Typical use: AbstractMeshReader* pMeshReader = new FemlabMeshReader("pdes/tests/meshdata/", "femlab_lshape_nodes.dat", "femlab_lshape_elements.dat", "femlab_lshape_edges.dat",);

Parameters:
rPathBaseNamethe base name of the files from which to read the mesh data
rNodeFileNamethe name of the nodes file
rElementFileNamethe name of the elements file
rEdgeFileNamethe name of the edges file

Definition at line 46 of file FemlabMeshReader.cpp.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
FemlabMeshReader< ELEMENT_DIM, SPACE_DIM >::~FemlabMeshReader ( ) [virtual]

Destructor

Definition at line 86 of file FemlabMeshReader.cpp.


Member Function Documentation

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
std::vector< std::vector< double > > FemlabMeshReader< ELEMENT_DIM, SPACE_DIM >::TokenizeStringsToDoubles ( const std::vector< std::string > &  rRawData) [private]

TokenizeStringsToDoubles is specific to reading node data which came from a Femlab or Matlab PDE toolbox file.

Each string is expected to be a series of doubles. Return value is a vector where each item is a vector of double which represents position. Indices are implicit in the vector.

Parameters:
rRawDatathe node data to be read

Definition at line 91 of file FemlabMeshReader.cpp.

References EXCEPTION.

template<unsigned ELEMENT_DIM, unsigned SPACE_DIM>
std::vector< std::vector< unsigned > > FemlabMeshReader< ELEMENT_DIM, SPACE_DIM >::TokenizeStringsToInts ( const std::vector< std::string > &  rRawData,
unsigned  dimensionOfObject 
) [private]

TokenizeStringsToInts is for reading element, face or edge data which came from a Femlab or Matlab PDE toolbox file. Each string is expected to be a series of unsigned which represent: The first several lines denote the indices of nodes The rest contains extra information which are ignored currently. ( In 2-D: 2 indices for an edge, 3 for a triangle) ( In 3-D: 3 indices for a face, 4 for a tetrahedron) Return value is a vector where each item is a vector of ints which represents indices of nodes.

Parameters:
rRawDatathe element, face or edge data to be read
dimensionOfObjectthe number of lines of data to be read

Definition at line 143 of file FemlabMeshReader.cpp.


The documentation for this class was generated from the following files: