Chaste
Release::3.4
|
#include <GRL1IvpOdeSolver.hpp>
Public Member Functions | |
GRL1IvpOdeSolver () | |
Public Member Functions inherited from AbstractOneStepIvpOdeSolver | |
virtual OdeSolution | Solve (AbstractOdeSystem *pAbstractOdeSystem, std::vector< double > &rYValues, double startTime, double endTime, double timeStep, double timeSampling) |
virtual void | Solve (AbstractOdeSystem *pAbstractOdeSystem, std::vector< double > &rYValues, double startTime, double endTime, double timeStep) |
virtual | ~AbstractOneStepIvpOdeSolver () |
Public Member Functions inherited from AbstractIvpOdeSolver | |
virtual void | SolveAndUpdateStateVariable (AbstractOdeSystem *pAbstractOdeSystem, double startTime, double endTime, double timeStep) |
bool | StoppingEventOccurred () |
double | GetStoppingTime () |
AbstractIvpOdeSolver () | |
virtual | ~AbstractIvpOdeSolver () |
Public Member Functions inherited from Identifiable | |
virtual | ~Identifiable () |
std::string | GetIdentifier () const |
Protected Member Functions | |
void | CalculateNextYValue (AbstractOdeSystem *pAbstractOdeSystem, double timeStep, double time, std::vector< double > &rCurrentYValues, std::vector< double > &rNextYValues) |
Protected Member Functions inherited from AbstractOneStepIvpOdeSolver | |
virtual void | InternalSolve (AbstractOdeSystem *pAbstractOdeSystem, std::vector< double > &rCurrentYValues, std::vector< double > &rWorkingMemory, double startTime, double endTime, double timeStep) |
Private Member Functions | |
template<class Archive > | |
void | serialize (Archive &archive, const unsigned int version) |
Private Attributes | |
std::vector< double > | mEvalF |
std::vector< double > | mPartialF |
std::vector< double > | mTemp |
Friends | |
class | boost::serialization::access |
Additional Inherited Members | |
Protected Attributes inherited from AbstractIvpOdeSolver | |
bool | mStoppingEventOccurred |
double | mStoppingTime |
A concrete one step ODE solver class that employs the GRL1 first-order solver. Method is mentioned in J. Sundnes, R. Artebrant, O. Skavhaug, and A. Tveito. A second-order algorithm for solving dynamic cell membrane equations. IEEE Trans. Biomed. Eng., 56(10):2546-2548, 2009.
Definition at line 59 of file GRL1IvpOdeSolver.hpp.
|
inline |
Constructor.
Definition at line 107 of file GRL1IvpOdeSolver.hpp.
|
protectedvirtual |
Calculate the solution to the ODE system at the next timestep.
pAbstractOdeSystem | the ODE system to solve |
timeStep | dt |
time | the current time |
rCurrentYValues | the current (initial) state |
rNextYValues | the state at the next timestep |
Implements AbstractOneStepIvpOdeSolver.
Definition at line 48 of file GRL1IvpOdeSolver.cpp.
References AbstractOdeSystem::EvaluateYDerivatives(), AbstractUntemplatedParameterisedSystem::GetNumberOfStateVariables(), mEvalF, mPartialF, and mTemp.
|
inlineprivate |
Archive the abstract IVP Solver, never used directly - boost uses this.
archive | the archive |
version | the current version of this class |
Definition at line 72 of file GRL1IvpOdeSolver.hpp.
|
friend |
Needed for serialization.
Definition at line 64 of file GRL1IvpOdeSolver.hpp.
|
private |
Working memory for the solver
Definition at line 79 of file GRL1IvpOdeSolver.hpp.
Referenced by CalculateNextYValue().
|
private |
Working memory for the solver
Definition at line 81 of file GRL1IvpOdeSolver.hpp.
Referenced by CalculateNextYValue().
|
private |
Working memory for the solver
Definition at line 83 of file GRL1IvpOdeSolver.hpp.
Referenced by CalculateNextYValue().