36#include "PlaneBasedCellKiller.hpp"
40 c_vector<double, DIM> point,
41 c_vector<double, DIM> normal)
45 assert(norm_2(normal) > 0.0);
58 return mNormalToPlane;
65 cell_iter != this->mpCellPopulation->End();
68 c_vector<double, DIM> cell_location = this->mpCellPopulation->GetLocationOfCellCentre(*cell_iter);
70 if (inner_prod(cell_location - mPointOnPlane, mNormalToPlane) > 0.0)
73 this->mpCellPopulation->KillCell(*cell_iter,
"PlaneBasedCellKiller");
81 *rParamsFile <<
"\t\t\t<PointOnPlane>";
82 for (
unsigned index=0; index != DIM-1U; index++)
84 *rParamsFile << mPointOnPlane[index] <<
",";
86 *rParamsFile << mPointOnPlane[DIM-1] <<
"</PointOnPlane>\n";
88 *rParamsFile <<
"\t\t\t<NormalToPlane>";
89 for (
unsigned index=0; index != DIM-1U; index++)
91 *rParamsFile << mNormalToPlane[index] <<
",";
93 *rParamsFile << mNormalToPlane[DIM-1] <<
"</NormalToPlane>\n";
#define EXPORT_TEMPLATE_CLASS_SAME_DIMS(CLASS)
virtual void OutputCellKillerParameters(out_stream &rParamsFile)=0
void OutputCellKillerParameters(out_stream &rParamsFile)
const c_vector< double, DIM > & rGetNormalToPlane() const
c_vector< double, DIM > mNormalToPlane
PlaneBasedCellKiller(AbstractCellPopulation< DIM > *pCellPopulation, c_vector< double, DIM > point, c_vector< double, DIM > normal)
const c_vector< double, DIM > & rGetPointOnPlane() const
virtual void CheckAndLabelCellsForApoptosisOrDeath()