Chaste Commit::baa90ac2819b962188b7562f2326be23c47859a7
|
#include <HoneycombMeshGenerator.hpp>
Public Member Functions | |
HoneycombMeshGenerator (unsigned numNodesAlongWidth, unsigned numNodesAlongLength, unsigned ghosts=0, double scaleFactor=1.0) | |
HoneycombMeshGenerator () | |
virtual | ~HoneycombMeshGenerator ()=default |
virtual boost::shared_ptr< MutableMesh< 2, 2 > > | GetMesh () |
std::vector< unsigned > | GetCellLocationIndices () |
boost::shared_ptr< MutableMesh< 2, 2 > > | GetCircularMesh (double radius) |
double | GetDomainDepth () |
double | GetDomainWidth () |
Protected Attributes | |
boost::shared_ptr< MutableMesh< 2, 2 > > | mpMesh |
std::set< unsigned > | mGhostNodeIndices |
std::string | mMeshFilename |
double | mDomainWidth |
double | mDomainDepth |
double | mBottom |
double | mTop |
unsigned | mNumCellWidth |
unsigned | mNumCellLength |
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 51 of file HoneycombMeshGenerator.hpp.
HoneycombMeshGenerator::HoneycombMeshGenerator | ( | unsigned | numNodesAlongWidth, |
unsigned | numNodesAlongLength, | ||
unsigned | ghosts = 0 , |
||
double | scaleFactor = 1.0 |
||
) |
Default constructor.
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 0) |
scaleFactor | The scale factor for the width (circumference) of the cells (defaults to 1.0) |
Definition at line 48 of file HoneycombMeshGenerator.cpp.
References OutputFileHandler::FindFile(), OutputFileHandler::GetOutputDirectoryFullPath(), PetscTools::IsSequential(), mBottom, mDomainDepth, mDomainWidth, mGhostNodeIndices, mMeshFilename, mNumCellLength, mNumCellWidth, mpMesh, mTop, OutputFileHandler::OpenOutputFile(), and FileFinder::Remove().
|
inline |
Null constructor for derived classes to call.
Definition at line 97 of file HoneycombMeshGenerator.hpp.
|
virtualdefault |
Empty destructor.
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.
Definition at line 236 of file HoneycombMeshGenerator.cpp.
References mGhostNodeIndices, and mpMesh.
boost::shared_ptr< MutableMesh< 2, 2 > > HoneycombMeshGenerator::GetCircularMesh | ( | double | radius | ) |
radius | the radius of the circular mesh |
Definition at line 250 of file HoneycombMeshGenerator.cpp.
References EXCEPTION, RandomNumberGenerator::Instance(), mGhostNodeIndices, mpMesh, and RandomNumberGenerator::ranf().
double HoneycombMeshGenerator::GetDomainDepth | ( | ) |
Definition at line 294 of file HoneycombMeshGenerator.cpp.
References mDomainDepth.
double HoneycombMeshGenerator::GetDomainWidth | ( | ) |
Definition at line 299 of file HoneycombMeshGenerator.cpp.
References mDomainWidth.
|
virtual |
Reimplemented in CylindricalHoneycombMeshGenerator, and ToroidalHoneycombMeshGenerator.
Definition at line 231 of file HoneycombMeshGenerator.cpp.
References mpMesh.
|
protected |
The y coordinate of the bottom row of cells (ghosts if requested)
Definition at line 71 of file HoneycombMeshGenerator.hpp.
Referenced by CylindricalHoneycombMeshGenerator::CylindricalHoneycombMeshGenerator(), and HoneycombMeshGenerator().
|
protected |
The (y) depth of the domain to be constructed
Definition at line 68 of file HoneycombMeshGenerator.hpp.
Referenced by CylindricalHoneycombMeshGenerator::CylindricalHoneycombMeshGenerator(), HoneycombMeshGenerator(), ToroidalHoneycombMeshGenerator::ToroidalHoneycombMeshGenerator(), and GetDomainDepth().
|
protected |
The (x) width of the domain to be constructed
Definition at line 65 of file HoneycombMeshGenerator.hpp.
Referenced by CylindricalHoneycombMeshGenerator::CylindricalHoneycombMeshGenerator(), HoneycombMeshGenerator(), ToroidalHoneycombMeshGenerator::ToroidalHoneycombMeshGenerator(), and GetDomainWidth().
|
protected |
The indices of the nodes in this mesh which are 'ghost nodes'
Definition at line 59 of file HoneycombMeshGenerator.hpp.
Referenced by CylindricalHoneycombMeshGenerator::CylindricalHoneycombMeshGenerator(), HoneycombMeshGenerator(), GetCellLocationIndices(), and GetCircularMesh().
|
protected |
The mesh is generated by writing out a series of nodes and reading them in from this file
Definition at line 62 of file HoneycombMeshGenerator.hpp.
Referenced by CylindricalHoneycombMeshGenerator::CylindricalHoneycombMeshGenerator(), HoneycombMeshGenerator(), and ToroidalHoneycombMeshGenerator::ToroidalHoneycombMeshGenerator().
|
protected |
The number of rows of cells to put up the y coordinate of the mesh
Definition at line 80 of file HoneycombMeshGenerator.hpp.
Referenced by CylindricalHoneycombMeshGenerator::CylindricalHoneycombMeshGenerator(), HoneycombMeshGenerator(), and ToroidalHoneycombMeshGenerator::ToroidalHoneycombMeshGenerator().
|
protected |
The number of columns of cells to put across the x coordinate of the mesh
Definition at line 77 of file HoneycombMeshGenerator.hpp.
Referenced by CylindricalHoneycombMeshGenerator::CylindricalHoneycombMeshGenerator(), HoneycombMeshGenerator(), and ToroidalHoneycombMeshGenerator::ToroidalHoneycombMeshGenerator().
|
protected |
A pointer to the mesh this class creates
Definition at line 56 of file HoneycombMeshGenerator.hpp.
Referenced by CylindricalHoneycombMeshGenerator::CylindricalHoneycombMeshGenerator(), HoneycombMeshGenerator(), ToroidalHoneycombMeshGenerator::ToroidalHoneycombMeshGenerator(), GetCellLocationIndices(), GetCircularMesh(), CylindricalHoneycombMeshGenerator::GetCylindricalMesh(), CylindricalHoneycombMeshGenerator::GetMesh(), GetMesh(), ToroidalHoneycombMeshGenerator::GetMesh(), and ToroidalHoneycombMeshGenerator::GetToroidalMesh().
|
protected |
The y coordinate of the top row of cells (ghosts if requested)
Definition at line 74 of file HoneycombMeshGenerator.hpp.
Referenced by CylindricalHoneycombMeshGenerator::CylindricalHoneycombMeshGenerator(), and HoneycombMeshGenerator().