Chaste Commit::f2ff7ee04e70ac9d06c57344df8d017dbb12b97b
TysonNovak2001OdeSystem Class Reference

#include <TysonNovak2001OdeSystem.hpp>

+ Inheritance diagram for TysonNovak2001OdeSystem:
+ Collaboration diagram for TysonNovak2001OdeSystem:

Public Member Functions

 TysonNovak2001OdeSystem (std::vector< double > stateVariables=std::vector< double >())
 
 ~TysonNovak2001OdeSystem ()
 
void Init ()
 
void EvaluateYDerivatives (double time, const std::vector< double > &rY, std::vector< double > &rDY)
 
bool CalculateStoppingEvent (double time, const std::vector< double > &rY)
 
double CalculateRootFunction (double time, const std::vector< double > &rY)
 
virtual void AnalyticJacobian (const std::vector< double > &rSolutionGuess, double **jacobian, double time, double timeStep)
 
- Public Member Functions inherited from AbstractOdeSystemWithAnalyticJacobian
 AbstractOdeSystemWithAnalyticJacobian (unsigned numberOfStateVariables=0)
 
- Public Member Functions inherited from AbstractOdeSystem
 AbstractOdeSystem (unsigned numberOfStateVariables)
 
virtual ~AbstractOdeSystem ()
 
bool GetUseAnalyticJacobian ()
 
const std::vector< double > & rGetConstStateVariables () const
 
- Public Member Functions inherited from AbstractParameterisedSystem< std::vector< double > >
 AbstractParameterisedSystem (unsigned numberOfStateVariables)
 
std::vector< double > & rGetStateVariables ()
 
std::vector< doubleGetStateVariables ()
 
void SetStateVariables (const std::vector< double > &rStateVariables)
 
double GetStateVariable (unsigned index) const
 
double GetStateVariable (const std::string &rName) const
 
void SetStateVariable (unsigned index, double newValue)
 
void SetStateVariable (const std::string &rName, double newValue)
 
virtual void VerifyStateVariables ()
 
void SetDefaultInitialConditions (const std::vector< double > &rInitialConditions)
 
void SetDefaultInitialCondition (unsigned index, double initialCondition)
 
std::vector< doubleGetInitialConditions () const
 
void ResetToInitialConditions ()
 
double GetParameter (unsigned index) const
 
double GetParameter (const std::string &rName) const
 
void SetParameter (const std::string &rName, double value)
 
void SetParameter (unsigned index, double value)
 
double GetAnyVariable (unsigned index, double time=0.0, std::vector< double > *pDerivedQuantities=NULL)
 
double GetAnyVariable (const std::string &rName, double time=0.0, std::vector< double > *pDerivedQuantities=NULL)
 
void SetAnyVariable (unsigned index, double value)
 
void SetAnyVariable (const std::string &rName, double value)
 
virtual std::vector< doubleComputeDerivedQuantities (double time, const std::vector< double > &rState)
 
std::vector< doubleComputeDerivedQuantitiesFromCurrentState (double time)
 
- Public Member Functions inherited from AbstractUntemplatedParameterisedSystem
 AbstractUntemplatedParameterisedSystem (unsigned numberOfStateVariables)
 
virtual ~AbstractUntemplatedParameterisedSystem ()
 
boost::shared_ptr< const AbstractOdeSystemInformationGetSystemInformation () const
 
std::string GetSystemName () const
 
unsigned GetNumberOfAttributes () const
 
bool HasAttribute (const std::string &rName) const
 
double GetAttribute (const std::string &rName) const
 
unsigned GetNumberOfStateVariables () const
 
const std::vector< std::string > & rGetStateVariableNames () const
 
const std::vector< std::string > & rGetStateVariableUnits () const
 
unsigned GetStateVariableIndex (const std::string &rName) const
 
bool HasStateVariable (const std::string &rName) const
 
std::string GetStateVariableUnits (unsigned index) const
 
unsigned GetNumberOfParameters () const
 
const std::vector< std::string > & rGetParameterNames () const
 
const std::vector< std::string > & rGetParameterUnits () const
 
unsigned GetParameterIndex (const std::string &rName) const
 
bool HasParameter (const std::string &rName) const
 
std::string GetParameterUnits (unsigned index) const
 
unsigned GetNumberOfDerivedQuantities () const
 
const std::vector< std::string > & rGetDerivedQuantityNames () const
 
const std::vector< std::string > & rGetDerivedQuantityUnits () const
 
unsigned GetDerivedQuantityIndex (const std::string &rName) const
 
bool HasDerivedQuantity (const std::string &rName) const
 
std::string GetDerivedQuantityUnits (unsigned index) const
 
unsigned GetAnyVariableIndex (const std::string &rName) const
 
bool HasAnyVariable (const std::string &rName) const
 
std::string GetAnyVariableUnits (unsigned index) const
 
std::string GetAnyVariableUnits (const std::string &rName) const
 

Private Member Functions

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

Private Attributes

double mK1
 
double mK2d
 
double mK2dd
 
double mK2ddd
 
double mCycB_threshold
 
double mK3d
 
double mK3dd
 
double mK4d
 
double mK4
 
double mJ3
 
double mJ4
 
double mK5d
 
double mK5dd
 
double mK6
 
double mJ5
 
unsigned mN
 
double mK7
 
double mK8
 
double mJ7
 
double mJ8
 
double mMad
 
double mK9
 
double mK10
 
double mK11
 
double mK12d
 
double mK12dd
 
double mK12ddd
 
double mKeq
 
double mK13
 
double mK14
 
double mK15d
 
double mK15dd
 
double mK16d
 
double mK16dd
 
double mJ15
 
double mJ16
 
double mMu
 
double mMstar
 

Friends

class boost::serialization::access
 

Additional Inherited Members

- Protected Member Functions inherited from AbstractParameterisedSystem< std::vector< double > >
std::string DumpState (const std::string &rMessage)
 
std::string DumpState (const std::string &rMessage, std::vector< double > Y)
 
std::string DumpState (const std::string &rMessage, std::vector< double > Y, double time)
 
void CheckParametersOnLoad (const std::vector< double > &rParameters, const std::vector< std::string > &rParameterNames)
 
- Protected Attributes inherited from AbstractOdeSystem
bool mUseAnalyticJacobian
 
- Protected Attributes inherited from AbstractParameterisedSystem< std::vector< double > >
std::vector< doublemStateVariables
 
std::vector< doublemParameters
 
- Protected Attributes inherited from AbstractUntemplatedParameterisedSystem
unsigned mNumberOfStateVariables
 
boost::shared_ptr< AbstractOdeSystemInformationmpSystemInfo
 

Detailed Description

Represents the Tyson & Novak (2001) system of ODEs. [doi:10.1006/jtbi.2001.2293]

Definition at line 51 of file TysonNovak2001OdeSystem.hpp.

Constructor & Destructor Documentation

◆ TysonNovak2001OdeSystem()

TysonNovak2001OdeSystem::TysonNovak2001OdeSystem ( std::vector< double stateVariables = std::vector<double>())

Constructor.

Parameters
stateVariablesoptional initial conditions for state variables (only used in archiving)

Definition at line 40 of file TysonNovak2001OdeSystem.cpp.

References Init(), OdeSystemInformation< ODE_SYSTEM >::Instance(), AbstractUntemplatedParameterisedSystem::mpSystemInfo, and AbstractParameterisedSystem< std::vector< double > >::SetStateVariables().

◆ ~TysonNovak2001OdeSystem()

TysonNovak2001OdeSystem::~TysonNovak2001OdeSystem ( )

Destructor.

Definition at line 53 of file TysonNovak2001OdeSystem.cpp.

Member Function Documentation

◆ AnalyticJacobian()

void TysonNovak2001OdeSystem::AnalyticJacobian ( const std::vector< double > &  rSolutionGuess,
double **  jacobian,
double  time,
double  timeStep 
)
virtual

Compute the Jacobian of the ODE system.

Parameters
rSolutionGuessinitial guess for the solution vector.
jacobianthe Jacobian of the ODE system.
timeat which to calculate the Jacobian.
timeStepused to calculate the Jacobian.

Implements AbstractOdeSystemWithAnalyticJacobian.

Definition at line 161 of file TysonNovak2001OdeSystem.cpp.

References mJ3, mJ4, mJ5, mJ7, mJ8, mK10, mK2d, mK2dd, mK3d, mK3dd, mK4, mK5dd, mK6, mK7, mK8, mK9, mMad, mMstar, mMu, and mN.

◆ CalculateRootFunction()

double TysonNovak2001OdeSystem::CalculateRootFunction ( double  time,
const std::vector< double > &  rY 
)
virtual

Calculate whether the conditions for the cell cycle to finish have been met. (Used by CVODE solver to find exact stopping position)

Parameters
timeat which to calculate whether the stopping event has occurred
rYvalue of the solution vector used to evaluate the RHS.
Returns
How close we are to the root of the stopping condition

Reimplemented from AbstractOdeSystem.

Definition at line 234 of file TysonNovak2001OdeSystem.cpp.

References EvaluateYDerivatives(), and mCycB_threshold.

◆ CalculateStoppingEvent()

bool TysonNovak2001OdeSystem::CalculateStoppingEvent ( double  time,
const std::vector< double > &  rY 
)
virtual

Calculate whether the conditions for the cell cycle to finish have been met. (Used by Chaste solvers to find whether or not to stop solving)

Parameters
timeat which to calculate whether the stopping event has occurred
rYvalue of the solution vector used to evaluate the RHS.
Returns
whether or not stopping conditions have been met

Reimplemented from AbstractOdeSystem.

Definition at line 224 of file TysonNovak2001OdeSystem.cpp.

References EvaluateYDerivatives(), and mCycB_threshold.

◆ EvaluateYDerivatives()

void TysonNovak2001OdeSystem::EvaluateYDerivatives ( double  time,
const std::vector< double > &  rY,
std::vector< double > &  rDY 
)
virtual

Compute the RHS of the Alarcon et al. (2004) system of ODEs.

Returns a vector representing the RHS of the ODEs at each time step, y' = [y1' ... yn']. An ODE solver will call this function repeatedly to solve for y = [y1 ... yn].

Parameters
timeused to evaluate the RHS.
rYvalue of the solution vector used to evaluate the RHS.
rDYfilled in with the resulting derivatives (using Alarcons et al. (2004) system of equations).

1. [CycB] 2. [Cdh1] 3. [Cdc20T] 4. [Cdc20A] 5. [IEP] 6. m - mass of the cell

Implements AbstractOdeSystem.

Definition at line 101 of file TysonNovak2001OdeSystem.cpp.

References mJ3, mJ4, mJ5, mJ7, mJ8, mK1, mK10, mK2d, mK2dd, mK3d, mK3dd, mK4, mK5d, mK5dd, mK6, mK7, mK8, mK9, mMad, mMstar, mMu, and mN.

Referenced by CalculateRootFunction(), and CalculateStoppingEvent().

◆ Init()

void TysonNovak2001OdeSystem::Init ( )

Initialise parameter values.

Definition at line 58 of file TysonNovak2001OdeSystem.cpp.

References mCycB_threshold, mJ15, mJ16, mJ3, mJ4, mJ5, mJ7, mJ8, mK1, mK10, mK11, mK12d, mK12dd, mK12ddd, mK13, mK14, mK15d, mK15dd, mK16d, mK16dd, mK2d, mK2dd, mK2ddd, mK3d, mK3dd, mK4, mK4d, mK5d, mK5dd, mK6, mK7, mK8, mK9, mKeq, mMad, mMstar, mMu, and mN.

Referenced by TysonNovak2001OdeSystem().

◆ serialize()

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

Serialize the object and its member variables.

Parameters
archivethe archive
versionthe current version of this class

Definition at line 144 of file TysonNovak2001OdeSystem.hpp.

Friends And Related Symbol Documentation

◆ boost::serialization::access

friend class boost::serialization::access
friend

Definition at line 136 of file TysonNovak2001OdeSystem.hpp.

Member Data Documentation

◆ mCycB_threshold

double TysonNovak2001OdeSystem::mCycB_threshold
private

Dimensionless parameter [CycB]_threshold.

Definition at line 68 of file TysonNovak2001OdeSystem.hpp.

Referenced by CalculateRootFunction(), CalculateStoppingEvent(), and Init().

◆ mJ15

double TysonNovak2001OdeSystem::mJ15
private

Dimensionless parameter J_15.

Definition at line 128 of file TysonNovak2001OdeSystem.hpp.

Referenced by Init().

◆ mJ16

double TysonNovak2001OdeSystem::mJ16
private

Dimensionless parameter J_16.

Definition at line 130 of file TysonNovak2001OdeSystem.hpp.

Referenced by Init().

◆ mJ3

double TysonNovak2001OdeSystem::mJ3
private

Dimensionless parameter J_3.

Definition at line 78 of file TysonNovak2001OdeSystem.hpp.

Referenced by AnalyticJacobian(), EvaluateYDerivatives(), and Init().

◆ mJ4

double TysonNovak2001OdeSystem::mJ4
private

Dimensionless parameter J_4.

Definition at line 80 of file TysonNovak2001OdeSystem.hpp.

Referenced by AnalyticJacobian(), EvaluateYDerivatives(), and Init().

◆ mJ5

double TysonNovak2001OdeSystem::mJ5
private

Dimensionless parameter J_5.

Definition at line 88 of file TysonNovak2001OdeSystem.hpp.

Referenced by AnalyticJacobian(), EvaluateYDerivatives(), and Init().

◆ mJ7

double TysonNovak2001OdeSystem::mJ7
private

Dimensionless parameter J_7.

Definition at line 96 of file TysonNovak2001OdeSystem.hpp.

Referenced by AnalyticJacobian(), EvaluateYDerivatives(), and Init().

◆ mJ8

double TysonNovak2001OdeSystem::mJ8
private

Dimensionless parameter J_8.

Definition at line 98 of file TysonNovak2001OdeSystem.hpp.

Referenced by AnalyticJacobian(), EvaluateYDerivatives(), and Init().

◆ mK1

double TysonNovak2001OdeSystem::mK1
private

Parameters for the Tyson & Novak (2001) model. Dimensional parameter k_1.

Definition at line 60 of file TysonNovak2001OdeSystem.hpp.

Referenced by EvaluateYDerivatives(), and Init().

◆ mK10

double TysonNovak2001OdeSystem::mK10
private

Dimensional parameter k_10.

Definition at line 104 of file TysonNovak2001OdeSystem.hpp.

Referenced by AnalyticJacobian(), EvaluateYDerivatives(), and Init().

◆ mK11

double TysonNovak2001OdeSystem::mK11
private

Dimensional parameter k_11.

Definition at line 106 of file TysonNovak2001OdeSystem.hpp.

Referenced by Init().

◆ mK12d

double TysonNovak2001OdeSystem::mK12d
private

Dimensional parameter k_12'.

Definition at line 108 of file TysonNovak2001OdeSystem.hpp.

Referenced by Init().

◆ mK12dd

double TysonNovak2001OdeSystem::mK12dd
private

Dimensional parameter k_12''.

Definition at line 110 of file TysonNovak2001OdeSystem.hpp.

Referenced by Init().

◆ mK12ddd

double TysonNovak2001OdeSystem::mK12ddd
private

Dimensional parameter k_12'''.

Definition at line 112 of file TysonNovak2001OdeSystem.hpp.

Referenced by Init().

◆ mK13

double TysonNovak2001OdeSystem::mK13
private

Dimensional parameter k_13.

Definition at line 116 of file TysonNovak2001OdeSystem.hpp.

Referenced by Init().

◆ mK14

double TysonNovak2001OdeSystem::mK14
private

Dimensional parameter k_14.

Definition at line 118 of file TysonNovak2001OdeSystem.hpp.

Referenced by Init().

◆ mK15d

double TysonNovak2001OdeSystem::mK15d
private

Dimensional parameter k_15'.

Definition at line 120 of file TysonNovak2001OdeSystem.hpp.

Referenced by Init().

◆ mK15dd

double TysonNovak2001OdeSystem::mK15dd
private

Dimensional parameter k_15''.

Definition at line 122 of file TysonNovak2001OdeSystem.hpp.

Referenced by Init().

◆ mK16d

double TysonNovak2001OdeSystem::mK16d
private

Dimensional parameter k_16'.

Definition at line 124 of file TysonNovak2001OdeSystem.hpp.

Referenced by Init().

◆ mK16dd

double TysonNovak2001OdeSystem::mK16dd
private

Dimensional parameter k_16''.

Definition at line 126 of file TysonNovak2001OdeSystem.hpp.

Referenced by Init().

◆ mK2d

double TysonNovak2001OdeSystem::mK2d
private

Dimensional parameter k_2'.

Definition at line 62 of file TysonNovak2001OdeSystem.hpp.

Referenced by AnalyticJacobian(), EvaluateYDerivatives(), and Init().

◆ mK2dd

double TysonNovak2001OdeSystem::mK2dd
private

Dimensional parameter k_2''.

Definition at line 64 of file TysonNovak2001OdeSystem.hpp.

Referenced by AnalyticJacobian(), EvaluateYDerivatives(), and Init().

◆ mK2ddd

double TysonNovak2001OdeSystem::mK2ddd
private

Dimensional parameter k_2'''.

Definition at line 66 of file TysonNovak2001OdeSystem.hpp.

Referenced by Init().

◆ mK3d

double TysonNovak2001OdeSystem::mK3d
private

Dimensional parameter k_3'.

Definition at line 70 of file TysonNovak2001OdeSystem.hpp.

Referenced by AnalyticJacobian(), EvaluateYDerivatives(), and Init().

◆ mK3dd

double TysonNovak2001OdeSystem::mK3dd
private

Dimensional parameter k_3''.

Definition at line 72 of file TysonNovak2001OdeSystem.hpp.

Referenced by AnalyticJacobian(), EvaluateYDerivatives(), and Init().

◆ mK4

double TysonNovak2001OdeSystem::mK4
private

Dimensional parameter k_4.

Definition at line 76 of file TysonNovak2001OdeSystem.hpp.

Referenced by AnalyticJacobian(), EvaluateYDerivatives(), and Init().

◆ mK4d

double TysonNovak2001OdeSystem::mK4d
private

Dimensional parameter k_4'.

Definition at line 74 of file TysonNovak2001OdeSystem.hpp.

Referenced by Init().

◆ mK5d

double TysonNovak2001OdeSystem::mK5d
private

Dimensional parameter k_5'.

Definition at line 82 of file TysonNovak2001OdeSystem.hpp.

Referenced by EvaluateYDerivatives(), and Init().

◆ mK5dd

double TysonNovak2001OdeSystem::mK5dd
private

Dimensional parameter k_5''.

Definition at line 84 of file TysonNovak2001OdeSystem.hpp.

Referenced by AnalyticJacobian(), EvaluateYDerivatives(), and Init().

◆ mK6

double TysonNovak2001OdeSystem::mK6
private

Dimensional parameter k_6.

Definition at line 86 of file TysonNovak2001OdeSystem.hpp.

Referenced by AnalyticJacobian(), EvaluateYDerivatives(), and Init().

◆ mK7

double TysonNovak2001OdeSystem::mK7
private

Dimensional parameter k_7.

Definition at line 92 of file TysonNovak2001OdeSystem.hpp.

Referenced by AnalyticJacobian(), EvaluateYDerivatives(), and Init().

◆ mK8

double TysonNovak2001OdeSystem::mK8
private

Dimensional parameter k_8.

Definition at line 94 of file TysonNovak2001OdeSystem.hpp.

Referenced by AnalyticJacobian(), EvaluateYDerivatives(), and Init().

◆ mK9

double TysonNovak2001OdeSystem::mK9
private

Dimensional parameter k_9.

Definition at line 102 of file TysonNovak2001OdeSystem.hpp.

Referenced by AnalyticJacobian(), EvaluateYDerivatives(), and Init().

◆ mKeq

double TysonNovak2001OdeSystem::mKeq
private

Dimensionless parameter K_eq.

Definition at line 114 of file TysonNovak2001OdeSystem.hpp.

Referenced by Init().

◆ mMad

double TysonNovak2001OdeSystem::mMad
private

Dimensionless parameter [Mad].

Definition at line 100 of file TysonNovak2001OdeSystem.hpp.

Referenced by AnalyticJacobian(), EvaluateYDerivatives(), and Init().

◆ mMstar

double TysonNovak2001OdeSystem::mMstar
private

Dimensionless parameter m_star.

Definition at line 134 of file TysonNovak2001OdeSystem.hpp.

Referenced by AnalyticJacobian(), EvaluateYDerivatives(), and Init().

◆ mMu

double TysonNovak2001OdeSystem::mMu
private

Dimensional parameter mu.

Definition at line 132 of file TysonNovak2001OdeSystem.hpp.

Referenced by AnalyticJacobian(), EvaluateYDerivatives(), and Init().

◆ mN

unsigned TysonNovak2001OdeSystem::mN
private

Dimensionless parameter n.

Definition at line 90 of file TysonNovak2001OdeSystem.hpp.

Referenced by AnalyticJacobian(), EvaluateYDerivatives(), and Init().


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