7#include "ionic_model.h"
34 static inline const std::string
label =
"TTP";
38 {
"V", -85.23}, {
"K_i", 136.89}, {
"Na_i", 8.6040}, {
"Ca_i", 1.26e-4},
39 {
"Ca_ss", 3.6e-4}, {
"Ca_sr", 3.64}, {
"R_bar", 0.9073}};
43 {
"x_r1_rectifier", 6.21e-3}, {
"x_r2_rectifier", 0.4712},
44 {
"x_s_rectifier", 9.5e-3}, {
"m_fast_Na", 1.72e-3}, {
"h_fast_Na", 0.7444},
45 {
"j_fast_Na", 0.7045}, {
"d_slow_in", 3.373e-5}, {
"f_slow_in", 0.7888},
46 {
"f2_slow_in", 0.9755}, {
"fcass_slow_in", 0.9953}, {
"s_out", 0.999998},
57 constexpr bool required =
true;
120 virtual std::unique_ptr<IonicModelParameters>
122 return std::make_unique<Parameters>();
130 const cmType &cm)
override;
142 double Rc = 8314.472;
148 double Fc = 96485.3415;
320 virtual void update_g(
const unsigned int zone_id,
const double dt,
328 const double I_sac)
const override;
The CmMod class duplicates the data structures in the Fortran CMMOD module defined in COMU....
Definition CmMod.h:35
Abstract ionic model class.
Definition ionic_model.h:127
std::vector< std::pair< std::string, double > > InitialStates
Definition ionic_model.h:133
Initial conditions parameters for a generic ionic model.
Definition Parameters.h:1242
void add_parameter(const std::string &label, double default_value, bool required)
Add a new parameter to this object.
Definition Parameters.h:1290
Model parameters class.
Definition ionic_ttp.h:54
Ten Tusscher-Panfilov ionic model.
Definition ionic_ttp.h:31
double K_mK
K_o half-saturation constant of I_NaK [mM].
Definition ionic_ttp.h:220
double K_mNai
Na_i half-saturation constant for I_NaCa [mM].
Definition ionic_ttp.h:208
double Buf_sr
Total sacroplasmic buffer concentration [mM].
Definition ionic_ttp.h:283
static const InitialStates initial_X
State variables.
Definition ionic_ttp.h:37
double p_NaK
Maximal I_NaK [pA/pF].
Definition ionic_ttp.h:217
TTP()
Constructor.
Definition ionic_ttp.h:114
double G_bCa
Maximal I_bCa conductance [nS/pF].
Definition ionic_ttp.h:238
double G_pCa
Maximal I_pCa conductance [pA/pF].
Definition ionic_ttp.h:229
virtual std::unique_ptr< IonicModelParameters > get_parameters() const override
Construct an instance of model parameters.
Definition ionic_ttp.h:121
double Na_o
Extracellular Na concentration [mM].
Definition ionic_ttp.h:172
double k2p
O to I and R to RI, I_rel transition rate [mM^{-1}/ms].
Definition ionic_ttp.h:253
double K_sat
Saturation factor for I_NaCa [-].
Definition ionic_ttp.h:211
double V_xfer
Maximal I_xfer conductance [mM/ms].
Definition ionic_ttp.h:274
double G_to
Maximal I_to conductance [nS/pF].
Definition ionic_ttp.h:184
double k3
O to R and I to RI, I_rel transition rate [ms^{-1}].
Definition ionic_ttp.h:256
static const InitialStates initial_Xg
Gating variables.
Definition ionic_ttp.h:42
double G_K1
Maximal I_K1 conductance [nS/pF].
Definition ionic_ttp.h:181
double K_bufss
Ca_ss half-saturation constant for subspace buffer [mM].
Definition ionic_ttp.h:292
double G_Na
Maximal I_Na conductance [nS/pF].
Definition ionic_ttp.h:178
double G_pK
Maximal I_pK conductance [nS/pF].
Definition ionic_ttp.h:226
double Rc
Gas constant [J/mol/K].
Definition ionic_ttp.h:142
double V_c
Cytoplasmic volume [um^{3}].
Definition ionic_ttp.h:160
double Ca_o
Extracellular Ca concentration [mM].
Definition ionic_ttp.h:175
double V_leak
Maximal I_leak conductance [mM/ms].
Definition ionic_ttp.h:271
static const std::string label
Model label.
Definition ionic_ttp.h:34
virtual void read_parameters(const IonicModelParameters ¶ms) override
Read model parameters from a parameter object.
Definition ionic_ttp.cpp:6
virtual unsigned int get_calcium_index() const override
Get the index of Ca_i in the state vector.
Definition ionic_ttp.h:133
double G_Ks
Maximal I_Ks conductance [nS/pF].
Definition ionic_ttp.h:190
double K_bufc
Ca_i half-saturation constant for cytplasmic buffer [mM].
Definition ionic_ttp.h:280
double max_sr
Maximum value of k_casr [-].
Definition ionic_ttp.h:265
double rho
Cellular resistivity [ -cm].
Definition ionic_ttp.h:157
virtual void distribute_parameters(const CmMod &cm_mod, const cmType &cm) override
Distribute model parameters to all parallel processes.
Definition ionic_ttp.cpp:62
double K_up
Half-saturation constant of I_up [mM].
Definition ionic_ttp.h:244
double K_mCa
Ca_i half-saturation constant for I_NaCa [mM].
Definition ionic_ttp.h:205
double sV
Surface to volume ratio [um^{-1}].
Definition ionic_ttp.h:154
double K_NaCa
Maximal I_NaCa [pA/pF].
Definition ionic_ttp.h:199
double Cm
Cell capacitance per unit surface area [uF/cm^{2}].
Definition ionic_ttp.h:151
double min_sr
Minimum value of k_casr [-].
Definition ionic_ttp.h:268
double G_CaL
Maximal I_CaL conductance [cm^{3}/uF/ms].
Definition ionic_ttp.h:196
double Buf_ss
Total subspace buffer concentration [mM].
Definition ionic_ttp.h:289
double alpha
Factor enhancing outward nature of I_NaCa [-].
Definition ionic_ttp.h:214
double k4
I to O and Ri to I, I_rel transition rate [ms^{-1}].
Definition ionic_ttp.h:259
double V_ss
Subspace volume [um^{3}].
Definition ionic_ttp.h:166
double Vmax_up
Maximal I_up conductance [mM/ms].
Definition ionic_ttp.h:241
virtual Vector< double > getf(const unsigned int zone_id, const Vector< double > &X, const Vector< double > &Xg, const double I_stim, const double I_sac) const override
Model right-hand side.
Definition ionic_ttp.cpp:290
double EC
Ca_sr half-saturation constant of k_casr [mM].
Definition ionic_ttp.h:262
double p_KNa
Relative I_Ks permeability to Na [-].
Definition ionic_ttp.h:193
double k1p
R to O and RI to I, I_rel transition rate [mM^{-2}/ms].
Definition ionic_ttp.h:250
double K_mNa
Na_i half-saturation constant of I_NaK [mM].
Definition ionic_ttp.h:223
double K_o
Extracellular K concentration [mM].
Definition ionic_ttp.h:169
double G_Kr
Maximal I_Kr conductance [nS/pF].
Definition ionic_ttp.h:187
virtual void update_g(const unsigned int zone_id, const double dt, const Vector< double > &X, Vector< double > &Xg) const override
Update gating variables.
Definition ionic_ttp.cpp:118
double Buf_c
Total cytoplasmic buffer concentration [mM].
Definition ionic_ttp.h:277
double G_bNa
Maximal I_bNa conductance [nS/pF].
Definition ionic_ttp.h:235
double gamma
Voltage dependent parameter of I_NaCa [-].
Definition ionic_ttp.h:202
double Tc
Temperature [K].
Definition ionic_ttp.h:145
double K_bufsr
Ca_sr half-saturation constant for subspace buffer [mM].
Definition ionic_ttp.h:286
double K_pCa
Half-saturation constant of I_pCa [mM].
Definition ionic_ttp.h:232
double V_rel
Maximal I_rel conductance [mM/ms].
Definition ionic_ttp.h:247
double Fc
Faraday constant [C/mmol].
Definition ionic_ttp.h:148
static constexpr unsigned int calcium_index
Definition ionic_ttp.h:51
double V_sr
Sacroplasmic reticulum volume [um^{3}].
Definition ionic_ttp.h:163
The Vector template class is used for storing int and double data.
Definition Vector.h:24
The cmType class stores data and defines methods used for mpi communication.
Definition CmMod.h:55