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 90 entries in the algebraic variable array.
C There are a total of 31 entries in each of the rate and state variable arrays.
C There are a total of 133 entries in the constant variable array.
C
C
C VOI is time in component environment (second).
C CONSTS(1) is isotonic in component parameters (dimensionless).
C CONSTS(2) is alpha_1 in component parameters (per_micrometre).
C CONSTS(3) is beta_1 in component parameters (millinewton).
C CONSTS(4) is alpha_2 in component parameters (per_micrometre).
C CONSTS(5) is beta_2 in component parameters (millinewton).
C CONSTS(6) is alpha_3 in component parameters (per_micrometre).
C CONSTS(7) is beta_3 in component parameters (millinewton).
C CONSTS(8) is lambda in component parameters (millinewton).
C CONSTS(9) is mu in component parameters (dimensionless).
C CONSTS(10) is k_mu in component parameters (dimensionless).
C CONSTS(11) is kappa in component parameters (dimensionless).
C CONSTS(12) is kappa_0 in component parameters (dimensionless).
C CONSTS(13) is m_0 in component parameters (dimensionless).
C CONSTS(14) is v_max in component parameters (micrometre_per_second).
C CONSTS(15) is a in component parameters (dimensionless).
C CONSTS(16) is d_h in component parameters (dimensionless).
C CONSTS(17) is alpha_P in component parameters (dimensionless).
C ALGBRC(38) is l in component length (micrometre).
C ALGBRC(27) is F_muscle in component force (millinewton).
C CONSTS(18) is F_afterload in component isotonic (millinewton).
C ALGBRC(41) is isotonic_mode in component isotonic (dimensionless).
C CONSTS(19) is l_0 in component length (micrometre).
C CONSTS(20) is stim_period in component membrane (second).
C CONSTS(21) is S_0 in component parameters_izakov_et_al_1991 (micrometre).
C ALGBRC(3) is q_v in component parameters_izakov_et_al_1991 (per_second).
C CONSTS(22) is q_1 in component parameters_izakov_et_al_1991 (per_second).
C CONSTS(23) is q_2 in component parameters_izakov_et_al_1991 (per_second).
C CONSTS(24) is q_3 in component parameters_izakov_et_al_1991 (per_second).
C CONSTS(25) is q_4 in component parameters_izakov_et_al_1991 (per_second).
C CONSTS(26) is x_st in component parameters_izakov_et_al_1991 (dimensionless).
C CONSTS(124) is v_st in component parameters_izakov_et_al_1991 (micrometre_per_second).
C CONSTS(125) is v_1 in component parameters_izakov_et_al_1991 (micrometre_per_second).
C CONSTS(27) is alpha_G in component parameters_izakov_et_al_1991 (dimensionless).
C CONSTS(28) is k_A in component parameters_izakov_et_al_1991 (per_millimolar).
C STATES(1) is v in component CE_velocity (micrometre_per_second).
C CONSTS(29) is alpha_Q in component parameters_izakov_et_al_1991 (dimensionless).
C CONSTS(30) is beta_Q in component parameters_izakov_et_al_1991 (dimensionless).
C ALGBRC(72) is F_CE in component force (millinewton).
C ALGBRC(16) is F_XSE in component force (millinewton).
C ALGBRC(1) is F_SE in component force (millinewton).
C ALGBRC(2) is F_PE in component force (millinewton).
C STATES(2) is N in component crossbridge_kinetics (dimensionless).
C ALGBRC(45) is k_P_vis in component CE_velocity (millinewton_second_per_micrometre).
C ALGBRC(52) is k_S_vis in component PE_velocity (millinewton_second_per_micrometre).
C STATES(3) is w in component PE_velocity (micrometre_per_second).
C STATES(4) is l_1 in component length (micrometre).
C STATES(5) is l_2 in component length (micrometre).
C STATES(6) is l_3 in component length (micrometre).
C ALGBRC(70) is p_v in component average_crossbridge_force (dimensionless).
C ALGBRC(64) is K_kappa in component crossbridge_kinetics (per_second).
C ALGBRC(32) is M_A in component crossbridge_kinetics (dimensionless).
C ALGBRC(34) is n_1 in component crossbridge_kinetics (dimensionless).
C ALGBRC(36) is L_oz in component crossbridge_kinetics (dimensionless).
C ALGBRC(60) is k_p_v in component crossbridge_kinetics (per_second).
C ALGBRC(62) is k_m_v in component crossbridge_kinetics (per_second).
C STATES(7) is A in component intracellular_calcium_concentration (millimolar).
C CONSTS(31) is A_tot in component intracellular_calcium_concentration (millimolar).
C ALGBRC(58) is G_star in component average_crossbridge_force (dimensionless).
C ALGBRC(54) is P_star in component average_crossbridge_force (dimensionless).
C CONSTS(32) is g_1 in component crossbridge_kinetics (per_micrometre).
C CONSTS(33) is g_2 in component crossbridge_kinetics (dimensionless).
C ALGBRC(4) is dl_1_dt in component length (micrometre_per_second).
C ALGBRC(55) is dl_2_dt in component length (micrometre_per_second).
C ALGBRC(56) is dl_3_dt in component length (micrometre_per_second).
C ALGBRC(48) is phi_chi_2 in component CE_velocity (micrometre_per_second).
C CONSTS(34) is stim_start in component membrane (second).
C CONSTS(35) is stim_end in component membrane (second).
C CONSTS(36) is stim_duration in component membrane (second).
C CONSTS(37) is stim_amplitude in component membrane (nanoA).
C ALGBRC(75) is phi_chi in component CE_velocity (micrometre_per_second2).
C ALGBRC(73) is p_prime_v in component average_crossbridge_force (second_per_micrometre).
C CONSTS(38) is alpha_P_lengthening in component CE_velocity (per_micrometre).
C CONSTS(39) is beta_P_lengthening in component CE_velocity (millinewton_second_per_micrometre).
C CONSTS(40) is alpha_P_shortening in component CE_velocity (per_micrometre).
C CONSTS(41) is beta_P_shortening in component CE_velocity (millinewton_second_per_micrometre).
C ALGBRC(43) is alp_p in component CE_velocity (per_micrometre).
C CONSTS(42) is alpha_S_lengthening in component PE_velocity (per_micrometre).
C CONSTS(43) is beta_S_lengthening in component PE_velocity (millinewton_second_per_micrometre).
C CONSTS(44) is alpha_S_shortening in component PE_velocity (per_micrometre).
C CONSTS(45) is beta_S_shortening in component PE_velocity (millinewton_second_per_micrometre).
C ALGBRC(50) is alp_s in component PE_velocity (per_micrometre).
C CONSTS(131) is gamma in component average_crossbridge_force (dimensionless).
C CONSTS(126) is case_1 in component average_crossbridge_force (second_per_micrometre).
C ALGBRC(66) is case_2 in component average_crossbridge_force (second_per_micrometre).
C CONSTS(127) is case_3 in component average_crossbridge_force (second_per_micrometre).
C ALGBRC(68) is case_4 in component average_crossbridge_force (second_per_micrometre).
C STATES(8) is V in component membrane (millivolt).
C CONSTS(46) is R in component membrane (joule_per_kilomole_kelvin).
C CONSTS(47) is T in component membrane (kelvin).
C CONSTS(48) is F in component membrane (coulomb_per_mole).
C CONSTS(49) is Cm in component membrane (microF).
C ALGBRC(53) is i_K1 in component time_independent_potassium_current (nanoA).
C ALGBRC(80) is i_to in component transient_outward_current (nanoA).
C ALGBRC(57) is i_Kr in component rapid_delayed_rectifier_potassium_current (nanoA).
C ALGBRC(59) is i_Ks in component slow_delayed_rectifier_potassium_current (nanoA).
C ALGBRC(69) is i_Ca_L_K_cyt in component L_type_Ca_channel (nanoA).
C ALGBRC(76) is i_Ca_L_K_ds in component L_type_Ca_channel (nanoA).
C ALGBRC(81) is i_NaK in component sodium_potassium_pump (nanoA).
C ALGBRC(61) is i_Na in component fast_sodium_current (nanoA).
C ALGBRC(65) is i_b_Na in component sodium_background_current (nanoA).
C ALGBRC(63) is i_p_Na in component persistent_sodium_current (nanoA).
C ALGBRC(71) is i_Ca_L_Na_cyt in component L_type_Ca_channel (nanoA).
C ALGBRC(77) is i_Ca_L_Na_ds in component L_type_Ca_channel (nanoA).
C ALGBRC(82) is i_NaCa_cyt in component sodium_calcium_exchanger (nanoA).
C ALGBRC(83) is i_NaCa_ds in component sodium_calcium_exchanger (nanoA).
C ALGBRC(67) is i_Ca_L_Ca_cyt in component L_type_Ca_channel (nanoA).
C ALGBRC(74) is i_Ca_L_Ca_ds in component L_type_Ca_channel (nanoA).
C ALGBRC(79) is i_b_Ca in component calcium_background_current (nanoA).
C ALGBRC(40) is i_Stim in component membrane (nanoA).
C ALGBRC(42) is E_Na in component reversal_potentials (millivolt).
C ALGBRC(44) is E_K in component reversal_potentials (millivolt).
C ALGBRC(47) is E_Ks in component reversal_potentials (millivolt).
C ALGBRC(49) is E_Ca in component reversal_potentials (millivolt).
C ALGBRC(51) is E_mh in component reversal_potentials (millivolt).
C CONSTS(50) is P_kna in component reversal_potentials (dimensionless).
C STATES(9) is K_o in component extracellular_potassium_concentration (millimolar).
C CONSTS(51) is Na_o in component extracellular_sodium_concentration (millimolar).
C STATES(10) is K_i in component intracellular_potassium_concentration (millimolar).
C STATES(11) is Na_i in component intracellular_sodium_concentration (millimolar).
C CONSTS(52) is Ca_o in component extracellular_calcium_concentration (millimolar).
C STATES(12) is Ca_i in component intracellular_calcium_concentration (millimolar).
C CONSTS(53) is K_mk1 in component time_independent_potassium_current (millimolar).
C CONSTS(54) is g_K1 in component time_independent_potassium_current (microS).
C CONSTS(55) is g_Kr1 in component rapid_delayed_rectifier_potassium_current (microS).
C CONSTS(56) is g_Kr2 in component rapid_delayed_rectifier_potassium_current (microS).
C STATES(13) is xr1 in component rapid_delayed_rectifier_potassium_current_xr1_gate (dimensionless).
C STATES(14) is xr2 in component rapid_delayed_rectifier_potassium_current_xr2_gate (dimensionless).
C ALGBRC(5) is alpha_xr1 in component rapid_delayed_rectifier_potassium_current_xr1_gate (per_second).
C ALGBRC(17) is beta_xr1 in component rapid_delayed_rectifier_potassium_current_xr1_gate (per_second).
C ALGBRC(6) is alpha_xr2 in component rapid_delayed_rectifier_potassium_current_xr2_gate (per_second).
C ALGBRC(18) is beta_xr2 in component rapid_delayed_rectifier_potassium_current_xr2_gate (per_second).
C CONSTS(57) is g_Ks in component slow_delayed_rectifier_potassium_current (microS).
C STATES(15) is xs in component slow_delayed_rectifier_potassium_current_xs_gate (dimensionless).
C ALGBRC(7) is alpha_xs in component slow_delayed_rectifier_potassium_current_xs_gate (per_second).
C ALGBRC(19) is beta_xs in component slow_delayed_rectifier_potassium_current_xs_gate (per_second).
C ALGBRC(46) is i_KNa in component sodium_activated_potassium_current (nanoA).
C CONSTS(58) is g_K_Na in component sodium_activated_potassium_current (microS).
C CONSTS(59) is K_kna in component sodium_activated_potassium_current (millimolar).
C CONSTS(60) is g_Na in component fast_sodium_current (microS).
C STATES(16) is m in component fast_sodium_current_m_gate (dimensionless).
C STATES(17) is h in component fast_sodium_current_h_gate (dimensionless).
C ALGBRC(20) is alpha_m in component fast_sodium_current_m_gate (per_second).
C ALGBRC(28) is beta_m in component fast_sodium_current_m_gate (per_second).
C CONSTS(61) is delta_m in component fast_sodium_current_m_gate (millivolt).
C ALGBRC(8) is E0_m in component fast_sodium_current_m_gate (millivolt).
C ALGBRC(9) is alpha_h in component fast_sodium_current_h_gate (per_second).
C ALGBRC(21) is beta_h in component fast_sodium_current_h_gate (per_second).
C CONSTS(62) is g_pna in component persistent_sodium_current (microS).
C CONSTS(63) is g_bna in component sodium_background_current (microS).
C ALGBRC(78) is i_Ca_L in component L_type_Ca_channel (nanoA).
C CONSTS(64) is P_Ca_L in component L_type_Ca_channel (nanoA_per_millimolar).
C CONSTS(65) is P_CaK in component L_type_Ca_channel (dimensionless).
C CONSTS(66) is P_CaNa in component L_type_Ca_channel (dimensionless).
C STATES(18) is Ca_ds in component intracellular_calcium_concentration (millimolar).
C STATES(19) is d in component L_type_Ca_channel_d_gate (dimensionless).
C STATES(20) is f in component L_type_Ca_channel_f_gate (dimensionless).
C STATES(21) is f2 in component L_type_Ca_channel_f2_gate (dimensionless).
C STATES(22) is f2ds in component L_type_Ca_channel_f2ds_gate (dimensionless).
C CONSTS(67) is Km_f2 in component L_type_Ca_channel (millimolar).
C CONSTS(68) is Km_f2ds in component L_type_Ca_channel (millimolar).
C CONSTS(69) is R_decay in component L_type_Ca_channel (per_second).
C CONSTS(70) is FrICa in component L_type_Ca_channel (dimensionless).
C ALGBRC(22) is alpha_d in component L_type_Ca_channel_d_gate (per_second).
C ALGBRC(29) is beta_d in component L_type_Ca_channel_d_gate (per_second).
C ALGBRC(10) is E0_d in component L_type_Ca_channel_d_gate (millivolt).
C CONSTS(71) is speed_d in component L_type_Ca_channel_d_gate (dimensionless).
C ALGBRC(23) is alpha_f in component L_type_Ca_channel_f_gate (per_second).
C ALGBRC(30) is beta_f in component L_type_Ca_channel_f_gate (per_second).
C CONSTS(72) is speed_f in component L_type_Ca_channel_f_gate (dimensionless).
C CONSTS(73) is delta_f in component L_type_Ca_channel_f_gate (millivolt).
C ALGBRC(11) is E0_f in component L_type_Ca_channel_f_gate (millivolt).
C CONSTS(74) is g_bca in component calcium_background_current (microS).
C CONSTS(75) is g_to in component transient_outward_current (microS).
C CONSTS(76) is g_tos in component transient_outward_current (dimensionless).
C STATES(23) is s in component transient_outward_current_s_gate (dimensionless).
C STATES(24) is r in component transient_outward_current_r_gate (dimensionless).
C ALGBRC(12) is alpha_s in component transient_outward_current_s_gate (per_second).
C ALGBRC(24) is beta_s in component transient_outward_current_s_gate (per_second).
C CONSTS(77) is i_NaK_max in component sodium_potassium_pump (nanoA).
C CONSTS(78) is K_mK in component sodium_potassium_pump (millimolar).
C CONSTS(79) is K_mNa in component sodium_potassium_pump (millimolar).
C ALGBRC(85) is i_NaCa in component sodium_calcium_exchanger (nanoA).
C CONSTS(80) is k_NaCa in component sodium_calcium_exchanger (nanoA).
C CONSTS(81) is n_NaCa in component sodium_calcium_exchanger (dimensionless).
C CONSTS(82) is d_NaCa in component sodium_calcium_exchanger (dimensionless).
C CONSTS(83) is gamma in component sodium_calcium_exchanger (dimensionless).
C CONSTS(84) is FRiNaCa in component sodium_calcium_exchanger (dimensionless).
C ALGBRC(86) is i_up in component sarcoplasmic_reticulum_calcium_pump (millimolar_per_second).
C CONSTS(129) is K_1 in component sarcoplasmic_reticulum_calcium_pump (dimensionless).
C ALGBRC(84) is K_2 in component sarcoplasmic_reticulum_calcium_pump (millimolar).
C CONSTS(85) is K_cyca in component sarcoplasmic_reticulum_calcium_pump (millimolar).
C CONSTS(86) is K_xcs in component sarcoplasmic_reticulum_calcium_pump (dimensionless).
C CONSTS(87) is K_srca in component sarcoplasmic_reticulum_calcium_pump (millimolar).
C CONSTS(88) is alpha_up in component sarcoplasmic_reticulum_calcium_pump (millimolar_per_second).
C CONSTS(89) is beta_up in component sarcoplasmic_reticulum_calcium_pump (millimolar_per_second).
C STATES(25) is Ca_up in component intracellular_calcium_concentration (millimolar).
C CONSTS(90) is flag_ingib in component sarcoplasmic_reticulum_calcium_pump (dimensionless).
C CONSTS(91) is K_inh in component sarcoplasmic_reticulum_calcium_pump (millimolar).
C ALGBRC(87) is i_trans in component calcium_translocation (millimolar_per_second).
C STATES(26) is Ca_rel in component intracellular_calcium_concentration (millimolar).
C CONSTS(92) is a_tr in component calcium_translocation (per_second).
C CONSTS(93) is alpha_CaS in component calcium_translocation (per_millimolar_second).
C CONSTS(94) is beta_CaS in component calcium_translocation (per_second).
C CONSTS(95) is CaS_tot in component calcium_translocation (millimolar).
C CONSTS(130) is beta in component calcium_translocation (millimolar).
C ALGBRC(88) is i_rel in component calcium_release (millimolar_per_second).
C ALGBRC(13) is VoltDep in component calcium_release (dimensionless).
C ALGBRC(31) is RegBindSite in component calcium_release (dimensionless).
C ALGBRC(14) is CaiReg in component calcium_release (dimensionless).
C ALGBRC(25) is CadsReg in component calcium_release (dimensionless).
C ALGBRC(33) is ActRate in component calcium_release (per_second).
C ALGBRC(35) is InactRate in component calcium_release (per_second).
C CONSTS(96) is SRLeak in component calcium_release (per_second).
C CONSTS(97) is K_m_rel in component calcium_release (per_second).
C CONSTS(98) is K_m_Ca_cyt in component calcium_release (millimolar).
C CONSTS(99) is K_m_Ca_ds in component calcium_release (millimolar).
C ALGBRC(39) is PrecFrac in component calcium_release (dimensionless).
C STATES(27) is ActFrac in component calcium_release (dimensionless).
C STATES(28) is ProdFrac in component calcium_release (dimensionless).
C ALGBRC(37) is SpeedRel in component calcium_release (dimensionless).
C CONSTS(132) is V_i in component intracellular_calcium_concentration (micrometre3).
C CONSTS(100) is n_NaK in component intracellular_sodium_concentration (dimensionless).
C CONSTS(101) is K_b in component extracellular_potassium_concentration (millimolar).
C CONSTS(133) is V_e in component intracellular_calcium_concentration (micrometre3).
C CONSTS(102) is radius in component intracellular_calcium_concentration (micrometre).
C CONSTS(103) is length in component intracellular_calcium_concentration (micrometre).
C CONSTS(128) is V_Cell in component intracellular_calcium_concentration (micrometre3).
C CONSTS(104) is V_i_ratio in component intracellular_calcium_concentration (dimensionless).
C CONSTS(105) is V_ds_ratio in component intracellular_calcium_concentration (dimensionless).
C CONSTS(106) is V_rel_ratio in component intracellular_calcium_concentration (dimensionless).
C CONSTS(107) is V_e_ratio in component intracellular_calcium_concentration (dimensionless).
C CONSTS(108) is V_up_ratio in component intracellular_calcium_concentration (dimensionless).
C CONSTS(109) is Kdecay in component intracellular_calcium_concentration (per_second).
C ALGBRC(89) is N_A in component intracellular_calcium_concentration (dimensionless).
C ALGBRC(90) is pi_N_A in component intracellular_calcium_concentration (dimensionless).
C CONSTS(110) is pi_min in component intracellular_calcium_concentration (dimensionless).
C CONSTS(111) is a_on in component intracellular_calcium_concentration (per_millimolar_second).
C CONSTS(112) is a_off in component intracellular_calcium_concentration (per_second).
C STATES(29) is B_1 in component intracellular_calcium_concentration (millimolar).
C CONSTS(113) is B_1_tot in component intracellular_calcium_concentration (millimolar).
C CONSTS(114) is b_1_on in component intracellular_calcium_concentration (per_millimolar_second).
C CONSTS(115) is b_1_off in component intracellular_calcium_concentration (per_second).
C STATES(30) is B_2 in component intracellular_calcium_concentration (millimolar).
C CONSTS(116) is B_2_tot in component intracellular_calcium_concentration (millimolar).
C CONSTS(117) is b_2_on in component intracellular_calcium_concentration (per_millimolar_second).
C CONSTS(118) is b_2_off in component intracellular_calcium_concentration (per_second).
C CONSTS(119) is g_fibro_junct in component fibroblast (microS).
C CONSTS(120) is g_fibro in component fibroblast (microS).
C CONSTS(121) is c_fibro in component fibroblast (microF).
C CONSTS(122) is g_fibro_stretch in component fibroblast (microS).
C CONSTS(123) is E_fibro_stretch in component fibroblast (millivolt).
C STATES(31) is V_fibro in component fibroblast (millivolt).
C ALGBRC(15) is i_fibro in component fibroblast (nanoA).
C ALGBRC(26) is i_fibro_junct in component fibroblast (nanoA).
C RATES(2) is d/dt N in component crossbridge_kinetics (dimensionless).
C RATES(4) is d/dt l_1 in component length (micrometre).
C RATES(5) is d/dt l_2 in component length (micrometre).
C RATES(6) is d/dt l_3 in component length (micrometre).
C RATES(1) is d/dt v in component CE_velocity (micrometre_per_second).
C RATES(3) is d/dt w in component PE_velocity (micrometre_per_second).
C RATES(8) is d/dt V in component membrane (millivolt).
C RATES(13) is d/dt xr1 in component rapid_delayed_rectifier_potassium_current_xr1_gate (dimensionless).
C RATES(14) is d/dt xr2 in component rapid_delayed_rectifier_potassium_current_xr2_gate (dimensionless).
C RATES(15) is d/dt xs in component slow_delayed_rectifier_potassium_current_xs_gate (dimensionless).
C RATES(16) is d/dt m in component fast_sodium_current_m_gate (dimensionless).
C RATES(17) is d/dt h in component fast_sodium_current_h_gate (dimensionless).
C RATES(19) is d/dt d in component L_type_Ca_channel_d_gate (dimensionless).
C RATES(20) is d/dt f in component L_type_Ca_channel_f_gate (dimensionless).
C RATES(21) is d/dt f2 in component L_type_Ca_channel_f2_gate (dimensionless).
C RATES(22) is d/dt f2ds in component L_type_Ca_channel_f2ds_gate (dimensionless).
C RATES(23) is d/dt s in component transient_outward_current_s_gate (dimensionless).
C RATES(24) is d/dt r in component transient_outward_current_r_gate (dimensionless).
C RATES(27) is d/dt ActFrac in component calcium_release (dimensionless).
C RATES(28) is d/dt ProdFrac in component calcium_release (dimensionless).
C RATES(11) is d/dt Na_i in component intracellular_sodium_concentration (millimolar).
C RATES(9) is d/dt K_o in component extracellular_potassium_concentration (millimolar).
C RATES(10) is d/dt K_i in component intracellular_potassium_concentration (millimolar).
C RATES(7) is d/dt A in component intracellular_calcium_concentration (millimolar).
C RATES(29) is d/dt B_1 in component intracellular_calcium_concentration (millimolar).
C RATES(30) is d/dt B_2 in component intracellular_calcium_concentration (millimolar).
C RATES(12) is d/dt Ca_i in component intracellular_calcium_concentration (millimolar).
C RATES(18) is d/dt Ca_ds in component intracellular_calcium_concentration (millimolar).
C RATES(25) is d/dt Ca_up in component intracellular_calcium_concentration (millimolar).
C RATES(26) is d/dt Ca_rel in component intracellular_calcium_concentration (millimolar).
C RATES(31) is d/dt V_fibro in component fibroblast (millivolt).
C
      SUBROUTINE initConsts(CONSTS, RATES, STATES)
      REAL CONSTS(*), RATES(*), STATES(*)
      CONSTS(1) = 0
      CONSTS(2) = 14.6
      CONSTS(3) = 0.84
      CONSTS(4) = 14.6
      CONSTS(5) = 0.0018
      CONSTS(6) = 48
      CONSTS(7) = 0.015
      CONSTS(8) = 30
      CONSTS(9) = 3
      CONSTS(10) = 0.6
      CONSTS(11) = 0.705
      CONSTS(12) = 3
      CONSTS(13) = 0.9
      CONSTS(14) = 5.5
      CONSTS(15) = 0.25
      CONSTS(16) = 0.5
      CONSTS(17) = 4
      CONSTS(18) = 2
      CONSTS(19) = 0.525139356105856
      CONSTS(20) = 1
      CONSTS(21) = 1.14
      CONSTS(22) = 17.3
      CONSTS(23) = 259
      CONSTS(24) = 17.3
      CONSTS(25) = 15
      CONSTS(26) = 0.964285
      CONSTS(27) = 1
      CONSTS(28) = 40
      STATES(1) = 0
      CONSTS(29) = 10
      CONSTS(30) = 5
      STATES(2) = 7.455e-8
      STATES(3) = 0
      STATES(4) = 0.436333342969918
      STATES(5) = 0.436333525334166
      STATES(6) = 0.088805830771694
      STATES(7) = 0.00015
      CONSTS(31) = 0.07
      CONSTS(32) = 0.6
      CONSTS(33) = 0.52
      CONSTS(34) = 0.06
      CONSTS(35) = 10000
      CONSTS(36) = 0.0025
      CONSTS(37) = -3
      CONSTS(38) = 16
      CONSTS(39) = 0.0015
      CONSTS(40) = 16
      CONSTS(41) = 0.0015
      CONSTS(42) = 46
      CONSTS(43) = 0
      CONSTS(44) = 39
      CONSTS(45) = 0
      STATES(8) = -93.658148
      CONSTS(46) = 8314.472
      CONSTS(47) = 310
      CONSTS(48) = 96485.3415
      CONSTS(49) = 9.5e-5
      CONSTS(50) = 0.03
      STATES(9) = 3.988
      CONSTS(51) = 140
      STATES(10) = 139.054
      STATES(11) = 5.18787513289509
      CONSTS(52) = 2
      STATES(12) = 6.15e-6
      CONSTS(53) = 10
      CONSTS(54) = 0.5
      CONSTS(55) = 0.0021
      CONSTS(56) = 0.0013
      STATES(13) = 8.88859784542779e-6
      STATES(14) = 1.53745791069154e-7
      CONSTS(57) = 0.0026
      STATES(15) = 0.001
      CONSTS(58) = 0
      CONSTS(59) = 20
      CONSTS(60) = 2.5
      STATES(16) = 0.0015
      STATES(17) = 0.995
      CONSTS(61) = 1e-5
      CONSTS(62) = 0.004
      CONSTS(63) = 0.0006
      CONSTS(64) = 0.1
      CONSTS(65) = 0.002
      CONSTS(66) = 0.01
      STATES(18) = 2.55e-6
      STATES(19) = 0
      STATES(20) = 1
      STATES(21) = 1
      STATES(22) = 0.997
      CONSTS(67) = 100000
      CONSTS(68) = 0.001
      CONSTS(69) = 20
      CONSTS(70) = 1
      CONSTS(71) = 3
      CONSTS(72) = 0.3
      CONSTS(73) = 0.0001
      CONSTS(74) = 0.00025
      CONSTS(75) = 0.006
      CONSTS(76) = 0
      STATES(23) = 0.997044616031121
      STATES(24) = 1.63117173173398e-8
      CONSTS(77) = 0.7
      CONSTS(78) = 1
      CONSTS(79) = 24.2
      CONSTS(80) = 0.0005
      CONSTS(81) = 3
      CONSTS(82) = 0
      CONSTS(83) = 0.5
      CONSTS(84) = 0.001
      CONSTS(85) = 0.00015
      CONSTS(86) = 0.4
      CONSTS(87) = 0.5
      CONSTS(88) = 1
      CONSTS(89) = 0.03
      STATES(25) = 0.994579
      CONSTS(90) = 0
      CONSTS(91) = 4
      STATES(26) = 0.989665
      CONSTS(92) = 15
      CONSTS(93) = 50000
      CONSTS(94) = 32500
      CONSTS(95) = 40
      CONSTS(96) = 0.05
      CONSTS(97) = 10000
      CONSTS(98) = 0.0005
      CONSTS(99) = 0.01
      STATES(27) = 0.001914
      STATES(28) = 0.2854569
      CONSTS(100) = 1.5
      CONSTS(101) = 4
      CONSTS(102) = 12
      CONSTS(103) = 74
      CONSTS(104) = 0.49
      CONSTS(105) = 0.1
      CONSTS(106) = 0.003
      CONSTS(107) = 0.4
      CONSTS(108) = 0.03
      CONSTS(109) = 10
      CONSTS(110) = 0.03
      CONSTS(111) = 70000
      CONSTS(112) = 200
      STATES(29) = 0
      CONSTS(113) = 0.08
      CONSTS(114) = 100000
      CONSTS(115) = 182
      STATES(30) = 0
      CONSTS(116) = 0.1
      CONSTS(117) = 1000
      CONSTS(118) = 3
      CONSTS(119) = 2.9e-4
      CONSTS(120) = 2e-4
      CONSTS(121) = 1e-5
      CONSTS(122) = 0
      CONSTS(123) = 0
      STATES(31) = -20
      CONSTS(124) =  CONSTS(26)*CONSTS(14)
      CONSTS(125) = CONSTS(14)/10.0000
      CONSTS(126) = ( CONSTS(15)*(0.400000+ 0.400000*CONSTS(15)))/( CONSTS(14)* (CONSTS(15)+1.00000)*0.400000 ** 2.00000)
      CONSTS(127) = ( 0.400000*CONSTS(15)+1.00000)/( CONSTS(15)*CONSTS(14))
      CONSTS(128) = ( 3.14159*CONSTS(102)/1000.00 ** 2.00000*CONSTS(103))/1000.00
      CONSTS(129) = ( CONSTS(85)*CONSTS(86))/CONSTS(87)
      CONSTS(130) = CONSTS(94)/CONSTS(93)
      CONSTS(131) = ( CONSTS(15)*CONSTS(16)*CONSTS(125)/CONSTS(14) ** 2.00000)/( 3.00000*CONSTS(15)*CONSTS(16) - ( (CONSTS(15)+1.00000)*CONSTS(125))/CONSTS(14))
      CONSTS(132) =  CONSTS(128)*CONSTS(104)
      CONSTS(133) =  CONSTS(128)*CONSTS(107)
      RETURN
      END
      SUBROUTINE computeRates(VOI, CONSTS,  RATES, STATES, ALGBRC)
      REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*)
      RATES(21) = 1.00000 -  1.00000*(STATES(12)/(CONSTS(67)+STATES(12))+STATES(21))
      RATES(22) =  CONSTS(69)*(1.00000 - (STATES(18)/(CONSTS(68)+STATES(18))+STATES(22)))
      RATES(24) =  333.000*(1.00000/(1.00000+EXP(- (STATES(8)+4.00000)/5.00000)) - STATES(24))
      ALGBRC(4) = STATES(1)
      RATES(4) = ALGBRC(4)
      ALGBRC(5) = 50.0000/(1.00000+EXP(- (STATES(8) - 5.00000)/9.00000))
      ALGBRC(17) =  0.0500000*EXP(- (STATES(8) - 20.0000)/15.0000)
      RATES(13) =  ALGBRC(5)*(1.00000 - STATES(13)) -  ALGBRC(17)*STATES(13)
      ALGBRC(6) = 50.0000/(1.00000+EXP(- (STATES(8) - 5.00000)/9.00000))
      ALGBRC(18) =  0.400000*EXP(- (STATES(8)+30.0000)/30.0000 ** 3.00000)
      RATES(14) =  ALGBRC(6)*(1.00000 - STATES(14)) -  ALGBRC(18)*STATES(14)
      ALGBRC(7) = 14.0000/(1.00000+EXP(- (STATES(8) - 40.0000)/9.00000))
      ALGBRC(19) =  1.00000*EXP(- STATES(8)/45.0000)
      RATES(15) =  ALGBRC(7)*(1.00000 - STATES(15)) -  ALGBRC(19)*STATES(15)
      ALGBRC(9) =  20.0000*EXP( - 0.125000*(STATES(8)+75.0000))
      ALGBRC(21) = 2000.00/(1.00000+ 320.000*EXP( - 0.100000*(STATES(8)+75.0000)))
      RATES(17) =  ALGBRC(9)*(1.00000 - STATES(17)) -  ALGBRC(21)*STATES(17)
      ALGBRC(12) =  0.0330000*EXP(- STATES(8)/17.0000)
      ALGBRC(24) = 33.0000/(1.00000+EXP( - 0.125000*(STATES(8)+10.0000)))
      RATES(23) =  ALGBRC(12)*(1.00000 - STATES(23)) -  ALGBRC(24)*STATES(23)
      ALGBRC(15) =  CONSTS(120)*(STATES(31)+20.0000)+ CONSTS(122)*(STATES(31) - CONSTS(123))
      ALGBRC(26) =  - CONSTS(119)*(STATES(8) - STATES(31))
      RATES(31) = - (ALGBRC(15)+ALGBRC(26))/CONSTS(121)
      ALGBRC(8) = STATES(8)+41.0000
      ALGBRC(20) = TERNRY(ABS(ALGBRC(8)).LT.CONSTS(61), 2000.00, ( 200.000*ALGBRC(8))/(1.00000 - EXP( - 0.100000*ALGBRC(8))))
      ALGBRC(28) =  8000.00*EXP( - 0.0560000*(STATES(8)+66.0000))
      RATES(16) =  ALGBRC(20)*(1.00000 - STATES(16)) -  ALGBRC(28)*STATES(16)
      ALGBRC(10) = (STATES(8)+24.0000) - 5.00000
      ALGBRC(22) = TERNRY(ABS(ALGBRC(10)).LT.0.000100000, 120.000, ( 30.0000*ALGBRC(10))/(1.00000 - EXP(- ALGBRC(10)/4.00000)))
      ALGBRC(29) = TERNRY(ABS(ALGBRC(10)).LT.0.000100000, 120.000, ( 12.0000*ALGBRC(10))/(EXP(ALGBRC(10)/10.0000) - 1.00000))
      RATES(19) =  CONSTS(71)*( ALGBRC(22)*(1.00000 - STATES(19)) -  ALGBRC(29)*STATES(19))
      ALGBRC(11) = STATES(8)+34.0000
      ALGBRC(23) = TERNRY(ABS(ALGBRC(11)).LT.CONSTS(73), 25.0000, ( 6.25000*ALGBRC(11))/(EXP(ALGBRC(11)/4.00000) - 1.00000))
      ALGBRC(30) = 12.0000/(1.00000+EXP(( - 1.00000*(STATES(8)+34.0000))/4.00000))
      RATES(20) =  CONSTS(72)*( ALGBRC(23)*(1.00000 - STATES(20)) -  ALGBRC(30)*STATES(20))
      ALGBRC(14) = STATES(12)/(STATES(12)+CONSTS(98))
      ALGBRC(25) = STATES(18)/(STATES(18)+CONSTS(99))
      ALGBRC(31) = ALGBRC(14)+ (1.00000 - ALGBRC(14))*ALGBRC(25)
      ALGBRC(35) = 60.0000+ 500.000*ALGBRC(31) ** 2.00000
      ALGBRC(37) = TERNRY(STATES(8).LT.- 50.0000, 5.00000, 1.00000)
      RATES(28) =  STATES(27)*ALGBRC(37)*ALGBRC(35) -  ALGBRC(37)*0.600000*STATES(28)
      ALGBRC(33) =  500.000*ALGBRC(31) ** 2.00000
      ALGBRC(39) = (1.00000 - STATES(27)) - STATES(28)
      RATES(27) =  ALGBRC(39)*ALGBRC(37)*ALGBRC(33) -  STATES(27)*ALGBRC(37)*ALGBRC(35)
      ALGBRC(52) = TERNRY(STATES(3).LE.STATES(1),  CONSTS(43)*EXP( CONSTS(42)*(STATES(5) - STATES(4))),  CONSTS(45)*EXP( CONSTS(44)*(STATES(5) - STATES(4))))
      ALGBRC(38) = STATES(5)+STATES(6)
      ALGBRC(16) =  CONSTS(7)*(EXP( CONSTS(6)*STATES(6)) - 1.00000)
      ALGBRC(27) = ALGBRC(16)
      ALGBRC(41) = TERNRY(CONSTS(1).EQ.1.00000.AND.ALGBRC(27).GT.CONSTS(18).AND.ALGBRC(38).LE. CONSTS(19)*(1.00000+0.000100000), 1.00000, 0.00000)
      ALGBRC(48) = TERNRY(ALGBRC(41).EQ.1.00000, ( CONSTS(2)*CONSTS(3)*EXP( CONSTS(2)*(STATES(5) - STATES(4)))*STATES(1))/( CONSTS(2)*CONSTS(3)*EXP( CONSTS(2)*(STATES(5) - STATES(4)))+ CONSTS(4)*CONSTS(5)*EXP( CONSTS(4)*STATES(5))), ( CONSTS(2)*CONSTS(3)*EXP( CONSTS(2)*(STATES(5) - STATES(4)))*STATES(1))/( CONSTS(2)*CONSTS(3)*EXP( CONSTS(2)*(STATES(5) - STATES(4)))+ CONSTS(4)*CONSTS(5)*EXP( CONSTS(4)*STATES(5))+ CONSTS(6)*CONSTS(7)*EXP( CONSTS(6)*STATES(6))))
      ALGBRC(55) = TERNRY(ALGBRC(52).EQ.0.00000, ALGBRC(48), STATES(3))
      RATES(5) = ALGBRC(55)
      ALGBRC(56) = TERNRY(ALGBRC(41).EQ.1.00000, 0.00000, TERNRY(ALGBRC(41).EQ.0.00000.AND.ALGBRC(52).EQ.0.00000, - ALGBRC(48), TERNRY(ALGBRC(41).EQ.0.00000.AND.ALGBRC(52) .NE. 0.00000, - STATES(3), 0.0/0.0)
      RATES(6) = TERNRY(VOI.GE.CONSTS(34).AND.VOI.LE.CONSTS(35).AND.(VOI - CONSTS(34)) -  INT((VOI - CONSTS(34))/CONSTS(20))*CONSTS(20).LE.CONSTS(36), - ((STATES(5)+STATES(6)) - CONSTS(19))/CONSTS(36), ALGBRC(56))
      ALGBRC(32) = ( STATES(7)/CONSTS(31) ** CONSTS(9)*(1.00000+CONSTS(10) ** CONSTS(9)))/(STATES(7)/CONSTS(31) ** CONSTS(9)+CONSTS(10) ** CONSTS(9))
      ALGBRC(34) = TERNRY( CONSTS(32)*STATES(4)+CONSTS(33).LT.0.00000, 0.00000, TERNRY( CONSTS(32)*STATES(4)+CONSTS(33).LT.1.00000,  CONSTS(32)*STATES(4)+CONSTS(33), 1.00000)
      ALGBRC(36) = TERNRY(STATES(4).GT.0.550000, (STATES(4)+CONSTS(21))/(0.460000+CONSTS(21)),  (CONSTS(21)+0.550000)*1.00000)
      ALGBRC(3) = TERNRY(STATES(1).LE.0.00000, CONSTS(22) - ( CONSTS(23)*STATES(1))/CONSTS(14), TERNRY(STATES(1).LE.CONSTS(124).AND.0.00000.LT.STATES(1), ( (CONSTS(25) - CONSTS(24))*STATES(1))/CONSTS(124)+CONSTS(24), CONSTS(25)/1.00000+( CONSTS(30)*(STATES(1) - CONSTS(124)))/CONSTS(14) ** CONSTS(29))
      ALGBRC(54) = TERNRY(STATES(1).LE.0.00000, ( CONSTS(15)*(1.00000+STATES(1)/CONSTS(14)))/(CONSTS(15) - STATES(1)/CONSTS(14)), (1.00000+CONSTS(16)) - ( CONSTS(16) ** 2.00000*CONSTS(15))/( (( CONSTS(15)*CONSTS(16))/CONSTS(131))*STATES(1)/CONSTS(14) ** 2.00000+( (CONSTS(15)+1.00000)*STATES(1))/CONSTS(14)+ CONSTS(15)*CONSTS(16)))
      ALGBRC(58) = TERNRY(- CONSTS(14).LE.STATES(1).AND.STATES(1).LE.0.00000, 1.00000+( 0.600000*STATES(1))/CONSTS(14), TERNRY(0.00000.LT.STATES(1).AND.STATES(1).LE.CONSTS(125), ALGBRC(54)/(( ( 0.400000*CONSTS(15)+1.00000)*STATES(1))/( CONSTS(15)*CONSTS(14))+1.00000), ( ALGBRC(54)*EXP( - CONSTS(27)*(STATES(1) - CONSTS(125))/CONSTS(14) ** CONSTS(17)))/(( ( 0.400000*CONSTS(15)+1.00000)*STATES(1))/( CONSTS(15)*CONSTS(14))+1.00000))
      ALGBRC(60) =  CONSTS(11)*CONSTS(12)*ALGBRC(3)*CONSTS(13)*ALGBRC(58)
      ALGBRC(62) =  CONSTS(12)*ALGBRC(3)*(1.00000 -  CONSTS(11)*CONSTS(13)*ALGBRC(58))
      ALGBRC(64) =  ALGBRC(60)*ALGBRC(32)*ALGBRC(34)*ALGBRC(36)*(1.00000 - STATES(2)) -  ALGBRC(62)*STATES(2)
      RATES(2) = ALGBRC(64)
      ALGBRC(45) = TERNRY(STATES(1).LE.0.00000,  CONSTS(39)*EXP( CONSTS(38)*STATES(4)),  CONSTS(41)*EXP( CONSTS(40)*STATES(4)))
      ALGBRC(70) = ALGBRC(54)/ALGBRC(58)
      ALGBRC(66) = ( CONSTS(15)*1.00000*(1.00000+ 0.400000*CONSTS(15)+( 1.20000*STATES(1))/CONSTS(14)+ 0.600000*STATES(1)/CONSTS(14) ** 2.00000))/( CONSTS(14)* (CONSTS(15) - STATES(1)/CONSTS(14))*(1.00000+( 0.600000*STATES(1))/CONSTS(14)) ** 2.00000)
      ALGBRC(68) =  (1.00000/CONSTS(14))*EXP( - CONSTS(27)*STATES(1)/CONSTS(14) - CONSTS(125)/CONSTS(14) ** CONSTS(17))*(( 0.400000*CONSTS(15)+1.00000)/CONSTS(15)+ CONSTS(27)*CONSTS(17)*(1.00000+( ( 0.400000*CONSTS(15)+1.00000)*STATES(1))/( CONSTS(15)*CONSTS(14)))*STATES(1)/CONSTS(14) - CONSTS(125)/CONSTS(14) ** CONSTS(17) - 1.00000)
      ALGBRC(73) = TERNRY(STATES(1).LE.- CONSTS(14), CONSTS(126), TERNRY(- CONSTS(14).LT.STATES(1).AND.STATES(1).LE.0.00000, ALGBRC(66), TERNRY(0.00000.LT.STATES(1).AND.STATES(1).LE.CONSTS(125), CONSTS(127), ALGBRC(68))
      ALGBRC(43) = TERNRY(STATES(1).LE.0.00000, CONSTS(38), CONSTS(40))
      ALGBRC(75) = TERNRY(ALGBRC(41).EQ.1.00000, - ( CONSTS(8)*ALGBRC(64)*ALGBRC(70)+ ALGBRC(43)*ALGBRC(45)*STATES(1) ** 2.00000+ CONSTS(4)*CONSTS(5)*EXP( CONSTS(4)*STATES(5))*STATES(3))/( CONSTS(8)*STATES(2)*ALGBRC(73)+ALGBRC(45)), - ( CONSTS(8)*ALGBRC(64)*ALGBRC(70)+ ALGBRC(43)*ALGBRC(45)*STATES(1) ** 2.00000+ ( CONSTS(4)*CONSTS(5)*EXP( CONSTS(4)*STATES(5))+ CONSTS(6)*CONSTS(7)*EXP( CONSTS(6)*STATES(6)))*STATES(3))/( CONSTS(8)*STATES(2)*ALGBRC(73)+ALGBRC(45)))
      RATES(1) = TERNRY(ALGBRC(52).EQ.0.00000, ( CONSTS(2)*CONSTS(3)*EXP( CONSTS(2)*(STATES(5) - STATES(4)))*(ALGBRC(48) - STATES(1)) - ( CONSTS(8)*ALGBRC(64)*ALGBRC(70)+ ALGBRC(43)*ALGBRC(45)*STATES(1) ** 2.00000))/( CONSTS(8)*STATES(2)*ALGBRC(73)+ALGBRC(45)), ALGBRC(75))
      ALGBRC(50) = TERNRY(STATES(3).LE.STATES(1), CONSTS(42), CONSTS(44))
      RATES(3) = TERNRY(ALGBRC(41).EQ.1.00000.AND.ALGBRC(52) .NE. 0.00000, (( ALGBRC(52)*(ALGBRC(75) -  ALGBRC(50)*STATES(3) - STATES(1) ** 2.00000) -  CONSTS(2)*CONSTS(3)*EXP( CONSTS(2)*(STATES(5) - STATES(4)))*(STATES(3) - STATES(1))) -  CONSTS(4)*CONSTS(5)*EXP( CONSTS(4)*STATES(5))*STATES(3))/ALGBRC(52), TERNRY(ALGBRC(41).EQ.0.00000.AND.ALGBRC(52) .NE. 0.00000, (ALGBRC(75) -  ALGBRC(50)*STATES(3) - STATES(1) ** 2.00000) - ( CONSTS(2)*CONSTS(3)*EXP( CONSTS(2)*(STATES(5) - STATES(4)))*(STATES(3) - STATES(1))+ ( CONSTS(4)*CONSTS(5)*EXP( CONSTS(4)*STATES(5))+ CONSTS(6)*CONSTS(7)*EXP( CONSTS(6)*STATES(6)))*STATES(3))/ALGBRC(52), TERNRY(ALGBRC(52).EQ.0.00000, 0.00000, 0.0/0.0)
      ALGBRC(44) =  (( CONSTS(46)*CONSTS(47))/CONSTS(48))*log(STATES(9)/STATES(10))
      ALGBRC(53) = ( (( CONSTS(54)*STATES(9))/(STATES(9)+CONSTS(53)))*(STATES(8) - ALGBRC(44)))/(1.00000+EXP(( ((STATES(8) - ALGBRC(44)) - 10.0000)*CONSTS(48)*1.25000)/( CONSTS(46)*CONSTS(47))))
      ALGBRC(80) =  CONSTS(75)*(CONSTS(76)+ STATES(23)*(1.00000 - CONSTS(76)))*STATES(24)*(STATES(8) - ALGBRC(44))
      ALGBRC(57) =  (( ( CONSTS(55)*STATES(13)+ CONSTS(56)*STATES(14))*1.00000)/(1.00000+EXP((STATES(8)+9.00000)/22.4000)))*(STATES(8) - ALGBRC(44))
      ALGBRC(47) =  (( CONSTS(46)*CONSTS(47))/CONSTS(48))*log((STATES(9)+ CONSTS(50)*CONSTS(51))/(STATES(10)+ CONSTS(50)*STATES(11)))
      ALGBRC(59) =  CONSTS(57)*STATES(15) ** 2.00000*(STATES(8) - ALGBRC(47))
      ALGBRC(69) =  ((( (1.00000 - CONSTS(70))*CONSTS(65)*CONSTS(64)*STATES(19)*STATES(20)*STATES(21)*(STATES(8) - 50.0000)*CONSTS(48))/( CONSTS(46)*CONSTS(47)))/(1.00000 - EXP(( - (STATES(8) - 50.0000)*CONSTS(48))/( CONSTS(46)*CONSTS(47)))))*( STATES(10)*EXP(( 50.0000*CONSTS(48))/( CONSTS(46)*CONSTS(47))) -  STATES(9)*EXP(( - (STATES(8) - 50.0000)*CONSTS(48))/( CONSTS(46)*CONSTS(47))))
      ALGBRC(76) =  ((( CONSTS(70)*CONSTS(65)*CONSTS(64)*STATES(19)*STATES(20)*STATES(22)*(STATES(8) - 50.0000)*CONSTS(48))/( CONSTS(46)*CONSTS(47)))/(1.00000 - EXP(( - (STATES(8) - 50.0000)*CONSTS(48))/( CONSTS(46)*CONSTS(47)))))*( STATES(10)*EXP(( 50.0000*CONSTS(48))/( CONSTS(46)*CONSTS(47))) -  STATES(9)*EXP(( - (STATES(8) - 50.0000)*CONSTS(48))/( CONSTS(46)*CONSTS(47))))
      ALGBRC(81) = ( (( CONSTS(77)*STATES(9))/(CONSTS(78)+STATES(9)))*STATES(11))/(CONSTS(79)+STATES(11))
      RATES(9) = ( 1.00000*(((ALGBRC(57)+ALGBRC(59)+ALGBRC(53)+ALGBRC(80)) -  (1.00000/(CONSTS(100) - 1.00000))*ALGBRC(81))+ALGBRC(69)+ALGBRC(76)))/( 1.00000*CONSTS(133)*CONSTS(48)) -  0.700000*(STATES(9) - CONSTS(101))
      RATES(10) =  (- 1.00000/( 1.00000*CONSTS(132)*CONSTS(48)))*((ALGBRC(53)+ALGBRC(57)+ALGBRC(59)+ALGBRC(69)+ALGBRC(76)+ALGBRC(80)) -  (1.00000/(CONSTS(100) - 1.00000))*ALGBRC(81))
      ALGBRC(51) =  (( CONSTS(46)*CONSTS(47))/CONSTS(48))*log((CONSTS(51)+ 0.120000*STATES(9))/(STATES(11)+ 0.120000*STATES(10)))
      ALGBRC(61) =  CONSTS(60)*STATES(16) ** 3.00000*STATES(17)*(STATES(8) - ALGBRC(51))
      ALGBRC(42) =  (( CONSTS(46)*CONSTS(47))/CONSTS(48))*log(CONSTS(51)/STATES(11))
      ALGBRC(65) =  CONSTS(63)*(STATES(8) - ALGBRC(42))
      ALGBRC(63) =  (( CONSTS(62)*1.00000)/(1.00000+EXP(- (STATES(8)+52.0000)/8.00000)))*(STATES(8) - ALGBRC(42))
      ALGBRC(71) =  ((( (1.00000 - CONSTS(70))*CONSTS(66)*CONSTS(64)*STATES(19)*STATES(20)*STATES(21)*(STATES(8) - 50.0000)*CONSTS(48))/( CONSTS(46)*CONSTS(47)))/(1.00000 - EXP(( - (STATES(8) - 50.0000)*CONSTS(48))/( CONSTS(46)*CONSTS(47)))))*( STATES(11)*EXP(( 50.0000*CONSTS(48))/( CONSTS(46)*CONSTS(47))) -  CONSTS(51)*EXP(( - (STATES(8) - 50.0000)*CONSTS(48))/( CONSTS(46)*CONSTS(47))))
      ALGBRC(77) =  ((( CONSTS(70)*CONSTS(66)*CONSTS(64)*STATES(19)*STATES(20)*STATES(22)*(STATES(8) - 50.0000)*CONSTS(48))/( CONSTS(46)*CONSTS(47)))/(1.00000 - EXP(( - (STATES(8) - 50.0000)*CONSTS(48))/( CONSTS(46)*CONSTS(47)))))*( STATES(11)*EXP(( 50.0000*CONSTS(48))/( CONSTS(46)*CONSTS(47))) -  CONSTS(51)*EXP(( - (STATES(8) - 50.0000)*CONSTS(48))/( CONSTS(46)*CONSTS(47))))
      ALGBRC(82) = ( (1.00000 - CONSTS(84))*CONSTS(80)*( EXP(( CONSTS(83)*(CONSTS(81) - 2.00000)*STATES(8)*CONSTS(48))/( CONSTS(46)*CONSTS(47)))*STATES(11) ** CONSTS(81)*CONSTS(52) -  EXP(( (CONSTS(83) - 1.00000)*(CONSTS(81) - 2.00000)*STATES(8)*CONSTS(48))/( CONSTS(46)*CONSTS(47)))*CONSTS(51) ** CONSTS(81)*STATES(12)))/( (1.00000+ CONSTS(82)*( STATES(12)*CONSTS(51) ** CONSTS(81)+ CONSTS(52)*STATES(11) ** CONSTS(81)))*(1.00000+STATES(12)/0.00690000))
      ALGBRC(83) = ( CONSTS(84)*CONSTS(80)*( EXP(( CONSTS(83)*(CONSTS(81) - 2.00000)*STATES(8)*CONSTS(48))/( CONSTS(46)*CONSTS(47)))*STATES(11) ** CONSTS(81)*CONSTS(52) -  EXP(( (CONSTS(83) - 1.00000)*(CONSTS(81) - 2.00000)*STATES(8)*CONSTS(48))/( CONSTS(46)*CONSTS(47)))*CONSTS(51) ** CONSTS(81)*STATES(18)))/( (1.00000+ CONSTS(82)*( STATES(18)*CONSTS(51) ** CONSTS(81)+ CONSTS(52)*STATES(11) ** CONSTS(81)))*(1.00000+STATES(18)/0.00690000))
      ALGBRC(67) =  ((( (1.00000 - CONSTS(70))*4.00000*CONSTS(64)*STATES(19)*STATES(20)*STATES(21)*(STATES(8) - 50.0000)*CONSTS(48))/( CONSTS(46)*CONSTS(47)))/(1.00000 - EXP(( - (STATES(8) - 50.0000)*CONSTS(48)*2.00000)/( CONSTS(46)*CONSTS(47)))))*( STATES(12)*EXP(( 100.000*CONSTS(48))/( CONSTS(46)*CONSTS(47))) -  CONSTS(52)*EXP(( - (STATES(8) - 50.0000)*CONSTS(48)*2.00000)/( CONSTS(46)*CONSTS(47))))
      ALGBRC(74) =  ((( CONSTS(70)*4.00000*CONSTS(64)*STATES(19)*STATES(20)*STATES(22)*(STATES(8) - 50.0000)*CONSTS(48))/( CONSTS(46)*CONSTS(47)))/(1.00000 - EXP(( - (STATES(8) - 50.0000)*CONSTS(48)*2.00000)/( CONSTS(46)*CONSTS(47)))))*( STATES(12)*EXP(( 100.000*CONSTS(48))/( CONSTS(46)*CONSTS(47))) -  CONSTS(52)*EXP(( - (STATES(8) - 50.0000)*CONSTS(48)*2.00000)/( CONSTS(46)*CONSTS(47))))
      ALGBRC(49) =  (( 0.500000*CONSTS(46)*CONSTS(47))/CONSTS(48))*log(CONSTS(52)/STATES(12))
      ALGBRC(79) =  CONSTS(74)*(STATES(8) - ALGBRC(49))
      ALGBRC(40) = TERNRY(VOI.GE.CONSTS(34).AND.VOI.LE.CONSTS(35).AND.(VOI - CONSTS(34)) -  INT((VOI - CONSTS(34))/CONSTS(20))*CONSTS(20).LE.CONSTS(36), CONSTS(37), 0.00000)
      RATES(8) =  (- 1.00000/CONSTS(49))*(ALGBRC(40)+ALGBRC(53)+ALGBRC(80)+ALGBRC(57)+ALGBRC(59)+ALGBRC(81)+ALGBRC(61)+ALGBRC(65)+ALGBRC(63)+ALGBRC(71)+ALGBRC(77)+ALGBRC(82)+ALGBRC(83)+ALGBRC(67)+ALGBRC(74)+ALGBRC(69)+ALGBRC(76)+ALGBRC(79))
      RATES(18) = ( - 1.00000*ALGBRC(74)+( 2.00000*ALGBRC(83))/(CONSTS(81) - 2.00000))/( 2.00000*1.00000*CONSTS(105)*CONSTS(132)*CONSTS(48)) -  STATES(18)*CONSTS(109)
      ALGBRC(85) = ALGBRC(82)+ALGBRC(83)
      RATES(11) =  (- 1.00000/( 1.00000*CONSTS(132)*CONSTS(48)))*(ALGBRC(61)+ALGBRC(63)+ALGBRC(65)+ALGBRC(71)+ALGBRC(77)+ (CONSTS(100)/(CONSTS(100) - 1.00000))*ALGBRC(81)+ (CONSTS(81)/(CONSTS(81) - 2.00000))*ALGBRC(85))
      ALGBRC(84) = STATES(12)+ STATES(25)*CONSTS(129)+ CONSTS(85)*CONSTS(86)+CONSTS(85)
      ALGBRC(86) = TERNRY(CONSTS(90).EQ.0.00000,  (STATES(12)/ALGBRC(84))*CONSTS(88) -  (( STATES(25)*CONSTS(129))/ALGBRC(84))*CONSTS(89), ( (STATES(12)/ALGBRC(84))*CONSTS(88))/(1.00000+STATES(25)/CONSTS(91)) -  (( STATES(25)*CONSTS(129))/ALGBRC(84))*CONSTS(89))
      ALGBRC(87) =  CONSTS(92)*(STATES(25) - STATES(26))
      RATES(25) =  (CONSTS(104)/CONSTS(108))*ALGBRC(86) - ALGBRC(87)
      ALGBRC(88) =  ( STATES(27)/(STATES(27)+0.250000) ** 2.00000*CONSTS(97)+CONSTS(96))*STATES(26)
      RATES(26) = ( (CONSTS(108)/CONSTS(106))*ALGBRC(87) - ALGBRC(88))/(1.00000+( CONSTS(130)*CONSTS(95))/STATES(26)+CONSTS(130) ** 2.00000)
      ALGBRC(89) = ( CONSTS(31)*STATES(2))/( ALGBRC(36)*STATES(7))
      ALGBRC(90) = TERNRY(ALGBRC(89).LE.0.00000, CONSTS(110), TERNRY(ALGBRC(89).LE.1.00000, CONSTS(110) ** ALGBRC(89), 1.00000)
      RATES(7) =  CONSTS(111)*(CONSTS(31) - STATES(7))*STATES(12) -  CONSTS(112)*EXP( - CONSTS(28)*STATES(7))*ALGBRC(90)*STATES(7)
      RATES(29) =  CONSTS(114)*(CONSTS(113) - STATES(29))*STATES(12) -  CONSTS(115)*STATES(29)
      RATES(30) =  CONSTS(117)*(CONSTS(116) - STATES(30))*STATES(12) -  CONSTS(118)*STATES(30)
      RATES(12) = (((( (- 1.00000/( 2.00000*1.00000*CONSTS(132)*CONSTS(48)))*((ALGBRC(67)+ALGBRC(79)) -  (2.00000/(CONSTS(81) - 2.00000))*ALGBRC(82))+ STATES(18)*CONSTS(105)*CONSTS(109)+( ALGBRC(88)*CONSTS(106))/CONSTS(104)) - RATES(7)) - RATES(29)) - RATES(30)) - ALGBRC(86)
      RETURN
      END
      SUBROUTINE computeVariables(VOI, CONSTS, RATES, STATES, ALGBRC)
      REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*)
      ALGBRC(4) = STATES(1)
      ALGBRC(5) = 50.0000/(1.00000+EXP(- (STATES(8) - 5.00000)/9.00000))
      ALGBRC(17) =  0.0500000*EXP(- (STATES(8) - 20.0000)/15.0000)
      ALGBRC(6) = 50.0000/(1.00000+EXP(- (STATES(8) - 5.00000)/9.00000))
      ALGBRC(18) =  0.400000*EXP(- (STATES(8)+30.0000)/30.0000 ** 3.00000)
      ALGBRC(7) = 14.0000/(1.00000+EXP(- (STATES(8) - 40.0000)/9.00000))
      ALGBRC(19) =  1.00000*EXP(- STATES(8)/45.0000)
      ALGBRC(9) =  20.0000*EXP( - 0.125000*(STATES(8)+75.0000))
      ALGBRC(21) = 2000.00/(1.00000+ 320.000*EXP( - 0.100000*(STATES(8)+75.0000)))
      ALGBRC(12) =  0.0330000*EXP(- STATES(8)/17.0000)
      ALGBRC(24) = 33.0000/(1.00000+EXP( - 0.125000*(STATES(8)+10.0000)))
      ALGBRC(15) =  CONSTS(120)*(STATES(31)+20.0000)+ CONSTS(122)*(STATES(31) - CONSTS(123))
      ALGBRC(26) =  - CONSTS(119)*(STATES(8) - STATES(31))
      ALGBRC(8) = STATES(8)+41.0000
      ALGBRC(20) = TERNRY(ABS(ALGBRC(8)).LT.CONSTS(61), 2000.00, ( 200.000*ALGBRC(8))/(1.00000 - EXP( - 0.100000*ALGBRC(8))))
      ALGBRC(28) =  8000.00*EXP( - 0.0560000*(STATES(8)+66.0000))
      ALGBRC(10) = (STATES(8)+24.0000) - 5.00000
      ALGBRC(22) = TERNRY(ABS(ALGBRC(10)).LT.0.000100000, 120.000, ( 30.0000*ALGBRC(10))/(1.00000 - EXP(- ALGBRC(10)/4.00000)))
      ALGBRC(29) = TERNRY(ABS(ALGBRC(10)).LT.0.000100000, 120.000, ( 12.0000*ALGBRC(10))/(EXP(ALGBRC(10)/10.0000) - 1.00000))
      ALGBRC(11) = STATES(8)+34.0000
      ALGBRC(23) = TERNRY(ABS(ALGBRC(11)).LT.CONSTS(73), 25.0000, ( 6.25000*ALGBRC(11))/(EXP(ALGBRC(11)/4.00000) - 1.00000))
      ALGBRC(30) = 12.0000/(1.00000+EXP(( - 1.00000*(STATES(8)+34.0000))/4.00000))
      ALGBRC(14) = STATES(12)/(STATES(12)+CONSTS(98))
      ALGBRC(25) = STATES(18)/(STATES(18)+CONSTS(99))
      ALGBRC(31) = ALGBRC(14)+ (1.00000 - ALGBRC(14))*ALGBRC(25)
      ALGBRC(35) = 60.0000+ 500.000*ALGBRC(31) ** 2.00000
      ALGBRC(37) = TERNRY(STATES(8).LT.- 50.0000, 5.00000, 1.00000)
      ALGBRC(33) =  500.000*ALGBRC(31) ** 2.00000
      ALGBRC(39) = (1.00000 - STATES(27)) - STATES(28)
      ALGBRC(52) = TERNRY(STATES(3).LE.STATES(1),  CONSTS(43)*EXP( CONSTS(42)*(STATES(5) - STATES(4))),  CONSTS(45)*EXP( CONSTS(44)*(STATES(5) - STATES(4))))
      ALGBRC(38) = STATES(5)+STATES(6)
      ALGBRC(16) =  CONSTS(7)*(EXP( CONSTS(6)*STATES(6)) - 1.00000)
      ALGBRC(27) = ALGBRC(16)
      ALGBRC(41) = TERNRY(CONSTS(1).EQ.1.00000.AND.ALGBRC(27).GT.CONSTS(18).AND.ALGBRC(38).LE. CONSTS(19)*(1.00000+0.000100000), 1.00000, 0.00000)
      ALGBRC(48) = TERNRY(ALGBRC(41).EQ.1.00000, ( CONSTS(2)*CONSTS(3)*EXP( CONSTS(2)*(STATES(5) - STATES(4)))*STATES(1))/( CONSTS(2)*CONSTS(3)*EXP( CONSTS(2)*(STATES(5) - STATES(4)))+ CONSTS(4)*CONSTS(5)*EXP( CONSTS(4)*STATES(5))), ( CONSTS(2)*CONSTS(3)*EXP( CONSTS(2)*(STATES(5) - STATES(4)))*STATES(1))/( CONSTS(2)*CONSTS(3)*EXP( CONSTS(2)*(STATES(5) - STATES(4)))+ CONSTS(4)*CONSTS(5)*EXP( CONSTS(4)*STATES(5))+ CONSTS(6)*CONSTS(7)*EXP( CONSTS(6)*STATES(6))))
      ALGBRC(55) = TERNRY(ALGBRC(52).EQ.0.00000, ALGBRC(48), STATES(3))
      ALGBRC(56) = TERNRY(ALGBRC(41).EQ.1.00000, 0.00000, TERNRY(ALGBRC(41).EQ.0.00000.AND.ALGBRC(52).EQ.0.00000, - ALGBRC(48), TERNRY(ALGBRC(41).EQ.0.00000.AND.ALGBRC(52) .NE. 0.00000, - STATES(3), 0.0/0.0)
      ALGBRC(32) = ( STATES(7)/CONSTS(31) ** CONSTS(9)*(1.00000+CONSTS(10) ** CONSTS(9)))/(STATES(7)/CONSTS(31) ** CONSTS(9)+CONSTS(10) ** CONSTS(9))
      ALGBRC(34) = TERNRY( CONSTS(32)*STATES(4)+CONSTS(33).LT.0.00000, 0.00000, TERNRY( CONSTS(32)*STATES(4)+CONSTS(33).LT.1.00000,  CONSTS(32)*STATES(4)+CONSTS(33), 1.00000)
      ALGBRC(36) = TERNRY(STATES(4).GT.0.550000, (STATES(4)+CONSTS(21))/(0.460000+CONSTS(21)),  (CONSTS(21)+0.550000)*1.00000)
      ALGBRC(3) = TERNRY(STATES(1).LE.0.00000, CONSTS(22) - ( CONSTS(23)*STATES(1))/CONSTS(14), TERNRY(STATES(1).LE.CONSTS(124).AND.0.00000.LT.STATES(1), ( (CONSTS(25) - CONSTS(24))*STATES(1))/CONSTS(124)+CONSTS(24), CONSTS(25)/1.00000+( CONSTS(30)*(STATES(1) - CONSTS(124)))/CONSTS(14) ** CONSTS(29))
      ALGBRC(54) = TERNRY(STATES(1).LE.0.00000, ( CONSTS(15)*(1.00000+STATES(1)/CONSTS(14)))/(CONSTS(15) - STATES(1)/CONSTS(14)), (1.00000+CONSTS(16)) - ( CONSTS(16) ** 2.00000*CONSTS(15))/( (( CONSTS(15)*CONSTS(16))/CONSTS(131))*STATES(1)/CONSTS(14) ** 2.00000+( (CONSTS(15)+1.00000)*STATES(1))/CONSTS(14)+ CONSTS(15)*CONSTS(16)))
      ALGBRC(58) = TERNRY(- CONSTS(14).LE.STATES(1).AND.STATES(1).LE.0.00000, 1.00000+( 0.600000*STATES(1))/CONSTS(14), TERNRY(0.00000.LT.STATES(1).AND.STATES(1).LE.CONSTS(125), ALGBRC(54)/(( ( 0.400000*CONSTS(15)+1.00000)*STATES(1))/( CONSTS(15)*CONSTS(14))+1.00000), ( ALGBRC(54)*EXP( - CONSTS(27)*(STATES(1) - CONSTS(125))/CONSTS(14) ** CONSTS(17)))/(( ( 0.400000*CONSTS(15)+1.00000)*STATES(1))/( CONSTS(15)*CONSTS(14))+1.00000))
      ALGBRC(60) =  CONSTS(11)*CONSTS(12)*ALGBRC(3)*CONSTS(13)*ALGBRC(58)
      ALGBRC(62) =  CONSTS(12)*ALGBRC(3)*(1.00000 -  CONSTS(11)*CONSTS(13)*ALGBRC(58))
      ALGBRC(64) =  ALGBRC(60)*ALGBRC(32)*ALGBRC(34)*ALGBRC(36)*(1.00000 - STATES(2)) -  ALGBRC(62)*STATES(2)
      ALGBRC(45) = TERNRY(STATES(1).LE.0.00000,  CONSTS(39)*EXP( CONSTS(38)*STATES(4)),  CONSTS(41)*EXP( CONSTS(40)*STATES(4)))
      ALGBRC(70) = ALGBRC(54)/ALGBRC(58)
      ALGBRC(66) = ( CONSTS(15)*1.00000*(1.00000+ 0.400000*CONSTS(15)+( 1.20000*STATES(1))/CONSTS(14)+ 0.600000*STATES(1)/CONSTS(14) ** 2.00000))/( CONSTS(14)* (CONSTS(15) - STATES(1)/CONSTS(14))*(1.00000+( 0.600000*STATES(1))/CONSTS(14)) ** 2.00000)
      ALGBRC(68) =  (1.00000/CONSTS(14))*EXP( - CONSTS(27)*STATES(1)/CONSTS(14) - CONSTS(125)/CONSTS(14) ** CONSTS(17))*(( 0.400000*CONSTS(15)+1.00000)/CONSTS(15)+ CONSTS(27)*CONSTS(17)*(1.00000+( ( 0.400000*CONSTS(15)+1.00000)*STATES(1))/( CONSTS(15)*CONSTS(14)))*STATES(1)/CONSTS(14) - CONSTS(125)/CONSTS(14) ** CONSTS(17) - 1.00000)
      ALGBRC(73) = TERNRY(STATES(1).LE.- CONSTS(14), CONSTS(126), TERNRY(- CONSTS(14).LT.STATES(1).AND.STATES(1).LE.0.00000, ALGBRC(66), TERNRY(0.00000.LT.STATES(1).AND.STATES(1).LE.CONSTS(125), CONSTS(127), ALGBRC(68))
      ALGBRC(43) = TERNRY(STATES(1).LE.0.00000, CONSTS(38), CONSTS(40))
      ALGBRC(75) = TERNRY(ALGBRC(41).EQ.1.00000, - ( CONSTS(8)*ALGBRC(64)*ALGBRC(70)+ ALGBRC(43)*ALGBRC(45)*STATES(1) ** 2.00000+ CONSTS(4)*CONSTS(5)*EXP( CONSTS(4)*STATES(5))*STATES(3))/( CONSTS(8)*STATES(2)*ALGBRC(73)+ALGBRC(45)), - ( CONSTS(8)*ALGBRC(64)*ALGBRC(70)+ ALGBRC(43)*ALGBRC(45)*STATES(1) ** 2.00000+ ( CONSTS(4)*CONSTS(5)*EXP( CONSTS(4)*STATES(5))+ CONSTS(6)*CONSTS(7)*EXP( CONSTS(6)*STATES(6)))*STATES(3))/( CONSTS(8)*STATES(2)*ALGBRC(73)+ALGBRC(45)))
      ALGBRC(50) = TERNRY(STATES(3).LE.STATES(1), CONSTS(42), CONSTS(44))
      ALGBRC(44) =  (( CONSTS(46)*CONSTS(47))/CONSTS(48))*log(STATES(9)/STATES(10))
      ALGBRC(53) = ( (( CONSTS(54)*STATES(9))/(STATES(9)+CONSTS(53)))*(STATES(8) - ALGBRC(44)))/(1.00000+EXP(( ((STATES(8) - ALGBRC(44)) - 10.0000)*CONSTS(48)*1.25000)/( CONSTS(46)*CONSTS(47))))
      ALGBRC(80) =  CONSTS(75)*(CONSTS(76)+ STATES(23)*(1.00000 - CONSTS(76)))*STATES(24)*(STATES(8) - ALGBRC(44))
      ALGBRC(57) =  (( ( CONSTS(55)*STATES(13)+ CONSTS(56)*STATES(14))*1.00000)/(1.00000+EXP((STATES(8)+9.00000)/22.4000)))*(STATES(8) - ALGBRC(44))
      ALGBRC(47) =  (( CONSTS(46)*CONSTS(47))/CONSTS(48))*log((STATES(9)+ CONSTS(50)*CONSTS(51))/(STATES(10)+ CONSTS(50)*STATES(11)))
      ALGBRC(59) =  CONSTS(57)*STATES(15) ** 2.00000*(STATES(8) - ALGBRC(47))
      ALGBRC(69) =  ((( (1.00000 - CONSTS(70))*CONSTS(65)*CONSTS(64)*STATES(19)*STATES(20)*STATES(21)*(STATES(8) - 50.0000)*CONSTS(48))/( CONSTS(46)*CONSTS(47)))/(1.00000 - EXP(( - (STATES(8) - 50.0000)*CONSTS(48))/( CONSTS(46)*CONSTS(47)))))*( STATES(10)*EXP(( 50.0000*CONSTS(48))/( CONSTS(46)*CONSTS(47))) -  STATES(9)*EXP(( - (STATES(8) - 50.0000)*CONSTS(48))/( CONSTS(46)*CONSTS(47))))
      ALGBRC(76) =  ((( CONSTS(70)*CONSTS(65)*CONSTS(64)*STATES(19)*STATES(20)*STATES(22)*(STATES(8) - 50.0000)*CONSTS(48))/( CONSTS(46)*CONSTS(47)))/(1.00000 - EXP(( - (STATES(8) - 50.0000)*CONSTS(48))/( CONSTS(46)*CONSTS(47)))))*( STATES(10)*EXP(( 50.0000*CONSTS(48))/( CONSTS(46)*CONSTS(47))) -  STATES(9)*EXP(( - (STATES(8) - 50.0000)*CONSTS(48))/( CONSTS(46)*CONSTS(47))))
      ALGBRC(81) = ( (( CONSTS(77)*STATES(9))/(CONSTS(78)+STATES(9)))*STATES(11))/(CONSTS(79)+STATES(11))
      ALGBRC(51) =  (( CONSTS(46)*CONSTS(47))/CONSTS(48))*log((CONSTS(51)+ 0.120000*STATES(9))/(STATES(11)+ 0.120000*STATES(10)))
      ALGBRC(61) =  CONSTS(60)*STATES(16) ** 3.00000*STATES(17)*(STATES(8) - ALGBRC(51))
      ALGBRC(42) =  (( CONSTS(46)*CONSTS(47))/CONSTS(48))*log(CONSTS(51)/STATES(11))
      ALGBRC(65) =  CONSTS(63)*(STATES(8) - ALGBRC(42))
      ALGBRC(63) =  (( CONSTS(62)*1.00000)/(1.00000+EXP(- (STATES(8)+52.0000)/8.00000)))*(STATES(8) - ALGBRC(42))
      ALGBRC(71) =  ((( (1.00000 - CONSTS(70))*CONSTS(66)*CONSTS(64)*STATES(19)*STATES(20)*STATES(21)*(STATES(8) - 50.0000)*CONSTS(48))/( CONSTS(46)*CONSTS(47)))/(1.00000 - EXP(( - (STATES(8) - 50.0000)*CONSTS(48))/( CONSTS(46)*CONSTS(47)))))*( STATES(11)*EXP(( 50.0000*CONSTS(48))/( CONSTS(46)*CONSTS(47))) -  CONSTS(51)*EXP(( - (STATES(8) - 50.0000)*CONSTS(48))/( CONSTS(46)*CONSTS(47))))
      ALGBRC(77) =  ((( CONSTS(70)*CONSTS(66)*CONSTS(64)*STATES(19)*STATES(20)*STATES(22)*(STATES(8) - 50.0000)*CONSTS(48))/( CONSTS(46)*CONSTS(47)))/(1.00000 - EXP(( - (STATES(8) - 50.0000)*CONSTS(48))/( CONSTS(46)*CONSTS(47)))))*( STATES(11)*EXP(( 50.0000*CONSTS(48))/( CONSTS(46)*CONSTS(47))) -  CONSTS(51)*EXP(( - (STATES(8) - 50.0000)*CONSTS(48))/( CONSTS(46)*CONSTS(47))))
      ALGBRC(82) = ( (1.00000 - CONSTS(84))*CONSTS(80)*( EXP(( CONSTS(83)*(CONSTS(81) - 2.00000)*STATES(8)*CONSTS(48))/( CONSTS(46)*CONSTS(47)))*STATES(11) ** CONSTS(81)*CONSTS(52) -  EXP(( (CONSTS(83) - 1.00000)*(CONSTS(81) - 2.00000)*STATES(8)*CONSTS(48))/( CONSTS(46)*CONSTS(47)))*CONSTS(51) ** CONSTS(81)*STATES(12)))/( (1.00000+ CONSTS(82)*( STATES(12)*CONSTS(51) ** CONSTS(81)+ CONSTS(52)*STATES(11) ** CONSTS(81)))*(1.00000+STATES(12)/0.00690000))
      ALGBRC(83) = ( CONSTS(84)*CONSTS(80)*( EXP(( CONSTS(83)*(CONSTS(81) - 2.00000)*STATES(8)*CONSTS(48))/( CONSTS(46)*CONSTS(47)))*STATES(11) ** CONSTS(81)*CONSTS(52) -  EXP(( (CONSTS(83) - 1.00000)*(CONSTS(81) - 2.00000)*STATES(8)*CONSTS(48))/( CONSTS(46)*CONSTS(47)))*CONSTS(51) ** CONSTS(81)*STATES(18)))/( (1.00000+ CONSTS(82)*( STATES(18)*CONSTS(51) ** CONSTS(81)+ CONSTS(52)*STATES(11) ** CONSTS(81)))*(1.00000+STATES(18)/0.00690000))
      ALGBRC(67) =  ((( (1.00000 - CONSTS(70))*4.00000*CONSTS(64)*STATES(19)*STATES(20)*STATES(21)*(STATES(8) - 50.0000)*CONSTS(48))/( CONSTS(46)*CONSTS(47)))/(1.00000 - EXP(( - (STATES(8) - 50.0000)*CONSTS(48)*2.00000)/( CONSTS(46)*CONSTS(47)))))*( STATES(12)*EXP(( 100.000*CONSTS(48))/( CONSTS(46)*CONSTS(47))) -  CONSTS(52)*EXP(( - (STATES(8) - 50.0000)*CONSTS(48)*2.00000)/( CONSTS(46)*CONSTS(47))))
      ALGBRC(74) =  ((( CONSTS(70)*4.00000*CONSTS(64)*STATES(19)*STATES(20)*STATES(22)*(STATES(8) - 50.0000)*CONSTS(48))/( CONSTS(46)*CONSTS(47)))/(1.00000 - EXP(( - (STATES(8) - 50.0000)*CONSTS(48)*2.00000)/( CONSTS(46)*CONSTS(47)))))*( STATES(12)*EXP(( 100.000*CONSTS(48))/( CONSTS(46)*CONSTS(47))) -  CONSTS(52)*EXP(( - (STATES(8) - 50.0000)*CONSTS(48)*2.00000)/( CONSTS(46)*CONSTS(47))))
      ALGBRC(49) =  (( 0.500000*CONSTS(46)*CONSTS(47))/CONSTS(48))*log(CONSTS(52)/STATES(12))
      ALGBRC(79) =  CONSTS(74)*(STATES(8) - ALGBRC(49))
      ALGBRC(40) = TERNRY(VOI.GE.CONSTS(34).AND.VOI.LE.CONSTS(35).AND.(VOI - CONSTS(34)) -  INT((VOI - CONSTS(34))/CONSTS(20))*CONSTS(20).LE.CONSTS(36), CONSTS(37), 0.00000)
      ALGBRC(85) = ALGBRC(82)+ALGBRC(83)
      ALGBRC(84) = STATES(12)+ STATES(25)*CONSTS(129)+ CONSTS(85)*CONSTS(86)+CONSTS(85)
      ALGBRC(86) = TERNRY(CONSTS(90).EQ.0.00000,  (STATES(12)/ALGBRC(84))*CONSTS(88) -  (( STATES(25)*CONSTS(129))/ALGBRC(84))*CONSTS(89), ( (STATES(12)/ALGBRC(84))*CONSTS(88))/(1.00000+STATES(25)/CONSTS(91)) -  (( STATES(25)*CONSTS(129))/ALGBRC(84))*CONSTS(89))
      ALGBRC(87) =  CONSTS(92)*(STATES(25) - STATES(26))
      ALGBRC(88) =  ( STATES(27)/(STATES(27)+0.250000) ** 2.00000*CONSTS(97)+CONSTS(96))*STATES(26)
      ALGBRC(89) = ( CONSTS(31)*STATES(2))/( ALGBRC(36)*STATES(7))
      ALGBRC(90) = TERNRY(ALGBRC(89).LE.0.00000, CONSTS(110), TERNRY(ALGBRC(89).LE.1.00000, CONSTS(110) ** ALGBRC(89), 1.00000)
      ALGBRC(1) =  CONSTS(3)*(EXP( CONSTS(2)*(STATES(5) - STATES(4))) - 1.00000)
      ALGBRC(2) =  CONSTS(5)*(EXP( CONSTS(4)*STATES(5)) - 1.00000)
      ALGBRC(13) = EXP( 0.0800000*(STATES(8) - 40.0000))
      ALGBRC(46) =  (( CONSTS(58)*STATES(11))/(STATES(11)+CONSTS(59)))*(STATES(8) - ALGBRC(44))
      ALGBRC(72) =  CONSTS(8)*ALGBRC(70)*STATES(2)
      ALGBRC(78) = ALGBRC(67)+ALGBRC(69)+ALGBRC(71)+ALGBRC(74)+ALGBRC(76)+ALGBRC(77)
      RETURN
      END
      REAL FUNCTION TERNRY(TEST, VALA, VALB)
      LOGICAL TEST
      REAL VALA, VALB
      IF (TEST) THEN
        TERNRY = VALA
      ELSE
        TERNRY = VALB
      ENDIF
      RETURN
      END