Chaste Release::3.1
RungeKutta4IvpOdeSolver Class Reference

#include <RungeKutta4IvpOdeSolver.hpp>

Inheritance diagram for RungeKutta4IvpOdeSolver:
Collaboration diagram for RungeKutta4IvpOdeSolver:

List of all members.

Protected Member Functions

void CalculateNextYValue (AbstractOdeSystem *pAbstractOdeSystem, double timeStep, double time, std::vector< double > &rCurrentYValues, std::vector< double > &rNextYValues)

Private Member Functions

template<class Archive >
void serialize (Archive &archive, const unsigned int version)

Private Attributes

std::vector< doublek1
std::vector< doublek2
std::vector< doublek3
std::vector< doublek4
std::vector< doubleyki

Friends

class boost::serialization::access

Detailed Description

A concrete one step ODE solver class that employs the Runge Kutta 4th order solver (RK4).

Definition at line 48 of file RungeKutta4IvpOdeSolver.hpp.


Member Function Documentation

void RungeKutta4IvpOdeSolver::CalculateNextYValue ( AbstractOdeSystem pAbstractOdeSystem,
double  timeStep,
double  time,
std::vector< double > &  rCurrentYValues,
std::vector< double > &  rNextYValues 
) [protected, virtual]

Calculate the solution to the ODE system at the next timestep.

Parameters:
pAbstractOdeSystemthe ODE system to solve
timeStepdt
timethe current time
rCurrentYValuesthe current (initial) state
rNextYValuesthe state at the next timestep

Implements AbstractOneStepIvpOdeSolver.

Definition at line 38 of file RungeKutta4IvpOdeSolver.cpp.

References AbstractOdeSystem::EvaluateYDerivatives(), AbstractUntemplatedParameterisedSystem::GetNumberOfStateVariables(), k1, k2, k3, k4, and yki.

template<class Archive >
void RungeKutta4IvpOdeSolver::serialize ( Archive &  archive,
const unsigned int  version 
) [inline, private]

Archive the abstract IVP Solver, never used directly - boost uses this.

Parameters:
archivethe archive
versionthe current version of this class

Reimplemented from AbstractOneStepIvpOdeSolver.

Definition at line 61 of file RungeKutta4IvpOdeSolver.hpp.


Friends And Related Function Documentation

friend class boost::serialization::access [friend]

Needed for serialization.

Reimplemented from AbstractOneStepIvpOdeSolver.

Definition at line 53 of file RungeKutta4IvpOdeSolver.hpp.


Member Data Documentation

std::vector<double> RungeKutta4IvpOdeSolver::k1 [private]

Working memory: expression k1 in the RK4 method.

Definition at line 86 of file RungeKutta4IvpOdeSolver.hpp.

Referenced by CalculateNextYValue().

std::vector<double> RungeKutta4IvpOdeSolver::k2 [private]

Working memory: expression k2 in the RK4 method.

Definition at line 87 of file RungeKutta4IvpOdeSolver.hpp.

Referenced by CalculateNextYValue().

std::vector<double> RungeKutta4IvpOdeSolver::k3 [private]

Working memory: expression k3 in the RK4 method.

Definition at line 88 of file RungeKutta4IvpOdeSolver.hpp.

Referenced by CalculateNextYValue().

std::vector<double> RungeKutta4IvpOdeSolver::k4 [private]

Working memory: expression k4 in the RK4 method.

Definition at line 89 of file RungeKutta4IvpOdeSolver.hpp.

Referenced by CalculateNextYValue().

std::vector<double> RungeKutta4IvpOdeSolver::yki [private]

Working memory: expression yki in the RK4 method.

Definition at line 90 of file RungeKutta4IvpOdeSolver.hpp.

Referenced by CalculateNextYValue().


The documentation for this class was generated from the following files: