DiFrancescoNoble1985OdeSystem Class Reference

#include <DiFrancescoNoble1985OdeSystem.hpp>

Inherits AbstractCardiacCell.

Collaboration diagram for DiFrancescoNoble1985OdeSystem:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 DiFrancescoNoble1985OdeSystem (boost::shared_ptr< AbstractIvpOdeSolver > pSolver, boost::shared_ptr< AbstractStimulusFunction > pIntracellularStimulus)
 ~DiFrancescoNoble1985OdeSystem ()
void EvaluateYDerivatives (double time, const std::vector< double > &rY, std::vector< double > &rDY)
double GetIIonic ()

Private Member Functions

void VerifyStateVariables ()

Private Attributes

double Vi
double Vup
double Vrel
double Ve
double Vcell
double RToNF

Static Private Attributes

static const double membrane_C = 75.0
static const double radius = 0.05
static const double length = 2
static const double V_e_ratio = 0.1
static const double R = 8314.472
static const double T = 310
static const double F = 96485.3415
static const double g_fna = 3
static const double g_fk = 3
static const double g_na_b = 0.18
static const double g_ca_b = 0.02
static const double g_na = 750.0
static const double g_k1 = 920
static const double g_to = 0.28
static const double I_P = 125
static const double i_kmax = 180
static const double k_naca = 0.02
static const double P_si = 15.0
static const double Nao = 140
static const double Cao = 2
static const double Kb = 4
static const double Kmf = 45
static const double Km1 = 210
static const double Kmto = 10
static const double KmK = 1
static const double KmNa = 40
static const double Kmf2 = 0.001
static const double KmCa = 0.001
static const double Km_Ca = 0.0005
static const double n_naca = 3
static const double gamma = 0.5
static const double d_naca = 0.001
static const double rCa = 2.0
static const double tau_up = 0.025
static const double tau_rep = 2
static const double tau_rel = 0.05
static const double Ca_up_max = 5
static const double pf = 0.0007
static const double Vecs = 0.05

Detailed Description

This class sets up the DifrancescoNoble1985 equations. In this version of the model the time is in milliseconds (unlike the paper).

Definition at line 39 of file DiFrancescoNoble1985OdeSystem.hpp.


Constructor & Destructor Documentation

DiFrancescoNoble1985OdeSystem::DiFrancescoNoble1985OdeSystem ( boost::shared_ptr< AbstractIvpOdeSolver pSolver,
boost::shared_ptr< AbstractStimulusFunction pIntracellularStimulus 
)

Constructor

Parameters:
pSolver is a pointer to the ODE solver
pIntracellularStimulus is a pointer to the intracellular stimulus

Definition at line 83 of file DiFrancescoNoble1985OdeSystem.cpp.

References F, AbstractCardiacCell::Init(), length, AbstractOdeSystem::mpSystemInfo, R, radius, RToNF, T, V_e_ratio, Vcell, Ve, Vecs, Vi, Vrel, and Vup.

DiFrancescoNoble1985OdeSystem::~DiFrancescoNoble1985OdeSystem ( void   ) 

Destructor

Definition at line 105 of file DiFrancescoNoble1985OdeSystem.cpp.


Member Function Documentation

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

Fill in a vector representing the RHS of the TenTusscher2006 system of Odes at each time step, y' = [y1' ... yn']. Some ODE solver will call this function repeatedly to solve for y = [y1 ... yn].

Parameters:
time the current time, in milliseconds
rY current values of the state variables
rDY to be filled in with derivatives

Fill in a vector representing the RHS of the LuoRudyIModel1991OdeSystem system of Odes at each time step, y' = [y1' ... yn']. Some ODE solver will call this function repeatedly to solve for y = [y1 ... yn].

Parameters:
time the current time, in milliseconds
rY current values of the state variables
rDY to be filled in with derivatives

Implements AbstractOdeSystem.

Definition at line 118 of file DiFrancescoNoble1985OdeSystem.cpp.

References Ca_up_max, Cao, d_naca, F, g_ca_b, g_fk, g_fna, g_k1, g_na, g_na_b, g_to, gamma, AbstractCardiacCell::GetStimulus(), i_kmax, I_P, k_naca, Kb, Km1, Km_Ca, KmCa, Kmf, Kmf2, KmK, KmNa, Kmto, membrane_C, AbstractCardiacCell::mSetVoltageDerivativeToZero, n_naca, Nao, P_si, pf, rCa, RToNF, tau_rel, tau_rep, tau_up, Ve, VerifyStateVariables(), Vi, Vrel, and Vup.

double DiFrancescoNoble1985OdeSystem::GetIIonic (  )  [virtual]

Returns the ionic current

Returns:
the total ionic current

Implements AbstractCardiacCell.

Definition at line 333 of file DiFrancescoNoble1985OdeSystem.cpp.

References Cao, d_naca, g_ca_b, g_fk, g_fna, g_k1, g_na, g_na_b, g_to, gamma, i_kmax, I_P, k_naca, Km1, Km_Ca, Kmf, KmK, KmNa, Kmto, AbstractOdeSystem::mStateVariables, n_naca, Nao, P_si, and RToNF.

void DiFrancescoNoble1985OdeSystem::VerifyStateVariables (  )  [private, virtual]

Range-checking on the current values of the state variables. Make sure all gating variables have are within zero and one, and all concentrations are positive

Reimplemented from AbstractCardiacCell.

Definition at line 412 of file DiFrancescoNoble1985OdeSystem.cpp.

References AbstractOdeSystem::DumpState(), and AbstractOdeSystem::rGetStateVariables().

Referenced by EvaluateYDerivatives().


Member Data Documentation

const double DiFrancescoNoble1985OdeSystem::Ca_up_max = 5 [static, private]

mM

Definition at line 84 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by EvaluateYDerivatives().

const double DiFrancescoNoble1985OdeSystem::Cao = 2 [static, private]

mM

Definition at line 66 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by EvaluateYDerivatives(), and GetIIonic().

const double DiFrancescoNoble1985OdeSystem::d_naca = 0.001 [static, private]

dimensionless

Definition at line 79 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by EvaluateYDerivatives(), and GetIIonic().

const double DiFrancescoNoble1985OdeSystem::F = 96485.3415 [static, private]

C/mol

Definition at line 50 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by DiFrancescoNoble1985OdeSystem(), and EvaluateYDerivatives().

const double DiFrancescoNoble1985OdeSystem::g_ca_b = 0.02 [static, private]

microS

Definition at line 56 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by EvaluateYDerivatives(), and GetIIonic().

const double DiFrancescoNoble1985OdeSystem::g_fk = 3 [static, private]

microS

Definition at line 54 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by EvaluateYDerivatives(), and GetIIonic().

const double DiFrancescoNoble1985OdeSystem::g_fna = 3 [static, private]

microS

Definition at line 53 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by EvaluateYDerivatives(), and GetIIonic().

const double DiFrancescoNoble1985OdeSystem::g_k1 = 920 [static, private]

microS

Definition at line 58 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by EvaluateYDerivatives(), and GetIIonic().

const double DiFrancescoNoble1985OdeSystem::g_na = 750.0 [static, private]

microS

Definition at line 57 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by EvaluateYDerivatives(), and GetIIonic().

const double DiFrancescoNoble1985OdeSystem::g_na_b = 0.18 [static, private]

microS

Definition at line 55 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by EvaluateYDerivatives(), and GetIIonic().

const double DiFrancescoNoble1985OdeSystem::g_to = 0.28 [static, private]

microS/mM

Definition at line 59 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by EvaluateYDerivatives(), and GetIIonic().

const double DiFrancescoNoble1985OdeSystem::gamma = 0.5 [static, private]

dimensionless

Definition at line 78 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by EvaluateYDerivatives(), and GetIIonic().

const double DiFrancescoNoble1985OdeSystem::i_kmax = 180 [static, private]

nA

Definition at line 61 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by EvaluateYDerivatives(), and GetIIonic().

const double DiFrancescoNoble1985OdeSystem::I_P = 125 [static, private]

nA

Definition at line 60 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by EvaluateYDerivatives(), and GetIIonic().

const double DiFrancescoNoble1985OdeSystem::k_naca = 0.02 [static, private]

nA

Definition at line 62 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by EvaluateYDerivatives(), and GetIIonic().

const double DiFrancescoNoble1985OdeSystem::Kb = 4 [static, private]

mM

Definition at line 67 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by EvaluateYDerivatives().

const double DiFrancescoNoble1985OdeSystem::Km1 = 210 [static, private]

mM

Definition at line 69 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by EvaluateYDerivatives(), and GetIIonic().

const double DiFrancescoNoble1985OdeSystem::Km_Ca = 0.0005 [static, private]

mM

Definition at line 75 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by EvaluateYDerivatives(), and GetIIonic().

const double DiFrancescoNoble1985OdeSystem::KmCa = 0.001 [static, private]

mM

Definition at line 74 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by EvaluateYDerivatives().

const double DiFrancescoNoble1985OdeSystem::Kmf = 45 [static, private]

mM

Definition at line 68 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by EvaluateYDerivatives(), and GetIIonic().

const double DiFrancescoNoble1985OdeSystem::Kmf2 = 0.001 [static, private]

mM

Definition at line 73 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by EvaluateYDerivatives().

const double DiFrancescoNoble1985OdeSystem::KmK = 1 [static, private]

mM

Definition at line 71 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by EvaluateYDerivatives(), and GetIIonic().

const double DiFrancescoNoble1985OdeSystem::KmNa = 40 [static, private]

mM

Definition at line 72 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by EvaluateYDerivatives(), and GetIIonic().

const double DiFrancescoNoble1985OdeSystem::Kmto = 10 [static, private]

mM

Definition at line 70 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by EvaluateYDerivatives(), and GetIIonic().

const double DiFrancescoNoble1985OdeSystem::length = 2 [static, private]

mmm

Definition at line 46 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by DiFrancescoNoble1985OdeSystem().

const double DiFrancescoNoble1985OdeSystem::membrane_C = 75.0 [static, private]

nanoF. It must be so because dV/dt is in mV/ms and currents are in nA.

Definition at line 44 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by EvaluateYDerivatives().

const double DiFrancescoNoble1985OdeSystem::n_naca = 3 [static, private]

dimensionless

Definition at line 77 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by EvaluateYDerivatives(), and GetIIonic().

const double DiFrancescoNoble1985OdeSystem::Nao = 140 [static, private]

mM

Definition at line 65 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by EvaluateYDerivatives(), and GetIIonic().

const double DiFrancescoNoble1985OdeSystem::P_si = 15.0 [static, private]

nA/mM

Definition at line 63 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by EvaluateYDerivatives(), and GetIIonic().

const double DiFrancescoNoble1985OdeSystem::pf = 0.0007 [static, private]

per millisecond

Definition at line 85 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by EvaluateYDerivatives().

const double DiFrancescoNoble1985OdeSystem::R = 8314.472 [static, private]

J/(kmol*Kelvin)

Definition at line 48 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by DiFrancescoNoble1985OdeSystem().

const double DiFrancescoNoble1985OdeSystem::radius = 0.05 [static, private]

mm

Definition at line 45 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by DiFrancescoNoble1985OdeSystem().

const double DiFrancescoNoble1985OdeSystem::rCa = 2.0 [static, private]

dimensionless

Definition at line 80 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by EvaluateYDerivatives().

R times T over F

Definition at line 99 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by DiFrancescoNoble1985OdeSystem(), EvaluateYDerivatives(), and GetIIonic().

const double DiFrancescoNoble1985OdeSystem::T = 310 [static, private]

Kelvin

Definition at line 49 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by DiFrancescoNoble1985OdeSystem().

const double DiFrancescoNoble1985OdeSystem::tau_rel = 0.05 [static, private]

seconds. Must be seconds to cancel with numerator of F and give nA for i_rel

Definition at line 83 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by EvaluateYDerivatives().

const double DiFrancescoNoble1985OdeSystem::tau_rep = 2 [static, private]

seconds. Must be seconds to cancel with numerator of F and give nA for i_rep

Definition at line 82 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by EvaluateYDerivatives().

const double DiFrancescoNoble1985OdeSystem::tau_up = 0.025 [static, private]

seconds. Must be seconds to cancel with numerator of F and give nA for i_up

Definition at line 81 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by EvaluateYDerivatives().

const double DiFrancescoNoble1985OdeSystem::V_e_ratio = 0.1 [static, private]

dimensionless

Definition at line 47 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by DiFrancescoNoble1985OdeSystem().

cell volume

Definition at line 97 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by DiFrancescoNoble1985OdeSystem().

extracellular volume

Definition at line 95 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by DiFrancescoNoble1985OdeSystem(), and EvaluateYDerivatives().

const double DiFrancescoNoble1985OdeSystem::Vecs = 0.05 [static, private]

dimensionless

Definition at line 86 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by DiFrancescoNoble1985OdeSystem().

total intracellular volume

Definition at line 89 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by DiFrancescoNoble1985OdeSystem(), and EvaluateYDerivatives().

release volume (of the SR)

Definition at line 93 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by DiFrancescoNoble1985OdeSystem(), and EvaluateYDerivatives().

uptake volume (of the SR)

Definition at line 91 of file DiFrancescoNoble1985OdeSystem.hpp.

Referenced by DiFrancescoNoble1985OdeSystem(), and EvaluateYDerivatives().


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

Generated by  doxygen 1.6.2