HoneycombMeshGenerator Class Reference

#include <HoneycombMeshGenerator.hpp>

Inheritance diagram for HoneycombMeshGenerator:

Inheritance graph
[legend]
Collaboration diagram for HoneycombMeshGenerator:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 HoneycombMeshGenerator (unsigned numNodesAlongWidth, unsigned numNodesAlongLength, unsigned ghosts=3, double scaleFactor=1.0)
 HoneycombMeshGenerator ()
virtual ~HoneycombMeshGenerator ()
virtual MutableMesh< 2, 2 > * GetMesh ()
std::vector< unsigned > GetCellLocationIndices ()
MutableMesh< 2, 2 > * GetCircularMesh (double radius)
double GetDomainDepth ()
double GetDomainWidth ()

Protected Attributes

MutableMesh< 2, 2 > * mpMesh
std::set< unsigned > mGhostNodeIndices
std::string mMeshFilename
double mDomainWidth
double mDomainDepth
double mBottom
double mTop
unsigned mNumCellWidth
unsigned mNumCellLength


Detailed Description

Honeycomb mesh generator that creates a 2D honeycomb mesh (with equal distance between nodes) for use in cell-centre simulations.

NOTE: the user should delete the mesh after use to manage memory.

Definition at line 46 of file HoneycombMeshGenerator.hpp.


Constructor & Destructor Documentation

HoneycombMeshGenerator::HoneycombMeshGenerator ( unsigned  numNodesAlongWidth,
unsigned  numNodesAlongLength,
unsigned  ghosts = 3,
double  scaleFactor = 1.0 
)

Default constructor.

Parameters:
numNodesAlongWidth The number of cells you want alopng the bottom of the domain
numNodesAlongLength The number of cells you want sides of the domain
ghosts The thickness of ghost nodes to put around the edge (defaults to 3)
scaleFactor The scale factor for the width (circumference) of the cells (defaults to 1.0)

Definition at line 34 of file HoneycombMeshGenerator.cpp.

References PetscTools::AmMaster(), PetscTools::Barrier(), TetrahedralMesh< ELEMENT_DIM, SPACE_DIM >::ConstructFromMeshReader(), EXCEPTION, OutputFileHandler::GetOutputDirectoryFullPath(), PetscTools::IsSequential(), mBottom, mDomainDepth, mDomainWidth, mGhostNodeIndices, mMeshFilename, mNumCellLength, mNumCellWidth, mpMesh, mTop, OutputFileHandler::OpenOutputFile(), and AbstractMesh< ELEMENT_DIM, SPACE_DIM >::SetMeshHasChangedSinceLoading().

HoneycombMeshGenerator::HoneycombMeshGenerator (  )  [inline]

Null constructor for derived classes to call.

Definition at line 92 of file HoneycombMeshGenerator.hpp.

HoneycombMeshGenerator::~HoneycombMeshGenerator (  )  [virtual]

Destructor - deletes the mesh object and pointer

Definition at line 226 of file HoneycombMeshGenerator.cpp.

References mpMesh.


Member Function Documentation

MutableMesh< 2, 2 > * HoneycombMeshGenerator::GetMesh (  )  [virtual]

Returns:
a 2D honeycomb mesh based on a 2D plane

Reimplemented in CylindricalHoneycombMeshGenerator.

Definition at line 231 of file HoneycombMeshGenerator.cpp.

References mpMesh.

std::vector< unsigned > HoneycombMeshGenerator::GetCellLocationIndices (  ) 

Returns the indices of the nodes in the mesh which correspond to real cells. This information is needed when constructing a MeshBasedCellPopulationWithGhostNodes.

Returns:
indices of nodes

Definition at line 236 of file HoneycombMeshGenerator.cpp.

References MutableMesh< ELEMENT_DIM, SPACE_DIM >::GetNumNodes(), mGhostNodeIndices, and mpMesh.

MutableMesh< 2, 2 > * HoneycombMeshGenerator::GetCircularMesh ( double  radius  ) 

double HoneycombMeshGenerator::GetDomainDepth (  ) 

Returns:
mDomainDepth

Definition at line 290 of file HoneycombMeshGenerator.cpp.

References mDomainDepth.

double HoneycombMeshGenerator::GetDomainWidth (  ) 

Returns:
mDomainWidth

Definition at line 295 of file HoneycombMeshGenerator.cpp.

References mDomainWidth.


Member Data Documentation

std::set<unsigned> HoneycombMeshGenerator::mGhostNodeIndices [protected]

The indices of the nodes in this mesh which are 'ghost nodes'

Definition at line 54 of file HoneycombMeshGenerator.hpp.

Referenced by CylindricalHoneycombMeshGenerator::CylindricalHoneycombMeshGenerator(), GetCellLocationIndices(), and HoneycombMeshGenerator().

std::string HoneycombMeshGenerator::mMeshFilename [protected]

The mesh is generated by writing out a series of nodes and reading them in from this file

Definition at line 57 of file HoneycombMeshGenerator.hpp.

Referenced by CylindricalHoneycombMeshGenerator::CylindricalHoneycombMeshGenerator(), and HoneycombMeshGenerator().

The (x) width of the domain to be constructed

Definition at line 60 of file HoneycombMeshGenerator.hpp.

Referenced by CylindricalHoneycombMeshGenerator::CylindricalHoneycombMeshGenerator(), GetDomainWidth(), and HoneycombMeshGenerator().

The (y) depth of the domain to be constructed

Definition at line 63 of file HoneycombMeshGenerator.hpp.

Referenced by CylindricalHoneycombMeshGenerator::CylindricalHoneycombMeshGenerator(), GetDomainDepth(), and HoneycombMeshGenerator().

double HoneycombMeshGenerator::mBottom [protected]

The y coordinate of the bottom row of cells (ghosts if requested)

Definition at line 66 of file HoneycombMeshGenerator.hpp.

Referenced by CylindricalHoneycombMeshGenerator::CylindricalHoneycombMeshGenerator(), and HoneycombMeshGenerator().

double HoneycombMeshGenerator::mTop [protected]

The y coordinate of the top row of cells (ghosts if requested)

Definition at line 69 of file HoneycombMeshGenerator.hpp.

Referenced by CylindricalHoneycombMeshGenerator::CylindricalHoneycombMeshGenerator(), and HoneycombMeshGenerator().

The number of columns of cells to put across the x coordinate of the mesh

Definition at line 72 of file HoneycombMeshGenerator.hpp.

Referenced by CylindricalHoneycombMeshGenerator::CylindricalHoneycombMeshGenerator(), and HoneycombMeshGenerator().

The number of rows of cells to put up the y coordinate of the mesh

Definition at line 75 of file HoneycombMeshGenerator.hpp.

Referenced by CylindricalHoneycombMeshGenerator::CylindricalHoneycombMeshGenerator(), and HoneycombMeshGenerator().


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

Generated on Tue May 31 14:33:32 2011 for Chaste by  doxygen 1.5.5