/* * Modelling Sarcoplasmic Reticulum Calcium APTase and its Regulation * in Cardiac Myocytes * * Model Status * * This CellML model runs in PCenv, and OpenCell to recreate the * published results, but not COR because of the presence of the * modulo operator. This model describes the SERCA pump coupled * to a reduced cardiac myocyte, and is based on the original matlab * code dy_reduced_myocyte. It describes the long action potential, * another version describes the short AP. * * Model Structure * * ABSTRACT: When developing large-scale mathematical models of * physiology, some reduction in complexity is necessarily required * to maintain computational efficiency. A prime example of such * an intricate cell is the cardiac myocyte. For the predictive * power of the cardiomyocyte models, it is vital to accurately * describe the calcium transport mechanisms, since they essentially * link the electrical activation to contractility. The removal * of calcium from the cytoplasm takes place mainly by the Na(+)/Ca(2+) * exchanger, and the sarcoplasmic reticulum Ca(2+) ATPase (SERCA). * In the present study, we review the properties of SERCA, its * frequency-dependent and beta-adrenergic regulation, and the * approaches of mathematical modelling that have been used to * investigate its function. Furthermore, we present novel theoretical * considerations that might prove useful for the elucidation of * the role of SERCA in cardiac function, achieving a reduction * in model complexity, but at the same time retaining the central * aspects of its function. Our results indicate that to faithfully * predict the physiological properties of SERCA, we should take * into account the calcium-buffering effect and reversible function * of the pump. This 'uncomplicated' modelling approach could be * useful to other similar transport mechanisms as well. * * model diagram * * [[Image file: koivumaki_2009b.png]] * * Schematic diagram of the cell model. * * The original paper reference is cited below: * * Modelling Sarcoplasmic Reticulum Calcium APTase and its Regulation * in Cardiac Myocytes, Jussi T. Koivumaki, Jouni Takalo, Topi * Korhonen, Pasi Tavi, Matti Weckstrom, 2009, Phil. Trans. R. * Soc. A, volume 367, 2181-2202. PubMed ID: 19414452 */ import nsrunit; // Warning: unit conversion turned off due to unit errors in 1 equation(s) unit conversion off; unit msec=.001 second^1; unit per_msec=1E3 second^(-1); unit uM=1E-3 meter^(-3)*mole^1; unit per_uM2=1E6 meter^6*mole^(-2); unit cm2=1E-4 meter^2; unit uL=1E-9 meter^3; unit mV=.001 kilogram^1*meter^2*second^(-3)*ampere^(-1); unit uM_per_msec=1 meter^(-3)*second^(-1)*mole^1; unit per_uM_per_msec=1E6 meter^3*second^(-1)*mole^(-1); unit per_uM2_per_msec=1E9 meter^6*second^(-1)*mole^(-2); unit uF_per_cm2=.01 kilogram^(-1)*meter^(-4)*second^4*ampere^2; unit C_per_mmole=1E3 second^1*ampere^1*mole^(-1); unit J_per_K_per_mol=1 kilogram^1*meter^2*second^(-2)*kelvin^(-1)*mole^(-1); unit uA_per_uF=1 kilogram^1*meter^2*second^(-4)*ampere^(-1); unit mV_per_V=.001 dimensionless; unit mM_per_M=.001 dimensionless; math main { realDomain time msec; time.min=0; extern time.max; extern time.delta; real t_modulo(time) msec; real Acap cm2; Acap=1.534e-4; real V_myo uL; V_myo=25.84e-6; real C_m uF_per_cm2; C_m=1; real F C_per_mmole; F=96.5; real T kelvin; T=298; real R J_per_K_per_mol; R=8.314; real CaM_tot uM; CaM_tot=24; real Km_CaM uM; Km_CaM=2.38; real Ca_o uM; Ca_o=1000; real Na_o uM; Na_o=140000; real Ca_NSR uM; Ca_NSR=760; real J_leak uM_per_msec; J_leak=0.0003; real V(time) mV; real t1 msec; t1=0.5; real t2 msec; t2=200; real p dimensionless; p=2; real A mV; A=135; real A1 msec; A1=110; real rest mV; rest=-90; real Ca_input(time) uM_per_msec; real tcalcium(time) msec; real Ca_tau1 msec; Ca_tau1=1.5; real Ca_tau2 msec; Ca_tau2=7.5; real Ca_pow dimensionless; Ca_pow=2; real Ca_amp uM_per_msec; Ca_amp=10; real INaCa(time) uA_per_uF; real Na_i uM; Na_i=10000; real KmNa uM; KmNa=87500; real KmCa uM; KmCa=1380; real ksat dimensionless; ksat=0.1; real eta dimensionless; eta=0.35; real kNaCa uA_per_uF; kNaCa=950; real Ca_cyt(time) uM; when(time=time.min) Ca_cyt=0.1; real SERCA_TOT uM; SERCA_TOT=20; real CaMKII_reg dimensionless; CaMKII_reg=0.1; real PKA_reg dimensionless; PKA_reg=0.1; real PSR dimensionless; PSR=1; real Kmf_PLBKO uM; Kmf_PLBKO=0.15; real Kmf_PLB uM; Kmf_PLB=0.15; real Kmr_PLBKO uM; Kmr_PLBKO=2500; real Kmr_PLB uM; Kmr_PLB=1110; real PLB_tot uM; PLB_tot=1; real kplb_pos per_msec; kplb_pos=1; real kplb_neg per_msec; kplb_neg=6.8; real EC_50_fwd(time) uM; real EC_50_rev(time) uM; real PLB_dephosph(time) uM; when(time=time.min) PLB_dephosph=0.1; real k_cyt_serca per_uM2_per_msec; real k_serca_cyt(time) per_msec; real k_serca_sr per_msec; real k_sr_serca(time) per_uM2_per_msec; real br_cyt_serca per_uM2_per_msec; real br_serca_sr per_msec; br_serca_sr=0.00625; real J_up(time) uM_per_msec; real J_cyt_serca(time) uM_per_msec; real J_serca_sr(time) uM_per_msec; real Ca_serca(time) uM; when(time=time.min) Ca_serca=5; real LTRPN_tot uM; LTRPN_tot=70; real kltrpn_pos per_uM_per_msec; kltrpn_pos=0.1; real kltrpn_neg per_msec; kltrpn_neg=0.06; real J_LTRPN(time) uM_per_msec; real B_i(time) dimensionless; real LTRPN(time) uM; when(time=time.min) LTRPN=11; // t_modulo=(rem(time,1E3)); // // V=(rest+A*(1-exp((-1)*t_modulo/t1))^p*exp((-1)*t_modulo/t2)*(1-t_modulo^10/(A1^10+t_modulo^10))); // tcalcium=(if ((t_modulo-(1.2 msec))<=(0 msec)) (0 msec) else t_modulo-(1.2 msec)); Ca_input=(Ca_amp*(1-exp((-1)*tcalcium/Ca_tau1))^Ca_pow*exp((-1)*tcalcium/Ca_tau2)); // INaCa=(kNaCa/((KmNa^3+Na_o^3)*(KmCa+Ca_o)*(1+ksat*exp((eta-1)*V*F/(R*T))))*(exp(eta*V*F/(R*T))*Na_i^3*Ca_o-exp((eta-1)*V*F/(R*T))*Na_o^3*Ca_cyt)); // EC_50_fwd=((Kmf_PLBKO+Kmf_PLB*PSR*PLB_dephosph/(1 uM))*(1+.27*CaMKII_reg)); EC_50_rev=(Kmr_PLBKO-Kmr_PLB*PSR*PLB_dephosph/(1 uM)); // br_cyt_serca=((1E3 per_uM2)*br_serca_sr); k_cyt_serca=(br_cyt_serca*(1+.7*CaMKII_reg)); k_serca_cyt=(EC_50_fwd^2*br_cyt_serca); k_serca_sr=(br_serca_sr*(1+.7*CaMKII_reg)); k_sr_serca=(br_serca_sr/EC_50_rev^2); // J_cyt_serca=(k_cyt_serca*Ca_cyt^2*(SERCA_TOT-Ca_serca)-k_serca_cyt*Ca_serca); J_serca_sr=(k_serca_sr*Ca_serca-k_sr_serca*Ca_NSR^2*(SERCA_TOT-Ca_serca)); J_up=(J_cyt_serca-J_serca_sr); // B_i=((1+CaM_tot*Km_CaM/(Km_CaM+Ca_cyt)^2)^((-1)*1)); J_LTRPN=(kltrpn_pos*Ca_cyt*(LTRPN_tot-LTRPN)-kltrpn_neg*LTRPN); // Ca_cyt:time=(B_i*(INaCa*Acap*C_m/(2*V_myo*F)-J_cyt_serca+J_leak+Ca_input-J_LTRPN)); LTRPN:time=(kltrpn_pos*Ca_cyt*(LTRPN_tot-LTRPN)-kltrpn_neg*LTRPN); PLB_dephosph:time=(kplb_pos*(PLB_tot-PLB_dephosph)-kplb_neg*(CaMKII_reg+PKA_reg)^2*PLB_dephosph); Ca_serca:time=(J_cyt_serca-J_serca_sr); }