![]() |
Chaste Commit::9e4a273f0754a391514ab12ed9d4a38fc9933db2
|
#include <NoNumericalMethod.hpp>
Inheritance diagram for NoNumericalMethod< ELEMENT_DIM, SPACE_DIM >:
Collaboration diagram for NoNumericalMethod< ELEMENT_DIM, SPACE_DIM >:Public Member Functions | |
| NoNumericalMethod () | |
| virtual | ~NoNumericalMethod () |
| virtual bool | DelegatesToPopulation () |
| virtual void | SetUseAdaptiveTimestep (bool useAdaptiveTimestep) |
| void | UpdateAllNodePositions (double dt) |
| virtual void | OutputNumericalMethodParameters (out_stream &rParamsFile) |
Public Member Functions inherited from AbstractNumericalMethod< ELEMENT_DIM, SPACE_DIM > | |
| AbstractNumericalMethod () | |
| virtual | ~AbstractNumericalMethod () |
| void | SetCellPopulation (AbstractOffLatticeCellPopulation< ELEMENT_DIM, SPACE_DIM > *pPopulation) |
| void | SetForceCollection (std::vector< boost::shared_ptr< AbstractForce< ELEMENT_DIM, SPACE_DIM > > > *pForces) |
| void | SetBoundaryConditions (std::vector< boost::shared_ptr< AbstractCellPopulationBoundaryCondition< ELEMENT_DIM, SPACE_DIM > > > *pBoundaryConditions) |
| bool | HasAdaptiveTimestep () |
| void | OutputNumericalMethodInfo (out_stream &rParamsFile) |
Public Member Functions inherited from Identifiable | |
| virtual | ~Identifiable () |
| std::string | GetIdentifier () const |
Private Member Functions | |
| template<class Archive > | |
| void | serialize (Archive &archive, const unsigned int version) |
Friends | |
| class | boost::serialization::access |
Additional Inherited Members | |
Protected Member Functions inherited from AbstractNumericalMethod< ELEMENT_DIM, SPACE_DIM > | |
| std::map< Node< SPACE_DIM > *, c_vector< double, SPACE_DIM > > | SaveCurrentNodeLocations () |
| void | ImposeBoundaryConditions (std::map< Node< SPACE_DIM > *, c_vector< double, SPACE_DIM > > &rOldNodeLocations) |
| std::vector< c_vector< double, SPACE_DIM > > | ComputeForcesIncludingDamping () |
| std::vector< c_vector< double, SPACE_DIM > > | SaveCurrentLocations () |
| void | SafeNodePositionUpdate (unsigned nodeIndex, c_vector< double, SPACE_DIM > newPosition) |
| void | DetectStepSizeExceptions (unsigned nodeIndex, c_vector< double, SPACE_DIM > &displacement, double dt) |
Protected Attributes inherited from AbstractNumericalMethod< ELEMENT_DIM, SPACE_DIM > | |
| AbstractOffLatticeCellPopulation< ELEMENT_DIM, SPACE_DIM > * | mpCellPopulation |
| std::vector< boost::shared_ptr< AbstractForce< ELEMENT_DIM, SPACE_DIM > > > * | mpForceCollection |
| std::vector< boost::shared_ptr< AbstractCellPopulationBoundaryCondition< ELEMENT_DIM, SPACE_DIM > > > * | mpBoundaryConditions |
| bool | mUseAdaptiveTimestep |
| bool | mGhostNodeForcesEnabled |
A numerical method that performs no integration of its own, and always delegates node position updates entirely to the cell population's own UpdateNodeLocations() method.
Some cell populations (currently NodeBasedCellPopulationWithBuskeUpdate and ImmersedBoundaryCellPopulation) compute node position updates themselves, rather than via the force-collection-and-integrate approach used by the rest of the NumericalMethod hierarchy. NoNumericalMethod must be used with these populations, and only with these populations; this pairing is enforced by AbstractNumericalMethod::SetCellPopulation().
Definition at line 55 of file NoNumericalMethod.hpp.
| NoNumericalMethod< ELEMENT_DIM, SPACE_DIM >::NoNumericalMethod | ( | ) |
Constructor.
Definition at line 39 of file NoNumericalMethod.cpp.
|
virtual |
Destructor.
Definition at line 45 of file NoNumericalMethod.cpp.
|
virtual |
Overridden DelegatesToPopulation() method.
Reimplemented from AbstractNumericalMethod< ELEMENT_DIM, SPACE_DIM >.
Definition at line 50 of file NoNumericalMethod.cpp.
|
virtual |
Overridden OutputNumericalMethodParameters() method.
| rParamsFile | Reference to the parameter output filestream |
Reimplemented from AbstractNumericalMethod< ELEMENT_DIM, SPACE_DIM >.
Definition at line 72 of file NoNumericalMethod.cpp.
References AbstractNumericalMethod< ELEMENT_DIM, SPACE_DIM >::OutputNumericalMethodParameters().
|
inlineprivate |
Save or restore the simulation.
| archive | the archive |
| version | the current version of this class |
Definition at line 69 of file NoNumericalMethod.hpp.
|
virtual |
Overridden SetUseAdaptiveTimestep() method.
NoNumericalMethod never throws a StepSizeException (the cell population's own UpdateNodeLocations() is entirely responsible for any movement restriction), so enabling adaptive timestepping here could never have any effect. Rather than allow that to be silently set and silently do nothing, this throws.
| useAdaptiveTimestep | whether to use an adaptive time step |
Reimplemented from AbstractNumericalMethod< ELEMENT_DIM, SPACE_DIM >.
Definition at line 56 of file NoNumericalMethod.cpp.
References EXCEPTION.
|
virtual |
Overridden UpdateAllNodePositions() method.
Delegates entirely to the cell population's own UpdateNodeLocations() method.
| dt | Time step size |
Implements AbstractNumericalMethod< ELEMENT_DIM, SPACE_DIM >.
Definition at line 66 of file NoNumericalMethod.cpp.
|
friend |
Needed for serialization.
Definition at line 60 of file NoNumericalMethod.hpp.