36 #include "ForwardEulerNumericalMethod.hpp"
38 template<
unsigned ELEMENT_DIM,
unsigned SPACE_DIM>
44 template<
unsigned ELEMENT_DIM,
unsigned SPACE_DIM>
49 template<
unsigned ELEMENT_DIM,
unsigned SPACE_DIM>
52 if (!this->mUseUpdateNodeLocation)
55 std::vector<c_vector<double, SPACE_DIM> > forces = this->ComputeForcesIncludingDamping();
59 node_iter != this->mpCellPopulation->rGetMesh().GetNodeIteratorEnd();
63 const c_vector<double, SPACE_DIM>& r_old_location = node_iter->rGetLocation();
64 c_vector<double, SPACE_DIM> displacement = dt * forces[index];
67 this->DetectStepSizeExceptions(node_iter->GetIndex(), displacement, dt);
69 c_vector<double, SPACE_DIM> new_location = r_old_location + displacement;
70 this->SafeNodePositionUpdate(node_iter->GetIndex(), new_location);
81 this->mpCellPopulation->UpdateNodeLocations(dt);
85 template<
unsigned ELEMENT_DIM,
unsigned SPACE_DIM>
ForwardEulerNumericalMethod()
void UpdateAllNodePositions(double dt)
virtual void OutputNumericalMethodParameters(out_stream &rParamsFile)
virtual void OutputNumericalMethodParameters(out_stream &rParamsFile)
#define EXPORT_TEMPLATE_CLASS_ALL_DIMS(CLASS)
virtual ~ForwardEulerNumericalMethod()