Home | Doxygen Documentation | Tutorials | Developer Tools (restricted)

Classes | Public Member Functions | Protected Member Functions | Protected Attributes
concepts::Import2dMeshBase Class Reference

Imports 2D mesh with triangles and quadrilaterals (possibly mixed). More...

#include <meshImport2D.hh>

Inheritance diagram for concepts::Import2dMeshBase:
Inheritance graph
[legend]
Collaboration diagram for concepts::Import2dMeshBase:
Collaboration graph
[legend]

List of all members.

Classes

class  S
 Scanner class for Import2dMesh. More...

Public Member Functions

 Import2dMeshBase (const std::string coord, const std::string elms, const uint idxStart=1)
virtual uint ncell () const
 Returns the number of cells in the mesh.
virtual Scan2scan ()
 Returns a scanner over the cells of the mesh.
virtual ~Import2dMeshBase ()

Protected Member Functions

void attributes_ (const std::string boundary)
 Reads attributes from file boundary.
template<class T >
void clear_ (std::vector< T * > &field)
 Deletes the content of field of pointers.
virtual void createCell_ (const MultiIndex< 8 > &idx) throw (concepts::MissingFeature)
virtual void createCell_ (const MultiIndex< 3 > &idx) throw (concepts::MissingFeature)
 Creation of geometrical cells with element mapping.
virtual void createCell_ (const MultiIndex< 4 > &idx) throw (concepts::MissingFeature)
virtual void createCell_ (const MultiIndex< 2 > &idx) throw (concepts::MissingFeature)
 Creation of geometrical cells with element mapping.
virtual void createCell_ (const MultiIndex< 6 > &idx) throw (concepts::MissingFeature)
virtual void createEntity_ (const MultiIndex< 4 > &idx) throw (concepts::MissingFeature)
virtual void createEntity_ (const MultiIndex< 3 > &idx) throw (concepts::MissingFeature)
 Creation of topological entities.
virtual void createEntity_ (const MultiIndex< 2 > &idx)
virtual void createEntity_ (const MultiIndex< 6 > &idx) throw (concepts::MissingFeature)
virtual void createEntity_ (const MultiIndex< 8 > &idx) throw (concepts::MissingFeature)
virtual void createEntity_ (const MultiIndex< 1 > &idx)
 Creation of topological entities.
void import_ ()
 Reads and builds the mesh.
virtual std::ostream & info (std::ostream &os) const
 Returns information in an output stream.
template<uint dim>
void newCell_ (MultiIndex< dim > i)
 Creates topological entities and a geometrical cell.
void readAttributes_ (const std::string &bound, const Array< bool > &dimensions)
void readCells_ (const std::string &elms, const Array< bool > &dimensions, const std::vector< Real3d > &vertices)
 Reads the file with cell information and creates topological entities and geometrical cells.
uint readInts_ (const std::string &i, std::vector< int > &v) const
 Reads integers from the string.
template<class F >
uint readLine_ (const std::string &i, Array< F > &a, bool first=false) const
 Reads line of numbers from the string.
uint readVertexLine_ (const std::string &i, uint *idx, Real3d *coord) const
virtual void readVertices_ ()
 reads the coordinates of the vertices

Protected Attributes

std::vector< Cell2 * > cell_
 List of cells.
std::vector< Connector2 * > cntr2_
 List of entities.
const std::string coord_
 File names of coordinates and cell files.
uint dim_
std::vector< Connector1 * > edg_
MultiArray< 2, Edge * > Edg_
MultiArray< 8, AttributeeightAttr_
const std::string elms_
MultiArray< 4, AttributefourAttr_
const uint idxStart_
 Starting point of indices in the files (1 or 0)
MultiArray< 1, AttributeoneAttr_
 Attributes of entities.
MultiArray< 4, Quad * > Quad_
MultiArray< 6, AttributesixAttr_
MultiArray< 3, AttributethreeAttr_
MultiArray< 3, Triangle * > Tri_
 Array of the entities.
MultiArray< 2, AttributetwoAttr_
std::vector< Real3dvertices_
 Coordinates of the vertices.
MultiArray< 1, Vertex * > Vtx_
 Array of the entities.
std::vector< Vertex * > vtx_
 List of entities.

Detailed Description

Imports 2D mesh with triangles and quadrilaterals (possibly mixed).

The notation for the meshes is used in [1] for instance.

Author:
Philipp Frauenfelder, 2002, Kersten Schmidt, 2005
See also:
[1] Alberty, Carstensen, Funken, Remarks Around 50 Lines of MATLAB: Finite Element Implementation, 1998
Test:
test::BEMSpaceTest

Definition at line 30 of file meshImport2D.hh.


Constructor & Destructor Documentation

concepts::Import2dMeshBase::Import2dMeshBase ( const std::string  coord,
const std::string  elms,
const uint  idxStart = 1 
)
virtual concepts::Import2dMeshBase::~Import2dMeshBase ( ) [virtual]

Member Function Documentation

void concepts::Import2dMeshBase::attributes_ ( const std::string  boundary) [protected]

Reads attributes from file boundary.

template<class T >
void concepts::ImportMesh::clear_ ( std::vector< T * > &  field) [protected, inherited]

Deletes the content of field of pointers.

Definition at line 136 of file meshImport.hh.

virtual void concepts::Import2dMeshBase::createCell_ ( const MultiIndex< 4 > &  idx) throw (concepts::MissingFeature) [protected, virtual]

Reimplemented from concepts::ImportMesh.

Reimplemented in concepts::Import2dMeshGeneral.

virtual void concepts::ImportMesh::createCell_ ( const MultiIndex< 2 > &  idx) throw (concepts::MissingFeature) [protected, virtual, inherited]

Creation of geometrical cells with element mapping.

Has to be implemented in derivated classes.

virtual void concepts::ImportMesh::createCell_ ( const MultiIndex< 6 > &  idx) throw (concepts::MissingFeature) [protected, virtual, inherited]
virtual void concepts::ImportMesh::createCell_ ( const MultiIndex< 8 > &  idx) throw (concepts::MissingFeature) [protected, virtual, inherited]
virtual void concepts::Import2dMeshBase::createCell_ ( const MultiIndex< 3 > &  idx) throw (concepts::MissingFeature) [protected, virtual]

Creation of geometrical cells with element mapping.

Reimplemented from concepts::ImportMesh.

Reimplemented in concepts::Import2dMeshGeneral.

virtual void concepts::Import2dMeshBase::createEntity_ ( const MultiIndex< 1 > &  idx) [inline, protected, virtual]

Creation of topological entities.

Reimplemented from concepts::ImportMesh.

Reimplemented in concepts::Import2dMeshGeneral.

Definition at line 60 of file meshImport2D.hh.

virtual void concepts::Import2dMeshBase::createEntity_ ( const MultiIndex< 2 > &  idx) [inline, protected, virtual]

Reimplemented from concepts::ImportMesh.

Reimplemented in concepts::Import2dMeshGeneral.

Definition at line 62 of file meshImport2D.hh.

Here is the call graph for this function:

virtual void concepts::Import2dMeshBase::createEntity_ ( const MultiIndex< 3 > &  idx) throw (concepts::MissingFeature) [protected, virtual]

Creation of topological entities.

Has to be implemented in derivated classes.

Reimplemented from concepts::ImportMesh.

Reimplemented in concepts::Import2dMeshGeneral.

virtual void concepts::ImportMesh::createEntity_ ( const MultiIndex< 8 > &  idx) throw (concepts::MissingFeature) [protected, virtual, inherited]
virtual void concepts::Import2dMeshBase::createEntity_ ( const MultiIndex< 4 > &  idx) throw (concepts::MissingFeature) [protected, virtual]

Reimplemented from concepts::ImportMesh.

Reimplemented in concepts::Import2dMeshGeneral.

virtual void concepts::ImportMesh::createEntity_ ( const MultiIndex< 6 > &  idx) throw (concepts::MissingFeature) [protected, virtual, inherited]
void concepts::Import2dMeshBase::import_ ( ) [protected]

Reads and builds the mesh.

virtual std::ostream& concepts::Import2dMeshBase::info ( std::ostream &  os) const [protected, virtual]

Returns information in an output stream.

Reimplemented from concepts::Mesh.

Reimplemented in concepts::Import2dMesh, and concepts::Import2dMeshGeneral.

virtual uint concepts::Import2dMeshBase::ncell ( ) const [inline, virtual]

Returns the number of cells in the mesh.

Implements concepts::Mesh.

Definition at line 35 of file meshImport2D.hh.

template<uint dim>
void concepts::ImportMesh::newCell_ ( MultiIndex< dim >  i) [protected, inherited]

Creates topological entities and a geometrical cell.

void concepts::ImportMesh::readAttributes_ ( const std::string &  bound,
const Array< bool > &  dimensions 
) [protected, inherited]
void concepts::ImportMesh::readCells_ ( const std::string &  elms,
const Array< bool > &  dimensions,
const std::vector< Real3d > &  vertices 
) [protected, inherited]

Reads the file with cell information and creates topological entities and geometrical cells.

uint concepts::ImportMesh::readInts_ ( const std::string &  i,
std::vector< int > &  v 
) const [protected, inherited]

Reads integers from the string.

Returns:
Number of integers read
template<class F >
uint concepts::ImportMesh::readLine_ ( const std::string &  i,
Array< F > &  a,
bool  first = false 
) const [protected, inherited]

Reads line of numbers from the string.

Parameters:
iString
aresulting array of integers
firstflag, if the first integer should be taken into the array
Returns:
Number of integers read

Definition at line 118 of file meshImport.hh.

Here is the call graph for this function:

uint concepts::Import2dMeshBase::readVertexLine_ ( const std::string &  i,
uint *  idx,
Real3d coord 
) const [protected]
virtual void concepts::Import2dMeshBase::readVertices_ ( ) [protected, virtual]

reads the coordinates of the vertices

virtual Scan2* concepts::Import2dMeshBase::scan ( ) [virtual]

Returns a scanner over the cells of the mesh.

Postcondition:
The scanner must be deleted after usage. This has to be done by the user.

Implements concepts::Mesh2.


Member Data Documentation

std::vector<Cell2*> concepts::Import2dMeshBase::cell_ [protected]

List of cells.

Definition at line 41 of file meshImport2D.hh.

List of entities.

Definition at line 54 of file meshImport2D.hh.

const std::string concepts::Import2dMeshBase::coord_ [protected]

File names of coordinates and cell files.

Definition at line 47 of file meshImport2D.hh.

Definition at line 51 of file meshImport2D.hh.

std::vector<Connector1*> concepts::ImportMesh::edg_ [protected, inherited]

Definition at line 42 of file meshImport.hh.

MultiArray<2, Edge*> concepts::ImportMesh::Edg_ [protected, inherited]

Definition at line 45 of file meshImport.hh.

Definition at line 53 of file meshImport.hh.

const std::string concepts::Import2dMeshBase::elms_ [protected]

Definition at line 47 of file meshImport2D.hh.

Definition at line 51 of file meshImport.hh.

const uint concepts::ImportMesh::idxStart_ [protected, inherited]

Starting point of indices in the files (1 or 0)

Definition at line 38 of file meshImport.hh.

Attributes of entities.

Definition at line 48 of file meshImport.hh.

Definition at line 57 of file meshImport2D.hh.

Definition at line 52 of file meshImport.hh.

Definition at line 50 of file meshImport.hh.

Array of the entities.

Definition at line 56 of file meshImport2D.hh.

Definition at line 49 of file meshImport.hh.

Coordinates of the vertices.

Definition at line 50 of file meshImport2D.hh.

MultiArray<1, Vertex*> concepts::ImportMesh::Vtx_ [protected, inherited]

Array of the entities.

Definition at line 44 of file meshImport.hh.

std::vector<Vertex*> concepts::ImportMesh::vtx_ [protected, inherited]

List of entities.

Definition at line 41 of file meshImport.hh.


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

Home | Doxygen Documentation | Tutorials | Developer Tools (restricted)