00001 #ifndef _CELLSHANNON2004FROMCELLML_
00002 #define _CELLSHANNON2004FROMCELLML_
00003
00015
00016 #include "ChasteSerialization.hpp"
00017 #include <boost/serialization/base_object.hpp>
00018 #include <cmath>
00019 #include <cassert>
00020 #include "AbstractCardiacCell.hpp"
00021 #include "Exception.hpp"
00022 #include "OdeSystemInformation.hpp"
00023 #include "AbstractStimulusFunction.hpp"
00024
00025 class CellShannon2004FromCellML : public AbstractCardiacCell
00026 {
00027 private:
00028 friend class boost::serialization::access;
00029 template<class Archive>
00030 void serialize(Archive & archive, const unsigned int version)
00031 {
00032 archive & boost::serialization::base_object<AbstractCardiacCell>(*this);
00033 }
00034
00035
00036
00037
00038 public:
00039 CellShannon2004FromCellML(boost::shared_ptr<AbstractIvpOdeSolver> pSolver,
00040 boost::shared_ptr<AbstractStimulusFunction> pIntracellularStimulus)
00041 : AbstractCardiacCell(pSolver, 45, 0, pIntracellularStimulus)
00042 {
00043
00044
00045 mpSystemInfo = OdeSystemInformation<CellShannon2004FromCellML>::Instance();
00046 Init();
00047 }
00048
00049 ~CellShannon2004FromCellML(void)
00050 {
00051 }
00052
00053
00054 void VerifyGatingVariables()
00055 {}
00056
00057 double GetIIonic()
00058 {
00059 std::vector<double>& rY = rGetStateVariables();
00060 double var_cell__V = rY[0];
00061
00062 double var_INa_h_gate__h = rY[1];
00063
00064 double var_INa_j_gate__j = rY[2];
00065
00066 double var_INa_m_gate__m = rY[3];
00067
00068 double var_IKr_Xr_gate__Xr = rY[4];
00069
00070 double var_IKs_Xs_gate__Xs = rY[5];
00071
00072 double var_Itos_X_gate__X_tos = rY[6];
00073
00074 double var_Itos_Y_gate__Y_tos = rY[7];
00075
00076 double var_Itos_R_gate__R_tos = rY[8];
00077
00078 double var_Itof_X_gate__X_tof = rY[9];
00079
00080 double var_Itof_Y_gate__Y_tof = rY[10];
00081
00082 double var_ICaL_d_gate__d = rY[11];
00083
00084 double var_ICaL_f_gate__f = rY[12];
00085
00086 double var_ICaL_fCa_gate__fCaB_SL = rY[13];
00087
00088 double var_ICaL_fCa_gate__fCaB_jct = rY[14];
00089
00090 double var_Na_buffer__Na_SL = rY[18];
00091
00092 double var_Na_buffer__Na_jct = rY[19];
00093
00094 double var_Na_buffer__Nai = rY[22];
00095
00096 double var_Ca_buffer__Ca_SL = rY[24];
00097
00098 double var_Ca_buffer__Ca_jct = rY[25];
00099
00100
00101 const double var_INa__V = var_cell__V;
00102 const double var_reversal_potentials__Na_jct = var_Na_buffer__Na_jct;
00103 const double var_model_parameters__R = 8314.3;
00104 const double var_reversal_potentials__R = var_model_parameters__R;
00105 const double var_model_parameters__Nao = 140.0;
00106 const double var_reversal_potentials__Nao = var_model_parameters__Nao;
00107 const double var_model_parameters__F = 96486.7;
00108 const double var_reversal_potentials__F = var_model_parameters__F;
00109 const double var_model_parameters__T = 310.0;
00110 const double var_reversal_potentials__T = var_model_parameters__T;
00111 const double var_reversal_potentials__E_Na_jct = ((var_reversal_potentials__R * var_reversal_potentials__T) / var_reversal_potentials__F) * log(var_reversal_potentials__Nao / var_reversal_potentials__Na_jct);
00112 const double var_INa__E_Na_jct = var_reversal_potentials__E_Na_jct;
00113 double var_INa__G_INa = 16.0;
00114 const double var_INa__m = var_INa_m_gate__m;
00115 const double var_INa__j = var_INa_j_gate__j;
00116 const double var_INa__h = var_INa_h_gate__h;
00117 const double var_INa__openProb = pow(var_INa__m, 3.0) * var_INa__h * var_INa__j;
00118 const double var_INa__Fx_Na_jct = 0.11;
00119 const double var_INa__i_Na_jct = var_INa__Fx_Na_jct * var_INa__G_INa * var_INa__openProb * (var_INa__V - var_INa__E_Na_jct);
00120 const double var_reversal_potentials__Na_SL = var_Na_buffer__Na_SL;
00121 const double var_reversal_potentials__E_Na_SL = ((var_reversal_potentials__R * var_reversal_potentials__T) / var_reversal_potentials__F) * log(var_reversal_potentials__Nao / var_reversal_potentials__Na_SL);
00122 const double var_INa__E_Na_SL = var_reversal_potentials__E_Na_SL;
00123 const double var_INa__Fx_Na_SL = 0.89;
00124 const double var_INa__i_Na_SL = var_INa__Fx_Na_SL * var_INa__G_INa * var_INa__openProb * (var_INa__V - var_INa__E_Na_SL);
00125 const double var_INa__i_Na = var_INa__i_Na_jct + var_INa__i_Na_SL;
00126 const double var_cell__i_Na = var_INa__i_Na;
00127 const double var_INab__Fx_NaBk_jct = 0.11;
00128 const double var_INab__E_Na_jct = var_reversal_potentials__E_Na_jct;
00129 const double var_INab__G_NaBk = 0.000297;
00130 const double var_INab__V = var_cell__V;
00131 const double var_INab__i_Nab_jct = var_INab__Fx_NaBk_jct * var_INab__G_NaBk * (var_INab__V - var_INab__E_Na_jct);
00132 const double var_INab__E_Na_SL = var_reversal_potentials__E_Na_SL;
00133 const double var_INab__Fx_NaBk_SL = 0.89;
00134 const double var_INab__i_Nab_SL = var_INab__Fx_NaBk_SL * var_INab__G_NaBk * (var_INab__V - var_INab__E_Na_SL);
00135 const double var_INab__i_Nab = var_INab__i_Nab_jct + var_INab__i_Nab_SL;
00136 const double var_cell__i_Nab = var_INab__i_Nab;
00137 const double var_INaK__V = var_cell__V;
00138 const double var_INaK__F = var_model_parameters__F;
00139 const double var_INaK__T = var_model_parameters__T;
00140 const double var_INaK__Nao = var_model_parameters__Nao;
00141 const double var_INaK__sigma = (exp(var_INaK__Nao / 67.3) - 1.0) / 7.0;
00142 const double var_INaK__R = var_model_parameters__R;
00143 const double var_INaK__f_NaK = 1.0 / (1.0 + (0.1245 * exp(((-0.1) * var_INaK__V * var_INaK__F) / (var_INaK__R * var_INaK__T))) + (0.0365 * var_INaK__sigma * exp(((-var_INaK__V) * var_INaK__F) / (var_INaK__R * var_INaK__T))));
00144 const double var_INaK__H_NaK = 4.0;
00145 const double var_INaK__Q10_NaK = 1.63;
00146 const double var_INaK__Q_NaK = pow(var_INaK__Q10_NaK, (var_INaK__T - 310.0) / 10.0);
00147 const double var_model_parameters__Ko = 5.4;
00148 const double var_INaK__Ko = var_model_parameters__Ko;
00149 const double var_INaK__Km_Nai = 11.0;
00150 const double var_INaK__Fx_NaK_SL = 0.89;
00151 const double var_INaK__Na_SL = var_Na_buffer__Na_SL;
00152 const double var_INaK__I_NaK_max = 1.91;
00153 const double var_INaK__Q10_Km_Nai = 1.49;
00154 const double var_INaK__Q_Km_Nai = pow(var_INaK__Q10_Km_Nai, (var_INaK__T - 310.0) / 10.0);
00155 const double var_INaK__Km_Ko = 1.5;
00156 const double var_INaK__i_NaK_SL = (((var_INaK__Fx_NaK_SL * var_INaK__Q_NaK * var_INaK__I_NaK_max * var_INaK__f_NaK) / (1.0 + pow((var_INaK__Q_Km_Nai * var_INaK__Km_Nai) / var_INaK__Na_SL, var_INaK__H_NaK))) * var_INaK__Ko) / (var_INaK__Ko + var_INaK__Km_Ko);
00157 const double var_INaK__Fx_NaK_jct = 0.11;
00158 const double var_INaK__Na_jct = var_Na_buffer__Na_jct;
00159 const double var_INaK__i_NaK_jct = (((var_INaK__Fx_NaK_jct * var_INaK__Q_NaK * var_INaK__I_NaK_max * var_INaK__f_NaK) / (1.0 + pow((var_INaK__Q_Km_Nai * var_INaK__Km_Nai) / var_INaK__Na_jct, var_INaK__H_NaK))) * var_INaK__Ko) / (var_INaK__Ko + var_INaK__Km_Ko);
00160 const double var_INaK__i_NaK = var_INaK__i_NaK_jct + var_INaK__i_NaK_SL;
00161 const double var_cell__i_NaK = var_INaK__i_NaK;
00162 const double var_IKr__Xr = var_IKr_Xr_gate__Xr;
00163 const double var_IKr__V = var_cell__V;
00164 const double var_IKr_Rr_gate__V = var_IKr__V;
00165 const double var_IKr_Rr_gate__Rr = 1.0 / (1.0 + exp((33.0 + var_IKr_Rr_gate__V) / 22.4));
00166 const double var_IKr__Rr = var_IKr_Rr_gate__Rr;
00167 double var_IKr__G_IKr_const = 0.03;
00168 const double var_IKr__Ko = var_model_parameters__Ko;
00169 const double var_IKr__G_IKr = var_IKr__G_IKr_const * sqrt(var_IKr__Ko / 5.4);
00170 const double var_model_parameters__Ki = 135.0;
00171 const double var_reversal_potentials__Ki = var_model_parameters__Ki;
00172 const double var_reversal_potentials__Ko = var_model_parameters__Ko;
00173 const double var_reversal_potentials__E_K = ((var_reversal_potentials__R * var_reversal_potentials__T) / var_reversal_potentials__F) * log(var_reversal_potentials__Ko / var_reversal_potentials__Ki);
00174 const double var_IKr__E_K = var_reversal_potentials__E_K;
00175 const double var_IKr__i_Kr = var_IKr__G_IKr * var_IKr__Xr * var_IKr__Rr * (var_IKr__V - var_IKr__E_K);
00176 const double var_cell__i_Kr = var_IKr__i_Kr;
00177 const double var_IKs__Fx_Ks_jct = 0.11;
00178 const double var_IKs__Xs = var_IKs_Xs_gate__Xs;
00179 const double var_IKs__Ca_jct = var_Ca_buffer__Ca_jct;
00180 const double var_IKs__pCa_jct = (-log10(var_IKs__Ca_jct / 1.0)) + 3.0;
00181 const double var_IKs__G_Ks_jct = 0.07 * (0.057 + (0.19 / (1.0 + exp(((-7.2) + var_IKs__pCa_jct) / 0.6))));
00182 const double var_IKs__R = var_model_parameters__R;
00183 const double var_IKs__T = var_model_parameters__T;
00184 const double var_IKs__pKNa = 0.01833;
00185 const double var_IKs__F = var_model_parameters__F;
00186 const double var_IKs__Nao = var_model_parameters__Nao;
00187 const double var_IKs__Ki = var_model_parameters__Ki;
00188 const double var_IKs__Ko = var_model_parameters__Ko;
00189 const double var_IKs__Nai = var_Na_buffer__Nai;
00190 const double var_IKs__E_Ks = ((var_IKs__R * var_IKs__T) / var_IKs__F) * log((var_IKs__Ko + (var_IKs__pKNa * var_IKs__Nao)) / (var_IKs__Ki + (var_IKs__pKNa * var_IKs__Nai)));
00191 const double var_IKs__V = var_cell__V;
00192 const double var_IKs__i_Ks_jct = var_IKs__Fx_Ks_jct * var_IKs__G_Ks_jct * pow(var_IKs__Xs, 2.0) * (var_IKs__V - var_IKs__E_Ks);
00193 const double var_IKs__Fx_Ks_SL = 0.89;
00194 const double var_IKs__Ca_SL = var_Ca_buffer__Ca_SL;
00195 const double var_IKs__pCa_SL = (-log10(var_IKs__Ca_SL / 1.0)) + 3.0;
00196 const double var_IKs__G_Ks_SL = 0.07 * (0.057 + (0.19 / (1.0 + exp(((-7.2) + var_IKs__pCa_SL) / 0.6))));
00197 const double var_IKs__i_Ks_SL = var_IKs__Fx_Ks_SL * var_IKs__G_Ks_SL * pow(var_IKs__Xs, 2.0) * (var_IKs__V - var_IKs__E_Ks);
00198 const double var_IKs__i_Ks = var_IKs__i_Ks_jct + var_IKs__i_Ks_SL;
00199 const double var_cell__i_Ks = var_IKs__i_Ks;
00200 const double var_Itos__Y_tos = var_Itos_Y_gate__Y_tos;
00201 const double var_Itos__X_tos = var_Itos_X_gate__X_tos;
00202 const double var_Itos__R_tos = var_Itos_R_gate__R_tos;
00203 const double var_Itos__G_tos = 0.06;
00204 const double var_Itos__E_K = var_reversal_potentials__E_K;
00205 const double var_Itos__V = var_cell__V;
00206 const double var_Itos__i_tos = var_Itos__G_tos * var_Itos__X_tos * (var_Itos__Y_tos + (0.5 * var_Itos__R_tos)) * (var_Itos__V - var_Itos__E_K);
00207 const double var_cell__i_tos = var_Itos__i_tos;
00208 const double var_Itof__G_tof = 0.02;
00209 const double var_Itof__E_K = var_reversal_potentials__E_K;
00210 const double var_Itof__X_tof = var_Itof_X_gate__X_tof;
00211 const double var_Itof__Y_tof = var_Itof_Y_gate__Y_tof;
00212 const double var_Itof__V = var_cell__V;
00213 const double var_Itof__i_tof = var_Itof__G_tof * var_Itof__X_tof * var_Itof__Y_tof * (var_Itof__V - var_Itof__E_K);
00214 const double var_cell__i_tof = var_Itof__i_tof;
00215 const double var_IK1__V = var_cell__V;
00216 const double var_IK1_K1_gate__V = var_IK1__V;
00217 const double var_IK1__E_K = var_reversal_potentials__E_K;
00218 const double var_IK1_K1_gate__E_K = var_IK1__E_K;
00219 const double var_IK1_K1_gate__beta_K1 = ((0.49124 * exp(0.08032 * ((var_IK1_K1_gate__V - var_IK1_K1_gate__E_K) + 5.476))) + (1.0 * exp(0.06175 * (var_IK1_K1_gate__V - (var_IK1_K1_gate__E_K + 594.31))))) / (1.0 + exp((-0.5143) * ((var_IK1_K1_gate__V - var_IK1_K1_gate__E_K) + 4.753)));
00220 const double var_IK1_K1_gate__alpha_K1 = 1.02 / (1.0 + exp(0.2385 * (var_IK1_K1_gate__V - (var_IK1_K1_gate__E_K + 59.215))));
00221 const double var_IK1_K1_gate__K1_infinity = var_IK1_K1_gate__alpha_K1 / (var_IK1_K1_gate__alpha_K1 + var_IK1_K1_gate__beta_K1);
00222 const double var_IK1__K1_infinity = var_IK1_K1_gate__K1_infinity;
00223 const double var_IK1__Ko = var_model_parameters__Ko;
00224 const double var_IK1__G_K1 = 0.9 * sqrt(var_IK1__Ko / 5.4);
00225 const double var_IK1__i_K1 = var_IK1__G_K1 * var_IK1__K1_infinity * (var_IK1__V - var_IK1__E_K);
00226 const double var_cell__i_K1 = var_IK1__i_K1;
00227 const double var_INaCa__K_mNai = 12.29;
00228 const double var_INaCa__HNa = 3.0;
00229 const double var_INaCa__K_mNao = 87.5;
00230 const double var_INaCa__T = var_model_parameters__T;
00231 const double var_model_parameters__Cao = 1.8;
00232 const double var_INaCa__Cao = var_model_parameters__Cao;
00233 const double var_INaCa__V = var_cell__V;
00234 const double var_INaCa__R = var_model_parameters__R;
00235 const double var_INaCa__Nao = var_model_parameters__Nao;
00236 const double var_INaCa__eta = 0.35;
00237 const double var_INaCa__Ca_jct = var_Ca_buffer__Ca_jct;
00238 const double var_INaCa__F = var_model_parameters__F;
00239 const double var_INaCa__Na_jct = var_Na_buffer__Na_jct;
00240 const double var_INaCa__ksat = 0.27;
00241 const double var_INaCa__temp_jct = ((exp((var_INaCa__eta * var_INaCa__V * var_INaCa__F) / (var_INaCa__R * var_INaCa__T)) * pow(var_INaCa__Na_jct, var_INaCa__HNa) * var_INaCa__Cao) - (exp(((var_INaCa__eta - 1.0) * var_INaCa__V * var_INaCa__F) / (var_INaCa__R * var_INaCa__T)) * pow(var_INaCa__Nao, var_INaCa__HNa) * var_INaCa__Ca_jct)) / (1.0 + (var_INaCa__ksat * exp(((var_INaCa__eta - 1.0) * var_INaCa__V * var_INaCa__F) / (var_INaCa__R * var_INaCa__T))));
00242 const double var_INaCa__K_mCao = 1.3;
00243 const double var_INaCa__V_max = 9.0;
00244 const double var_INaCa__K_mCai = 0.00359;
00245 const double var_INaCa__Fx_NCX_jct = 0.11;
00246 const double var_INaCa__Kd_act = 0.000256;
00247 const double var_INaCa__Ka_jct = 1.0 / (1.0 + pow(var_INaCa__Kd_act / var_INaCa__Ca_jct, 3.0));
00248 const double var_INaCa__Q10_NCX = 1.57;
00249 const double var_INaCa__Q_NCX = pow(var_INaCa__Q10_NCX, (var_INaCa__T - 310.0) / 10.0);
00250 const double var_INaCa__i_NaCa_jct = (var_INaCa__Fx_NCX_jct * var_INaCa__V_max * var_INaCa__Ka_jct * var_INaCa__Q_NCX * var_INaCa__temp_jct) / ((var_INaCa__K_mCai * pow(var_INaCa__Nao, var_INaCa__HNa) * (1.0 + pow(var_INaCa__Na_jct / var_INaCa__K_mNai, var_INaCa__HNa))) + (pow(var_INaCa__K_mNao, var_INaCa__HNa) * var_INaCa__Ca_jct * (1.0 + (var_INaCa__Ca_jct / var_INaCa__K_mCai))) + (var_INaCa__K_mCao * pow(var_INaCa__Na_jct, var_INaCa__HNa)) + (pow(var_INaCa__Na_jct, var_INaCa__HNa) * var_INaCa__Cao) + (pow(var_INaCa__Nao, var_INaCa__HNa) * var_INaCa__Ca_jct));
00251 const double var_INaCa__Fx_NCX_SL = 0.89;
00252 const double var_INaCa__Na_SL = var_Na_buffer__Na_SL;
00253 const double var_INaCa__Ca_SL = var_Ca_buffer__Ca_SL;
00254 const double var_INaCa__temp_SL = ((exp((var_INaCa__eta * var_INaCa__V * var_INaCa__F) / (var_INaCa__R * var_INaCa__T)) * pow(var_INaCa__Na_SL, var_INaCa__HNa) * var_INaCa__Cao) - (exp(((var_INaCa__eta - 1.0) * var_INaCa__V * var_INaCa__F) / (var_INaCa__R * var_INaCa__T)) * pow(var_INaCa__Nao, var_INaCa__HNa) * var_INaCa__Ca_SL)) / (1.0 + (var_INaCa__ksat * exp(((var_INaCa__eta - 1.0) * var_INaCa__V * var_INaCa__F) / (var_INaCa__R * var_INaCa__T))));
00255 const double var_INaCa__Ka_SL = 1.0 / (1.0 + pow(var_INaCa__Kd_act / var_INaCa__Ca_SL, 3.0));
00256 const double var_INaCa__i_NaCa_SL = (var_INaCa__Fx_NCX_SL * var_INaCa__V_max * var_INaCa__Ka_SL * var_INaCa__Q_NCX * var_INaCa__temp_SL) / ((var_INaCa__K_mCai * pow(var_INaCa__Nao, var_INaCa__HNa) * (1.0 + pow(var_INaCa__Na_SL / var_INaCa__K_mNai, var_INaCa__HNa))) + (pow(var_INaCa__K_mNao, var_INaCa__HNa) * var_INaCa__Ca_SL * (1.0 + (var_INaCa__Ca_SL / var_INaCa__K_mCai))) + (var_INaCa__K_mCao * pow(var_INaCa__Na_SL, var_INaCa__HNa)) + (pow(var_INaCa__Na_SL, var_INaCa__HNa) * var_INaCa__Cao) + (pow(var_INaCa__Nao, var_INaCa__HNa) * var_INaCa__Ca_SL));
00257 const double var_INaCa__i_NaCa = var_INaCa__i_NaCa_jct + var_INaCa__i_NaCa_SL;
00258 const double var_cell__i_NaCa = var_INaCa__i_NaCa;
00259 const double var_ICl_Ca__V = var_cell__V;
00260 const double var_ICl_Ca__G_Cl = 0.109625;
00261 const double var_ICl_Ca__Ca_jct = var_Ca_buffer__Ca_jct;
00262 const double var_ICl_Ca__Kd_ClCa = 0.1;
00263 const double var_ICl_Ca__Fx_Cl_jct = 0.11;
00264 const double var_model_parameters__Cli = 15.0;
00265 const double var_reversal_potentials__Cli = var_model_parameters__Cli;
00266 const double var_model_parameters__Clo = 150.0;
00267 const double var_reversal_potentials__Clo = var_model_parameters__Clo;
00268 const double var_reversal_potentials__E_Cl = (((-var_reversal_potentials__R) * var_reversal_potentials__T) / var_reversal_potentials__F) * log(var_reversal_potentials__Clo / var_reversal_potentials__Cli);
00269 const double var_ICl_Ca__E_Cl = var_reversal_potentials__E_Cl;
00270 const double var_ICl_Ca__Ca_SL = var_Ca_buffer__Ca_SL;
00271 const double var_ICl_Ca__Fx_Cl_SL = 0.89;
00272 const double var_ICl_Ca__i_Cl_Ca = var_ICl_Ca__G_Cl * (var_ICl_Ca__V - var_ICl_Ca__E_Cl) * ((var_ICl_Ca__Fx_Cl_jct / (1.0 + (var_ICl_Ca__Kd_ClCa / var_ICl_Ca__Ca_jct))) + (var_ICl_Ca__Fx_Cl_SL / (1.0 + (var_ICl_Ca__Kd_ClCa / var_ICl_Ca__Ca_SL))));
00273 const double var_cell__i_Cl_Ca = var_ICl_Ca__i_Cl_Ca;
00274 const double var_IClb__V = var_cell__V;
00275 const double var_IClb__G_ClBk = 0.009;
00276 const double var_IClb__E_Cl = var_reversal_potentials__E_Cl;
00277 const double var_IClb__i_Clb = var_IClb__G_ClBk * (var_IClb__V - var_IClb__E_Cl);
00278 const double var_cell__i_Clb = var_IClb__i_Clb;
00279 const double var_ICaL__T = var_model_parameters__T;
00280 const double var_ICaL__V = var_cell__V;
00281 const double var_ICaL__Nao = var_model_parameters__Nao;
00282 const double var_ICaL__Fx_ICaL_SL = 0.1;
00283 const double var_ICaL__R = var_model_parameters__R;
00284 const double var_ICaL__Na_SL = var_Na_buffer__Na_SL;
00285 const double var_ICaL__d = var_ICaL_d_gate__d;
00286 const double var_ICaL__f = var_ICaL_f_gate__f;
00287 const double var_ICaL__Q10_CaL = 1.8;
00288 const double var_ICaL__Q_CaL = pow(var_ICaL__Q10_CaL, (var_ICaL__T - 310.0) / 10.0);
00289 const double var_ICaL__F = var_model_parameters__F;
00290 const double var_ICaL__temp = (0.45 * var_ICaL__d * var_ICaL__f * var_ICaL__Q_CaL * var_ICaL__V * pow(var_ICaL__F, 2.0)) / (var_ICaL__R * var_ICaL__T);
00291 const double var_ICaL__gamma_Nao = 0.75;
00292 const double var_ICaL__gamma_Nai = 0.75;
00293 const double var_ICaL_fCa_gate__fCa_SL = 1.0 - var_ICaL_fCa_gate__fCaB_SL;
00294 const double var_ICaL__fCa_SL = var_ICaL_fCa_gate__fCa_SL;
00295 const double var_ICaL__PNa = 1.5e-08;
00296 const double var_ICaL__i_CaL_Na_SL = (var_ICaL__temp * var_ICaL__fCa_SL * var_ICaL__Fx_ICaL_SL * var_ICaL__PNa * ((var_ICaL__gamma_Nai * var_ICaL__Na_SL * exp((var_ICaL__V * var_ICaL__F) / (var_ICaL__R * var_ICaL__T))) - (var_ICaL__gamma_Nao * var_ICaL__Nao))) / (exp((var_ICaL__V * var_ICaL__F) / (var_ICaL__R * var_ICaL__T)) - 1.0);
00297 const double var_ICaL__Ki = var_model_parameters__Ki;
00298 const double var_ICaL__PK = 2.7e-07;
00299 const double var_ICaL_fCa_gate__fCa_jct = 1.0 - var_ICaL_fCa_gate__fCaB_jct;
00300 const double var_ICaL__fCa_jct = var_ICaL_fCa_gate__fCa_jct;
00301 const double var_ICaL__Ko = var_model_parameters__Ko;
00302 const double var_ICaL__Fx_ICaL_jct = 0.9;
00303 const double var_ICaL__gamma_Ko = 0.75;
00304 const double var_ICaL__gamma_Ki = 0.75;
00305 const double var_ICaL__i_CaL_K = (var_ICaL__temp * ((var_ICaL__fCa_SL * var_ICaL__Fx_ICaL_SL) + (var_ICaL__fCa_jct * var_ICaL__Fx_ICaL_jct)) * var_ICaL__PK * ((var_ICaL__gamma_Ki * var_ICaL__Ki * exp((var_ICaL__V * var_ICaL__F) / (var_ICaL__R * var_ICaL__T))) - (var_ICaL__gamma_Ko * var_ICaL__Ko))) / (exp((var_ICaL__V * var_ICaL__F) / (var_ICaL__R * var_ICaL__T)) - 1.0);
00306 const double var_ICaL__Ca_jct = var_Ca_buffer__Ca_jct;
00307 const double var_ICaL__gamma_Cao = 0.341;
00308 const double var_ICaL__gamma_Cai = 0.341;
00309 const double var_ICaL__Cao = var_model_parameters__Cao;
00310 const double var_ICaL__PCa = 0.00054;
00311 const double var_ICaL__i_CaL_Ca_jct = (var_ICaL__temp * var_ICaL__fCa_jct * var_ICaL__Fx_ICaL_jct * var_ICaL__PCa * 4.0 * ((var_ICaL__gamma_Cai * var_ICaL__Ca_jct * exp((2.0 * var_ICaL__V * var_ICaL__F) / (var_ICaL__R * var_ICaL__T))) - (var_ICaL__gamma_Cao * var_ICaL__Cao))) / (exp((2.0 * var_ICaL__V * var_ICaL__F) / (var_ICaL__R * var_ICaL__T)) - 1.0);
00312 const double var_ICaL__Na_jct = var_Na_buffer__Na_jct;
00313 const double var_ICaL__i_CaL_Na_jct = (var_ICaL__temp * var_ICaL__fCa_jct * var_ICaL__Fx_ICaL_jct * var_ICaL__PNa * ((var_ICaL__gamma_Nai * var_ICaL__Na_jct * exp((var_ICaL__V * var_ICaL__F) / (var_ICaL__R * var_ICaL__T))) - (var_ICaL__gamma_Nao * var_ICaL__Nao))) / (exp((var_ICaL__V * var_ICaL__F) / (var_ICaL__R * var_ICaL__T)) - 1.0);
00314 double var_ICaL__G_CaL_mult = 1.0;
00315 const double var_ICaL__Ca_SL = var_Ca_buffer__Ca_SL;
00316 const double var_ICaL__i_CaL_Ca_SL = (var_ICaL__temp * var_ICaL__fCa_SL * var_ICaL__Fx_ICaL_SL * var_ICaL__PCa * 4.0 * ((var_ICaL__gamma_Cai * var_ICaL__Ca_SL * exp((2.0 * var_ICaL__V * var_ICaL__F) / (var_ICaL__R * var_ICaL__T))) - (var_ICaL__gamma_Cao * var_ICaL__Cao))) / (exp((2.0 * var_ICaL__V * var_ICaL__F) / (var_ICaL__R * var_ICaL__T)) - 1.0);
00317 const double var_ICaL__i_CaL = var_ICaL__G_CaL_mult * (var_ICaL__i_CaL_Ca_SL + var_ICaL__i_CaL_Ca_jct + var_ICaL__i_CaL_Na_SL + var_ICaL__i_CaL_Na_jct + var_ICaL__i_CaL_K);
00318 const double var_cell__i_CaL = var_ICaL__i_CaL;
00319 const double var_ICab__G_CaBk = 0.0002513;
00320 const double var_ICab__V = var_cell__V;
00321 const double var_ICab__Fx_CaBk_SL = 0.89;
00322 const double var_reversal_potentials__Ca_SL = var_Ca_buffer__Ca_SL;
00323 const double var_reversal_potentials__Cao = var_model_parameters__Cao;
00324 const double var_reversal_potentials__E_Ca_SL = ((var_reversal_potentials__R * var_reversal_potentials__T) / (2.0 * var_reversal_potentials__F)) * log(var_reversal_potentials__Cao / var_reversal_potentials__Ca_SL);
00325 const double var_ICab__E_Ca_SL = var_reversal_potentials__E_Ca_SL;
00326 const double var_ICab__i_Cab_SL = var_ICab__G_CaBk * var_ICab__Fx_CaBk_SL * (var_ICab__V - var_ICab__E_Ca_SL);
00327 const double var_ICab__Fx_CaBk_jct = 0.11;
00328 const double var_reversal_potentials__Ca_jct = var_Ca_buffer__Ca_jct;
00329 const double var_reversal_potentials__E_Ca_jct = ((var_reversal_potentials__R * var_reversal_potentials__T) / (2.0 * var_reversal_potentials__F)) * log(var_reversal_potentials__Cao / var_reversal_potentials__Ca_jct);
00330 const double var_ICab__E_Ca_jct = var_reversal_potentials__E_Ca_jct;
00331 const double var_ICab__i_Cab_jct = var_ICab__G_CaBk * var_ICab__Fx_CaBk_jct * (var_ICab__V - var_ICab__E_Ca_jct);
00332 const double var_ICab__i_Cab = var_ICab__i_Cab_SL + var_ICab__i_Cab_jct;
00333 const double var_cell__i_Cab = var_ICab__i_Cab;
00334 const double var_ICap__H = 1.6;
00335 const double var_ICap__Fx_SLCaP_SL = 0.89;
00336 const double var_ICap__Km = 0.0005;
00337 const double var_ICap__V_maxAF = 0.0673;
00338 const double var_ICap__Q10_SLCaP = 2.35;
00339 const double var_ICap__T = var_model_parameters__T;
00340 const double var_ICap__Q_SLCaP = pow(var_ICap__Q10_SLCaP, (var_ICap__T - 310.0) / 10.0);
00341 const double var_ICap__Ca_SL = var_Ca_buffer__Ca_SL;
00342 const double var_ICap__i_Cap_SL = (var_ICap__Q_SLCaP * var_ICap__V_maxAF * var_ICap__Fx_SLCaP_SL) / (1.0 + pow(var_ICap__Km / var_ICap__Ca_SL, var_ICap__H));
00343 const double var_ICap__Fx_SLCaP_jct = 0.11;
00344 const double var_ICap__Ca_jct = var_Ca_buffer__Ca_jct;
00345 const double var_ICap__i_Cap_jct = (var_ICap__Q_SLCaP * var_ICap__V_maxAF * var_ICap__Fx_SLCaP_jct) / (1.0 + pow(var_ICap__Km / var_ICap__Ca_jct, var_ICap__H));
00346 const double var_ICap__i_Cap = var_ICap__i_Cap_jct + var_ICap__i_Cap_SL;
00347 const double var_cell__i_Cap = var_ICap__i_Cap;
00348
00349 return var_cell__i_Na+var_cell__i_Nab+var_cell__i_NaK+var_cell__i_Kr+var_cell__i_Ks+var_cell__i_tos+var_cell__i_tof+var_cell__i_K1+var_cell__i_NaCa+var_cell__i_Cl_Ca+var_cell__i_Clb+var_cell__i_CaL+var_cell__i_Cab+var_cell__i_Cap;
00350 }
00351
00352 void EvaluateYDerivatives(
00353 double var_environment__time,
00354 const std::vector<double> &rY,
00355 std::vector<double> &rDY)
00356 {
00357
00358
00359 var_environment__time *= 1.0;
00360 double var_cell__V = rY[0];
00361
00362 double var_INa_h_gate__h = rY[1];
00363
00364 double var_INa_j_gate__j = rY[2];
00365
00366 double var_INa_m_gate__m = rY[3];
00367
00368 double var_IKr_Xr_gate__Xr = rY[4];
00369
00370 double var_IKs_Xs_gate__Xs = rY[5];
00371
00372 double var_Itos_X_gate__X_tos = rY[6];
00373
00374 double var_Itos_Y_gate__Y_tos = rY[7];
00375
00376 double var_Itos_R_gate__R_tos = rY[8];
00377
00378 double var_Itof_X_gate__X_tof = rY[9];
00379
00380 double var_Itof_Y_gate__Y_tof = rY[10];
00381
00382 double var_ICaL_d_gate__d = rY[11];
00383
00384 double var_ICaL_f_gate__f = rY[12];
00385
00386 double var_ICaL_fCa_gate__fCaB_SL = rY[13];
00387
00388 double var_ICaL_fCa_gate__fCaB_jct = rY[14];
00389
00390 double var_Jrel_SR__R = rY[15];
00391
00392 double var_Jrel_SR__I = rY[16];
00393
00394 double var_Jrel_SR__O = rY[17];
00395
00396 double var_Na_buffer__Na_SL = rY[18];
00397
00398 double var_Na_buffer__Na_jct = rY[19];
00399
00400 double var_Na_buffer__Na_SL_buf = rY[20];
00401
00402 double var_Na_buffer__Na_jct_buf = rY[21];
00403
00404 double var_Na_buffer__Nai = rY[22];
00405
00406 double var_Ca_buffer__Ca_SR = rY[23];
00407
00408 double var_Ca_buffer__Ca_SL = rY[24];
00409
00410 double var_Ca_buffer__Ca_jct = rY[25];
00411
00412 double var_Ca_buffer__Cai = rY[26];
00413
00414 double var_Ca_buffer__Ca_SLB_SL = rY[27];
00415
00416 double var_Ca_buffer__Ca_SLB_jct = rY[28];
00417
00418 double var_Ca_buffer__Ca_SLHigh_SL = rY[29];
00419
00420 double var_Ca_buffer__Ca_SLHigh_jct = rY[30];
00421
00422 double var_Ca_buffer__Ca_Calsequestrin = rY[31];
00423
00424 double var_cytosolic_Ca_buffer__Ca_TroponinC = rY[32];
00425
00426 double var_cytosolic_Ca_buffer__Ca_TroponinC_Ca_Mg = rY[33];
00427
00428 double var_cytosolic_Ca_buffer__Mg_TroponinC_Ca_Mg = rY[34];
00429
00430 double var_cytosolic_Ca_buffer__Ca_Calmodulin = rY[35];
00431
00432 double var_cytosolic_Ca_buffer__Ca_Myosin = rY[36];
00433
00434 double var_cytosolic_Ca_buffer__Mg_Myosin = rY[37];
00435
00436 double var_cytosolic_Ca_buffer__Ca_SRB = rY[38];
00437
00438 double var_indo_fluo_Ca_buffer_not_connected__Ca_Indo1_Cytosol = rY[39];
00439
00440 double var_indo_fluo_Ca_buffer_not_connected__Ca_Indo1_SL = rY[40];
00441
00442 double var_indo_fluo_Ca_buffer_not_connected__Ca_Indo1_jct = rY[41];
00443
00444 double var_indo_fluo_Ca_buffer_not_connected__Ca_Fluo3_Cytosol = rY[42];
00445
00446 double var_indo_fluo_Ca_buffer_not_connected__Ca_Fluo3_SL = rY[43];
00447
00448 double var_indo_fluo_Ca_buffer_not_connected__Ca_Fluo3_jct = rY[44];
00449
00450
00451
00452
00453 const double var_INa__V = var_cell__V;
00454 const double var_reversal_potentials__Na_jct = var_Na_buffer__Na_jct;
00455 const double var_model_parameters__R = 8314.3;
00456 const double var_reversal_potentials__R = var_model_parameters__R;
00457 const double var_model_parameters__Nao = 140.0;
00458 const double var_reversal_potentials__Nao = var_model_parameters__Nao;
00459 const double var_model_parameters__F = 96486.7;
00460 const double var_reversal_potentials__F = var_model_parameters__F;
00461 const double var_model_parameters__T = 310.0;
00462 const double var_reversal_potentials__T = var_model_parameters__T;
00463 const double var_reversal_potentials__E_Na_jct = ((var_reversal_potentials__R * var_reversal_potentials__T) / var_reversal_potentials__F) * log(var_reversal_potentials__Nao / var_reversal_potentials__Na_jct);
00464 const double var_INa__E_Na_jct = var_reversal_potentials__E_Na_jct;
00465 double var_INa__G_INa = 16.0;
00466 const double var_INa__m = var_INa_m_gate__m;
00467 const double var_INa__j = var_INa_j_gate__j;
00468 const double var_INa__h = var_INa_h_gate__h;
00469 const double var_INa__openProb = pow(var_INa__m, 3.0) * var_INa__h * var_INa__j;
00470 const double var_INa__Fx_Na_jct = 0.11;
00471 const double var_INa__i_Na_jct = var_INa__Fx_Na_jct * var_INa__G_INa * var_INa__openProb * (var_INa__V - var_INa__E_Na_jct);
00472 const double var_reversal_potentials__Na_SL = var_Na_buffer__Na_SL;
00473 const double var_reversal_potentials__E_Na_SL = ((var_reversal_potentials__R * var_reversal_potentials__T) / var_reversal_potentials__F) * log(var_reversal_potentials__Nao / var_reversal_potentials__Na_SL);
00474 const double var_INa__E_Na_SL = var_reversal_potentials__E_Na_SL;
00475 const double var_INa__Fx_Na_SL = 0.89;
00476 const double var_INa__i_Na_SL = var_INa__Fx_Na_SL * var_INa__G_INa * var_INa__openProb * (var_INa__V - var_INa__E_Na_SL);
00477 const double var_INa__i_Na = var_INa__i_Na_jct + var_INa__i_Na_SL;
00478 const double var_cell__i_Na = var_INa__i_Na;
00479 const double var_INab__Fx_NaBk_jct = 0.11;
00480 const double var_INab__E_Na_jct = var_reversal_potentials__E_Na_jct;
00481 const double var_INab__G_NaBk = 0.000297;
00482 const double var_INab__V = var_cell__V;
00483 const double var_INab__i_Nab_jct = var_INab__Fx_NaBk_jct * var_INab__G_NaBk * (var_INab__V - var_INab__E_Na_jct);
00484 const double var_INab__E_Na_SL = var_reversal_potentials__E_Na_SL;
00485 const double var_INab__Fx_NaBk_SL = 0.89;
00486 const double var_INab__i_Nab_SL = var_INab__Fx_NaBk_SL * var_INab__G_NaBk * (var_INab__V - var_INab__E_Na_SL);
00487 const double var_INab__i_Nab = var_INab__i_Nab_jct + var_INab__i_Nab_SL;
00488 const double var_cell__i_Nab = var_INab__i_Nab;
00489 const double var_INaK__V = var_cell__V;
00490 const double var_INaK__F = var_model_parameters__F;
00491 const double var_INaK__T = var_model_parameters__T;
00492 const double var_INaK__Nao = var_model_parameters__Nao;
00493 const double var_INaK__sigma = (exp(var_INaK__Nao / 67.3) - 1.0) / 7.0;
00494 const double var_INaK__R = var_model_parameters__R;
00495 const double var_INaK__f_NaK = 1.0 / (1.0 + (0.1245 * exp(((-0.1) * var_INaK__V * var_INaK__F) / (var_INaK__R * var_INaK__T))) + (0.0365 * var_INaK__sigma * exp(((-var_INaK__V) * var_INaK__F) / (var_INaK__R * var_INaK__T))));
00496 const double var_INaK__H_NaK = 4.0;
00497 const double var_INaK__Q10_NaK = 1.63;
00498 const double var_INaK__Q_NaK = pow(var_INaK__Q10_NaK, (var_INaK__T - 310.0) / 10.0);
00499 const double var_model_parameters__Ko = 5.4;
00500 const double var_INaK__Ko = var_model_parameters__Ko;
00501 const double var_INaK__Km_Nai = 11.0;
00502 const double var_INaK__Fx_NaK_SL = 0.89;
00503 const double var_INaK__Na_SL = var_Na_buffer__Na_SL;
00504 const double var_INaK__I_NaK_max = 1.91;
00505 const double var_INaK__Q10_Km_Nai = 1.49;
00506 const double var_INaK__Q_Km_Nai = pow(var_INaK__Q10_Km_Nai, (var_INaK__T - 310.0) / 10.0);
00507 const double var_INaK__Km_Ko = 1.5;
00508 const double var_INaK__i_NaK_SL = (((var_INaK__Fx_NaK_SL * var_INaK__Q_NaK * var_INaK__I_NaK_max * var_INaK__f_NaK) / (1.0 + pow((var_INaK__Q_Km_Nai * var_INaK__Km_Nai) / var_INaK__Na_SL, var_INaK__H_NaK))) * var_INaK__Ko) / (var_INaK__Ko + var_INaK__Km_Ko);
00509 const double var_INaK__Fx_NaK_jct = 0.11;
00510 const double var_INaK__Na_jct = var_Na_buffer__Na_jct;
00511 const double var_INaK__i_NaK_jct = (((var_INaK__Fx_NaK_jct * var_INaK__Q_NaK * var_INaK__I_NaK_max * var_INaK__f_NaK) / (1.0 + pow((var_INaK__Q_Km_Nai * var_INaK__Km_Nai) / var_INaK__Na_jct, var_INaK__H_NaK))) * var_INaK__Ko) / (var_INaK__Ko + var_INaK__Km_Ko);
00512 const double var_INaK__i_NaK = var_INaK__i_NaK_jct + var_INaK__i_NaK_SL;
00513 const double var_cell__i_NaK = var_INaK__i_NaK;
00514 const double var_IKr__Xr = var_IKr_Xr_gate__Xr;
00515 const double var_IKr__V = var_cell__V;
00516 const double var_IKr_Rr_gate__V = var_IKr__V;
00517 const double var_IKr_Rr_gate__Rr = 1.0 / (1.0 + exp((33.0 + var_IKr_Rr_gate__V) / 22.4));
00518 const double var_IKr__Rr = var_IKr_Rr_gate__Rr;
00519 double var_IKr__G_IKr_const = 0.03;
00520 const double var_IKr__Ko = var_model_parameters__Ko;
00521 const double var_IKr__G_IKr = var_IKr__G_IKr_const * sqrt(var_IKr__Ko / 5.4);
00522 const double var_model_parameters__Ki = 135.0;
00523 const double var_reversal_potentials__Ki = var_model_parameters__Ki;
00524 const double var_reversal_potentials__Ko = var_model_parameters__Ko;
00525 const double var_reversal_potentials__E_K = ((var_reversal_potentials__R * var_reversal_potentials__T) / var_reversal_potentials__F) * log(var_reversal_potentials__Ko / var_reversal_potentials__Ki);
00526 const double var_IKr__E_K = var_reversal_potentials__E_K;
00527 const double var_IKr__i_Kr = var_IKr__G_IKr * var_IKr__Xr * var_IKr__Rr * (var_IKr__V - var_IKr__E_K);
00528 const double var_cell__i_Kr = var_IKr__i_Kr;
00529 const double var_IKs__Fx_Ks_jct = 0.11;
00530 const double var_IKs__Xs = var_IKs_Xs_gate__Xs;
00531 const double var_IKs__Ca_jct = var_Ca_buffer__Ca_jct;
00532 const double var_IKs__pCa_jct = (-log10(var_IKs__Ca_jct / 1.0)) + 3.0;
00533 const double var_IKs__G_Ks_jct = 0.07 * (0.057 + (0.19 / (1.0 + exp(((-7.2) + var_IKs__pCa_jct) / 0.6))));
00534 const double var_IKs__R = var_model_parameters__R;
00535 const double var_IKs__T = var_model_parameters__T;
00536 const double var_IKs__pKNa = 0.01833;
00537 const double var_IKs__F = var_model_parameters__F;
00538 const double var_IKs__Nao = var_model_parameters__Nao;
00539 const double var_IKs__Ki = var_model_parameters__Ki;
00540 const double var_IKs__Ko = var_model_parameters__Ko;
00541 const double var_IKs__Nai = var_Na_buffer__Nai;
00542 const double var_IKs__E_Ks = ((var_IKs__R * var_IKs__T) / var_IKs__F) * log((var_IKs__Ko + (var_IKs__pKNa * var_IKs__Nao)) / (var_IKs__Ki + (var_IKs__pKNa * var_IKs__Nai)));
00543 const double var_IKs__V = var_cell__V;
00544 const double var_IKs__i_Ks_jct = var_IKs__Fx_Ks_jct * var_IKs__G_Ks_jct * pow(var_IKs__Xs, 2.0) * (var_IKs__V - var_IKs__E_Ks);
00545 const double var_IKs__Fx_Ks_SL = 0.89;
00546 const double var_IKs__Ca_SL = var_Ca_buffer__Ca_SL;
00547 const double var_IKs__pCa_SL = (-log10(var_IKs__Ca_SL / 1.0)) + 3.0;
00548 const double var_IKs__G_Ks_SL = 0.07 * (0.057 + (0.19 / (1.0 + exp(((-7.2) + var_IKs__pCa_SL) / 0.6))));
00549 const double var_IKs__i_Ks_SL = var_IKs__Fx_Ks_SL * var_IKs__G_Ks_SL * pow(var_IKs__Xs, 2.0) * (var_IKs__V - var_IKs__E_Ks);
00550 const double var_IKs__i_Ks = var_IKs__i_Ks_jct + var_IKs__i_Ks_SL;
00551 const double var_cell__i_Ks = var_IKs__i_Ks;
00552 const double var_Itos__Y_tos = var_Itos_Y_gate__Y_tos;
00553 const double var_Itos__X_tos = var_Itos_X_gate__X_tos;
00554 const double var_Itos__R_tos = var_Itos_R_gate__R_tos;
00555 const double var_Itos__G_tos = 0.06;
00556 const double var_Itos__E_K = var_reversal_potentials__E_K;
00557 const double var_Itos__V = var_cell__V;
00558 const double var_Itos__i_tos = var_Itos__G_tos * var_Itos__X_tos * (var_Itos__Y_tos + (0.5 * var_Itos__R_tos)) * (var_Itos__V - var_Itos__E_K);
00559 const double var_cell__i_tos = var_Itos__i_tos;
00560 const double var_Itof__G_tof = 0.02;
00561 const double var_Itof__E_K = var_reversal_potentials__E_K;
00562 const double var_Itof__X_tof = var_Itof_X_gate__X_tof;
00563 const double var_Itof__Y_tof = var_Itof_Y_gate__Y_tof;
00564 const double var_Itof__V = var_cell__V;
00565 const double var_Itof__i_tof = var_Itof__G_tof * var_Itof__X_tof * var_Itof__Y_tof * (var_Itof__V - var_Itof__E_K);
00566 const double var_cell__i_tof = var_Itof__i_tof;
00567 const double var_IK1__V = var_cell__V;
00568 const double var_IK1_K1_gate__V = var_IK1__V;
00569 const double var_IK1__E_K = var_reversal_potentials__E_K;
00570 const double var_IK1_K1_gate__E_K = var_IK1__E_K;
00571 const double var_IK1_K1_gate__beta_K1 = ((0.49124 * exp(0.08032 * ((var_IK1_K1_gate__V - var_IK1_K1_gate__E_K) + 5.476))) + (1.0 * exp(0.06175 * (var_IK1_K1_gate__V - (var_IK1_K1_gate__E_K + 594.31))))) / (1.0 + exp((-0.5143) * ((var_IK1_K1_gate__V - var_IK1_K1_gate__E_K) + 4.753)));
00572 const double var_IK1_K1_gate__alpha_K1 = 1.02 / (1.0 + exp(0.2385 * (var_IK1_K1_gate__V - (var_IK1_K1_gate__E_K + 59.215))));
00573 const double var_IK1_K1_gate__K1_infinity = var_IK1_K1_gate__alpha_K1 / (var_IK1_K1_gate__alpha_K1 + var_IK1_K1_gate__beta_K1);
00574 const double var_IK1__K1_infinity = var_IK1_K1_gate__K1_infinity;
00575 const double var_IK1__Ko = var_model_parameters__Ko;
00576 const double var_IK1__G_K1 = 0.9 * sqrt(var_IK1__Ko / 5.4);
00577 const double var_IK1__i_K1 = var_IK1__G_K1 * var_IK1__K1_infinity * (var_IK1__V - var_IK1__E_K);
00578 const double var_cell__i_K1 = var_IK1__i_K1;
00579 const double var_INaCa__K_mNai = 12.29;
00580 const double var_INaCa__HNa = 3.0;
00581 const double var_INaCa__K_mNao = 87.5;
00582 const double var_INaCa__T = var_model_parameters__T;
00583 const double var_model_parameters__Cao = 1.8;
00584 const double var_INaCa__Cao = var_model_parameters__Cao;
00585 const double var_INaCa__V = var_cell__V;
00586 const double var_INaCa__R = var_model_parameters__R;
00587 const double var_INaCa__Nao = var_model_parameters__Nao;
00588 const double var_INaCa__eta = 0.35;
00589 const double var_INaCa__Ca_jct = var_Ca_buffer__Ca_jct;
00590 const double var_INaCa__F = var_model_parameters__F;
00591 const double var_INaCa__Na_jct = var_Na_buffer__Na_jct;
00592 const double var_INaCa__ksat = 0.27;
00593 const double var_INaCa__temp_jct = ((exp((var_INaCa__eta * var_INaCa__V * var_INaCa__F) / (var_INaCa__R * var_INaCa__T)) * pow(var_INaCa__Na_jct, var_INaCa__HNa) * var_INaCa__Cao) - (exp(((var_INaCa__eta - 1.0) * var_INaCa__V * var_INaCa__F) / (var_INaCa__R * var_INaCa__T)) * pow(var_INaCa__Nao, var_INaCa__HNa) * var_INaCa__Ca_jct)) / (1.0 + (var_INaCa__ksat * exp(((var_INaCa__eta - 1.0) * var_INaCa__V * var_INaCa__F) / (var_INaCa__R * var_INaCa__T))));
00594 const double var_INaCa__K_mCao = 1.3;
00595 const double var_INaCa__V_max = 9.0;
00596 const double var_INaCa__K_mCai = 0.00359;
00597 const double var_INaCa__Fx_NCX_jct = 0.11;
00598 const double var_INaCa__Kd_act = 0.000256;
00599 const double var_INaCa__Ka_jct = 1.0 / (1.0 + pow(var_INaCa__Kd_act / var_INaCa__Ca_jct, 3.0));
00600 const double var_INaCa__Q10_NCX = 1.57;
00601 const double var_INaCa__Q_NCX = pow(var_INaCa__Q10_NCX, (var_INaCa__T - 310.0) / 10.0);
00602 const double var_INaCa__i_NaCa_jct = (var_INaCa__Fx_NCX_jct * var_INaCa__V_max * var_INaCa__Ka_jct * var_INaCa__Q_NCX * var_INaCa__temp_jct) / ((var_INaCa__K_mCai * pow(var_INaCa__Nao, var_INaCa__HNa) * (1.0 + pow(var_INaCa__Na_jct / var_INaCa__K_mNai, var_INaCa__HNa))) + (pow(var_INaCa__K_mNao, var_INaCa__HNa) * var_INaCa__Ca_jct * (1.0 + (var_INaCa__Ca_jct / var_INaCa__K_mCai))) + (var_INaCa__K_mCao * pow(var_INaCa__Na_jct, var_INaCa__HNa)) + (pow(var_INaCa__Na_jct, var_INaCa__HNa) * var_INaCa__Cao) + (pow(var_INaCa__Nao, var_INaCa__HNa) * var_INaCa__Ca_jct));
00603 const double var_INaCa__Fx_NCX_SL = 0.89;
00604 const double var_INaCa__Na_SL = var_Na_buffer__Na_SL;
00605 const double var_INaCa__Ca_SL = var_Ca_buffer__Ca_SL;
00606 const double var_INaCa__temp_SL = ((exp((var_INaCa__eta * var_INaCa__V * var_INaCa__F) / (var_INaCa__R * var_INaCa__T)) * pow(var_INaCa__Na_SL, var_INaCa__HNa) * var_INaCa__Cao) - (exp(((var_INaCa__eta - 1.0) * var_INaCa__V * var_INaCa__F) / (var_INaCa__R * var_INaCa__T)) * pow(var_INaCa__Nao, var_INaCa__HNa) * var_INaCa__Ca_SL)) / (1.0 + (var_INaCa__ksat * exp(((var_INaCa__eta - 1.0) * var_INaCa__V * var_INaCa__F) / (var_INaCa__R * var_INaCa__T))));
00607 const double var_INaCa__Ka_SL = 1.0 / (1.0 + pow(var_INaCa__Kd_act / var_INaCa__Ca_SL, 3.0));
00608 const double var_INaCa__i_NaCa_SL = (var_INaCa__Fx_NCX_SL * var_INaCa__V_max * var_INaCa__Ka_SL * var_INaCa__Q_NCX * var_INaCa__temp_SL) / ((var_INaCa__K_mCai * pow(var_INaCa__Nao, var_INaCa__HNa) * (1.0 + pow(var_INaCa__Na_SL / var_INaCa__K_mNai, var_INaCa__HNa))) + (pow(var_INaCa__K_mNao, var_INaCa__HNa) * var_INaCa__Ca_SL * (1.0 + (var_INaCa__Ca_SL / var_INaCa__K_mCai))) + (var_INaCa__K_mCao * pow(var_INaCa__Na_SL, var_INaCa__HNa)) + (pow(var_INaCa__Na_SL, var_INaCa__HNa) * var_INaCa__Cao) + (pow(var_INaCa__Nao, var_INaCa__HNa) * var_INaCa__Ca_SL));
00609 const double var_INaCa__i_NaCa = var_INaCa__i_NaCa_jct + var_INaCa__i_NaCa_SL;
00610 const double var_cell__i_NaCa = var_INaCa__i_NaCa;
00611 const double var_ICl_Ca__V = var_cell__V;
00612 const double var_ICl_Ca__G_Cl = 0.109625;
00613 const double var_ICl_Ca__Ca_jct = var_Ca_buffer__Ca_jct;
00614 const double var_ICl_Ca__Kd_ClCa = 0.1;
00615 const double var_ICl_Ca__Fx_Cl_jct = 0.11;
00616 const double var_model_parameters__Cli = 15.0;
00617 const double var_reversal_potentials__Cli = var_model_parameters__Cli;
00618 const double var_model_parameters__Clo = 150.0;
00619 const double var_reversal_potentials__Clo = var_model_parameters__Clo;
00620 const double var_reversal_potentials__E_Cl = (((-var_reversal_potentials__R) * var_reversal_potentials__T) / var_reversal_potentials__F) * log(var_reversal_potentials__Clo / var_reversal_potentials__Cli);
00621 const double var_ICl_Ca__E_Cl = var_reversal_potentials__E_Cl;
00622 const double var_ICl_Ca__Ca_SL = var_Ca_buffer__Ca_SL;
00623 const double var_ICl_Ca__Fx_Cl_SL = 0.89;
00624 const double var_ICl_Ca__i_Cl_Ca = var_ICl_Ca__G_Cl * (var_ICl_Ca__V - var_ICl_Ca__E_Cl) * ((var_ICl_Ca__Fx_Cl_jct / (1.0 + (var_ICl_Ca__Kd_ClCa / var_ICl_Ca__Ca_jct))) + (var_ICl_Ca__Fx_Cl_SL / (1.0 + (var_ICl_Ca__Kd_ClCa / var_ICl_Ca__Ca_SL))));
00625 const double var_cell__i_Cl_Ca = var_ICl_Ca__i_Cl_Ca;
00626 const double var_IClb__V = var_cell__V;
00627 const double var_IClb__G_ClBk = 0.009;
00628 const double var_IClb__E_Cl = var_reversal_potentials__E_Cl;
00629 const double var_IClb__i_Clb = var_IClb__G_ClBk * (var_IClb__V - var_IClb__E_Cl);
00630 const double var_cell__i_Clb = var_IClb__i_Clb;
00631 const double var_ICaL__T = var_model_parameters__T;
00632 const double var_ICaL__V = var_cell__V;
00633 const double var_ICaL__Nao = var_model_parameters__Nao;
00634 const double var_ICaL__Fx_ICaL_SL = 0.1;
00635 const double var_ICaL__R = var_model_parameters__R;
00636 const double var_ICaL__Na_SL = var_Na_buffer__Na_SL;
00637 const double var_ICaL__d = var_ICaL_d_gate__d;
00638 const double var_ICaL__f = var_ICaL_f_gate__f;
00639 const double var_ICaL__Q10_CaL = 1.8;
00640 const double var_ICaL__Q_CaL = pow(var_ICaL__Q10_CaL, (var_ICaL__T - 310.0) / 10.0);
00641 const double var_ICaL__F = var_model_parameters__F;
00642 const double var_ICaL__temp = (0.45 * var_ICaL__d * var_ICaL__f * var_ICaL__Q_CaL * var_ICaL__V * pow(var_ICaL__F, 2.0)) / (var_ICaL__R * var_ICaL__T);
00643 const double var_ICaL__gamma_Nao = 0.75;
00644 const double var_ICaL__gamma_Nai = 0.75;
00645 const double var_ICaL_fCa_gate__fCa_SL = 1.0 - var_ICaL_fCa_gate__fCaB_SL;
00646 const double var_ICaL__fCa_SL = var_ICaL_fCa_gate__fCa_SL;
00647 const double var_ICaL__PNa = 1.5e-08;
00648 const double var_ICaL__i_CaL_Na_SL = (var_ICaL__temp * var_ICaL__fCa_SL * var_ICaL__Fx_ICaL_SL * var_ICaL__PNa * ((var_ICaL__gamma_Nai * var_ICaL__Na_SL * exp((var_ICaL__V * var_ICaL__F) / (var_ICaL__R * var_ICaL__T))) - (var_ICaL__gamma_Nao * var_ICaL__Nao))) / (exp((var_ICaL__V * var_ICaL__F) / (var_ICaL__R * var_ICaL__T)) - 1.0);
00649 const double var_ICaL__Ki = var_model_parameters__Ki;
00650 const double var_ICaL__PK = 2.7e-07;
00651 const double var_ICaL_fCa_gate__fCa_jct = 1.0 - var_ICaL_fCa_gate__fCaB_jct;
00652 const double var_ICaL__fCa_jct = var_ICaL_fCa_gate__fCa_jct;
00653 const double var_ICaL__Ko = var_model_parameters__Ko;
00654 const double var_ICaL__Fx_ICaL_jct = 0.9;
00655 const double var_ICaL__gamma_Ko = 0.75;
00656 const double var_ICaL__gamma_Ki = 0.75;
00657 const double var_ICaL__i_CaL_K = (var_ICaL__temp * ((var_ICaL__fCa_SL * var_ICaL__Fx_ICaL_SL) + (var_ICaL__fCa_jct * var_ICaL__Fx_ICaL_jct)) * var_ICaL__PK * ((var_ICaL__gamma_Ki * var_ICaL__Ki * exp((var_ICaL__V * var_ICaL__F) / (var_ICaL__R * var_ICaL__T))) - (var_ICaL__gamma_Ko * var_ICaL__Ko))) / (exp((var_ICaL__V * var_ICaL__F) / (var_ICaL__R * var_ICaL__T)) - 1.0);
00658 const double var_ICaL__Ca_jct = var_Ca_buffer__Ca_jct;
00659 const double var_ICaL__gamma_Cao = 0.341;
00660 const double var_ICaL__gamma_Cai = 0.341;
00661 const double var_ICaL__Cao = var_model_parameters__Cao;
00662 const double var_ICaL__PCa = 0.00054;
00663 const double var_ICaL__i_CaL_Ca_jct = (var_ICaL__temp * var_ICaL__fCa_jct * var_ICaL__Fx_ICaL_jct * var_ICaL__PCa * 4.0 * ((var_ICaL__gamma_Cai * var_ICaL__Ca_jct * exp((2.0 * var_ICaL__V * var_ICaL__F) / (var_ICaL__R * var_ICaL__T))) - (var_ICaL__gamma_Cao * var_ICaL__Cao))) / (exp((2.0 * var_ICaL__V * var_ICaL__F) / (var_ICaL__R * var_ICaL__T)) - 1.0);
00664 const double var_ICaL__Na_jct = var_Na_buffer__Na_jct;
00665 const double var_ICaL__i_CaL_Na_jct = (var_ICaL__temp * var_ICaL__fCa_jct * var_ICaL__Fx_ICaL_jct * var_ICaL__PNa * ((var_ICaL__gamma_Nai * var_ICaL__Na_jct * exp((var_ICaL__V * var_ICaL__F) / (var_ICaL__R * var_ICaL__T))) - (var_ICaL__gamma_Nao * var_ICaL__Nao))) / (exp((var_ICaL__V * var_ICaL__F) / (var_ICaL__R * var_ICaL__T)) - 1.0);
00666 double var_ICaL__G_CaL_mult = 1.0;
00667 const double var_ICaL__Ca_SL = var_Ca_buffer__Ca_SL;
00668 const double var_ICaL__i_CaL_Ca_SL = (var_ICaL__temp * var_ICaL__fCa_SL * var_ICaL__Fx_ICaL_SL * var_ICaL__PCa * 4.0 * ((var_ICaL__gamma_Cai * var_ICaL__Ca_SL * exp((2.0 * var_ICaL__V * var_ICaL__F) / (var_ICaL__R * var_ICaL__T))) - (var_ICaL__gamma_Cao * var_ICaL__Cao))) / (exp((2.0 * var_ICaL__V * var_ICaL__F) / (var_ICaL__R * var_ICaL__T)) - 1.0);
00669 const double var_ICaL__i_CaL = var_ICaL__G_CaL_mult * (var_ICaL__i_CaL_Ca_SL + var_ICaL__i_CaL_Ca_jct + var_ICaL__i_CaL_Na_SL + var_ICaL__i_CaL_Na_jct + var_ICaL__i_CaL_K);
00670 const double var_cell__i_CaL = var_ICaL__i_CaL;
00671 const double var_ICab__G_CaBk = 0.0002513;
00672 const double var_ICab__V = var_cell__V;
00673 const double var_ICab__Fx_CaBk_SL = 0.89;
00674 const double var_reversal_potentials__Ca_SL = var_Ca_buffer__Ca_SL;
00675 const double var_reversal_potentials__Cao = var_model_parameters__Cao;
00676 const double var_reversal_potentials__E_Ca_SL = ((var_reversal_potentials__R * var_reversal_potentials__T) / (2.0 * var_reversal_potentials__F)) * log(var_reversal_potentials__Cao / var_reversal_potentials__Ca_SL);
00677 const double var_ICab__E_Ca_SL = var_reversal_potentials__E_Ca_SL;
00678 const double var_ICab__i_Cab_SL = var_ICab__G_CaBk * var_ICab__Fx_CaBk_SL * (var_ICab__V - var_ICab__E_Ca_SL);
00679 const double var_ICab__Fx_CaBk_jct = 0.11;
00680 const double var_reversal_potentials__Ca_jct = var_Ca_buffer__Ca_jct;
00681 const double var_reversal_potentials__E_Ca_jct = ((var_reversal_potentials__R * var_reversal_potentials__T) / (2.0 * var_reversal_potentials__F)) * log(var_reversal_potentials__Cao / var_reversal_potentials__Ca_jct);
00682 const double var_ICab__E_Ca_jct = var_reversal_potentials__E_Ca_jct;
00683 const double var_ICab__i_Cab_jct = var_ICab__G_CaBk * var_ICab__Fx_CaBk_jct * (var_ICab__V - var_ICab__E_Ca_jct);
00684 const double var_ICab__i_Cab = var_ICab__i_Cab_SL + var_ICab__i_Cab_jct;
00685 const double var_cell__i_Cab = var_ICab__i_Cab;
00686 const double var_ICap__H = 1.6;
00687 const double var_ICap__Fx_SLCaP_SL = 0.89;
00688 const double var_ICap__Km = 0.0005;
00689 const double var_ICap__V_maxAF = 0.0673;
00690 const double var_ICap__Q10_SLCaP = 2.35;
00691 const double var_ICap__T = var_model_parameters__T;
00692 const double var_ICap__Q_SLCaP = pow(var_ICap__Q10_SLCaP, (var_ICap__T - 310.0) / 10.0);
00693 const double var_ICap__Ca_SL = var_Ca_buffer__Ca_SL;
00694 const double var_ICap__i_Cap_SL = (var_ICap__Q_SLCaP * var_ICap__V_maxAF * var_ICap__Fx_SLCaP_SL) / (1.0 + pow(var_ICap__Km / var_ICap__Ca_SL, var_ICap__H));
00695 const double var_ICap__Fx_SLCaP_jct = 0.11;
00696 const double var_ICap__Ca_jct = var_Ca_buffer__Ca_jct;
00697 const double var_ICap__i_Cap_jct = (var_ICap__Q_SLCaP * var_ICap__V_maxAF * var_ICap__Fx_SLCaP_jct) / (1.0 + pow(var_ICap__Km / var_ICap__Ca_jct, var_ICap__H));
00698 const double var_ICap__i_Cap = var_ICap__i_Cap_jct + var_ICap__i_Cap_SL;
00699 const double var_cell__i_Cap = var_ICap__i_Cap;
00700 double var_cell__i_Stim = GetStimulus((1.0/1)*var_environment__time);
00701 const double var_model_parameters__Mgi = 1.0;
00702 const double var_model_parameters__cell_length = 100.0;
00703 const double var_model_parameters__cell_radius = 10.25;
00704 const double var_model_parameters__Cm_per_area = 2e-06;
00705 const double var_model_parameters__Cm = (((var_model_parameters__Cm_per_area * 2.0 * var_model_parameters__cell_radius) / 10000.0) * M_PI * var_model_parameters__cell_length) / 10000.0;
00706 const double var_model_parameters__Vol_Cell = (3.141592654 * pow(var_model_parameters__cell_radius / 1000.0, 2.0) * var_model_parameters__cell_length) / pow(1000.0, 3.0);
00707 const double var_model_parameters__Vol_SR = 0.035 * var_model_parameters__Vol_Cell;
00708 const double var_model_parameters__Vol_SL = 0.02 * var_model_parameters__Vol_Cell;
00709 const double var_model_parameters__Vol_jct = 0.00051 * var_model_parameters__Vol_Cell;
00710 const double var_model_parameters__Vol_cytosol = 0.65 * var_model_parameters__Vol_Cell;
00711 const double var_INa_h_gate__V = var_INa__V;
00712 const double var_INa_h_gate__alpha_h = (var_INa_h_gate__V < (-40.0)) ? (0.135 * exp((80.0 + var_INa_h_gate__V) / (-6.8))) : 0.0;
00713 const double var_INa_h_gate__beta_h = (var_INa_h_gate__V < (-40.0)) ? ((3.56 * exp(0.079 * var_INa_h_gate__V)) + (310000.0 * exp(0.35 * var_INa_h_gate__V))) : (1.0 / (0.13 * (1.0 + exp((var_INa_h_gate__V + 10.66) / (-11.1)))));
00714 const double var_INa_h_gate__tau_h = 1.0 / (var_INa_h_gate__alpha_h + var_INa_h_gate__beta_h);
00715 const double var_INa_h_gate__h_infinity = var_INa_h_gate__alpha_h / (var_INa_h_gate__alpha_h + var_INa_h_gate__beta_h);
00716 const double var_INa_j_gate__V = var_INa__V;
00717 const double var_INa_j_gate__alpha_j = (var_INa_j_gate__V < (-40.0)) ? ((((((-127140.0) * exp(0.2444 * var_INa_j_gate__V)) - (3.474e-05 * exp((-0.04391) * var_INa_j_gate__V))) * (var_INa_j_gate__V + 37.78)) / 1.0) / (1.0 + exp(0.311 * (var_INa_j_gate__V + 79.23)))) : 0.0;
00718 const double var_INa_j_gate__beta_j = (var_INa_j_gate__V < (-40.0)) ? ((0.1212 * exp((-0.01052) * var_INa_j_gate__V)) / (1.0 + exp((-0.1378) * (var_INa_j_gate__V + 40.14)))) : ((0.3 * exp((-2.535e-07) * var_INa_j_gate__V)) / (1.0 + exp((-0.1) * (var_INa_j_gate__V + 32.0))));
00719 const double var_INa_j_gate__tau_j = 1.0 / (var_INa_j_gate__alpha_j + var_INa_j_gate__beta_j);
00720 const double var_INa_j_gate__j_infinity = var_INa_j_gate__alpha_j / (var_INa_j_gate__alpha_j + var_INa_j_gate__beta_j);
00721 const double var_INa_m_gate__V = var_INa__V;
00722 const double var_INa_m_gate__alpha_m = ((0.32 * (var_INa_m_gate__V + 47.13)) / 1.0) / (1.0 - exp((-0.1) * (var_INa_m_gate__V + 47.13)));
00723 const double var_INa_m_gate__beta_m = 0.08 * exp((-var_INa_m_gate__V) / 11.0);
00724 const double var_INa_m_gate__tau_m = 1.0 / (var_INa_m_gate__alpha_m + var_INa_m_gate__beta_m);
00725 const double var_INa_m_gate__m_infinity = var_INa_m_gate__alpha_m / (var_INa_m_gate__alpha_m + var_INa_m_gate__beta_m);
00726 const double var_IKr_Xr_gate__V = var_IKr__V;
00727 const double var_IKr_Xr_gate__Xr_infinity = 1.0 / (1.0 + exp((-(50.0 + var_IKr_Xr_gate__V)) / 7.5));
00728 const double var_IKr_Xr_gate__tau_Xr = 1.0 / (((0.00138 * (var_IKr_Xr_gate__V + 7.0)) / (1.0 - exp((-0.123) * (var_IKr_Xr_gate__V + 7.0)))) + ((0.00061 * (var_IKr_Xr_gate__V + 10.0)) / (exp(0.145 * (var_IKr_Xr_gate__V + 10.0)) - 1.0)));
00729 const double var_IKs_Xs_gate__V = var_IKs__V;
00730 const double var_IKs_Xs_gate__Xs_infinity = 1.0 / (1.0 + exp((-(var_IKs_Xs_gate__V - 1.5)) / 16.7));
00731 const double var_IKs_Xs_gate__tau_Xs = 1.0 / (((7.19e-05 * (var_IKs_Xs_gate__V + 30.0)) / (1.0 - exp((-0.148) * (var_IKs_Xs_gate__V + 30.0)))) + ((0.000131 * (var_IKs_Xs_gate__V + 30.0)) / ((-1.0) + exp(0.0687 * (var_IKs_Xs_gate__V + 30.0)))));
00732 const double var_Itos_X_gate__V = var_Itos__V;
00733 const double var_Itos_X_gate__X_tos_infinity = 1.0 / (1.0 + exp((-(var_Itos_X_gate__V + 3.0)) / 15.0));
00734 const double var_Itos_X_gate__tau_X_tos = (9.0 / (1.0 + exp((var_Itos_X_gate__V + 3.0) / 15.0))) + 0.5;
00735 const double var_Itos_Y_gate__V = var_Itos__V;
00736 const double var_Itos_Y_gate__Y_tos_infinity = 1.0 / (1.0 + exp((var_Itos_Y_gate__V + 33.5) / 10.0));
00737 const double var_Itos_Y_gate__tau_Y_tos = (3000.0 / (1.0 + exp((var_Itos_Y_gate__V + 60.0) / 10.0))) + 30.0;
00738 const double var_Itos_R_gate__V = var_Itos__V;
00739 const double var_Itos_R_gate__R_tos_infinity = 1.0 / (1.0 + exp((var_Itos_R_gate__V + 33.5) / 10.0));
00740 const double var_Itos_R_gate__tau_R_tos = (2800.0 / (1.0 + exp((var_Itos_R_gate__V + 60.0) / 10.0))) + 220.0;
00741 const double var_Itof_X_gate__V = var_Itof__V;
00742 const double var_Itof_X_gate__X_tof_infinity = 1.0 / (1.0 + exp((-(var_Itof_X_gate__V + 3.0)) / 15.0));
00743 const double var_Itof_X_gate__tau_X_tof = (3.5 * exp(-pow(var_Itof_X_gate__V / 30.0, 2.0))) + 1.5;
00744 const double var_Itof_Y_gate__V = var_Itof__V;
00745 const double var_Itof_Y_gate__Y_tof_infinity = 1.0 / (1.0 + exp((var_Itof_Y_gate__V + 33.5) / 10.0));
00746 const double var_Itof_Y_gate__tau_Y_tof = (20.0 / (1.0 + exp((var_Itof_Y_gate__V + 33.5) / 10.0))) + 20.0;
00747 const double var_ICaL_d_gate__V = var_ICaL__V;
00748 const double var_ICaL_d_gate__d_infinity = 1.0 / (1.0 + exp((-(var_ICaL_d_gate__V + 14.5)) / 6.0));
00749 const double var_ICaL_d_gate__tau_d = (1.0 * var_ICaL_d_gate__d_infinity * (1.0 - exp((-(var_ICaL_d_gate__V + 14.5)) / 6.0))) / (0.035 * (var_ICaL_d_gate__V + 14.5));
00750 const double var_ICaL_f_gate__V = var_ICaL__V;
00751 const double var_ICaL_f_gate__f_infinity = (1.0 / (1.0 + exp((var_ICaL_f_gate__V + 35.06) / 3.6))) + (0.6 / (1.0 + exp((50.0 - var_ICaL_f_gate__V) / 20.0)));
00752 const double var_ICaL_f_gate__tau_f = 1.0 / ((0.0197 * exp(-pow(0.0337 * (var_ICaL_f_gate__V + 14.5), 2.0))) + 0.02);
00753 const double var_ICaL_fCa_gate__Ca_SL = var_ICaL__Ca_SL;
00754 const double var_ICaL_fCa_gate__Ca_jct = var_ICaL__Ca_jct;
00755 const double var_Jrel_SR__ks = 25.0;
00756 const double var_Jrel_SR__Ca_jct = var_Ca_buffer__Ca_jct;
00757 const double var_Jrel_SR__Ca_SR = var_Ca_buffer__Ca_SR;
00758 const double var_Jrel_SR__j_rel_SR = var_Jrel_SR__ks * var_Jrel_SR__O * (var_Jrel_SR__Ca_SR - var_Jrel_SR__Ca_jct);
00759 const double var_Jrel_SR__Max_SR = 15.0;
00760 const double var_Jrel_SR__Min_SR = 1.0;
00761 const double var_Jrel_SR__EC50_SR = 0.45;
00762 const double var_Jrel_SR__RI = ((1.0 - var_Jrel_SR__R) - var_Jrel_SR__O) - var_Jrel_SR__I;
00763 const double var_Jrel_SR__koCa = 10.0;
00764 const double var_Jrel_SR__kom = 0.06;
00765 const double var_Jrel_SR__kiCa = 0.5;
00766 const double var_Jrel_SR__kim = 0.005;
00767 const double var_Jrel_SR__HSR = 2.5;
00768 const double var_Jrel_SR__kCaSR = var_Jrel_SR__Max_SR - ((var_Jrel_SR__Max_SR - var_Jrel_SR__Min_SR) / (1.0 + pow(var_Jrel_SR__EC50_SR / var_Jrel_SR__Ca_SR, var_Jrel_SR__HSR)));
00769 const double var_Jrel_SR__koSRCa = var_Jrel_SR__koCa / var_Jrel_SR__kCaSR;
00770 const double var_Jrel_SR__kiSRCa = var_Jrel_SR__kiCa * var_Jrel_SR__kCaSR;
00771 const double var_Jleak_SR__Ca_jct = var_Ca_buffer__Ca_jct;
00772 const double var_Jleak_SR__Ca_SR = var_Ca_buffer__Ca_SR;
00773 const double var_Jleak_SR__KSRleak = 5.348e-06;
00774 const double var_Jleak_SR__j_leak_SR = var_Jleak_SR__KSRleak * (var_Jleak_SR__Ca_SR - var_Jleak_SR__Ca_jct);
00775 const double var_Jpump_SR__Ca_SR = var_Ca_buffer__Ca_SR;
00776 const double var_Jpump_SR__T = var_model_parameters__T;
00777 const double var_Jpump_SR__Q10_SRCaP = 2.6;
00778 const double var_Jpump_SR__Q_SRCaP = pow(var_Jpump_SR__Q10_SRCaP, (var_Jpump_SR__T - 310.0) / 10.0);
00779 const double var_Jpump_SR__Kmf = 0.000246;
00780 const double var_Jpump_SR__Vol_cytosol = var_model_parameters__Vol_cytosol;
00781 const double var_Jpump_SR__Vol_SR = var_model_parameters__Vol_SR;
00782 const double var_Jpump_SR__H = 1.787;
00783 const double var_Jpump_SR__Cai = var_Ca_buffer__Cai;
00784 const double var_Jpump_SR__Kmr = 1.7;
00785 const double var_Jpump_SR__V_max = 0.000286;
00786 const double var_Jpump_SR__j_pump_SR = (((var_Jpump_SR__Q_SRCaP * var_Jpump_SR__V_max * var_Jpump_SR__Vol_cytosol) / var_Jpump_SR__Vol_SR) * (pow(var_Jpump_SR__Cai / var_Jpump_SR__Kmf, var_Jpump_SR__H) - pow(var_Jpump_SR__Ca_SR / var_Jpump_SR__Kmr, var_Jpump_SR__H))) / (1.0 + pow(var_Jpump_SR__Cai / var_Jpump_SR__Kmf, var_Jpump_SR__H) + pow(var_Jpump_SR__Ca_SR / var_Jpump_SR__Kmr, var_Jpump_SR__H));
00787 const double var_ion_diffusion__Na_jct = var_Na_buffer__Na_jct;
00788 const double var_ion_diffusion__Na_SL = var_Na_buffer__Na_SL;
00789 const double var_ion_diffusion__J_Na_jct_SL = (var_ion_diffusion__Na_jct - var_ion_diffusion__Na_SL) * 1.8313e-14;
00790 const double var_ion_diffusion__Nai = var_Na_buffer__Nai;
00791 const double var_ion_diffusion__J_Na_SL_cytosol = (var_ion_diffusion__Na_SL - var_ion_diffusion__Nai) * 1.6386e-12;
00792 const double var_ion_diffusion__Ca_SL = var_Ca_buffer__Ca_SL;
00793 const double var_ion_diffusion__Ca_jct = var_Ca_buffer__Ca_jct;
00794 const double var_ion_diffusion__J_Ca_jct_SL = (var_ion_diffusion__Ca_jct - var_ion_diffusion__Ca_SL) * 8.2413e-13;
00795 const double var_ion_diffusion__Cai = var_Ca_buffer__Cai;
00796 const double var_ion_diffusion__J_Ca_SL_cytosol = (var_ion_diffusion__Ca_SL - var_ion_diffusion__Cai) * 3.7243e-12;
00797 const double var_Na_buffer__Bmax_SL = 1.65;
00798 const double var_Na_buffer__Bmax_jct = 7.561;
00799 const double var_Na_buffer__kon = 0.0001;
00800 const double var_Na_buffer__koff = 0.001;
00801 const double var_Na_buffer__J_Na_jct_SL = var_ion_diffusion__J_Na_jct_SL;
00802 const double var_Na_buffer__J_Na_SL_cytosol = var_ion_diffusion__J_Na_SL_cytosol;
00803 const double var_Na_buffer__i_Na_jct = var_INa__i_Na_jct;
00804 const double var_Na_buffer__i_NaCa_jct = var_INaCa__i_NaCa_jct;
00805 const double var_Na_buffer__i_Nab_jct = var_INab__i_Nab_jct;
00806 const double var_Na_buffer__i_NaK_jct = var_INaK__i_NaK_jct;
00807 const double var_Na_buffer__i_CaL_Na_jct = var_ICaL__i_CaL_Na_jct;
00808 const double var_Na_buffer__i_Na_SL = var_INa__i_Na_SL;
00809 const double var_Na_buffer__i_NaCa_SL = var_INaCa__i_NaCa_SL;
00810 const double var_Na_buffer__i_Nab_SL = var_INab__i_Nab_SL;
00811 const double var_Na_buffer__i_NaK_SL = var_INaK__i_NaK_SL;
00812 const double var_Na_buffer__i_CaL_Na_SL = var_ICaL__i_CaL_Na_SL;
00813 const double var_Na_buffer__Vol_SL = var_model_parameters__Vol_SL;
00814 const double var_Na_buffer__Vol_jct = var_model_parameters__Vol_jct;
00815 const double var_Na_buffer__Vol_cytosol = var_model_parameters__Vol_cytosol;
00816 const double var_Na_buffer__F = var_model_parameters__F;
00817 const double var_Na_buffer__Cm = var_model_parameters__Cm;
00818 const double var_Na_buffer__dNa_jct_buf = (var_Na_buffer__kon * var_Na_buffer__Na_jct * (var_Na_buffer__Bmax_jct - var_Na_buffer__Na_jct_buf)) - (var_Na_buffer__koff * var_Na_buffer__Na_jct_buf);
00819 const double var_Na_buffer__dNa_SL_buf = (var_Na_buffer__kon * var_Na_buffer__Na_SL * (var_Na_buffer__Bmax_SL - var_Na_buffer__Na_SL_buf)) - (var_Na_buffer__koff * var_Na_buffer__Na_SL_buf);
00820 const double var_Ca_buffer__Mgi = var_model_parameters__Mgi;
00821 const double var_Ca_buffer__Bmax_SLB_SL = 0.0374;
00822 const double var_Ca_buffer__Bmax_SLB_jct = 0.0046;
00823 const double var_Ca_buffer__Bmax_SLHigh_SL = 0.0134;
00824 const double var_Ca_buffer__Bmax_SLHigh_jct = 0.00165;
00825 const double var_Ca_buffer__Bmax_Calsequestrin = 0.14;
00826 const double var_Ca_buffer__kon_SL = 100.0;
00827 const double var_Ca_buffer__kon_Calsequestrin = 100.0;
00828 const double var_Ca_buffer__koff_SLB = 1.3;
00829 const double var_Ca_buffer__koff_SLHigh = 0.03;
00830 const double var_Ca_buffer__koff_Calsequestrin = 65.0;
00831 const double var_Ca_buffer__i_CaL_Ca_jct = var_ICaL__i_CaL_Ca_jct;
00832 const double var_Ca_buffer__i_NaCa_jct = var_INaCa__i_NaCa_jct;
00833 const double var_Ca_buffer__i_Cab_jct = var_ICab__i_Cab_jct;
00834 const double var_Ca_buffer__i_Cap_jct = var_ICap__i_Cap_jct;
00835 const double var_Ca_buffer__i_CaL_Ca_SL = var_ICaL__i_CaL_Ca_SL;
00836 const double var_Ca_buffer__i_NaCa_SL = var_INaCa__i_NaCa_SL;
00837 const double var_Ca_buffer__i_Cab_SL = var_ICab__i_Cab_SL;
00838 const double var_Ca_buffer__i_Cap_SL = var_ICap__i_Cap_SL;
00839 const double var_Ca_buffer__j_pump_SR = var_Jpump_SR__j_pump_SR;
00840 const double var_Ca_buffer__j_rel_SR = var_Jrel_SR__j_rel_SR;
00841 const double var_Ca_buffer__j_leak_SR = var_Jleak_SR__j_leak_SR;
00842 const double var_Ca_buffer__J_Ca_jct_SL = var_ion_diffusion__J_Ca_jct_SL;
00843 const double var_Ca_buffer__J_Ca_SL_cytosol = var_ion_diffusion__J_Ca_SL_cytosol;
00844 const double var_Ca_buffer__Vol_SR = var_model_parameters__Vol_SR;
00845 const double var_Ca_buffer__Vol_SL = var_model_parameters__Vol_SL;
00846 const double var_Ca_buffer__Vol_jct = var_model_parameters__Vol_jct;
00847 const double var_Ca_buffer__Vol_cytosol = var_model_parameters__Vol_cytosol;
00848 const double var_Ca_buffer__F = var_model_parameters__F;
00849 const double var_Ca_buffer__Cm = var_model_parameters__Cm;
00850 const double var_Ca_buffer__dCalsequestrin = (var_Ca_buffer__kon_Calsequestrin * var_Ca_buffer__Ca_SR * (((var_Ca_buffer__Bmax_Calsequestrin * var_Ca_buffer__Vol_cytosol) / var_Ca_buffer__Vol_SR) - var_Ca_buffer__Ca_Calsequestrin)) - (var_Ca_buffer__koff_Calsequestrin * var_Ca_buffer__Ca_Calsequestrin);
00851 const double var_cytosolic_Ca_buffer__Bmax_Myosin_Mg = 0.14;
00852 const double var_cytosolic_Ca_buffer__koff_Myosin_Mg = 5.7e-05;
00853 const double var_cytosolic_Ca_buffer__Mgi = var_Ca_buffer__Mgi;
00854 const double var_cytosolic_Ca_buffer__kon_Myosin_Mg = 0.0157;
00855 const double var_cytosolic_Ca_buffer__dMg_Myosin = (var_cytosolic_Ca_buffer__kon_Myosin_Mg * var_cytosolic_Ca_buffer__Mgi * (var_cytosolic_Ca_buffer__Bmax_Myosin_Mg - (var_cytosolic_Ca_buffer__Ca_Myosin + var_cytosolic_Ca_buffer__Mg_Myosin))) - (var_cytosolic_Ca_buffer__koff_Myosin_Mg * var_cytosolic_Ca_buffer__Mg_Myosin);
00856 const double var_cytosolic_Ca_buffer__Bmax_TroponinC_Ca_Mg_Mg = 0.14;
00857 const double var_cytosolic_Ca_buffer__kon_TroponinC_Ca_Mg_Mg = 0.003;
00858 const double var_cytosolic_Ca_buffer__koff_TroponinC_Ca_Mg_Mg = 0.00333;
00859 const double var_cytosolic_Ca_buffer__dMg_TroponinC_Ca_Mg = (var_cytosolic_Ca_buffer__kon_TroponinC_Ca_Mg_Mg * var_cytosolic_Ca_buffer__Mgi * (var_cytosolic_Ca_buffer__Bmax_TroponinC_Ca_Mg_Mg - (var_cytosolic_Ca_buffer__Ca_TroponinC_Ca_Mg + var_cytosolic_Ca_buffer__Mg_TroponinC_Ca_Mg))) - (var_cytosolic_Ca_buffer__koff_TroponinC_Ca_Mg_Mg * var_cytosolic_Ca_buffer__Mg_TroponinC_Ca_Mg);
00860 const double var_cytosolic_Ca_buffer__Cai = var_Ca_buffer__Cai;
00861 const double var_cytosolic_Ca_buffer__kon_TroponinC_Ca_Mg_Ca = 2.37;
00862 const double var_cytosolic_Ca_buffer__koff_TroponinC_Ca_Mg_Ca = 3.2e-05;
00863 const double var_cytosolic_Ca_buffer__Bmax_TroponinC_Ca_Mg_Ca = 0.14;
00864 const double var_cytosolic_Ca_buffer__dCa_TroponinC_Ca_Mg = (var_cytosolic_Ca_buffer__kon_TroponinC_Ca_Mg_Ca * var_cytosolic_Ca_buffer__Cai * (var_cytosolic_Ca_buffer__Bmax_TroponinC_Ca_Mg_Ca - (var_cytosolic_Ca_buffer__Ca_TroponinC_Ca_Mg + var_cytosolic_Ca_buffer__Mg_TroponinC_Ca_Mg))) - (var_cytosolic_Ca_buffer__koff_TroponinC_Ca_Mg_Ca * var_cytosolic_Ca_buffer__Ca_TroponinC_Ca_Mg);
00865 const double var_cytosolic_Ca_buffer__kon_Myosin_Ca = 13.8;
00866 const double var_cytosolic_Ca_buffer__Bmax_Myosin_Ca = 0.14;
00867 const double var_cytosolic_Ca_buffer__koff_Myosin_Ca = 0.00046;
00868 const double var_cytosolic_Ca_buffer__dCa_Myosin = (var_cytosolic_Ca_buffer__kon_Myosin_Ca * var_cytosolic_Ca_buffer__Cai * (var_cytosolic_Ca_buffer__Bmax_Myosin_Ca - (var_cytosolic_Ca_buffer__Ca_Myosin + var_cytosolic_Ca_buffer__Mg_Myosin))) - (var_cytosolic_Ca_buffer__koff_Myosin_Ca * var_cytosolic_Ca_buffer__Ca_Myosin);
00869 const double var_cytosolic_Ca_buffer__koff_Calmodulin = 0.238;
00870 const double var_cytosolic_Ca_buffer__kon_Calmodulin = 34.0;
00871 const double var_cytosolic_Ca_buffer__Bmax_Calmodulin = 0.024;
00872 const double var_cytosolic_Ca_buffer__dCa_Calmodulin = (var_cytosolic_Ca_buffer__kon_Calmodulin * var_cytosolic_Ca_buffer__Cai * (var_cytosolic_Ca_buffer__Bmax_Calmodulin - var_cytosolic_Ca_buffer__Ca_Calmodulin)) - (var_cytosolic_Ca_buffer__koff_Calmodulin * var_cytosolic_Ca_buffer__Ca_Calmodulin);
00873 const double var_cytosolic_Ca_buffer__Bmax_TroponinC = 0.07;
00874 const double var_cytosolic_Ca_buffer__kon_TroponinC = 32.7;
00875 const double var_cytosolic_Ca_buffer__koff_TroponinC = 0.0196;
00876 const double var_cytosolic_Ca_buffer__dCa_TroponinC = (var_cytosolic_Ca_buffer__kon_TroponinC * var_cytosolic_Ca_buffer__Cai * (var_cytosolic_Ca_buffer__Bmax_TroponinC - var_cytosolic_Ca_buffer__Ca_TroponinC)) - (var_cytosolic_Ca_buffer__koff_TroponinC * var_cytosolic_Ca_buffer__Ca_TroponinC);
00877 const double var_cytosolic_Ca_buffer__koff_SRB = 0.06;
00878 const double var_cytosolic_Ca_buffer__Bmax_SRB = 0.0171;
00879 const double var_cytosolic_Ca_buffer__kon_SRB = 100.0;
00880 const double var_cytosolic_Ca_buffer__dCa_SRB = (var_cytosolic_Ca_buffer__kon_SRB * var_cytosolic_Ca_buffer__Cai * (var_cytosolic_Ca_buffer__Bmax_SRB - var_cytosolic_Ca_buffer__Ca_SRB)) - (var_cytosolic_Ca_buffer__koff_SRB * var_cytosolic_Ca_buffer__Ca_SRB);
00881 const double var_cytosolic_Ca_buffer__dCa_cytosol_tot_bound = var_cytosolic_Ca_buffer__dCa_TroponinC + var_cytosolic_Ca_buffer__dCa_TroponinC_Ca_Mg + var_cytosolic_Ca_buffer__dMg_TroponinC_Ca_Mg + var_cytosolic_Ca_buffer__dCa_Calmodulin + var_cytosolic_Ca_buffer__dCa_Myosin + var_cytosolic_Ca_buffer__dMg_Myosin + var_cytosolic_Ca_buffer__dCa_SRB;
00882 const double var_Ca_buffer__dCa_cytosol_tot_bound = var_cytosolic_Ca_buffer__dCa_cytosol_tot_bound;
00883 const double var_Ca_buffer__dCa_SLB_SL = (var_Ca_buffer__kon_SL * var_Ca_buffer__Ca_SL * (((var_Ca_buffer__Bmax_SLB_SL * var_Ca_buffer__Vol_cytosol) / var_Ca_buffer__Vol_SL) - var_Ca_buffer__Ca_SLB_SL)) - (var_Ca_buffer__koff_SLB * var_Ca_buffer__Ca_SLB_SL);
00884 const double var_Ca_buffer__dCa_SLB_jct = (var_Ca_buffer__kon_SL * var_Ca_buffer__Ca_jct * (((var_Ca_buffer__Bmax_SLB_jct * 0.1 * var_Ca_buffer__Vol_cytosol) / var_Ca_buffer__Vol_jct) - var_Ca_buffer__Ca_SLB_jct)) - (var_Ca_buffer__koff_SLB * var_Ca_buffer__Ca_SLB_jct);
00885 const double var_Ca_buffer__dCa_SLHigh_SL = (var_Ca_buffer__kon_SL * var_Ca_buffer__Ca_SL * (((var_Ca_buffer__Bmax_SLHigh_SL * var_Ca_buffer__Vol_cytosol) / var_Ca_buffer__Vol_SL) - var_Ca_buffer__Ca_SLHigh_SL)) - (var_Ca_buffer__koff_SLHigh * var_Ca_buffer__Ca_SLHigh_SL);
00886 const double var_Ca_buffer__dCa_SLHigh_jct = (var_Ca_buffer__kon_SL * var_Ca_buffer__Ca_jct * (((var_Ca_buffer__Bmax_SLHigh_jct * 0.1 * var_Ca_buffer__Vol_cytosol) / var_Ca_buffer__Vol_jct) - var_Ca_buffer__Ca_SLHigh_jct)) - (var_Ca_buffer__koff_SLHigh * var_Ca_buffer__Ca_SLHigh_jct);
00887 const double var_Ca_buffer__dCa_jct_tot_bound = var_Ca_buffer__dCa_SLB_jct + var_Ca_buffer__dCa_SLHigh_jct;
00888 const double var_Ca_buffer__dCa_SL_tot_bound = var_Ca_buffer__dCa_SLB_SL + var_Ca_buffer__dCa_SLHigh_SL;
00889 const double var_Ca_buffer__i_Ca_jct_tot = (var_Ca_buffer__i_CaL_Ca_jct - (2.0 * var_Ca_buffer__i_NaCa_jct)) + var_Ca_buffer__i_Cab_jct + var_Ca_buffer__i_Cap_jct;
00890 const double var_Ca_buffer__i_Ca_SL_tot = (var_Ca_buffer__i_CaL_Ca_SL - (2.0 * var_Ca_buffer__i_NaCa_SL)) + var_Ca_buffer__i_Cab_SL + var_Ca_buffer__i_Cap_SL;
00891 const double var_indo_fluo_Ca_buffer_not_connected__Cai = var_Ca_buffer__Cai;
00892 const double var_indo_fluo_Ca_buffer_not_connected__Ca_SL = var_Ca_buffer__Ca_SL;
00893 const double var_indo_fluo_Ca_buffer_not_connected__Ca_jct = var_Ca_buffer__Ca_jct;
00894 const double var_indo_fluo_Ca_buffer_not_connected__Vol_SL = var_Ca_buffer__Vol_SL;
00895 const double var_indo_fluo_Ca_buffer_not_connected__Vol_jct = var_Ca_buffer__Vol_jct;
00896 const double var_indo_fluo_Ca_buffer_not_connected__Vol_cytosol = var_Ca_buffer__Vol_cytosol;
00897 const double var_indo_fluo_Ca_buffer_not_connected__Indo1 = 0.0;
00898 const double var_indo_fluo_Ca_buffer_not_connected__Fluo3 = 0.0;
00899 const double var_indo_fluo_Ca_buffer_not_connected__Bmax_Indo1_Cytosol = 0.025;
00900 const double var_indo_fluo_Ca_buffer_not_connected__Bmax_Indo1_SL = 0.00077;
00901 const double var_indo_fluo_Ca_buffer_not_connected__Bmax_Indo1_jct = 2e-05;
00902 const double var_indo_fluo_Ca_buffer_not_connected__Bmax_Fluo3_Cytosol = 0.025;
00903 const double var_indo_fluo_Ca_buffer_not_connected__Bmax_Fluo3_SL = 0.00077;
00904 const double var_indo_fluo_Ca_buffer_not_connected__Bmax_Fluo3_jct = 2e-05;
00905 const double var_indo_fluo_Ca_buffer_not_connected__kon_Indo1 = 100.0;
00906 const double var_indo_fluo_Ca_buffer_not_connected__kon_Fluo3 = 100.0;
00907 const double var_indo_fluo_Ca_buffer_not_connected__koff_Indo1 = 0.06;
00908 const double var_indo_fluo_Ca_buffer_not_connected__koff_Fluo3 = 0.11;
00909 const double var_indo_fluo_Ca_buffer_not_connected__Indo1Bound = var_indo_fluo_Ca_buffer_not_connected__Ca_Indo1_Cytosol + ((var_indo_fluo_Ca_buffer_not_connected__Ca_Indo1_jct * var_indo_fluo_Ca_buffer_not_connected__Vol_jct) / var_indo_fluo_Ca_buffer_not_connected__Vol_cytosol) + ((var_indo_fluo_Ca_buffer_not_connected__Ca_Indo1_SL * var_indo_fluo_Ca_buffer_not_connected__Vol_SL) / var_indo_fluo_Ca_buffer_not_connected__Vol_cytosol);
00910 const double var_indo_fluo_Ca_buffer_not_connected__Fluo3Bound = var_indo_fluo_Ca_buffer_not_connected__Ca_Fluo3_Cytosol + ((var_indo_fluo_Ca_buffer_not_connected__Ca_Fluo3_jct * var_indo_fluo_Ca_buffer_not_connected__Vol_jct) / var_indo_fluo_Ca_buffer_not_connected__Vol_cytosol) + ((var_indo_fluo_Ca_buffer_not_connected__Ca_Fluo3_SL * var_indo_fluo_Ca_buffer_not_connected__Vol_SL) / var_indo_fluo_Ca_buffer_not_connected__Vol_cytosol);
00911 const double var_indo_fluo_Ca_buffer_not_connected__dCa_Indo1_Cytosol = (var_indo_fluo_Ca_buffer_not_connected__kon_Indo1 * (var_indo_fluo_Ca_buffer_not_connected__Indo1 - var_indo_fluo_Ca_buffer_not_connected__Indo1Bound) * var_indo_fluo_Ca_buffer_not_connected__Cai * (var_indo_fluo_Ca_buffer_not_connected__Bmax_Indo1_Cytosol - var_indo_fluo_Ca_buffer_not_connected__Ca_Indo1_Cytosol)) - (var_indo_fluo_Ca_buffer_not_connected__koff_Indo1 * var_indo_fluo_Ca_buffer_not_connected__Ca_Indo1_Cytosol);
00912 const double var_indo_fluo_Ca_buffer_not_connected__dCa_Indo1_jct = (var_indo_fluo_Ca_buffer_not_connected__kon_Indo1 * (var_indo_fluo_Ca_buffer_not_connected__Indo1 - var_indo_fluo_Ca_buffer_not_connected__Indo1Bound) * var_indo_fluo_Ca_buffer_not_connected__Ca_jct * (((var_indo_fluo_Ca_buffer_not_connected__Bmax_Indo1_jct * var_indo_fluo_Ca_buffer_not_connected__Vol_cytosol) / var_indo_fluo_Ca_buffer_not_connected__Vol_jct) - var_indo_fluo_Ca_buffer_not_connected__Ca_Indo1_jct)) - (var_indo_fluo_Ca_buffer_not_connected__koff_Indo1 * var_indo_fluo_Ca_buffer_not_connected__Ca_Indo1_jct);
00913 const double var_indo_fluo_Ca_buffer_not_connected__dCa_Indo1_SL = (var_indo_fluo_Ca_buffer_not_connected__kon_Indo1 * (var_indo_fluo_Ca_buffer_not_connected__Indo1 - var_indo_fluo_Ca_buffer_not_connected__Indo1Bound) * var_indo_fluo_Ca_buffer_not_connected__Ca_SL * (((var_indo_fluo_Ca_buffer_not_connected__Bmax_Indo1_SL * var_indo_fluo_Ca_buffer_not_connected__Vol_cytosol) / var_indo_fluo_Ca_buffer_not_connected__Vol_SL) - var_indo_fluo_Ca_buffer_not_connected__Ca_Indo1_SL)) - (var_indo_fluo_Ca_buffer_not_connected__koff_Indo1 * var_indo_fluo_Ca_buffer_not_connected__Ca_Indo1_SL);
00914 const double var_indo_fluo_Ca_buffer_not_connected__dCa_Fluo3_Cytosol = (var_indo_fluo_Ca_buffer_not_connected__kon_Fluo3 * (var_indo_fluo_Ca_buffer_not_connected__Fluo3 - var_indo_fluo_Ca_buffer_not_connected__Fluo3Bound) * var_indo_fluo_Ca_buffer_not_connected__Cai * (var_indo_fluo_Ca_buffer_not_connected__Bmax_Fluo3_Cytosol - var_indo_fluo_Ca_buffer_not_connected__Ca_Fluo3_Cytosol)) - (var_indo_fluo_Ca_buffer_not_connected__koff_Fluo3 * var_indo_fluo_Ca_buffer_not_connected__Ca_Fluo3_Cytosol);
00915 const double var_indo_fluo_Ca_buffer_not_connected__dCa_Fluo3_jct = (var_indo_fluo_Ca_buffer_not_connected__kon_Fluo3 * (var_indo_fluo_Ca_buffer_not_connected__Fluo3 - var_indo_fluo_Ca_buffer_not_connected__Fluo3Bound) * var_indo_fluo_Ca_buffer_not_connected__Ca_jct * (((var_indo_fluo_Ca_buffer_not_connected__Bmax_Fluo3_jct * var_indo_fluo_Ca_buffer_not_connected__Vol_cytosol) / var_indo_fluo_Ca_buffer_not_connected__Vol_jct) - var_indo_fluo_Ca_buffer_not_connected__Ca_Fluo3_jct)) - (var_indo_fluo_Ca_buffer_not_connected__koff_Fluo3 * var_indo_fluo_Ca_buffer_not_connected__Ca_Fluo3_jct);
00916 const double var_indo_fluo_Ca_buffer_not_connected__dCa_Fluo3_SL = (var_indo_fluo_Ca_buffer_not_connected__kon_Fluo3 * (var_indo_fluo_Ca_buffer_not_connected__Fluo3 - var_indo_fluo_Ca_buffer_not_connected__Fluo3Bound) * var_indo_fluo_Ca_buffer_not_connected__Ca_SL * (((var_indo_fluo_Ca_buffer_not_connected__Bmax_Fluo3_SL * var_indo_fluo_Ca_buffer_not_connected__Vol_cytosol) / var_indo_fluo_Ca_buffer_not_connected__Vol_SL) - var_indo_fluo_Ca_buffer_not_connected__Ca_Fluo3_SL)) - (var_indo_fluo_Ca_buffer_not_connected__koff_Fluo3 * var_indo_fluo_Ca_buffer_not_connected__Ca_Fluo3_SL);
00917
00918 double d_dt_cell__V;
00919 if (mSetVoltageDerivativeToZero)
00920 {
00921 d_dt_cell__V = 0.0;
00922 }
00923 else
00924 {
00925 d_dt_cell__V = -(var_cell__i_Na + var_cell__i_Nab + var_cell__i_NaK + var_cell__i_Kr + var_cell__i_Ks + var_cell__i_tos + var_cell__i_tof + var_cell__i_K1 + var_cell__i_NaCa + var_cell__i_Cl_Ca + var_cell__i_Clb + var_cell__i_CaL + var_cell__i_Cab + var_cell__i_Cap + var_cell__i_Stim);
00926 }
00927
00928 const double d_dt_INa_h_gate__h = (var_INa_h_gate__h_infinity - var_INa_h_gate__h) / var_INa_h_gate__tau_h;
00929 const double d_dt_INa_j_gate__j = (var_INa_j_gate__j_infinity - var_INa_j_gate__j) / var_INa_j_gate__tau_j;
00930 const double d_dt_INa_m_gate__m = (var_INa_m_gate__m_infinity - var_INa_m_gate__m) / var_INa_m_gate__tau_m;
00931 const double d_dt_IKr_Xr_gate__Xr = (var_IKr_Xr_gate__Xr_infinity - var_IKr_Xr_gate__Xr) / var_IKr_Xr_gate__tau_Xr;
00932 const double d_dt_IKs_Xs_gate__Xs = (var_IKs_Xs_gate__Xs_infinity - var_IKs_Xs_gate__Xs) / var_IKs_Xs_gate__tau_Xs;
00933 const double d_dt_Itos_X_gate__X_tos = (var_Itos_X_gate__X_tos_infinity - var_Itos_X_gate__X_tos) / var_Itos_X_gate__tau_X_tos;
00934 const double d_dt_Itos_Y_gate__Y_tos = (var_Itos_Y_gate__Y_tos_infinity - var_Itos_Y_gate__Y_tos) / var_Itos_Y_gate__tau_Y_tos;
00935 const double d_dt_Itos_R_gate__R_tos = (var_Itos_R_gate__R_tos_infinity - var_Itos_R_gate__R_tos) / var_Itos_R_gate__tau_R_tos;
00936 const double d_dt_Itof_X_gate__X_tof = (var_Itof_X_gate__X_tof_infinity - var_Itof_X_gate__X_tof) / var_Itof_X_gate__tau_X_tof;
00937 const double d_dt_Itof_Y_gate__Y_tof = (var_Itof_Y_gate__Y_tof_infinity - var_Itof_Y_gate__Y_tof) / var_Itof_Y_gate__tau_Y_tof;
00938 const double d_dt_ICaL_d_gate__d = (var_ICaL_d_gate__d_infinity - var_ICaL_d_gate__d) / var_ICaL_d_gate__tau_d;
00939 const double d_dt_ICaL_f_gate__f = (var_ICaL_f_gate__f_infinity - var_ICaL_f_gate__f) / var_ICaL_f_gate__tau_f;
00940 const double d_dt_ICaL_fCa_gate__fCaB_SL = (1.7 * var_ICaL_fCa_gate__Ca_SL * (1.0 - var_ICaL_fCa_gate__fCaB_SL)) - (0.0119 * var_ICaL_fCa_gate__fCaB_SL);
00941 const double d_dt_ICaL_fCa_gate__fCaB_jct = (1.7 * var_ICaL_fCa_gate__Ca_jct * (1.0 - var_ICaL_fCa_gate__fCaB_jct)) - (0.0119 * var_ICaL_fCa_gate__fCaB_jct);
00942 const double d_dt_Jrel_SR__R = ((var_Jrel_SR__kim * var_Jrel_SR__RI) - (var_Jrel_SR__kiSRCa * var_Jrel_SR__Ca_jct * var_Jrel_SR__R)) - ((var_Jrel_SR__koSRCa * pow(var_Jrel_SR__Ca_jct, 2.0) * var_Jrel_SR__R) - (var_Jrel_SR__kom * var_Jrel_SR__O));
00943 const double d_dt_Jrel_SR__O = ((var_Jrel_SR__koSRCa * pow(var_Jrel_SR__Ca_jct, 2.0) * var_Jrel_SR__R) - (var_Jrel_SR__kom * var_Jrel_SR__O)) - ((var_Jrel_SR__kiSRCa * var_Jrel_SR__Ca_jct * var_Jrel_SR__O) - (var_Jrel_SR__kim * var_Jrel_SR__I));
00944 const double d_dt_Jrel_SR__I = ((var_Jrel_SR__kiSRCa * var_Jrel_SR__Ca_jct * var_Jrel_SR__O) - (var_Jrel_SR__kim * var_Jrel_SR__I)) - ((var_Jrel_SR__kom * var_Jrel_SR__I) - (var_Jrel_SR__koSRCa * pow(var_Jrel_SR__Ca_jct, 2.0) * var_Jrel_SR__RI));
00945 const double d_dt_Na_buffer__Na_jct_buf = var_Na_buffer__dNa_jct_buf;
00946 const double d_dt_Na_buffer__Na_SL_buf = var_Na_buffer__dNa_SL_buf;
00947 const double d_dt_Na_buffer__Na_jct = ((((-var_Na_buffer__Cm) * (var_Na_buffer__i_Na_jct + (3.0 * var_Na_buffer__i_NaCa_jct) + var_Na_buffer__i_Nab_jct + (3.0 * var_Na_buffer__i_NaK_jct) + var_Na_buffer__i_CaL_Na_jct)) / (var_Na_buffer__Vol_jct * var_Na_buffer__F)) - (var_Na_buffer__J_Na_jct_SL / var_Na_buffer__Vol_jct)) - var_Na_buffer__dNa_jct_buf;
00948 const double d_dt_Na_buffer__Na_SL = ((((-var_Na_buffer__Cm) * (var_Na_buffer__i_Na_SL + (3.0 * var_Na_buffer__i_NaCa_SL) + var_Na_buffer__i_Nab_SL + (3.0 * var_Na_buffer__i_NaK_SL) + var_Na_buffer__i_CaL_Na_SL)) / (var_Na_buffer__Vol_SL * var_Na_buffer__F)) + ((var_Na_buffer__J_Na_jct_SL - var_Na_buffer__J_Na_SL_cytosol) / var_Na_buffer__Vol_SL)) - var_Na_buffer__dNa_SL_buf;
00949 const double d_dt_Na_buffer__Nai = var_Na_buffer__J_Na_SL_cytosol / var_Na_buffer__Vol_cytosol;
00950 const double d_dt_Ca_buffer__Ca_Calsequestrin = var_Ca_buffer__dCalsequestrin;
00951 const double d_dt_Ca_buffer__Ca_SLB_SL = var_Ca_buffer__dCa_SLB_SL;
00952 const double d_dt_Ca_buffer__Ca_SLB_jct = var_Ca_buffer__dCa_SLB_jct;
00953 const double d_dt_Ca_buffer__Ca_SLHigh_SL = var_Ca_buffer__dCa_SLHigh_SL;
00954 const double d_dt_Ca_buffer__Ca_SLHigh_jct = var_Ca_buffer__dCa_SLHigh_jct;
00955 const double d_dt_Ca_buffer__Ca_SR = (var_Ca_buffer__j_pump_SR - (((var_Ca_buffer__j_leak_SR * var_Ca_buffer__Vol_cytosol) / var_Ca_buffer__Vol_SR) + var_Ca_buffer__j_rel_SR)) - var_Ca_buffer__dCalsequestrin;
00956 const double d_dt_Ca_buffer__Ca_jct = (((((-var_Ca_buffer__i_Ca_jct_tot) * var_Ca_buffer__Cm) / (var_Ca_buffer__Vol_jct * 2.0 * var_Ca_buffer__F)) - (var_Ca_buffer__J_Ca_jct_SL / var_Ca_buffer__Vol_jct)) + ((var_Ca_buffer__j_rel_SR * var_Ca_buffer__Vol_SR) / var_Ca_buffer__Vol_jct) + ((var_Ca_buffer__j_leak_SR * var_Ca_buffer__Vol_cytosol) / var_Ca_buffer__Vol_jct)) - (1.0 * var_Ca_buffer__dCa_jct_tot_bound);
00957 const double d_dt_Ca_buffer__Ca_SL = ((((-var_Ca_buffer__i_Ca_SL_tot) * var_Ca_buffer__Cm) / (var_Ca_buffer__Vol_SL * 2.0 * var_Ca_buffer__F)) + ((var_Ca_buffer__J_Ca_jct_SL - var_Ca_buffer__J_Ca_SL_cytosol) / var_Ca_buffer__Vol_SL)) - (1.0 * var_Ca_buffer__dCa_SL_tot_bound);
00958 const double d_dt_Ca_buffer__Cai = ((((-var_Ca_buffer__j_pump_SR) * var_Ca_buffer__Vol_SR) / var_Ca_buffer__Vol_cytosol) + (var_Ca_buffer__J_Ca_SL_cytosol / var_Ca_buffer__Vol_cytosol)) - (1.0 * var_Ca_buffer__dCa_cytosol_tot_bound);
00959 const double d_dt_cytosolic_Ca_buffer__Ca_TroponinC = var_cytosolic_Ca_buffer__dCa_TroponinC;
00960 const double d_dt_cytosolic_Ca_buffer__Ca_TroponinC_Ca_Mg = var_cytosolic_Ca_buffer__dCa_TroponinC_Ca_Mg;
00961 const double d_dt_cytosolic_Ca_buffer__Mg_TroponinC_Ca_Mg = var_cytosolic_Ca_buffer__dMg_TroponinC_Ca_Mg;
00962 const double d_dt_cytosolic_Ca_buffer__Ca_Calmodulin = var_cytosolic_Ca_buffer__dCa_Calmodulin;
00963 const double d_dt_cytosolic_Ca_buffer__Ca_Myosin = var_cytosolic_Ca_buffer__dCa_Myosin;
00964 const double d_dt_cytosolic_Ca_buffer__Mg_Myosin = var_cytosolic_Ca_buffer__dMg_Myosin;
00965 const double d_dt_cytosolic_Ca_buffer__Ca_SRB = var_cytosolic_Ca_buffer__dCa_SRB;
00966 const double d_dt_indo_fluo_Ca_buffer_not_connected__Ca_Indo1_Cytosol = var_indo_fluo_Ca_buffer_not_connected__dCa_Indo1_Cytosol;
00967 const double d_dt_indo_fluo_Ca_buffer_not_connected__Ca_Indo1_SL = var_indo_fluo_Ca_buffer_not_connected__dCa_Indo1_SL;
00968 const double d_dt_indo_fluo_Ca_buffer_not_connected__Ca_Indo1_jct = var_indo_fluo_Ca_buffer_not_connected__dCa_Indo1_jct;
00969 const double d_dt_indo_fluo_Ca_buffer_not_connected__Ca_Fluo3_Cytosol = var_indo_fluo_Ca_buffer_not_connected__dCa_Fluo3_Cytosol;
00970 const double d_dt_indo_fluo_Ca_buffer_not_connected__Ca_Fluo3_SL = var_indo_fluo_Ca_buffer_not_connected__dCa_Fluo3_SL;
00971 const double d_dt_indo_fluo_Ca_buffer_not_connected__Ca_Fluo3_jct = var_indo_fluo_Ca_buffer_not_connected__dCa_Fluo3_jct;
00972
00973 rDY[0] = 1.0*d_dt_cell__V;
00974 rDY[1] = 1.0*d_dt_INa_h_gate__h;
00975 rDY[2] = 1.0*d_dt_INa_j_gate__j;
00976 rDY[3] = 1.0*d_dt_INa_m_gate__m;
00977 rDY[4] = 1.0*d_dt_IKr_Xr_gate__Xr;
00978 rDY[5] = 1.0*d_dt_IKs_Xs_gate__Xs;
00979 rDY[6] = 1.0*d_dt_Itos_X_gate__X_tos;
00980 rDY[7] = 1.0*d_dt_Itos_Y_gate__Y_tos;
00981 rDY[8] = 1.0*d_dt_Itos_R_gate__R_tos;
00982 rDY[9] = 1.0*d_dt_Itof_X_gate__X_tof;
00983 rDY[10] = 1.0*d_dt_Itof_Y_gate__Y_tof;
00984 rDY[11] = 1.0*d_dt_ICaL_d_gate__d;
00985 rDY[12] = 1.0*d_dt_ICaL_f_gate__f;
00986 rDY[13] = 1.0*d_dt_ICaL_fCa_gate__fCaB_SL;
00987 rDY[14] = 1.0*d_dt_ICaL_fCa_gate__fCaB_jct;
00988 rDY[15] = 1.0*d_dt_Jrel_SR__R;
00989 rDY[16] = 1.0*d_dt_Jrel_SR__I;
00990 rDY[17] = 1.0*d_dt_Jrel_SR__O;
00991 rDY[18] = 1.0*d_dt_Na_buffer__Na_SL;
00992 rDY[19] = 1.0*d_dt_Na_buffer__Na_jct;
00993 rDY[20] = 1.0*d_dt_Na_buffer__Na_SL_buf;
00994 rDY[21] = 1.0*d_dt_Na_buffer__Na_jct_buf;
00995 rDY[22] = 1.0*d_dt_Na_buffer__Nai;
00996 rDY[23] = 1.0*d_dt_Ca_buffer__Ca_SR;
00997 rDY[24] = 1.0*d_dt_Ca_buffer__Ca_SL;
00998 rDY[25] = 1.0*d_dt_Ca_buffer__Ca_jct;
00999 rDY[26] = 1.0*d_dt_Ca_buffer__Cai;
01000 rDY[27] = 1.0*d_dt_Ca_buffer__Ca_SLB_SL;
01001 rDY[28] = 1.0*d_dt_Ca_buffer__Ca_SLB_jct;
01002 rDY[29] = 1.0*d_dt_Ca_buffer__Ca_SLHigh_SL;
01003 rDY[30] = 1.0*d_dt_Ca_buffer__Ca_SLHigh_jct;
01004 rDY[31] = 1.0*d_dt_Ca_buffer__Ca_Calsequestrin;
01005 rDY[32] = 1.0*d_dt_cytosolic_Ca_buffer__Ca_TroponinC;
01006 rDY[33] = 1.0*d_dt_cytosolic_Ca_buffer__Ca_TroponinC_Ca_Mg;
01007 rDY[34] = 1.0*d_dt_cytosolic_Ca_buffer__Mg_TroponinC_Ca_Mg;
01008 rDY[35] = 1.0*d_dt_cytosolic_Ca_buffer__Ca_Calmodulin;
01009 rDY[36] = 1.0*d_dt_cytosolic_Ca_buffer__Ca_Myosin;
01010 rDY[37] = 1.0*d_dt_cytosolic_Ca_buffer__Mg_Myosin;
01011 rDY[38] = 1.0*d_dt_cytosolic_Ca_buffer__Ca_SRB;
01012 rDY[39] = 1.0*d_dt_indo_fluo_Ca_buffer_not_connected__Ca_Indo1_Cytosol;
01013 rDY[40] = 1.0*d_dt_indo_fluo_Ca_buffer_not_connected__Ca_Indo1_SL;
01014 rDY[41] = 1.0*d_dt_indo_fluo_Ca_buffer_not_connected__Ca_Indo1_jct;
01015 rDY[42] = 1.0*d_dt_indo_fluo_Ca_buffer_not_connected__Ca_Fluo3_Cytosol;
01016 rDY[43] = 1.0*d_dt_indo_fluo_Ca_buffer_not_connected__Ca_Fluo3_SL;
01017 rDY[44] = 1.0*d_dt_indo_fluo_Ca_buffer_not_connected__Ca_Fluo3_jct;
01018 }
01019
01020 };
01021
01022
01023 template<>
01024 void OdeSystemInformation<CellShannon2004FromCellML>::Initialise(void)
01025 {
01026
01027
01028 this->mVariableNames.push_back("membrane_voltage");
01029 this->mVariableUnits.push_back("millivolt");
01030 this->mInitialConditions.push_back(-85.719687955637);
01031
01032 this->mVariableNames.push_back("h");
01033 this->mVariableUnits.push_back("dimensionless");
01034 this->mInitialConditions.push_back(0.987140350343);
01035
01036 this->mVariableNames.push_back("j");
01037 this->mVariableUnits.push_back("dimensionless");
01038 this->mInitialConditions.push_back(0.991822731369);
01039
01040 this->mVariableNames.push_back("m");
01041 this->mVariableUnits.push_back("dimensionless");
01042 this->mInitialConditions.push_back(0.001370685156);
01043
01044 this->mVariableNames.push_back("Xr");
01045 this->mVariableUnits.push_back("dimensionless");
01046 this->mInitialConditions.push_back(0.008471550841);
01047
01048 this->mVariableNames.push_back("Xs");
01049 this->mVariableUnits.push_back("dimensionless");
01050 this->mInitialConditions.push_back(0.00687399199);
01051
01052 this->mVariableNames.push_back("X_tos");
01053 this->mVariableUnits.push_back("dimensionless");
01054 this->mInitialConditions.push_back(0.004011272375);
01055
01056 this->mVariableNames.push_back("Y_tos");
01057 this->mVariableUnits.push_back("dimensionless");
01058 this->mInitialConditions.push_back(0.293519921626);
01059
01060 this->mVariableNames.push_back("R_tos");
01061 this->mVariableUnits.push_back("dimensionless");
01062 this->mInitialConditions.push_back(0.383430556383);
01063
01064 this->mVariableNames.push_back("X_tof");
01065 this->mVariableUnits.push_back("dimensionless");
01066 this->mInitialConditions.push_back(0.00401120993);
01067
01068 this->mVariableNames.push_back("Y_tof");
01069 this->mVariableUnits.push_back("dimensionless");
01070 this->mInitialConditions.push_back(0.9946314893);
01071
01072 this->mVariableNames.push_back("d");
01073 this->mVariableUnits.push_back("dimensionless");
01074 this->mInitialConditions.push_back(0.000006997531);
01075
01076 this->mVariableNames.push_back("f");
01077 this->mVariableUnits.push_back("dimensionless");
01078 this->mInitialConditions.push_back(1.000675515962);
01079
01080 this->mVariableNames.push_back("fCaB_SL");
01081 this->mVariableUnits.push_back("dimensionless");
01082 this->mInitialConditions.push_back(0.015352888928);
01083
01084 this->mVariableNames.push_back("fCaB_jct");
01085 this->mVariableUnits.push_back("dimensionless");
01086 this->mInitialConditions.push_back(0.024609183734);
01087
01088 this->mVariableNames.push_back("R");
01089 this->mVariableUnits.push_back("dimensionless");
01090 this->mInitialConditions.push_back(0.884673513138);
01091
01092 this->mVariableNames.push_back("I");
01093 this->mVariableUnits.push_back("dimensionless");
01094 this->mInitialConditions.push_back(0.00000009272);
01095
01096 this->mVariableNames.push_back("O");
01097 this->mVariableUnits.push_back("dimensionless");
01098 this->mInitialConditions.push_back(0.000000711264);
01099
01100 this->mVariableNames.push_back("Na_SL");
01101 this->mVariableUnits.push_back("millimolar");
01102 this->mInitialConditions.push_back(8.874077316753);
01103
01104 this->mVariableNames.push_back("Na_jct");
01105 this->mVariableUnits.push_back("millimolar");
01106 this->mInitialConditions.push_back(8.872823559072);
01107
01108 this->mVariableNames.push_back("Na_SL_buf");
01109 this->mVariableUnits.push_back("millimolar");
01110 this->mInitialConditions.push_back(0.776121392467);
01111
01112 this->mVariableNames.push_back("Na_jct_buf");
01113 this->mVariableUnits.push_back("millimolar");
01114 this->mInitialConditions.push_back(3.557055389701);
01115
01116 this->mVariableNames.push_back("Nai");
01117 this->mVariableUnits.push_back("millimolar");
01118 this->mInitialConditions.push_back(8.874461106492);
01119
01120 this->mVariableNames.push_back("Ca_SR");
01121 this->mVariableUnits.push_back("millimolar");
01122 this->mInitialConditions.push_back(0.545611267699);
01123
01124 this->mVariableNames.push_back("Ca_SL");
01125 this->mVariableUnits.push_back("millimolar");
01126 this->mInitialConditions.push_back(0.000106395937);
01127
01128 this->mVariableNames.push_back("Ca_jct");
01129 this->mVariableUnits.push_back("millimolar");
01130 this->mInitialConditions.push_back(0.000174843061);
01131
01132 this->mVariableNames.push_back("Cai");
01133 this->mVariableUnits.push_back("millimolar");
01134 this->mInitialConditions.push_back(0.000087350002);
01135
01136 this->mVariableNames.push_back("Ca_SLB_SL");
01137 this->mVariableUnits.push_back("millimolar");
01138 this->mInitialConditions.push_back(0.009868629147);
01139
01140 this->mVariableNames.push_back("Ca_SLB_jct");
01141 this->mVariableUnits.push_back("millimolar");
01142 this->mInitialConditions.push_back(0.007780801995);
01143
01144 this->mVariableNames.push_back("Ca_SLHigh_SL");
01145 this->mVariableUnits.push_back("millimolar");
01146 this->mInitialConditions.push_back(0.114438990328);
01147
01148 this->mVariableNames.push_back("Ca_SLHigh_jct");
01149 this->mVariableUnits.push_back("millimolar");
01150 this->mInitialConditions.push_back(0.077503874257);
01151
01152 this->mVariableNames.push_back("Ca_Calsequestrin");
01153 this->mVariableUnits.push_back("millimolar");
01154 this->mInitialConditions.push_back(1.186496899338);
01155
01156 this->mVariableNames.push_back("Ca_TroponinC");
01157 this->mVariableUnits.push_back("millimolar");
01158 this->mInitialConditions.push_back(0.008963736337);
01159
01160 this->mVariableNames.push_back("Ca_TroponinC_Ca_Mg");
01161 this->mVariableUnits.push_back("millimolar");
01162 this->mInitialConditions.push_back(0.117995194438);
01163
01164 this->mVariableNames.push_back("Mg_TroponinC_Ca_Mg");
01165 this->mVariableUnits.push_back("millimolar");
01166 this->mInitialConditions.push_back(0.010337654274);
01167
01168 this->mVariableNames.push_back("Ca_Calmodulin");
01169 this->mVariableUnits.push_back("millimolar");
01170 this->mInitialConditions.push_back(0.000295961245);
01171
01172 this->mVariableNames.push_back("Ca_Myosin");
01173 this->mVariableUnits.push_back("millimolar");
01174 this->mInitialConditions.push_back(0.001984672275);
01175
01176 this->mVariableNames.push_back("Mg_Myosin");
01177 this->mVariableUnits.push_back("millimolar");
01178 this->mInitialConditions.push_back(0.137497736234);
01179
01180 this->mVariableNames.push_back("Ca_SRB");
01181 this->mVariableUnits.push_back("millimolar");
01182 this->mInitialConditions.push_back(0.002177112381);
01183
01184 this->mVariableNames.push_back("Ca_Indo1_Cytosol");
01185 this->mVariableUnits.push_back("millimolar");
01186 this->mInitialConditions.push_back(0);
01187
01188 this->mVariableNames.push_back("Ca_Indo1_SL");
01189 this->mVariableUnits.push_back("millimolar");
01190 this->mInitialConditions.push_back(0);
01191
01192 this->mVariableNames.push_back("Ca_Indo1_jct");
01193 this->mVariableUnits.push_back("millimolar");
01194 this->mInitialConditions.push_back(0);
01195
01196 this->mVariableNames.push_back("Ca_Fluo3_Cytosol");
01197 this->mVariableUnits.push_back("millimolar");
01198 this->mInitialConditions.push_back(0);
01199
01200 this->mVariableNames.push_back("Ca_Fluo3_SL");
01201 this->mVariableUnits.push_back("millimolar");
01202 this->mInitialConditions.push_back(0);
01203
01204 this->mVariableNames.push_back("Ca_Fluo3_jct");
01205 this->mVariableUnits.push_back("millimolar");
01206 this->mInitialConditions.push_back(0);
01207
01208 this->mInitialised = true;
01209 }
01210
01211
01212
01213 #include "SerializationExportWrapper.hpp"
01214 CHASTE_CLASS_EXPORT(CellShannon2004FromCellML);
01215
01216 namespace boost
01217 {
01218 namespace serialization
01219 {
01220 template<class Archive>
01221 inline void save_construct_data(
01222 Archive & ar, const CellShannon2004FromCellML * t, const unsigned int fileVersion)
01223 {
01224 const boost::shared_ptr<AbstractIvpOdeSolver> p_solver = t->GetSolver();
01225 const boost::shared_ptr<AbstractStimulusFunction> p_stimulus = t->GetStimulusFunction();
01226 ar << p_solver;
01227 ar << p_stimulus;
01228 }
01229
01230 template<class Archive>
01231 inline void load_construct_data(
01232 Archive & ar, CellShannon2004FromCellML * t, const unsigned int fileVersion)
01233 {
01234 boost::shared_ptr<AbstractIvpOdeSolver> p_solver;
01235 boost::shared_ptr<AbstractStimulusFunction> p_stimulus;
01236 ar >> p_solver;
01237 ar >> p_stimulus;
01238 ::new(t)CellShannon2004FromCellML(p_solver, p_stimulus);
01239 }
01240
01241 }
01242
01243 }
01244
01245 #endif //_CELLSHANNON2004FROMCELLML_