36 #ifndef MESHBASEDCELLPOPULATIONWITHGHOSTNODES_HPP_
37 #define MESHBASEDCELLPOPULATIONWITHGHOSTNODES_HPP_
40 #include <boost/serialization/base_object.hpp>
41 #include <boost/serialization/vector.hpp>
43 #include "MeshBasedCellPopulation.hpp"
55 template<
unsigned DIM>
84 template<
class Archive>
85 void serialize(Archive & archive,
const unsigned int version)
90 archive & boost::serialization::base_object<MeshBasedCellPopulation<DIM, DIM> >(*this);
98 void SetGhostNodes(
const std::set<unsigned>& rGhostNodeIndices);
132 std::vector<CellPtr>& rCells,
133 const std::vector<unsigned> locationIndices=std::vector<unsigned>(),
134 bool deleteMesh=
false,
135 double ghostSpringStiffness=15.0);
144 double ghostSpringStiffness=15.0);
229 CellPtr
AddCell(CellPtr pNewCell,
const c_vector<double,DIM>& rCellDivisionVector, CellPtr pParentCell);
264 namespace serialization
269 template<
class Archive,
unsigned DIM>
270 inline void save_construct_data(
282 template<
class Archive,
unsigned DIM>
283 inline void load_construct_data(
void UpdateGhostNodesAfterReMesh(NodeMap &rMap)
std::set< unsigned > GetNeighbouringLocationIndices(CellPtr pCell)
void UpdateNodeLocations(double dt)
virtual void WriteVtkResultsToFile(const std::string &rDirectory)
std::set< unsigned > GetGhostNodeIndices()
void UpdateGhostPositions(double dt)
virtual void OpenWritersFiles(OutputFileHandler &rOutputFileHandler)
bool IsGhostNode(unsigned index)
virtual void AcceptCellWritersAcrossPopulation()
CellPtr AddCell(CellPtr pNewCell, const c_vector< double, DIM > &rCellDivisionVector, CellPtr pParentCell)
c_vector< double, DIM > CalculateForceBetweenGhostNodes(const unsigned &rNodeAGlobalIndex, const unsigned &rNodeBGlobalIndex)
MutableMesh< ELEMENT_DIM, ELEMENT_DIM > & rGetMesh()
void serialize(Archive &archive, const unsigned int version)
MeshBasedCellPopulationWithGhostNodes(MutableMesh< DIM, DIM > &rMesh, std::vector< CellPtr > &rCells, const std::vector< unsigned > locationIndices=std::vector< unsigned >(), bool deleteMesh=false, double ghostSpringStiffness=15.0)
#define EXPORT_TEMPLATE_CLASS_SAME_DIMS(CLASS)
void SetGhostNodes(const std::set< unsigned > &rGhostNodeIndices)
friend class TestMeshBasedCellPopulationWithGhostNodes
std::vector< bool > & rGetGhostNodes()
double mGhostSpringStiffness
std::vector< bool > mIsGhostNode
void OutputCellPopulationParameters(out_stream &rParamsFile)
friend class boost::serialization::access
virtual ~MeshBasedCellPopulationWithGhostNodes()