#include <PlaneBoundaryCondition.hpp>
Inherits AbstractCellPopulationBoundaryCondition< DIM >.
Public Member Functions | |
PlaneBoundaryCondition (AbstractCellPopulation< DIM > *pCellPopulation, c_vector< double, DIM > point, c_vector< double, DIM > normal) | |
const c_vector< double, DIM > & | rGetPointOnPlane () const |
const c_vector< double, DIM > & | rGetNormalToPlane () const |
void | ImposeBoundaryCondition (const std::vector< c_vector< double, DIM > > &rOldLocations) |
bool | VerifyBoundaryCondition () |
void | OutputCellPopulationBoundaryConditionParameters (out_stream &rParamsFile) |
Private Member Functions | |
template<class Archive > | |
void | serialize (Archive &archive, const unsigned int version) |
Private Attributes | |
c_vector< double, DIM > | mPointOnPlane |
c_vector< double, DIM > | mNormalToPlane |
Friends | |
class | boost::serialization::access |
A plane cell population boundary condition class, which stops nodes moving through a specified plane in the domain. Although the name of this class suggests it is specific to 3D, it is actually also implemented for 1D and 2D, for which it is really a 'point' and 'line' boundary condition respectively.
Definition at line 45 of file PlaneBoundaryCondition.hpp.
PlaneBoundaryCondition< DIM >::PlaneBoundaryCondition | ( | AbstractCellPopulation< DIM > * | pCellPopulation, | |
c_vector< double, DIM > | point, | |||
c_vector< double, DIM > | normal | |||
) | [inline] |
Constructor.
pCellPopulation | pointer to the cell population | |
point | a point on the boundary plane | |
normal | the outward-facing unit normal vector to the boundary plane |
Definition at line 35 of file PlaneBoundaryCondition.cpp.
References PlaneBoundaryCondition< DIM >::mNormalToPlane.
void PlaneBoundaryCondition< DIM >::ImposeBoundaryCondition | ( | const std::vector< c_vector< double, DIM > > & | rOldLocations | ) | [inline, virtual] |
Overridden ImposeBoundaryCondition() method.
Apply the cell population boundary conditions.
rOldLocations | the node locations before any boundary conditions are applied |
Implements AbstractCellPopulationBoundaryCondition< DIM >.
Definition at line 58 of file PlaneBoundaryCondition.cpp.
References EXCEPTION, VertexBasedCellPopulation< DIM >::GetNode(), VertexBasedCellPopulation< DIM >::GetNumNodes(), PlaneBoundaryCondition< DIM >::mNormalToPlane, AbstractCellPopulationBoundaryCondition< DIM >::mpCellPopulation, PlaneBoundaryCondition< DIM >::mPointOnPlane, Node< SPACE_DIM >::rGetLocation(), and Node< SPACE_DIM >::rGetModifiableLocation().
void PlaneBoundaryCondition< DIM >::OutputCellPopulationBoundaryConditionParameters | ( | out_stream & | rParamsFile | ) | [inline, 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 156 of file PlaneBoundaryCondition.cpp.
References PlaneBoundaryCondition< DIM >::mNormalToPlane, and PlaneBoundaryCondition< DIM >::mPointOnPlane.
const c_vector< double, DIM > & PlaneBoundaryCondition< DIM >::rGetNormalToPlane | ( | ) | const [inline] |
Definition at line 52 of file PlaneBoundaryCondition.cpp.
References PlaneBoundaryCondition< DIM >::mNormalToPlane.
const c_vector< double, DIM > & PlaneBoundaryCondition< DIM >::rGetPointOnPlane | ( | ) | const [inline] |
Definition at line 46 of file PlaneBoundaryCondition.cpp.
References PlaneBoundaryCondition< DIM >::mPointOnPlane.
void PlaneBoundaryCondition< DIM >::serialize | ( | Archive & | archive, | |
const unsigned int | version | |||
) | [inline, private] |
Serialize the object and its member variables.
archive | the archive | |
version | the current version of this class |
Reimplemented from AbstractCellPopulationBoundaryCondition< DIM >.
Definition at line 68 of file PlaneBoundaryCondition.hpp.
bool PlaneBoundaryCondition< DIM >::VerifyBoundaryCondition | ( | ) | [inline, 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 128 of file PlaneBoundaryCondition.cpp.
References EXCEPTION, PlaneBoundaryCondition< DIM >::mNormalToPlane, AbstractCellPopulationBoundaryCondition< DIM >::mpCellPopulation, and PlaneBoundaryCondition< DIM >::mPointOnPlane.
friend class boost::serialization::access [friend] |
Needed for serialization.
Reimplemented from AbstractCellPopulationBoundaryCondition< DIM >.
Definition at line 60 of file PlaneBoundaryCondition.hpp.
c_vector<double, DIM> PlaneBoundaryCondition< DIM >::mNormalToPlane [private] |
The outward-facing unit normal vector to the boundary plane.
Definition at line 57 of file PlaneBoundaryCondition.hpp.
Referenced by PlaneBoundaryCondition< DIM >::ImposeBoundaryCondition(), PlaneBoundaryCondition< DIM >::OutputCellPopulationBoundaryConditionParameters(), PlaneBoundaryCondition< DIM >::PlaneBoundaryCondition(), PlaneBoundaryCondition< DIM >::rGetNormalToPlane(), and PlaneBoundaryCondition< DIM >::VerifyBoundaryCondition().
c_vector<double, DIM> PlaneBoundaryCondition< DIM >::mPointOnPlane [private] |
A point on the boundary plane.
Definition at line 52 of file PlaneBoundaryCondition.hpp.
Referenced by PlaneBoundaryCondition< DIM >::ImposeBoundaryCondition(), PlaneBoundaryCondition< DIM >::OutputCellPopulationBoundaryConditionParameters(), PlaneBoundaryCondition< DIM >::rGetPointOnPlane(), and PlaneBoundaryCondition< DIM >::VerifyBoundaryCondition().