C C There are a total of 19 entries in the algebraic variable array. C There are a total of 7 entries in each of the rate and state variable arrays. C There are a total of 42 entries in the constant variable array. C C C VOI is time in component environment (s). C STATES(1) is F6P in component F6P (mM). C ALGBRC(1) is V_hk in component V_hk (mM_per_s). C ALGBRC(13) is V_pfk in component V_pfk (mM_per_s). C ALGBRC(19) is V_pfk2 in component V_pfk2 (mM_per_s). C STATES(2) is F26P in component F26P (mM). C STATES(3) is GAP in component GAP (mM). C ALGBRC(11) is V_pk in component V_pk (mM_per_s). C STATES(4) is PYR in component PYR (mM). C ALGBRC(2) is V_ldh in component V_ldh (mM_per_s). C ALGBRC(6) is V_op in component V_op (mM_per_s). C STATES(5) is LAC in component LAC (mM). C ALGBRC(17) is V_lac in component V_lac (mM_per_s). C STATES(6) is ATP in component ATP (mM). C ALGBRC(16) is V_ATPase in component V_ATPase (mM_per_s). C ALGBRC(7) is V_ck in component V_ck (mM_per_s). C ALGBRC(8) is dAMP_dATP in component dAMP_dATP (dimensionless). C STATES(7) is PCr in component PCr (mM). C CONSTS(1) is Vmax_hk in component V_hk (mM_per_s). C CONSTS(2) is Km_ATP_hk in component V_hk (mM). C CONSTS(3) is KI_F6P in component V_hk (mM). C CONSTS(4) is Vmax_pfk in component V_pfk (mM_per_s). C CONSTS(5) is Km_ATP_pfk in component V_pfk (mM). C CONSTS(6) is Km_F6P_pfk in component V_pfk (mM). C CONSTS(7) is Km_F26P_pfk in component V_pfk (mM). C ALGBRC(12) is AMP_act in component AMP_act (dimensionless). C ALGBRC(10) is ATP_inh in component ATP_inh (dimensionless). C CONSTS(8) is Vmaxf_pfk2 in component V_pfk2 (mM_per_s). C CONSTS(9) is Vmaxr_pfk2 in component V_pfk2 (mM_per_s). C CONSTS(10) is Km_ATP_pfk2 in component V_pfk2 (mM). C CONSTS(11) is Km_F6P_pfk2 in component V_pfk2 (mM). C CONSTS(12) is Km_F26P_pfk2 in component V_pfk2 (mM). C ALGBRC(18) is AMP_pfk2 in component AMP_pfk2 (dimensionless). C CONSTS(13) is Vmax_pk in component V_pk (mM_per_s). C CONSTS(14) is Km_ADP_pk in component V_pk (mM). C CONSTS(15) is Km_GAP_pk in component V_pk (mM). C ALGBRC(5) is ADP in component ADP (mM). C CONSTS(16) is Vmax_op in component V_op (mM_per_s). C CONSTS(17) is Km_ADP_op in component V_op (mM). C CONSTS(18) is Km_PYR_op in component V_op (mM). C CONSTS(19) is kf_ldh in component V_ldh (per_s). C CONSTS(20) is kr_ldh in component V_ldh (per_s). C CONSTS(21) is kf_ck in component V_ck (per_mM_s). C CONSTS(22) is kr_ck in component V_ck (per_mM_s). C ALGBRC(3) is Cr in component Cr (mM). C CONSTS(23) is PCrtot in component Cr (mM). C CONSTS(24) is Vmax_ATPase in component V_ATPase (mM_per_s). C CONSTS(25) is Km_ATP in component V_ATPase (mM). C ALGBRC(15) is v_stim in component v_stim (dimensionless). C CONSTS(26) is Vlac_0 in component V_lac (mM_per_s). C CONSTS(27) is K_LAC_eff in component V_lac (per_s). C CONSTS(28) is K_LAC in component V_lac (dimensionless). C ALGBRC(4) is u in component ADP (dimensionless). C CONSTS(29) is ANP in component model_parameters (mM). C CONSTS(30) is Q_adk in component model_parameters (dimensionless). C ALGBRC(9) is AMP in component AMP (mM). C CONSTS(31) is nATP in component ATP_inh (dimensionless). C CONSTS(32) is KI_ATP in component ATP_inh (mM). C CONSTS(33) is nAMP in component AMP_act (dimensionless). C CONSTS(34) is Ka_AMP in component AMP_act (mM). C ALGBRC(14) is unitpulseSB in component v_stim (dimensionless). C CONSTS(35) is stim in component v_stim (dimensionless). C CONSTS(36) is to in component v_stim (s). C CONSTS(37) is tend in component v_stim (s). C CONSTS(38) is v1_n in component v_stim (dimensionless). C CONSTS(39) is v2_n in component v_stim (dimensionless). C CONSTS(40) is t_n_stim in component v_stim (s). C CONSTS(41) is Kamp_pfk2 in component AMP_pfk2 (mM). C CONSTS(42) is nh_amp in component AMP_pfk2 (dimensionless). C RATES(1) is d/dt F6P in component F6P (mM). C RATES(2) is d/dt F26P in component F26P (mM). C RATES(3) is d/dt GAP in component GAP (mM). C RATES(4) is d/dt PYR in component PYR (mM). C RATES(5) is d/dt LAC in component LAC (mM). C RATES(6) is d/dt ATP in component ATP (mM). C RATES(7) is d/dt PCr in component PCr (mM). C SUBROUTINE initConsts(CONSTS, RATES, STATES) REAL CONSTS(*), RATES(*), STATES(*) STATES(1) = 0.2 STATES(2) = 0.001 STATES(3) = 0.0405 STATES(4) = 0.1 STATES(5) = 0.5 STATES(6) = 2.402 STATES(7) = 18.14 CONSTS(1) = 2.5 CONSTS(2) = 0.5 CONSTS(3) = 0.068 CONSTS(4) = 3.85 CONSTS(5) = 0.05 CONSTS(6) = 0.18 CONSTS(7) = 0.01 CONSTS(8) = 0 CONSTS(9) = 0 CONSTS(10) = 0.05 CONSTS(11) = 0.01 CONSTS(12) = 0.0001 CONSTS(13) = 5.0 CONSTS(14) = 0.005 CONSTS(15) = 0.4 CONSTS(16) = 1.0 CONSTS(17) = 0.005 CONSTS(18) = 0.5 CONSTS(19) = 0 CONSTS(20) = 0 CONSTS(21) = 3.0 CONSTS(22) = 1.26 CONSTS(23) = 20.0 CONSTS(24) = 0.9355 CONSTS(25) = 0.5 CONSTS(26) = 0.355 CONSTS(27) = 0.71 CONSTS(28) = 0.641 CONSTS(29) = 2.51 CONSTS(30) = 0.92 CONSTS(31) = 0.4 CONSTS(32) = 1.0 CONSTS(33) = 0.5 CONSTS(34) = 0.05 CONSTS(35) = 1 CONSTS(36) = 50 CONSTS(37) = 500 CONSTS(38) = 0.5 CONSTS(39) = 0.0 CONSTS(40) = 2 CONSTS(41) = 0.005 CONSTS(42) = 2 RETURN END SUBROUTINE computeRates(VOI, CONSTS, RATES, STATES, ALGBRC) REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*) ALGBRC(4) = CONSTS(30) ** 2.00000+ 4.00000*CONSTS(30)*(CONSTS(29)/STATES(6) - 1.00000) ALGBRC(5) = (STATES(6)/2.00000)*(- CONSTS(30)+ ALGBRC(4) ** (1.0 / 2)) ALGBRC(3) = CONSTS(23) - STATES(7) ALGBRC(7) = CONSTS(21)*STATES(7)*ALGBRC(5) - CONSTS(22)*ALGBRC(3)*STATES(6) RATES(7) = - ALGBRC(7) ALGBRC(10) = (1.00000+ CONSTS(31)*(STATES(6)/CONSTS(32)))/(1.00000+STATES(6)/CONSTS(32)) ** 4.00000 ALGBRC(11) = CONSTS(13)*(STATES(3)/(STATES(3)+CONSTS(15)))*(ALGBRC(5)/(ALGBRC(5)+CONSTS(14)))*ALGBRC(10) ALGBRC(2) = CONSTS(19)*STATES(4) - CONSTS(20)*STATES(5) ALGBRC(6) = CONSTS(16)*(STATES(4)/(STATES(4)+CONSTS(18)))*(ALGBRC(5)/(ALGBRC(5)+CONSTS(17)))*(1.00000/(1.00000+ 0.100000*(STATES(6)/ALGBRC(5)))) RATES(4) = ALGBRC(11) - (ALGBRC(6)+ALGBRC(2)) ALGBRC(9) = CONSTS(29) - (STATES(6)+ALGBRC(5)) ALGBRC(12) = (1.00000+ALGBRC(9)/CONSTS(34))/(1.00000+ CONSTS(33)*(ALGBRC(9)/CONSTS(34))) ** 4.00000 ALGBRC(13) = CONSTS(4)*(STATES(1)/(STATES(1)+CONSTS(6)))*(STATES(6)/(STATES(6)+CONSTS(5)))*(STATES(2)/(STATES(2)+CONSTS(7)))*ALGBRC(10)*ALGBRC(12) RATES(3) = 2.00000*ALGBRC(13) - ALGBRC(11) ALGBRC(14) = TERNRY(VOI.GE.CONSTS(36).AND.VOI.LE.CONSTS(36)+CONSTS(37), 1.00000, 0.00000) ALGBRC(15) = CONSTS(35)*(CONSTS(38)+ CONSTS(39)*((VOI - CONSTS(36))/CONSTS(40))*EXP(- ( (VOI - CONSTS(36))*(ALGBRC(14)/CONSTS(40)))))*ALGBRC(14) ALGBRC(17) = CONSTS(26)*(1.00000+ ALGBRC(15)*CONSTS(28)) - CONSTS(27)*STATES(5) RATES(5) = 2.25000*ALGBRC(2)+ALGBRC(17) ALGBRC(1) = CONSTS(1)*(STATES(6)/(STATES(6)+CONSTS(2)))*1.00000+STATES(1)/CONSTS(3) ** 4.00000 ** -1.00000 ALGBRC(18) = ALGBRC(9)/CONSTS(41) ** CONSTS(42)/(1.00000+ALGBRC(9)/CONSTS(41) ** CONSTS(42)) ALGBRC(19) = CONSTS(8)*(STATES(6)/(STATES(6)+CONSTS(10)))*(STATES(1)/(STATES(1)+CONSTS(11)))*ALGBRC(18) - CONSTS(9)*(STATES(2)/(STATES(2)+CONSTS(12))) RATES(1) = ALGBRC(1) - (ALGBRC(13) - ALGBRC(19)) RATES(2) = ALGBRC(19) ALGBRC(16) = CONSTS(24)*(STATES(6)/(STATES(6)+CONSTS(25)))*(1.00000+ALGBRC(15)) ALGBRC(8) = - 1.00000+CONSTS(30)/2.00000+- ( 0.500000* ALGBRC(4) ** (1.0 / 2))+ CONSTS(30)*(CONSTS(29)/( STATES(6)* ALGBRC(4) ** (1.0 / 2))) RATES(6) = (( 2.00000*ALGBRC(11)+ 15.0000*ALGBRC(6)+ALGBRC(7)) - (ALGBRC(1)+ALGBRC(13)+ALGBRC(19)+ALGBRC(16)))*1.00000 - ALGBRC(8) ** -1.00000 RETURN END SUBROUTINE computeVariables(VOI, CONSTS, RATES, STATES, ALGBRC) REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*) ALGBRC(4) = CONSTS(30) ** 2.00000+ 4.00000*CONSTS(30)*(CONSTS(29)/STATES(6) - 1.00000) ALGBRC(5) = (STATES(6)/2.00000)*(- CONSTS(30)+ ALGBRC(4) ** (1.0 / 2)) ALGBRC(3) = CONSTS(23) - STATES(7) ALGBRC(7) = CONSTS(21)*STATES(7)*ALGBRC(5) - CONSTS(22)*ALGBRC(3)*STATES(6) ALGBRC(10) = (1.00000+ CONSTS(31)*(STATES(6)/CONSTS(32)))/(1.00000+STATES(6)/CONSTS(32)) ** 4.00000 ALGBRC(11) = CONSTS(13)*(STATES(3)/(STATES(3)+CONSTS(15)))*(ALGBRC(5)/(ALGBRC(5)+CONSTS(14)))*ALGBRC(10) ALGBRC(2) = CONSTS(19)*STATES(4) - CONSTS(20)*STATES(5) ALGBRC(6) = CONSTS(16)*(STATES(4)/(STATES(4)+CONSTS(18)))*(ALGBRC(5)/(ALGBRC(5)+CONSTS(17)))*(1.00000/(1.00000+ 0.100000*(STATES(6)/ALGBRC(5)))) ALGBRC(9) = CONSTS(29) - (STATES(6)+ALGBRC(5)) ALGBRC(12) = (1.00000+ALGBRC(9)/CONSTS(34))/(1.00000+ CONSTS(33)*(ALGBRC(9)/CONSTS(34))) ** 4.00000 ALGBRC(13) = CONSTS(4)*(STATES(1)/(STATES(1)+CONSTS(6)))*(STATES(6)/(STATES(6)+CONSTS(5)))*(STATES(2)/(STATES(2)+CONSTS(7)))*ALGBRC(10)*ALGBRC(12) ALGBRC(14) = TERNRY(VOI.GE.CONSTS(36).AND.VOI.LE.CONSTS(36)+CONSTS(37), 1.00000, 0.00000) ALGBRC(15) = CONSTS(35)*(CONSTS(38)+ CONSTS(39)*((VOI - CONSTS(36))/CONSTS(40))*EXP(- ( (VOI - CONSTS(36))*(ALGBRC(14)/CONSTS(40)))))*ALGBRC(14) ALGBRC(17) = CONSTS(26)*(1.00000+ ALGBRC(15)*CONSTS(28)) - CONSTS(27)*STATES(5) ALGBRC(1) = CONSTS(1)*(STATES(6)/(STATES(6)+CONSTS(2)))*1.00000+STATES(1)/CONSTS(3) ** 4.00000 ** -1.00000 ALGBRC(18) = ALGBRC(9)/CONSTS(41) ** CONSTS(42)/(1.00000+ALGBRC(9)/CONSTS(41) ** CONSTS(42)) ALGBRC(19) = CONSTS(8)*(STATES(6)/(STATES(6)+CONSTS(10)))*(STATES(1)/(STATES(1)+CONSTS(11)))*ALGBRC(18) - CONSTS(9)*(STATES(2)/(STATES(2)+CONSTS(12))) ALGBRC(16) = CONSTS(24)*(STATES(6)/(STATES(6)+CONSTS(25)))*(1.00000+ALGBRC(15)) ALGBRC(8) = - 1.00000+CONSTS(30)/2.00000+- ( 0.500000* ALGBRC(4) ** (1.0 / 2))+ CONSTS(30)*(CONSTS(29)/( STATES(6)* ALGBRC(4) ** (1.0 / 2))) RETURN END REAL FUNCTION TERNRY(TEST, VALA, VALB) LOGICAL TEST REAL VALA, VALB IF (TEST) THEN TERNRY = VALA ELSE TERNRY = VALB ENDIF RETURN END