#include <LuoRudyIModel1991OdeSystem.hpp>
Public Member Functions | |
LuoRudyIModel1991OdeSystem (boost::shared_ptr< AbstractIvpOdeSolver > pSolver, boost::shared_ptr< AbstractStimulusFunction > pIntracellularStimulus) | |
~LuoRudyIModel1991OdeSystem () | |
void | EvaluateYDerivatives (double time, const std::vector< double > &rY, std::vector< double > &rDY) |
double | GetIIonic () |
double | GetIntracellularCalciumConcentration () |
Private Member Functions | |
template<class Archive> | |
void | serialize (Archive &archive, const unsigned int version) |
void | VerifyStateVariables () |
Private Attributes | |
double | fast_sodium_current_E_Na |
Static Private Attributes | |
static const double | membrane_C = 1.0 |
static const double | membrane_F = 96484.6 |
static const double | membrane_R = 8314 |
static const double | membrane_T = 310.0 |
static const double | background_current_E_b = -59.87 |
static const double | background_current_g_b = 0.03921 |
static const double | fast_sodium_current_g_Na = 23.0 |
static const double | ionic_concentrations_Ki = 145.0 |
static const double | ionic_concentrations_Ko = 5.4 |
static const double | ionic_concentrations_Nai = 18.0 |
static const double | ionic_concentrations_Nao = 140.0 |
static const double | plateau_potassium_current_g_Kp = 0.0183 |
static const double | time_dependent_potassium_current_PR_NaK = 0.01833 |
Friends | |
class | boost::serialization::access |
Definition at line 44 of file LuoRudyIModel1991OdeSystem.hpp.
LuoRudyIModel1991OdeSystem::LuoRudyIModel1991OdeSystem | ( | boost::shared_ptr< AbstractIvpOdeSolver > | pSolver, | |
boost::shared_ptr< AbstractStimulusFunction > | pIntracellularStimulus | |||
) |
Constructor
pSolver | is a pointer to the ODE solver | |
pIntracellularStimulus | is a pointer to the intracellular stimulus |
Definition at line 57 of file LuoRudyIModel1991OdeSystem.cpp.
References fast_sodium_current_E_Na, AbstractCardiacCell::Init(), OdeSystemInformation< ODE_SYSTEM >::Instance(), ionic_concentrations_Nai, ionic_concentrations_Nao, membrane_F, membrane_R, membrane_T, and AbstractOdeSystem::mpSystemInfo.
LuoRudyIModel1991OdeSystem::~LuoRudyIModel1991OdeSystem | ( | void | ) |
Destructor
Definition at line 74 of file LuoRudyIModel1991OdeSystem.cpp.
void LuoRudyIModel1991OdeSystem::serialize | ( | Archive & | archive, | |
const unsigned int | version | |||
) | [inline, private] |
Archive the member variables.
archive | ||
version |
Reimplemented from AbstractCardiacCell.
Definition at line 56 of file LuoRudyIModel1991OdeSystem.hpp.
void LuoRudyIModel1991OdeSystem::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 277 of file LuoRudyIModel1991OdeSystem.cpp.
References AbstractOdeSystem::DumpState(), and AbstractOdeSystem::rGetStateVariables().
void LuoRudyIModel1991OdeSystem::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].
time | the current time, in milliseconds | |
rY | current values of the state variables | |
rDY | to be filled in with derivatives |
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 92 of file LuoRudyIModel1991OdeSystem.cpp.
References background_current_E_b, background_current_g_b, fast_sodium_current_E_Na, fast_sodium_current_g_Na, AbstractCardiacCell::GetStimulus(), ionic_concentrations_Ki, ionic_concentrations_Ko, ionic_concentrations_Nai, ionic_concentrations_Nao, membrane_C, membrane_F, membrane_R, membrane_T, AbstractCardiacCell::mSetVoltageDerivativeToZero, plateau_potassium_current_g_Kp, and time_dependent_potassium_current_PR_NaK.
double LuoRudyIModel1991OdeSystem::GetIIonic | ( | ) | [virtual] |
Returns the ionic current
Implements AbstractCardiacCell.
Definition at line 221 of file LuoRudyIModel1991OdeSystem.cpp.
References background_current_E_b, background_current_g_b, fast_sodium_current_E_Na, fast_sodium_current_g_Na, ionic_concentrations_Ki, ionic_concentrations_Ko, ionic_concentrations_Nai, ionic_concentrations_Nao, membrane_F, membrane_R, membrane_T, AbstractOdeSystem::mStateVariables, plateau_potassium_current_g_Kp, and time_dependent_potassium_current_PR_NaK.
double LuoRudyIModel1991OdeSystem::GetIntracellularCalciumConcentration | ( | ) | [virtual] |
Get the intracellular calcium concentration
Reimplemented from AbstractCardiacCell.
Definition at line 78 of file LuoRudyIModel1991OdeSystem.cpp.
References AbstractOdeSystem::mStateVariables.
friend class boost::serialization::access [friend] |
Needed for serialization.
Reimplemented from AbstractCardiacCell.
Definition at line 48 of file LuoRudyIModel1991OdeSystem.hpp.
const double LuoRudyIModel1991OdeSystem::membrane_C = 1.0 [static, private] |
Constants for the LuoRudyIModel1991OdeSystem model membrane capcaitance
Definition at line 64 of file LuoRudyIModel1991OdeSystem.hpp.
Referenced by EvaluateYDerivatives().
const double LuoRudyIModel1991OdeSystem::membrane_F = 96484.6 [static, private] |
Faraday constant
Definition at line 66 of file LuoRudyIModel1991OdeSystem.hpp.
Referenced by EvaluateYDerivatives(), GetIIonic(), and LuoRudyIModel1991OdeSystem().
const double LuoRudyIModel1991OdeSystem::membrane_R = 8314 [static, private] |
Universal gas constant
Definition at line 68 of file LuoRudyIModel1991OdeSystem.hpp.
Referenced by EvaluateYDerivatives(), GetIIonic(), and LuoRudyIModel1991OdeSystem().
const double LuoRudyIModel1991OdeSystem::membrane_T = 310.0 [static, private] |
Temeperature
Definition at line 70 of file LuoRudyIModel1991OdeSystem.hpp.
Referenced by EvaluateYDerivatives(), GetIIonic(), and LuoRudyIModel1991OdeSystem().
const double LuoRudyIModel1991OdeSystem::background_current_E_b = -59.87 [static, private] |
Reversal potentila for background current
Definition at line 72 of file LuoRudyIModel1991OdeSystem.hpp.
Referenced by EvaluateYDerivatives(), and GetIIonic().
const double LuoRudyIModel1991OdeSystem::background_current_g_b = 0.03921 [static, private] |
Maximal conductance for background current
Definition at line 74 of file LuoRudyIModel1991OdeSystem.hpp.
Referenced by EvaluateYDerivatives(), and GetIIonic().
const double LuoRudyIModel1991OdeSystem::fast_sodium_current_g_Na = 23.0 [static, private] |
Maximal conductance for sodium current
Definition at line 76 of file LuoRudyIModel1991OdeSystem.hpp.
Referenced by EvaluateYDerivatives(), and GetIIonic().
const double LuoRudyIModel1991OdeSystem::ionic_concentrations_Ki = 145.0 [static, private] |
Intracellular potassium concentration
Definition at line 78 of file LuoRudyIModel1991OdeSystem.hpp.
Referenced by EvaluateYDerivatives(), and GetIIonic().
const double LuoRudyIModel1991OdeSystem::ionic_concentrations_Ko = 5.4 [static, private] |
Extracellular potassium concentration
Definition at line 80 of file LuoRudyIModel1991OdeSystem.hpp.
Referenced by EvaluateYDerivatives(), and GetIIonic().
const double LuoRudyIModel1991OdeSystem::ionic_concentrations_Nai = 18.0 [static, private] |
Intracellular sodium concentration
Definition at line 82 of file LuoRudyIModel1991OdeSystem.hpp.
Referenced by EvaluateYDerivatives(), GetIIonic(), and LuoRudyIModel1991OdeSystem().
const double LuoRudyIModel1991OdeSystem::ionic_concentrations_Nao = 140.0 [static, private] |
Extracellular sodium concentration
Definition at line 84 of file LuoRudyIModel1991OdeSystem.hpp.
Referenced by EvaluateYDerivatives(), GetIIonic(), and LuoRudyIModel1991OdeSystem().
const double LuoRudyIModel1991OdeSystem::plateau_potassium_current_g_Kp = 0.0183 [static, private] |
Maximal conductance for plateau current
Definition at line 86 of file LuoRudyIModel1991OdeSystem.hpp.
Referenced by EvaluateYDerivatives(), and GetIIonic().
const double LuoRudyIModel1991OdeSystem::time_dependent_potassium_current_PR_NaK = 0.01833 [static, private] |
Permeability ratio Na/K for potassium currents
Definition at line 88 of file LuoRudyIModel1991OdeSystem.hpp.
Referenced by EvaluateYDerivatives(), and GetIIonic().
double LuoRudyIModel1991OdeSystem::fast_sodium_current_E_Na [private] |
Another parameter, which is a function of the above
Definition at line 91 of file LuoRudyIModel1991OdeSystem.hpp.
Referenced by EvaluateYDerivatives(), GetIIonic(), and LuoRudyIModel1991OdeSystem().