Generated Code

The following is f77 code generated by the CellML API from this CellML file. (Back to language selection)

The raw code is available.

C
C There are a total of 56 entries in the algebraic variable array.
C There are a total of 22 entries in each of the rate and state variable arrays.
C There are a total of 132 entries in the constant variable array.
C
C
C VOI is time in component Time (time_units).
C CONSTS(1) is T in component Environment (Temperature_units).
C CONSTS(2) is T_exp in component Environment (Temperature_units).
C CONSTS(3) is F in component Environment (F_units).
C CONSTS(4) is R in component Environment (R_units).
C CONSTS(5) is Q10Ca in component Environment (dimensionless).
C CONSTS(6) is Q10K in component Environment (dimensionless).
C CONSTS(7) is Q10Na in component Environment (dimensionless).
C CONSTS(8) is Ca_o in component Environment (millimolar).
C CONSTS(9) is Na_o in component Environment (millimolar).
C CONSTS(10) is K_o in component Environment (millimolar).
C CONSTS(11) is Cl_o in component Environment (millimolar).
C CONSTS(105) is T_correction_Na in component Environment (dimensionless).
C CONSTS(106) is T_correction_K in component Environment (dimensionless).
C CONSTS(107) is T_correction_Ca in component Environment (dimensionless).
C CONSTS(108) is T_correction_BK in component Environment (conductance_units).
C CONSTS(109) is FoRT in component Environment (Inverse_Voltage_units).
C CONSTS(110) is RToF in component Environment (voltage_units).
C CONSTS(12) is Cm in component ICC_Membrane (capacitance_units).
C CONSTS(13) is Vol in component ICC_Membrane (volume_units).
C CONSTS(14) is P_cyto in component ICC_Membrane (dimensionless).
C CONSTS(111) is V_cyto in component ICC_Membrane (volume_units).
C CONSTS(15) is fc in component ICC_Membrane (dimensionless).
C STATES(1) is Vm in component ICC_Membrane (voltage_units).
C STATES(2) is Ca_i in component ICC_Membrane (millimolar).
C CONSTS(16) is Na_i in component ICC_Membrane (millimolar).
C CONSTS(17) is K_i in component ICC_Membrane (millimolar).
C CONSTS(18) is Cl_i in component ICC_Membrane (millimolar).
C ALGBRC(29) is J_leak in component PU_unit (millimolar_per_second).
C ALGBRC(32) is I_Na in component I_Na (current_units).
C ALGBRC(14) is I_Ltype in component I_Ltype (current_units).
C ALGBRC(17) is I_VDDR in component I_VDDR (current_units).
C ALGBRC(30) is I_kv11 in component I_kv11 (current_units).
C ALGBRC(22) is I_BK in component I_BK (current_units).
C ALGBRC(27) is I_ERG in component I_ERG (current_units).
C ALGBRC(18) is I_CaCl in component I_CaCl (current_units).
C ALGBRC(34) is I_NSCC in component I_NSCC (current_units).
C ALGBRC(25) is I_bk in component I_bk (current_units).
C ALGBRC(15) is J_PMCA in component J_PMCA (millimolar_per_second).
C ALGBRC(1) is d_inf_Ltype in component d_Ltype (dimensionless).
C CONSTS(112) is tau_d_Ltype in component d_Ltype (time_units).
C STATES(3) is d_Ltype in component d_Ltype (dimensionless).
C ALGBRC(2) is f_inf_Ltype in component f_Ltype (dimensionless).
C CONSTS(113) is tau_f_Ltype in component f_Ltype (time_units).
C STATES(4) is f_Ltype in component f_Ltype (dimensionless).
C ALGBRC(3) is f_ca_inf_Ltype in component f_ca_Ltype (dimensionless).
C CONSTS(114) is tau_f_ca_Ltype in component f_ca_Ltype (time_units).
C STATES(5) is f_ca_Ltype in component f_ca_Ltype (dimensionless).
C ALGBRC(13) is E_Ca in component I_Ltype (voltage_units).
C CONSTS(19) is G_max_Ltype in component I_Ltype (conductance_units).
C CONSTS(20) is J_max_PMCA in component J_PMCA (millimolar_per_second).
C ALGBRC(4) is d_inf_VDDR in component d_VDDR (dimensionless).
C CONSTS(115) is tau_d_VDDR in component d_VDDR (time_units).
C STATES(6) is d_VDDR in component d_VDDR (dimensionless).
C ALGBRC(5) is f_inf_VDDR in component f_VDDR (dimensionless).
C CONSTS(116) is tau_f_VDDR in component f_VDDR (time_units).
C STATES(7) is f_VDDR in component f_VDDR (dimensionless).
C ALGBRC(16) is E_Ca in component I_VDDR (voltage_units).
C CONSTS(21) is G_max_VDDR in component I_VDDR (conductance_units).
C ALGBRC(6) is d_inf_CaCl in component d_CaCl (dimensionless).
C CONSTS(22) is tau_d_CaCl in component d_CaCl (time_units).
C STATES(8) is d_CaCl in component d_CaCl (dimensionless).
C CONSTS(117) is E_Cl in component I_CaCl (voltage_units).
C CONSTS(23) is G_max_CaCl in component I_CaCl (conductance_units).
C ALGBRC(20) is d_BK in component d_BK (dimensionless).
C CONSTS(118) is E_K in component I_BK (voltage_units).
C CONSTS(24) is G_max_BK in component I_BK (conductance_units).
C CONSTS(119) is E_K in component I_bk (voltage_units).
C CONSTS(25) is G_max_bk in component I_bk (conductance_units).
C ALGBRC(7) is d_inf_ERG in component d_ERG (dimensionless).
C CONSTS(120) is tau_d_ERG in component d_ERG (time_units).
C STATES(9) is d_ERG in component d_ERG (dimensionless).
C CONSTS(121) is E_K in component I_ERG (voltage_units).
C CONSTS(26) is G_max_ERG in component I_ERG (conductance_units).
C ALGBRC(8) is d_inf_kv11 in component d_kv11 (dimensionless).
C CONSTS(122) is tau_d_kv11 in component d_kv11 (time_units).
C STATES(10) is d_kv11 in component d_kv11 (dimensionless).
C ALGBRC(9) is f_inf_kv11 in component f_kv11 (dimensionless).
C CONSTS(123) is tau_f_kv11 in component f_kv11 (time_units).
C STATES(11) is f_kv11 in component f_kv11 (dimensionless).
C CONSTS(124) is E_K in component I_kv11 (voltage_units).
C CONSTS(27) is G_max_kv11 in component I_kv11 (conductance_units).
C ALGBRC(10) is d_inf_Na in component d_Na (dimensionless).
C CONSTS(125) is tau_d_Na in component d_Na (time_units).
C STATES(12) is d_Na in component d_Na (dimensionless).
C ALGBRC(11) is f_inf_Na in component f_Na (dimensionless).
C CONSTS(126) is tau_f_Na in component f_Na (time_units).
C STATES(13) is f_Na in component f_Na (dimensionless).
C CONSTS(127) is E_Na in component I_Na (voltage_units).
C CONSTS(28) is G_max_Na in component I_Na (conductance_units).
C STATES(14) is Ca_PU in component PU_unit (millimolar).
C ALGBRC(12) is d_inf_NSCC in component d_NSCC (dimensionless).
C CONSTS(29) is tau_d_NSCC in component d_NSCC (time_units).
C STATES(15) is d_NSCC in component d_NSCC (dimensionless).
C CONSTS(128) is E_NSCC in component I_NSCC (voltage_units).
C CONSTS(30) is G_max_NSCC in component I_NSCC (conductance_units).
C CONSTS(31) is NaPerm_o_Kperm in component I_NSCC (dimensionless).
C CONSTS(32) is P_PU in component PU_unit (dimensionless).
C CONSTS(33) is P_mito in component PU_unit (dimensionless).
C CONSTS(34) is P_ER in component PU_unit (dimensionless).
C CONSTS(129) is V_MITO in component PU_unit (volume_units).
C CONSTS(131) is V_ER in component PU_unit (volume_units).
C CONSTS(130) is V_PU in component PU_unit (volume_units).
C CONSTS(35) is fe in component PU_unit (dimensionless).
C CONSTS(36) is fm in component PU_unit (dimensionless).
C STATES(16) is Ca_m in component PU_unit (millimolar).
C STATES(17) is Ca_ER in component PU_unit (millimolar).
C STATES(18) is ADP_m in component PU_unit (millimolar).
C STATES(19) is ADP_i in component PU_unit (millimolar).
C STATES(20) is NADH_m in component PU_unit (millimolar).
C STATES(21) is h in component PU_unit (dimensionless).
C CONSTS(37) is IP3 in component PU_unit (millimolar).
C STATES(22) is deltaPsi in component PU_unit (voltage_units).
C CONSTS(38) is deltapH in component PU_unit (dimensionless).
C CONSTS(39) is Cmito in component PU_unit (millifarads).
C CONSTS(40) is K_res in component PU_unit (dimensionless).
C CONSTS(41) is r1 in component PU_unit (dimensionless).
C CONSTS(42) is r2 in component PU_unit (dimensionless).
C CONSTS(43) is r3 in component PU_unit (dimensionless).
C CONSTS(44) is ra in component PU_unit (rate_constants_units).
C CONSTS(45) is rb in component PU_unit (rate_constants_units).
C CONSTS(46) is rc1 in component PU_unit (rate_constants_units).
C CONSTS(47) is rc2 in component PU_unit (rate_constants_units).
C CONSTS(48) is deltaPsi_B in component PU_unit (voltage_units).
C CONSTS(49) is g in component PU_unit (dimensionless).
C CONSTS(50) is K_F1 in component PU_unit (millimolar).
C CONSTS(51) is Pi_m in component PU_unit (millimolar).
C CONSTS(52) is p1 in component PU_unit (dimensionless).
C CONSTS(53) is p2 in component PU_unit (dimensionless).
C CONSTS(54) is p3 in component PU_unit (dimensionless).
C CONSTS(55) is pa in component PU_unit (rate_constants_units).
C CONSTS(56) is pb in component PU_unit (rate_constants_units).
C CONSTS(57) is pc1 in component PU_unit (rate_constants_units).
C CONSTS(58) is pc2 in component PU_unit (rate_constants_units).
C CONSTS(59) is frac in component PU_unit (dimensionless).
C CONSTS(60) is K_act in component PU_unit (millimolar).
C CONSTS(61) is na in component PU_unit (dimensionless).
C CONSTS(62) is deltaPsi_star in component PU_unit (voltage_units).
C CONSTS(63) is K_Na in component PU_unit (millimolar).
C CONSTS(64) is K_Ca in component PU_unit (millimolar).
C CONSTS(65) is K_trans in component PU_unit (millimolar).
C CONSTS(66) is L in component PU_unit (dimensionless).
C CONSTS(67) is b in component PU_unit (dimensionless).
C CONSTS(68) is beta_max in component PU_unit (rate_constants_units).
C CONSTS(69) is beta1 in component PU_unit (per_millimolar).
C CONSTS(70) is beta2 in component PU_unit (per_millimolar).
C CONSTS(71) is beta3 in component PU_unit (per_millimolar).
C CONSTS(72) is beta4 in component PU_unit (per_millimolar).
C CONSTS(73) is beta5 in component PU_unit (per_millimolar).
C CONSTS(74) is beta6 in component PU_unit (per_millimolar).
C CONSTS(75) is beta7 in component PU_unit (per_millimolar).
C CONSTS(76) is KCa_PDH in component PU_unit (millimolar).
C CONSTS(77) is u1 in component PU_unit (dimensionless).
C CONSTS(78) is u2 in component PU_unit (dimensionless).
C CONSTS(79) is n in component PU_unit (dimensionless).
C CONSTS(80) is K_Glc in component PU_unit (millimolar).
C CONSTS(81) is nhyd in component PU_unit (dimensionless).
C CONSTS(82) is K_hyd in component PU_unit (rate_constants_units).
C CONSTS(83) is J_ERleak in component PU_unit (rate_constants_units).
C CONSTS(84) is Jmax_IP3 in component PU_unit (rate_constants_units).
C CONSTS(85) is d_IP3 in component PU_unit (millimolar).
C CONSTS(86) is d_ACT in component PU_unit (millimolar).
C CONSTS(87) is d_INH in component PU_unit (millimolar).
C CONSTS(88) is tauh in component PU_unit (time_units).
C CONSTS(89) is Jmax_serca in component PU_unit (millimolar_per_second).
C CONSTS(90) is k_serca in component PU_unit (millimolar).
C CONSTS(91) is conc in component PU_unit (millimolar).
C CONSTS(92) is Jmax_uni in component PU_unit (rate_constants_units).
C CONSTS(93) is Jmax_NaCa in component PU_unit (millimolar_per_second).
C CONSTS(94) is J_max_leak in component PU_unit (rate_constants_units).
C CONSTS(95) is rho_res in component PU_unit (millimolar).
C CONSTS(96) is rho_F1 in component PU_unit (millimolar).
C CONSTS(97) is g_H in component PU_unit (millimolar_per_second_per_millivolt).
C CONSTS(98) is J_red_basal in component PU_unit (millimolar_per_second).
C CONSTS(99) is Jmax_ANT in component PU_unit (millimolar_per_second).
C CONSTS(100) is J_hyd_max in component PU_unit (millimolar_per_second).
C CONSTS(101) is Glc in component PU_unit (millimolar).
C CONSTS(102) is total_NAD_m in component PU_unit (millimolar).
C CONSTS(103) is total_ANP_m in component PU_unit (millimolar).
C CONSTS(104) is total_ANP_i in component PU_unit (millimolar).
C ALGBRC(35) is NAD_m in component PU_unit (millimolar).
C ALGBRC(39) is ATP_m in component PU_unit (millimolar).
C ALGBRC(40) is ADP_mfree in component PU_unit (millimolar).
C ALGBRC(44) is ADP3_m in component PU_unit (millimolar).
C ALGBRC(45) is ATP4_m in component PU_unit (millimolar).
C ALGBRC(46) is ATP_i in component PU_unit (millimolar).
C ALGBRC(52) is ADP_ifree in component PU_unit (millimolar).
C ALGBRC(54) is ADP3_i in component PU_unit (millimolar).
C ALGBRC(53) is MgADP_i in component PU_unit (millimolar).
C ALGBRC(55) is ATP4_i in component PU_unit (millimolar).
C ALGBRC(19) is J_ERout in component PU_unit (millimolar_per_second).
C ALGBRC(21) is J_SERCA in component PU_unit (millimolar_per_second).
C ALGBRC(23) is MWC in component PU_unit (millimolar).
C ALGBRC(24) is J_uni in component PU_unit (millimolar_per_second).
C ALGBRC(26) is J_NaCa in component PU_unit (millimolar_per_second).
C ALGBRC(49) is J_red in component PU_unit (millimolar_per_second).
C ALGBRC(48) is J_pTCA in component PU_unit (millimolar_per_second).
C ALGBRC(41) is A_F1 in component PU_unit (voltage_units).
C ALGBRC(42) is J_pF1 in component PU_unit (millimolar_per_second).
C ALGBRC(43) is J_HF1 in component PU_unit (millimolar_per_second).
C ALGBRC(36) is A_res in component PU_unit (voltage_units).
C ALGBRC(37) is J_o in component PU_unit (millimolar_per_second).
C ALGBRC(47) is J_glyTotal in component PU_unit (millimolar_per_second).
C ALGBRC(28) is f_PDHa in component PU_unit (dimensionless).
C ALGBRC(38) is J_Hres in component PU_unit (millimolar_per_second).
C ALGBRC(56) is J_ANT in component PU_unit (millimolar_per_second).
C ALGBRC(31) is PMF in component PU_unit (voltage_units).
C ALGBRC(33) is J_Hleak in component PU_unit (millimolar_per_second).
C ALGBRC(50) is J_pGly in component PU_unit (millimolar_per_second).
C CONSTS(132) is J_hydSS in component PU_unit (millimolar_per_second).
C ALGBRC(51) is J_hyd in component PU_unit (millimolar_per_second).
C RATES(1) is d/dt Vm in component ICC_Membrane (voltage_units).
C RATES(2) is d/dt Ca_i in component ICC_Membrane (millimolar).
C RATES(3) is d/dt d_Ltype in component d_Ltype (dimensionless).
C RATES(4) is d/dt f_Ltype in component f_Ltype (dimensionless).
C RATES(5) is d/dt f_ca_Ltype in component f_ca_Ltype (dimensionless).
C RATES(6) is d/dt d_VDDR in component d_VDDR (dimensionless).
C RATES(7) is d/dt f_VDDR in component f_VDDR (dimensionless).
C RATES(8) is d/dt d_CaCl in component d_CaCl (dimensionless).
C RATES(9) is d/dt d_ERG in component d_ERG (dimensionless).
C RATES(10) is d/dt d_kv11 in component d_kv11 (dimensionless).
C RATES(11) is d/dt f_kv11 in component f_kv11 (dimensionless).
C RATES(12) is d/dt d_Na in component d_Na (dimensionless).
C RATES(13) is d/dt f_Na in component f_Na (dimensionless).
C RATES(15) is d/dt d_NSCC in component d_NSCC (dimensionless).
C RATES(20) is d/dt NADH_m in component PU_unit (millimolar).
C RATES(18) is d/dt ADP_m in component PU_unit (millimolar).
C RATES(19) is d/dt ADP_i in component PU_unit (millimolar).
C RATES(14) is d/dt Ca_PU in component PU_unit (millimolar).
C RATES(16) is d/dt Ca_m in component PU_unit (millimolar).
C RATES(17) is d/dt Ca_ER in component PU_unit (millimolar).
C RATES(22) is d/dt deltaPsi in component PU_unit (voltage_units).
C RATES(21) is d/dt h in component PU_unit (dimensionless).
C
      SUBROUTINE initConsts(CONSTS, RATES, STATES)
      REAL CONSTS(*), RATES(*), STATES(*)
      CONSTS(1) = 310
      CONSTS(2) = 297
      CONSTS(3) = 96.4846
      CONSTS(4) = 8.3144
      CONSTS(5) = 2.1
      CONSTS(6) = 1.5
      CONSTS(7) = 2.45
      CONSTS(8) = 2.5
      CONSTS(9) = 137
      CONSTS(10) = 7
      CONSTS(11) = 134
      CONSTS(12) = 0.025
      CONSTS(13) = 1e-12
      CONSTS(14) = 0.7
      CONSTS(15) = 0.01
      STATES(1) = -67
      STATES(2) = 0.00000993087
      CONSTS(16) = 30
      CONSTS(17) = 120
      CONSTS(18) = 88
      STATES(3) = 0
      STATES(4) = 1
      STATES(5) = 1
      CONSTS(19) = 2
      CONSTS(20) = 0.088464
      STATES(6) = 0
      STATES(7) = 1
      CONSTS(21) = 3
      CONSTS(22) = 0.03
      STATES(8) = 0
      CONSTS(23) = 10.1
      CONSTS(24) = 23
      CONSTS(25) = 0.15
      STATES(9) = 0
      CONSTS(26) = 2.5
      STATES(10) = 0
      STATES(11) = 1
      CONSTS(27) = 6.3
      STATES(12) = 0
      STATES(13) = 1
      CONSTS(28) = 20
      STATES(14) = 0.0000902
      CONSTS(29) = 0.35
      STATES(15) = 0
      CONSTS(30) = 12.15
      CONSTS(31) = 1.056075
      CONSTS(32) = 0.001
      CONSTS(33) = 0.12871
      CONSTS(34) = 0.1
      CONSTS(35) = 0.01
      CONSTS(36) = 0.0003
      STATES(16) = 0.000136
      STATES(17) = 0.007299
      STATES(18) = 2.60093454
      STATES(19) = 0.0077282
      STATES(20) = 0.101476
      STATES(21) = 0.9397
      CONSTS(37) = 0.0006
      STATES(22) = 164.000044
      CONSTS(38) = -0.4
      CONSTS(39) = 0.006995
      CONSTS(40) = 1.35e18
      CONSTS(41) = 2.077e-18
      CONSTS(42) = 1.728e-9
      CONSTS(43) = 1.059e-26
      CONSTS(44) = 6.394e-10
      CONSTS(45) = 1.762e-13
      CONSTS(46) = 2.656e-19
      CONSTS(47) = 8.632e-27
      CONSTS(48) = 50
      CONSTS(49) = 0.85
      CONSTS(50) = 1.71e9
      CONSTS(51) = 20
      CONSTS(52) = 1.346e-8
      CONSTS(53) = 7.739e-7
      CONSTS(54) = 6.65e-15
      CONSTS(55) = 1.656e-5
      CONSTS(56) = 3.373e-7
      CONSTS(57) = 9.651e-14
      CONSTS(58) = 4.845e-19
      CONSTS(59) = 0.5
      CONSTS(60) = 0.00038
      CONSTS(61) = 2.8
      CONSTS(62) = 91
      CONSTS(63) = 9.4
      CONSTS(64) = 0.003
      CONSTS(65) = 0.006
      CONSTS(66) = 50
      CONSTS(67) = 0.5
      CONSTS(68) = 2.055
      CONSTS(69) = 1.66
      CONSTS(70) = 0.0249
      CONSTS(71) = 4
      CONSTS(72) = 2.83
      CONSTS(73) = 1.3
      CONSTS(74) = 2.66
      CONSTS(75) = 0.16
      CONSTS(76) = 0.00005
      CONSTS(77) = 15
      CONSTS(78) = 1.1
      CONSTS(79) = 2
      CONSTS(80) = 8.7
      CONSTS(81) = 2.7
      CONSTS(82) = 0.05125
      CONSTS(83) = 1.666667
      CONSTS(84) = 50000
      CONSTS(85) = 0.00025
      CONSTS(86) = 0.001
      CONSTS(87) = 0.0014
      CONSTS(88) = 4
      CONSTS(89) = 1.8333
      CONSTS(90) = 0.00042
      CONSTS(91) = 0.001
      CONSTS(92) = 5000
      CONSTS(93) = 0.05
      CONSTS(94) = 0.01
      CONSTS(95) = 0.4
      CONSTS(96) = 0.7
      CONSTS(97) = 0.0033333
      CONSTS(98) = 0.3333
      CONSTS(99) = 15
      CONSTS(100) = 0.037625
      CONSTS(101) = 1
      CONSTS(102) = 8
      CONSTS(103) = 12
      CONSTS(104) = 2
      CONSTS(105) = CONSTS(7) ** (CONSTS(1) - CONSTS(2))/10.0000
      CONSTS(106) = CONSTS(6) ** (CONSTS(1) - CONSTS(2))/10.0000
      CONSTS(107) = CONSTS(5) ** (CONSTS(1) - CONSTS(2))/10.0000
      CONSTS(108) =  1.10000*(CONSTS(1) - CONSTS(2))
      CONSTS(109) = CONSTS(3)/( CONSTS(4)*CONSTS(1))
      CONSTS(110) = ( CONSTS(4)*CONSTS(1))/CONSTS(3)
      CONSTS(111) =  CONSTS(13)*CONSTS(14)
      CONSTS(112) =  CONSTS(107)*0.00100000
      CONSTS(113) =  CONSTS(107)*0.0860000
      CONSTS(114) =  CONSTS(107)*0.00200000
      CONSTS(115) =  CONSTS(107)*0.00600000
      CONSTS(116) =  CONSTS(107)*0.0400000
      CONSTS(117) =  CONSTS(110)*log(CONSTS(18)/CONSTS(11))
      CONSTS(118) =  CONSTS(110)*log(CONSTS(10)/CONSTS(17))
      CONSTS(119) =  CONSTS(110)*log(CONSTS(10)/CONSTS(17))
      CONSTS(120) =  CONSTS(106)*0.00300000
      CONSTS(121) =  CONSTS(110)*log(CONSTS(10)/CONSTS(17))
      CONSTS(122) =  CONSTS(106)*0.00500000
      CONSTS(123) =  CONSTS(106)*0.00500000
      CONSTS(124) =  CONSTS(110)*log(CONSTS(10)/CONSTS(17))
      CONSTS(125) =  CONSTS(105)*0.00300000
      CONSTS(126) =  CONSTS(105)*0.00160000
      CONSTS(127) =  CONSTS(110)*log(CONSTS(9)/CONSTS(16))
      CONSTS(128) =  CONSTS(110)*log((CONSTS(10)+ CONSTS(9)*CONSTS(31))/(CONSTS(17)+ CONSTS(16)*CONSTS(31)))
      CONSTS(129) =  CONSTS(13)*CONSTS(33)
      CONSTS(130) =  CONSTS(13)*CONSTS(32)
      CONSTS(131) =  CONSTS(13)*CONSTS(34)
      CONSTS(132) = CONSTS(100)/(1.00000+CONSTS(80)/CONSTS(101) ** CONSTS(81))
      RETURN
      END
      SUBROUTINE computeRates(VOI, CONSTS,  RATES, STATES, ALGBRC)
      REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*)
      RATES(21) = ( 1.00000*(CONSTS(87) -  STATES(21)*(STATES(14)+CONSTS(87))))/CONSTS(88)
      ALGBRC(1) = 1.00000/(1.00000+EXP((STATES(1)+17.0000)/- 4.30000))
      RATES(3) = (ALGBRC(1) - STATES(3))/CONSTS(112)
      ALGBRC(2) = 1.00000/(1.00000+EXP((STATES(1)+43.0000)/8.90000))
      RATES(4) = (ALGBRC(2) - STATES(4))/CONSTS(113)
      ALGBRC(3) = 1.00000 - 1.00000/(1.00000+EXP(((STATES(2) - 0.000100000) - 0.000214000)/- 1.31000e-05))
      RATES(5) = (ALGBRC(3) - STATES(5))/CONSTS(114)
      ALGBRC(4) = 1.00000/(1.00000+EXP((STATES(1)+26.0000)/- 6.00000))
      RATES(6) = (ALGBRC(4) - STATES(6))/CONSTS(115)
      ALGBRC(5) = 1.00000/(1.00000+EXP((STATES(1)+66.0000)/6.00000))
      RATES(7) = (ALGBRC(5) - STATES(7))/CONSTS(116)
      ALGBRC(6) = 1.00000/(1.00000+0.000140000/STATES(2) ** 3.00000)
      RATES(8) = (ALGBRC(6) - STATES(8))/CONSTS(22)
      ALGBRC(7) = 0.200000+0.800000/(1.00000+EXP((STATES(1)+20.0000)/- 1.80000))
      RATES(9) = (ALGBRC(7) - STATES(9))/CONSTS(120)
      ALGBRC(8) = 1.00000/(1.00000+EXP((STATES(1)+25.0000)/- 7.70000))
      RATES(10) = (ALGBRC(8) - STATES(10))/CONSTS(122)
      ALGBRC(9) = 0.500000+0.500000/(1.00000+EXP((STATES(1)+44.8000)/4.40000))
      RATES(11) = (ALGBRC(9) - STATES(11))/CONSTS(123)
      ALGBRC(10) = 1.00000/(1.00000+EXP((STATES(1)+47.0000)/- 4.80000))
      RATES(12) = (ALGBRC(10) - STATES(12))/CONSTS(125)
      ALGBRC(11) = 1.00000/(1.00000+EXP((STATES(1)+78.0000)/7.00000))
      RATES(13) = (ALGBRC(11) - STATES(13))/CONSTS(126)
      ALGBRC(12) = 1.00000/(1.00000+7.45000e-05/STATES(14) ** - 85.0000)
      RATES(15) = (ALGBRC(12) - STATES(15))/CONSTS(29)
      ALGBRC(19) =  ( CONSTS(84)*CONSTS(37)/(CONSTS(37)+CONSTS(85)) ** 3.00000*STATES(14)/(STATES(14)+CONSTS(86)) ** 3.00000*STATES(21) ** 3.00000+CONSTS(83))*(STATES(17) - STATES(14))
      ALGBRC(21) = ( CONSTS(89)*STATES(14) ** 2.00000)/(CONSTS(90) ** 2.00000+STATES(14) ** 2.00000)
      RATES(17) =  CONSTS(35)*(ALGBRC(21) - ALGBRC(19))
      ALGBRC(23) = ( (( CONSTS(91)*STATES(14))/CONSTS(65))*1.00000+STATES(14)/CONSTS(65) ** 3.00000)/(1.00000+STATES(14)/CONSTS(65) ** 4.00000+CONSTS(66)/1.00000+STATES(14)/CONSTS(60) ** CONSTS(61))
      ALGBRC(24) = ( CONSTS(92)*(ALGBRC(23) -  STATES(16)*EXP( - 2.00000*CONSTS(109)*(STATES(22) - CONSTS(62))))*2.00000*CONSTS(109)*(STATES(22) - CONSTS(62)))/(1.00000 - EXP( - 2.00000*CONSTS(109)*(STATES(22) - CONSTS(62))))
      ALGBRC(26) = ( CONSTS(93)*EXP( CONSTS(67)*CONSTS(109)*(STATES(22) - CONSTS(62))))/( (1.00000+CONSTS(63)/CONSTS(16) ** CONSTS(79))*(1.00000+CONSTS(64)/STATES(16)))
      RATES(16) =  CONSTS(36)*(ALGBRC(24) - ALGBRC(26))
      ALGBRC(29) =  CONSTS(94)*(STATES(14) - STATES(2))
      ALGBRC(13) =  0.500000*CONSTS(110)*log(CONSTS(8)/STATES(2))
      ALGBRC(14) =  CONSTS(19)*STATES(4)*STATES(3)*STATES(5)*(STATES(1) - ALGBRC(13))
      ALGBRC(16) =  0.500000*CONSTS(110)*log(CONSTS(8)/STATES(2))
      ALGBRC(17) =  CONSTS(21)*STATES(7)*STATES(6)*(STATES(1) - ALGBRC(16))
      ALGBRC(15) = ( CONSTS(20)*1.00000)/(1.00000+0.000298000/STATES(2))
      RATES(2) =  CONSTS(15)*(( - 1.00000*ALGBRC(14)+ - 1.00000*ALGBRC(17))/( 2.00000*1.00000e+06*1.00000e+06*CONSTS(3)*CONSTS(111))+ALGBRC(29)+ - 1.00000*ALGBRC(15))
      RATES(14) =  CONSTS(15)*(( (ALGBRC(26) - ALGBRC(24))*CONSTS(129))/CONSTS(130)+( (ALGBRC(19) - ALGBRC(21))*CONSTS(131))/CONSTS(130)+( - 1.00000*ALGBRC(29)*CONSTS(111))/CONSTS(130))
      ALGBRC(32) =  CONSTS(28)*STATES(13)*STATES(12)*(STATES(1) - CONSTS(127))
      ALGBRC(30) =  CONSTS(27)*STATES(11)*STATES(10)*(STATES(1) - CONSTS(124))
      ALGBRC(20) = 1.00000/(1.00000+EXP(STATES(1)/- 17.0000 -  2.00000*log(STATES(2)/0.00100000)))
      ALGBRC(22) =  (CONSTS(24)+CONSTS(108))*ALGBRC(20)*(STATES(1) - CONSTS(118))
      ALGBRC(27) =  CONSTS(26)*STATES(9)*(STATES(1) - CONSTS(121))
      ALGBRC(18) =  CONSTS(23)*STATES(8)*(STATES(1) - CONSTS(117))
      ALGBRC(34) =  CONSTS(30)*STATES(15)*(STATES(1) - CONSTS(128))
      ALGBRC(25) =  CONSTS(25)*(STATES(1) - CONSTS(119))
      RATES(1) =  (( - 1.00000*1.00000)/CONSTS(12))*(ALGBRC(32)+ALGBRC(14)+ALGBRC(17)+ALGBRC(30)+ALGBRC(27)+ALGBRC(22)+ALGBRC(18)+ALGBRC(34)+ALGBRC(25)+ ALGBRC(15)*2.00000*1.00000e+06*1.00000e+06*CONSTS(3)*CONSTS(111))
      ALGBRC(46) = CONSTS(104) - STATES(19)
      ALGBRC(47) = ( CONSTS(68)*(1.00000+ CONSTS(69)*CONSTS(101))*CONSTS(70)*CONSTS(101)*ALGBRC(46))/(1.00000+ CONSTS(71)*ALGBRC(46)+ (1.00000+ CONSTS(72)*ALGBRC(46))*CONSTS(73)*CONSTS(101)+ (1.00000+ CONSTS(74)*ALGBRC(46))*CONSTS(75)*CONSTS(101))
      ALGBRC(28) = 1.00000/(1.00000+ CONSTS(78)*(1.00000+CONSTS(77)/1.00000+STATES(16)/CONSTS(76) ** 2.00000))
      ALGBRC(49) = CONSTS(98)+ 6.39440*ALGBRC(28)*ALGBRC(47)
      ALGBRC(35) = CONSTS(102) - STATES(20)
      ALGBRC(36) =  CONSTS(110)*log(( CONSTS(40)* STATES(20) ** (1.0 / 2))/ ALGBRC(35) ** (1.0 / 2))
      ALGBRC(37) = ( CONSTS(95)*0.500000*( ( CONSTS(44)*10.0000 **  6.00000*CONSTS(38)+ CONSTS(46)*EXP( 6.00000*CONSTS(48)*CONSTS(109)))*EXP( ALGBRC(36)*CONSTS(109))+ - 1.00000*CONSTS(44)*EXP( CONSTS(49)*6.00000*CONSTS(109)*STATES(22))+ CONSTS(47)*EXP( CONSTS(109)*ALGBRC(36))*EXP( CONSTS(109)*STATES(22)*6.00000*CONSTS(49))))/( (1.00000+ CONSTS(41)*EXP( CONSTS(109)*ALGBRC(36)))*EXP( CONSTS(109)*CONSTS(48)*6.00000)+ (CONSTS(42)+ CONSTS(43)*EXP( CONSTS(109)*ALGBRC(36)))*EXP( CONSTS(109)*STATES(22)*CONSTS(49)*6.00000))
      RATES(20) = ALGBRC(49) - ALGBRC(37)
      ALGBRC(48) = CONSTS(98)/3.00000+ 0.840000*ALGBRC(28)*ALGBRC(47)
      ALGBRC(39) = CONSTS(103) - STATES(18)
      ALGBRC(40) =  0.800000*STATES(18)
      ALGBRC(41) =  CONSTS(110)*log(( CONSTS(50)*ALGBRC(39))/( ALGBRC(40)*CONSTS(51)))
      ALGBRC(42) = ( CONSTS(96)*- 1.00000*( ( CONSTS(55)*10.0000 **  3.00000*CONSTS(38)+ CONSTS(57)*EXP( 3.00000*CONSTS(109)*CONSTS(48)))*EXP( CONSTS(109)*ALGBRC(41))+ - 1.00000*CONSTS(55)*EXP( 3.00000*CONSTS(109)*STATES(22))+ CONSTS(58)*EXP( CONSTS(109)*ALGBRC(41))*EXP( 3.00000*CONSTS(109)*STATES(22))))/( (1.00000+ CONSTS(52)*EXP( CONSTS(109)*ALGBRC(41)))*EXP( 3.00000*CONSTS(109)*CONSTS(48))+ (CONSTS(53)+ CONSTS(54)*EXP( CONSTS(109)*ALGBRC(41)))*EXP( 3.00000*CONSTS(109)*STATES(22)))
      ALGBRC(44) =  0.450000*ALGBRC(40)
      ALGBRC(45) =  0.0500000*ALGBRC(39)
      ALGBRC(52) =  0.300000*STATES(19)
      ALGBRC(54) =  0.450000*ALGBRC(52)
      ALGBRC(55) =  0.0500000*ALGBRC(46)
      ALGBRC(56) = ( CONSTS(99)*(1.00000 -  (( ALGBRC(55)*ALGBRC(44))/( ALGBRC(54)*ALGBRC(45)))*EXP( - 1.00000*CONSTS(109)*STATES(22))))/( (1.00000+ (ALGBRC(55)/ALGBRC(54))*EXP( - 1.00000*CONSTS(59)*CONSTS(109)*STATES(22)))*(1.00000+ALGBRC(44)/ALGBRC(45)))
      RATES(18) = ALGBRC(56)+ - 1.00000*ALGBRC(48)+ - 1.00000*ALGBRC(42)
      ALGBRC(50) =  0.150000*ALGBRC(47)
      ALGBRC(51) =  CONSTS(82)*ALGBRC(46)+CONSTS(132)
      RATES(19) = ( - 1.00000*ALGBRC(56)*CONSTS(129))/CONSTS(111)+ALGBRC(51)+ - 1.00000*ALGBRC(50)
      ALGBRC(43) = ( - 1.00000*CONSTS(96)*3.00000*( CONSTS(55)*10.0000 **  3.00000*CONSTS(38)*EXP( CONSTS(109)*ALGBRC(41))+ CONSTS(56)*10.0000 **  3.00000*CONSTS(38)+ - 1.00000*(CONSTS(55)+CONSTS(56))*EXP( 3.00000*CONSTS(109)*STATES(22))))/( (1.00000+ CONSTS(52)*EXP( CONSTS(109)*ALGBRC(41)))*EXP( 3.00000*CONSTS(109)*CONSTS(48))+ (CONSTS(53)+ CONSTS(54)*EXP( CONSTS(109)*ALGBRC(41)))*EXP( 3.00000*CONSTS(109)*STATES(22)))
      ALGBRC(38) = ( CONSTS(95)*3.96600*( CONSTS(44)*10.0000 **  6.00000*CONSTS(38)*EXP( CONSTS(109)*ALGBRC(36))+ CONSTS(45)*10.0000 **  6.00000*CONSTS(38)+ - 1.00000*(CONSTS(44)+CONSTS(45))*EXP( CONSTS(49)*CONSTS(109)*STATES(22)*6.00000)))/( (1.00000+ CONSTS(41)*EXP( CONSTS(109)*ALGBRC(36)))*EXP( 6.00000*CONSTS(109)*CONSTS(48))+ (CONSTS(42)+ CONSTS(43)*EXP( CONSTS(109)*ALGBRC(36)))*EXP( CONSTS(49)*6.00000*CONSTS(109)*STATES(22)))
      ALGBRC(31) = STATES(22) -  2.30300*CONSTS(110)*CONSTS(38)
      ALGBRC(33) =  CONSTS(97)*ALGBRC(31)
      RATES(22) =  (( - 1.00000*CONSTS(3)*CONSTS(129)*1.00000e+06*1.00000)/CONSTS(39))*(ALGBRC(33)+ - 1.00000*ALGBRC(38)+ALGBRC(56)+ALGBRC(43)+ 2.00000*ALGBRC(24))
      RETURN
      END
      SUBROUTINE computeVariables(VOI, CONSTS, RATES, STATES, ALGBRC)
      REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*)
      ALGBRC(1) = 1.00000/(1.00000+EXP((STATES(1)+17.0000)/- 4.30000))
      ALGBRC(2) = 1.00000/(1.00000+EXP((STATES(1)+43.0000)/8.90000))
      ALGBRC(3) = 1.00000 - 1.00000/(1.00000+EXP(((STATES(2) - 0.000100000) - 0.000214000)/- 1.31000e-05))
      ALGBRC(4) = 1.00000/(1.00000+EXP((STATES(1)+26.0000)/- 6.00000))
      ALGBRC(5) = 1.00000/(1.00000+EXP((STATES(1)+66.0000)/6.00000))
      ALGBRC(6) = 1.00000/(1.00000+0.000140000/STATES(2) ** 3.00000)
      ALGBRC(7) = 0.200000+0.800000/(1.00000+EXP((STATES(1)+20.0000)/- 1.80000))
      ALGBRC(8) = 1.00000/(1.00000+EXP((STATES(1)+25.0000)/- 7.70000))
      ALGBRC(9) = 0.500000+0.500000/(1.00000+EXP((STATES(1)+44.8000)/4.40000))
      ALGBRC(10) = 1.00000/(1.00000+EXP((STATES(1)+47.0000)/- 4.80000))
      ALGBRC(11) = 1.00000/(1.00000+EXP((STATES(1)+78.0000)/7.00000))
      ALGBRC(12) = 1.00000/(1.00000+7.45000e-05/STATES(14) ** - 85.0000)
      ALGBRC(19) =  ( CONSTS(84)*CONSTS(37)/(CONSTS(37)+CONSTS(85)) ** 3.00000*STATES(14)/(STATES(14)+CONSTS(86)) ** 3.00000*STATES(21) ** 3.00000+CONSTS(83))*(STATES(17) - STATES(14))
      ALGBRC(21) = ( CONSTS(89)*STATES(14) ** 2.00000)/(CONSTS(90) ** 2.00000+STATES(14) ** 2.00000)
      ALGBRC(23) = ( (( CONSTS(91)*STATES(14))/CONSTS(65))*1.00000+STATES(14)/CONSTS(65) ** 3.00000)/(1.00000+STATES(14)/CONSTS(65) ** 4.00000+CONSTS(66)/1.00000+STATES(14)/CONSTS(60) ** CONSTS(61))
      ALGBRC(24) = ( CONSTS(92)*(ALGBRC(23) -  STATES(16)*EXP( - 2.00000*CONSTS(109)*(STATES(22) - CONSTS(62))))*2.00000*CONSTS(109)*(STATES(22) - CONSTS(62)))/(1.00000 - EXP( - 2.00000*CONSTS(109)*(STATES(22) - CONSTS(62))))
      ALGBRC(26) = ( CONSTS(93)*EXP( CONSTS(67)*CONSTS(109)*(STATES(22) - CONSTS(62))))/( (1.00000+CONSTS(63)/CONSTS(16) ** CONSTS(79))*(1.00000+CONSTS(64)/STATES(16)))
      ALGBRC(29) =  CONSTS(94)*(STATES(14) - STATES(2))
      ALGBRC(13) =  0.500000*CONSTS(110)*log(CONSTS(8)/STATES(2))
      ALGBRC(14) =  CONSTS(19)*STATES(4)*STATES(3)*STATES(5)*(STATES(1) - ALGBRC(13))
      ALGBRC(16) =  0.500000*CONSTS(110)*log(CONSTS(8)/STATES(2))
      ALGBRC(17) =  CONSTS(21)*STATES(7)*STATES(6)*(STATES(1) - ALGBRC(16))
      ALGBRC(15) = ( CONSTS(20)*1.00000)/(1.00000+0.000298000/STATES(2))
      ALGBRC(32) =  CONSTS(28)*STATES(13)*STATES(12)*(STATES(1) - CONSTS(127))
      ALGBRC(30) =  CONSTS(27)*STATES(11)*STATES(10)*(STATES(1) - CONSTS(124))
      ALGBRC(20) = 1.00000/(1.00000+EXP(STATES(1)/- 17.0000 -  2.00000*log(STATES(2)/0.00100000)))
      ALGBRC(22) =  (CONSTS(24)+CONSTS(108))*ALGBRC(20)*(STATES(1) - CONSTS(118))
      ALGBRC(27) =  CONSTS(26)*STATES(9)*(STATES(1) - CONSTS(121))
      ALGBRC(18) =  CONSTS(23)*STATES(8)*(STATES(1) - CONSTS(117))
      ALGBRC(34) =  CONSTS(30)*STATES(15)*(STATES(1) - CONSTS(128))
      ALGBRC(25) =  CONSTS(25)*(STATES(1) - CONSTS(119))
      ALGBRC(46) = CONSTS(104) - STATES(19)
      ALGBRC(47) = ( CONSTS(68)*(1.00000+ CONSTS(69)*CONSTS(101))*CONSTS(70)*CONSTS(101)*ALGBRC(46))/(1.00000+ CONSTS(71)*ALGBRC(46)+ (1.00000+ CONSTS(72)*ALGBRC(46))*CONSTS(73)*CONSTS(101)+ (1.00000+ CONSTS(74)*ALGBRC(46))*CONSTS(75)*CONSTS(101))
      ALGBRC(28) = 1.00000/(1.00000+ CONSTS(78)*(1.00000+CONSTS(77)/1.00000+STATES(16)/CONSTS(76) ** 2.00000))
      ALGBRC(49) = CONSTS(98)+ 6.39440*ALGBRC(28)*ALGBRC(47)
      ALGBRC(35) = CONSTS(102) - STATES(20)
      ALGBRC(36) =  CONSTS(110)*log(( CONSTS(40)* STATES(20) ** (1.0 / 2))/ ALGBRC(35) ** (1.0 / 2))
      ALGBRC(37) = ( CONSTS(95)*0.500000*( ( CONSTS(44)*10.0000 **  6.00000*CONSTS(38)+ CONSTS(46)*EXP( 6.00000*CONSTS(48)*CONSTS(109)))*EXP( ALGBRC(36)*CONSTS(109))+ - 1.00000*CONSTS(44)*EXP( CONSTS(49)*6.00000*CONSTS(109)*STATES(22))+ CONSTS(47)*EXP( CONSTS(109)*ALGBRC(36))*EXP( CONSTS(109)*STATES(22)*6.00000*CONSTS(49))))/( (1.00000+ CONSTS(41)*EXP( CONSTS(109)*ALGBRC(36)))*EXP( CONSTS(109)*CONSTS(48)*6.00000)+ (CONSTS(42)+ CONSTS(43)*EXP( CONSTS(109)*ALGBRC(36)))*EXP( CONSTS(109)*STATES(22)*CONSTS(49)*6.00000))
      ALGBRC(48) = CONSTS(98)/3.00000+ 0.840000*ALGBRC(28)*ALGBRC(47)
      ALGBRC(39) = CONSTS(103) - STATES(18)
      ALGBRC(40) =  0.800000*STATES(18)
      ALGBRC(41) =  CONSTS(110)*log(( CONSTS(50)*ALGBRC(39))/( ALGBRC(40)*CONSTS(51)))
      ALGBRC(42) = ( CONSTS(96)*- 1.00000*( ( CONSTS(55)*10.0000 **  3.00000*CONSTS(38)+ CONSTS(57)*EXP( 3.00000*CONSTS(109)*CONSTS(48)))*EXP( CONSTS(109)*ALGBRC(41))+ - 1.00000*CONSTS(55)*EXP( 3.00000*CONSTS(109)*STATES(22))+ CONSTS(58)*EXP( CONSTS(109)*ALGBRC(41))*EXP( 3.00000*CONSTS(109)*STATES(22))))/( (1.00000+ CONSTS(52)*EXP( CONSTS(109)*ALGBRC(41)))*EXP( 3.00000*CONSTS(109)*CONSTS(48))+ (CONSTS(53)+ CONSTS(54)*EXP( CONSTS(109)*ALGBRC(41)))*EXP( 3.00000*CONSTS(109)*STATES(22)))
      ALGBRC(44) =  0.450000*ALGBRC(40)
      ALGBRC(45) =  0.0500000*ALGBRC(39)
      ALGBRC(52) =  0.300000*STATES(19)
      ALGBRC(54) =  0.450000*ALGBRC(52)
      ALGBRC(55) =  0.0500000*ALGBRC(46)
      ALGBRC(56) = ( CONSTS(99)*(1.00000 -  (( ALGBRC(55)*ALGBRC(44))/( ALGBRC(54)*ALGBRC(45)))*EXP( - 1.00000*CONSTS(109)*STATES(22))))/( (1.00000+ (ALGBRC(55)/ALGBRC(54))*EXP( - 1.00000*CONSTS(59)*CONSTS(109)*STATES(22)))*(1.00000+ALGBRC(44)/ALGBRC(45)))
      ALGBRC(50) =  0.150000*ALGBRC(47)
      ALGBRC(51) =  CONSTS(82)*ALGBRC(46)+CONSTS(132)
      ALGBRC(43) = ( - 1.00000*CONSTS(96)*3.00000*( CONSTS(55)*10.0000 **  3.00000*CONSTS(38)*EXP( CONSTS(109)*ALGBRC(41))+ CONSTS(56)*10.0000 **  3.00000*CONSTS(38)+ - 1.00000*(CONSTS(55)+CONSTS(56))*EXP( 3.00000*CONSTS(109)*STATES(22))))/( (1.00000+ CONSTS(52)*EXP( CONSTS(109)*ALGBRC(41)))*EXP( 3.00000*CONSTS(109)*CONSTS(48))+ (CONSTS(53)+ CONSTS(54)*EXP( CONSTS(109)*ALGBRC(41)))*EXP( 3.00000*CONSTS(109)*STATES(22)))
      ALGBRC(38) = ( CONSTS(95)*3.96600*( CONSTS(44)*10.0000 **  6.00000*CONSTS(38)*EXP( CONSTS(109)*ALGBRC(36))+ CONSTS(45)*10.0000 **  6.00000*CONSTS(38)+ - 1.00000*(CONSTS(44)+CONSTS(45))*EXP( CONSTS(49)*CONSTS(109)*STATES(22)*6.00000)))/( (1.00000+ CONSTS(41)*EXP( CONSTS(109)*ALGBRC(36)))*EXP( 6.00000*CONSTS(109)*CONSTS(48))+ (CONSTS(42)+ CONSTS(43)*EXP( CONSTS(109)*ALGBRC(36)))*EXP( CONSTS(49)*6.00000*CONSTS(109)*STATES(22)))
      ALGBRC(31) = STATES(22) -  2.30300*CONSTS(110)*CONSTS(38)
      ALGBRC(33) =  CONSTS(97)*ALGBRC(31)
      ALGBRC(53) =  0.550000*ALGBRC(52)
      RETURN
      END