Chaste
Release::2017.1
|
#include <SphereGeometryBoundaryCondition.hpp>
Public Member Functions | |
SphereGeometryBoundaryCondition (AbstractCellPopulation< DIM > *pCellPopulation, c_vector< double, DIM > centre, double radius, double distance=1e-5) | |
const c_vector< double, DIM > & | rGetCentreOfSphere () const |
double | GetRadiusOfSphere () const |
void | ImposeBoundaryCondition (const std::map< Node< DIM > *, c_vector< double, DIM > > &rOldLocations) |
bool | VerifyBoundaryCondition () |
void | OutputCellPopulationBoundaryConditionParameters (out_stream &rParamsFile) |
Public Member Functions inherited from AbstractCellPopulationBoundaryCondition< DIM > | |
AbstractCellPopulationBoundaryCondition (AbstractCellPopulation< ELEMENT_DIM, ELEMENT_DIM > *pCellPopulation) | |
virtual | ~AbstractCellPopulationBoundaryCondition () |
virtual void | ImposeBoundaryCondition (const std::map< Node< ELEMENT_DIM > *, c_vector< double, ELEMENT_DIM > > &rOldLocations)=0 |
const AbstractCellPopulation< ELEMENT_DIM, ELEMENT_DIM > * | GetCellPopulation () const |
void | OutputCellPopulationBoundaryConditionInfo (out_stream &rParamsFile) |
Public Member Functions inherited from Identifiable | |
virtual | ~Identifiable () |
std::string | GetIdentifier () const |
Private Member Functions | |
template<class Archive > | |
void | serialize (Archive &archive, const unsigned int version) |
Private Attributes | |
c_vector< double, DIM > | mCentreOfSphere |
double | mRadiusOfSphere |
double | mMaximumDistance |
Friends | |
class | boost::serialization::access |
Additional Inherited Members | |
Protected Attributes inherited from AbstractCellPopulationBoundaryCondition< DIM > | |
AbstractCellPopulation< ELEMENT_DIM, ELEMENT_DIM > * | mpCellPopulation |
A spherical cell population boundary condition class, which restricts nodes to lie on the surface of a sphere in the domain. Although the name of this class suggests it is specific to 3D, it is actually also implemented in 2D, for which it is really a circle geometry boundary condition.
Definition at line 52 of file SphereGeometryBoundaryCondition.hpp.
SphereGeometryBoundaryCondition< DIM >::SphereGeometryBoundaryCondition | ( | AbstractCellPopulation< DIM > * | pCellPopulation, |
c_vector< double, DIM > | centre, | ||
double | radius, | ||
double | distance = 1e-5 |
||
) |
Constructor.
pCellPopulation | pointer to the cell population |
centre | the centre of the sphere |
radius | the radius of the sphere |
distance | the maximum distance from the surface of the sphere that cells may be (defaults to 1e-5) |
Definition at line 40 of file SphereGeometryBoundaryCondition.cpp.
References EXCEPTION, SphereGeometryBoundaryCondition< DIM >::mMaximumDistance, AbstractCellPopulationBoundaryCondition< DIM >::mpCellPopulation, and SphereGeometryBoundaryCondition< DIM >::mRadiusOfSphere.
Referenced by SphereGeometryBoundaryCondition< DIM >::serialize().
double SphereGeometryBoundaryCondition< DIM >::GetRadiusOfSphere | ( | ) | const |
Definition at line 69 of file SphereGeometryBoundaryCondition.cpp.
References SphereGeometryBoundaryCondition< DIM >::mRadiusOfSphere.
Referenced by SphereGeometryBoundaryCondition< DIM >::serialize().
void SphereGeometryBoundaryCondition< DIM >::ImposeBoundaryCondition | ( | const std::map< Node< DIM > *, c_vector< double, DIM > > & | rOldLocations | ) |
Overridden ImposeBoundaryCondition() method.
Apply the cell population boundary conditions.
rOldLocations | the node locations before any boundary conditions are applied |
Definition at line 75 of file SphereGeometryBoundaryCondition.cpp.
References AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >::Begin(), AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >::End(), AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >::GetLocationIndexUsingCell(), AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >::GetLocationOfCellCentre(), AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >::GetNode(), SphereGeometryBoundaryCondition< DIM >::mCentreOfSphere, SphereGeometryBoundaryCondition< DIM >::mMaximumDistance, AbstractCellPopulationBoundaryCondition< DIM >::mpCellPopulation, SphereGeometryBoundaryCondition< DIM >::mRadiusOfSphere, and Node< SPACE_DIM >::rGetModifiableLocation().
Referenced by SphereGeometryBoundaryCondition< DIM >::serialize().
|
virtual |
Overridden OutputCellPopulationBoundaryConditionParameters() method. Output cell population boundary condition parameters to file.
rParamsFile | the file stream to which the parameters are output |
Implements AbstractCellPopulationBoundaryCondition< DIM >.
Definition at line 128 of file SphereGeometryBoundaryCondition.cpp.
References EXPORT_TEMPLATE_CLASS_SAME_DIMS, SphereGeometryBoundaryCondition< DIM >::mCentreOfSphere, SphereGeometryBoundaryCondition< DIM >::mMaximumDistance, SphereGeometryBoundaryCondition< DIM >::mRadiusOfSphere, and AbstractCellPopulationBoundaryCondition< ELEMENT_DIM, SPACE_DIM >::OutputCellPopulationBoundaryConditionParameters().
Referenced by SphereGeometryBoundaryCondition< DIM >::serialize().
const c_vector< double, DIM > & SphereGeometryBoundaryCondition< DIM >::rGetCentreOfSphere | ( | ) | const |
Definition at line 63 of file SphereGeometryBoundaryCondition.cpp.
References SphereGeometryBoundaryCondition< DIM >::mCentreOfSphere.
Referenced by SphereGeometryBoundaryCondition< DIM >::serialize().
|
inlineprivate |
Serialize the object.
archive | the archive |
version | the current version of this class |
Definition at line 74 of file SphereGeometryBoundaryCondition.hpp.
References EXPORT_TEMPLATE_CLASS_SAME_DIMS, AbstractCellPopulationBoundaryCondition< DIM >::GetCellPopulation(), SphereGeometryBoundaryCondition< DIM >::GetRadiusOfSphere(), SphereGeometryBoundaryCondition< DIM >::ImposeBoundaryCondition(), SphereGeometryBoundaryCondition< DIM >::mMaximumDistance, SphereGeometryBoundaryCondition< DIM >::OutputCellPopulationBoundaryConditionParameters(), SphereGeometryBoundaryCondition< DIM >::rGetCentreOfSphere(), SphereGeometryBoundaryCondition< DIM >::SphereGeometryBoundaryCondition(), and SphereGeometryBoundaryCondition< DIM >::VerifyBoundaryCondition().
|
virtual |
Overridden VerifyBoundaryCondition() method. Verify the boundary conditions have been applied. This is called after ImposeBoundaryCondition() to ensure the condition is still satisfied.
Implements AbstractCellPopulationBoundaryCondition< DIM >.
Definition at line 103 of file SphereGeometryBoundaryCondition.cpp.
References AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >::Begin(), AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >::End(), AbstractCellPopulation< ELEMENT_DIM, SPACE_DIM >::GetLocationOfCellCentre(), SphereGeometryBoundaryCondition< DIM >::mCentreOfSphere, SphereGeometryBoundaryCondition< DIM >::mMaximumDistance, AbstractCellPopulationBoundaryCondition< DIM >::mpCellPopulation, and SphereGeometryBoundaryCondition< DIM >::mRadiusOfSphere.
Referenced by SphereGeometryBoundaryCondition< DIM >::serialize().
|
friend |
Needed for serialization.
Definition at line 66 of file SphereGeometryBoundaryCondition.hpp.
|
private |
The centre of the sphere.
Definition at line 57 of file SphereGeometryBoundaryCondition.hpp.
Referenced by SphereGeometryBoundaryCondition< DIM >::ImposeBoundaryCondition(), SphereGeometryBoundaryCondition< DIM >::OutputCellPopulationBoundaryConditionParameters(), SphereGeometryBoundaryCondition< DIM >::rGetCentreOfSphere(), and SphereGeometryBoundaryCondition< DIM >::VerifyBoundaryCondition().
|
private |
The maximum distance from the surface of the sphere that cells may be.
Definition at line 63 of file SphereGeometryBoundaryCondition.hpp.
Referenced by SphereGeometryBoundaryCondition< DIM >::ImposeBoundaryCondition(), SphereGeometryBoundaryCondition< DIM >::OutputCellPopulationBoundaryConditionParameters(), SphereGeometryBoundaryCondition< DIM >::serialize(), SphereGeometryBoundaryCondition< DIM >::SphereGeometryBoundaryCondition(), and SphereGeometryBoundaryCondition< DIM >::VerifyBoundaryCondition().
|
private |
The radius of the sphere.
Definition at line 60 of file SphereGeometryBoundaryCondition.hpp.
Referenced by SphereGeometryBoundaryCondition< DIM >::GetRadiusOfSphere(), SphereGeometryBoundaryCondition< DIM >::ImposeBoundaryCondition(), SphereGeometryBoundaryCondition< DIM >::OutputCellPopulationBoundaryConditionParameters(), SphereGeometryBoundaryCondition< DIM >::SphereGeometryBoundaryCondition(), and SphereGeometryBoundaryCondition< DIM >::VerifyBoundaryCondition().