/* * Cardiac Sodium Channel Markov Model with Temperature Dependence * and Recovery from Inactivation * * Model Status * * This CellML model is known to run in both PCEnv and COR to recreate * the published results. The units have been checked and they * are consistent. In this particular version of the model the * membrane potential is held at -120mV. Thanks to Joseph Greenstein, * Stefan Mann, Alan Garny and Martin Fink for their help in curating * this model. There is also a PCEnv session associated with this * model. * * Model Structure * * ABSTRACT: A Markov model of the cardiac sodium channel is presented. * The model is similar to the CA1 hippocampal neuron sodium channel * model developed by Kuo and Bean (1994. Neuron. 12:819 - 829) * with the following modifications: 1) an additional open state * is added; 2) open-inactivated transitions are made voltage-dependent; * and 3) channel rate constants are exponential functions of enthalpy, * entropy, and voltage and have explicit temperature dependence. * Model parameters are determined using a simulated annealing * algorithm to minimize the error between model responses and * various experimental data sets. The model reproduces a wide * range of experimental data including ionic currents, gating * currents, tail currents, steady-state inactivation, recovery * from inactivation, and open time distributions over a temperature * range of 10C to 25C. The model also predicts measures of single * channel activity such as first latency, probability of a null * sweep, and probability of reopening. * * The complete original paper reference is cited below: * * Cardiac Sodium Channel Markov Model with Temperature Dependence * and Recovery from Inactivation, Lisa A. Irvine, M. Saleet Jafri, * and Raimond L. Winslow, 1999, Biophysical Journal , 76, 1868 * - 1885. PubMed ID: 10096885 * * state diagram * * [[Image file: irvine_1999.png]] * * State diagram for the cardiac sodium channel Markov model. C0-C4 * are closed states, O1 and O2 are open states, C0I-C4I are closed-inactivated * states, and I is the inactivated state. All rate constants are * voltage- and temperature-dependent except for those governing * transitions between closed and closed-inactivated states, which * are only temperature-dependent. */ import nsrunit; unit conversion on; unit ms=.001 second^1; unit V=1 kilogram^1*meter^2*second^(-3)*ampere^(-1); unit per_V=1 kilogram^(-1)*meter^(-2)*second^3*ampere^1; unit J_mol=1 kilogram^1*meter^2*second^(-2)*mole^(-1); unit J_mol_K=1 kilogram^1*meter^2*second^(-2)*kelvin^(-1)*mole^(-1); unit first_order_rate_constant=1E3 second^(-1); unit J_K=1 kilogram^1*meter^2*second^(-2)*kelvin^(-1); unit K=1 kelvin^1; unit J_ms=.001 kilogram^1*meter^2*second^(-1); unit C_mol=1 second^1*ampere^1*mole^(-1); math main { realDomain time ms; time.min=0; extern time.max; extern time.delta; real V V; V=-0.12; real i_Na(time) dimensionless; real E_Na V; E_Na=0.044675; real g_Na per_V; g_Na=0.0131; real P_open(time) dimensionless; real O1(time) dimensionless; when(time=time.min) O1=0.0; real O2(time) dimensionless; when(time=time.min) O2=0.0; real C0(time) dimensionless; when(time=time.min) C0=1.0; real C1(time) dimensionless; when(time=time.min) C1=0.0; real C2(time) dimensionless; when(time=time.min) C2=0.0; real C3(time) dimensionless; when(time=time.min) C3=0.0; real C4(time) dimensionless; when(time=time.min) C4=0.0; real C0I(time) dimensionless; when(time=time.min) C0I=0.0; real C1I(time) dimensionless; when(time=time.min) C1I=0.0; real C2I(time) dimensionless; when(time=time.min) C2I=0.0; real C3I(time) dimensionless; when(time=time.min) C3I=0.0; real C4I(time) dimensionless; when(time=time.min) C4I=0.0; real I(time) dimensionless; when(time=time.min) I=0.0; real a dimensionless; a=2.5218; real alpha first_order_rate_constant; real beta first_order_rate_constant; real cf first_order_rate_constant; real cn first_order_rate_constant; real of first_order_rate_constant; real on first_order_rate_constant; real eta first_order_rate_constant; real gamma first_order_rate_constant; real delta first_order_rate_constant; real epsilon first_order_rate_constant; real omega first_order_rate_constant; real v first_order_rate_constant; real gamma_gamma first_order_rate_constant; real delta_delta first_order_rate_constant; real R J_mol_K; R=8.314472; real T K; T=286.0; real F C_mol; F=96500.0; real k J_K; k=1.3806504E-23; real h J_ms; h=6.62607095E-31; real z_alpha dimensionless; z_alpha=0; real z_beta dimensionless; z_beta=-0.9701; real z_gamma dimensionless; z_gamma=1.5703; real z_delta dimensionless; z_delta=-1.3266; real z_on dimensionless; z_on=0.6625; real z_of dimensionless; z_of=0; real z_gamma_gamma dimensionless; z_gamma_gamma=0; real z_delta_delta dimensionless; z_delta_delta=-3.5596; real z_epsilon dimensionless; z_epsilon=0; real z_omega dimensionless; z_omega=0; real z_eta dimensionless; z_eta=1.5717; real z_v dimensionless; z_v=-1.3281; real z_cn dimensionless; z_cn=0; real z_cf dimensionless; z_cf=0; real delta_H_alpha J_mol; delta_H_alpha=116900; real delta_H_beta J_mol; delta_H_beta=263870; real delta_H_cf J_mol; delta_H_cf=57533; real delta_H_cn J_mol; delta_H_cn=293270; real delta_H_of J_mol; delta_H_of=79035; real delta_H_on J_mol; delta_H_on=62385; real delta_H_eta J_mol; delta_H_eta=150333; real delta_H_gamma J_mol; delta_H_gamma=200240; real delta_H_delta J_mol; delta_H_delta=127970; real delta_H_epsilon J_mol; delta_H_epsilon=79183; real delta_H_omega J_mol; delta_H_omega=123020; real delta_H_v J_mol; delta_H_v=121900; real delta_H_gamma_gamma J_mol; delta_H_gamma_gamma=-99967; real delta_H_delta_delta J_mol; delta_H_delta_delta=62555; real delta_S_alpha J_mol_K; delta_S_alpha=224.114; real delta_S_beta J_mol_K; delta_S_beta=708.146; real delta_S_cf J_mol_K; delta_S_cf=0.00711; real delta_S_cn J_mol_K; delta_S_cn=786.217; real delta_S_of J_mol_K; delta_S_of=1.510; real delta_S_on J_mol_K; delta_S_on=39.295; real delta_S_eta J_mol_K; delta_S_eta=338.915; real delta_S_gamma J_mol_K; delta_S_gamma=529.952; real delta_S_delta J_mol_K; delta_S_delta=229.205; real delta_S_epsilon J_mol_K; delta_S_epsilon=70.078; real delta_S_omega J_mol_K; delta_S_omega=225.175; real delta_S_v J_mol_K; delta_S_v=193.265; real delta_S_gamma_gamma J_mol_K; delta_S_gamma_gamma=-578.317; real delta_S_delta_delta J_mol_K; delta_S_delta_delta=-130.639; // // // i_Na=(g_Na*P_open*(V-E_Na)); // P_open=(O1+O2); C0:time=(beta*C1+cf*C0I-(cn+4*alpha)*C0); C1:time=(2*beta*C2+4*alpha*C0+cf/a*C1I-(beta+3*alpha+cn*a)*C1); C2:time=(3*beta*C3+3*alpha*C1+cf/a^2*C2I-(2*beta+2*alpha+cn*a^2)*C2); C3:time=(4*beta*C4+2*alpha*C2+cf/a^3*C3I-(3*beta+alpha+cn*a^3)*C3); C4:time=(delta*O1+v*O2+alpha*C3+cf/a^4*C4I-(4*beta+gamma+eta+cn*a^4)*C4); O1:time=(gamma*C4+omega*O2+of*I-(delta+epsilon+on)*O1); O2:time=(epsilon*O1+eta*C4-(v+omega)*O2); C0I:time=(beta/a*C1I+cn*C0-(cf+4*alpha*a)*C0I); C1I:time=(2*beta/a*C2I+4*alpha*a*C0I+cn*a*C1-(beta/a+3*alpha*a+cf/a)*C1I); C2I:time=(3*beta/a*C3I+3*alpha*a*C1I+cn*a^2*C2-(2*beta/a+2*alpha*a+cf/a^2)*C2I); C3I:time=(4*beta/a*C4I+2*alpha*a*C2I+cn*a^3*C3-(3*beta/a+alpha*a+cf/a^3)*C3I); C4I:time=(delta_delta*I+alpha*a*C3I+cn*a^4*C4-(4*beta/a+gamma_gamma+cf/a^4)*C4I); I:time=(gamma_gamma*C4I+on*O1-(delta_delta+of)*I); // alpha=(k*T/h*exp((-1)*delta_H_alpha/(R*T)+delta_S_alpha/R+z_alpha*F*V/(R*T))); beta=(k*T/h*exp((-1)*delta_H_beta/(R*T)+delta_S_beta/R+z_beta*F*V/(R*T))); gamma=(k*T/h*exp((-1)*delta_H_gamma/(R*T)+delta_S_gamma/R+z_gamma*F*V/(R*T))); delta=(k*T/h*exp((-1)*delta_H_delta/(R*T)+delta_S_delta/R+z_delta*F*V/(R*T))); on=(k*T/h*exp((-1)*delta_H_on/(R*T)+delta_S_on/R+z_on*F*V/(R*T))); of=(k*T/h*exp((-1)*delta_H_of/(R*T)+delta_S_of/R+z_of*F*V/(R*T))); gamma_gamma=(k*T/h*exp((-1)*delta_H_gamma_gamma/(R*T)+delta_S_gamma_gamma/R+z_gamma_gamma*F*V/(R*T))); delta_delta=(k*T/h*exp((-1)*delta_H_delta_delta/(R*T)+delta_S_delta_delta/R+z_delta_delta*F*V/(R*T))); epsilon=(k*T/h*exp((-1)*delta_H_epsilon/(R*T)+delta_S_epsilon/R+z_epsilon*F*V/(R*T))); omega=(k*T/h*exp((-1)*delta_H_omega/(R*T)+delta_S_omega/R+z_omega*F*V/(R*T))); eta=(k*T/h*exp((-1)*delta_H_eta/(R*T)+delta_S_eta/R+z_eta*F*V/(R*T))); v=(k*T/h*exp((-1)*delta_H_v/(R*T)+delta_S_v/R+z_v*F*V/(R*T))); cn=(k*T/h*exp((-1)*delta_H_cn/(R*T)+delta_S_cn/R+z_cn*F*V/(R*T))); cf=(k*T/h*exp((-1)*delta_H_cf/(R*T)+delta_S_cf/R+z_cf*F*V/(R*T))); }