33 namespace Hamiltonian {
37 assert( cd.
Check() &&
"CoreData not ok in ModifiedGC Hamiltonian");
41 void ModifiedGC::Initialize(
const CoreData& cd)
43 const auto& p = cd.m_parameters->get_child(
"cell_mechanics");
45 m_lambda_bend = p.get<
double>(
"lambda_bend");
46 m_lambda_cell_length = p.get<
double>(
"lambda_celllength");
47 m_lambda_length = p.get<
double>(
"lambda_length");
48 m_rp_stiffness = p.get<
double>(
"relative_perimeter_stiffness");
49 m_target_node_distance = p.get<
double>(
"target_node_distance");
53 double ModifiedGC::operator()(
Cell* cell)
57 if (!cell->IsBoundaryPolygon()) {
63 h += 1000.0 * pow((cell->
GetArea() - cell->GetTargetArea()) / cell->
GetArea(), 2);
69 * HHelper::WallLengthTerm(cell, m_rp_stiffness, m_target_node_distance);
Core data with mesh, parameters, random engine and time data.
A cell contains walls and nodes.
Core data used during model execution.
Interface/Implementation for Hamiltonian::HHelper.
Namespace for components of the Default model group.
Namespace for the core simulator.
Interface for Hamiltonian::ModifiedGC.
double GetArea() const
Return the area of the cell.
bool Check() const
Verify all pointers non-null.