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 105 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 90 entries in the constant variable array.
C
C
C VOI is time in component environment (ms).
C STATES(1) is V in component membrane (mV).
C CONSTS(1) is R in component membrane (mJ_per_mole_K).
C CONSTS(2) is T in component membrane (kelvin).
C CONSTS(3) is F in component membrane (C_per_mole).
C CONSTS(4) is Cm in component membrane (uF).
C ALGBRC(12) is I_Stim in component membrane (uA).
C ALGBRC(1) is stim_period in component membrane (ms).
C CONSTS(5) is stim_duration in component membrane (ms).
C CONSTS(6) is stim_amplitude in component membrane (uA).
C ALGBRC(25) is i_Na in component pandit_sodium_current (uA).
C ALGBRC(27) is i_t in component pandit_Ca_independent_transient_outward_K_current (uA).
C ALGBRC(28) is i_ss in component pandit_steady_state_outward_K_current (uA).
C ALGBRC(32) is i_f in component pandit_hyperpolarisation_activated_current (uA).
C ALGBRC(29) is i_K1 in component pandit_inward_rectifier (uA).
C ALGBRC(33) is i_B_Na in component pandit_background_currents (uA).
C ALGBRC(34) is i_B_K in component pandit_background_currents (uA).
C ALGBRC(35) is i_NaK in component pandit_sodium_potassium_pump (uA).
C ALGBRC(85) is I_LCC in component convert_hinch (uA).
C ALGBRC(86) is I_NaCa in component convert_hinch (uA).
C ALGBRC(87) is I_pCa in component convert_hinch (uA).
C ALGBRC(88) is I_CaB in component convert_hinch (uA).
C ALGBRC(21) is FVRT in component membrane (dimensionless).
C ALGBRC(22) is FVRT_Ca in component membrane (dimensionless).
C CONSTS(7) is V_myo in component cell_geometry (um3).
C CONSTS(8) is V_SR in component cell_geometry (um3).
C CONSTS(9) is V_myo_uL in component cell_geometry (uL).
C CONSTS(10) is V_SR_uL in component cell_geometry (uL).
C ALGBRC(24) is E_Na in component pandit_sodium_current (mV).
C CONSTS(11) is g_Na in component pandit_sodium_current (mSi).
C CONSTS(80) is g_Na_endo in component pandit_sodium_current (mSi).
C STATES(2) is Na_i in component intracellular_ion_concentrations (mM).
C CONSTS(12) is Na_o in component pandit_standard_ionic_concentrations (mM).
C STATES(3) is m in component sodium_current_m_gate (dimensionless).
C STATES(4) is h in component sodium_current_h_gate (dimensionless).
C STATES(5) is j in component sodium_current_j_gate (dimensionless).
C ALGBRC(2) is m_infinity in component sodium_current_m_gate (dimensionless).
C ALGBRC(13) is tau_m in component sodium_current_m_gate (ms).
C ALGBRC(3) is h_infinity in component sodium_current_h_gate (dimensionless).
C ALGBRC(14) is tau_h in component sodium_current_h_gate (ms).
C ALGBRC(4) is j_infinity in component sodium_current_j_gate (dimensionless).
C ALGBRC(15) is tau_j in component sodium_current_j_gate (ms).
C ALGBRC(26) is E_K in component pandit_Ca_independent_transient_outward_K_current (mV).
C CONSTS(13) is g_t in component pandit_Ca_independent_transient_outward_K_current (mSi).
C CONSTS(81) is g_t_endo in component pandit_Ca_independent_transient_outward_K_current (mSi).
C CONSTS(14) is a_endo in component pandit_Ca_independent_transient_outward_K_current (dimensionless).
C CONSTS(15) is b_endo in component pandit_Ca_independent_transient_outward_K_current (dimensionless).
C CONSTS(16) is K_o in component pandit_standard_ionic_concentrations (mM).
C STATES(6) is K_i in component intracellular_ion_concentrations (mM).
C STATES(7) is r in component Ca_independent_transient_outward_K_current_r_gate (dimensionless).
C STATES(8) is s in component Ca_independent_transient_outward_K_current_s_gate (dimensionless).
C STATES(9) is s_slow in component Ca_independent_transient_outward_K_current_s_slow_gate (dimensionless).
C ALGBRC(16) is tau_r in component Ca_independent_transient_outward_K_current_r_gate (ms).
C ALGBRC(5) is r_infinity in component Ca_independent_transient_outward_K_current_r_gate (dimensionless).
C ALGBRC(17) is tau_s_endo in component Ca_independent_transient_outward_K_current_s_gate (ms).
C ALGBRC(6) is s_infinity in component Ca_independent_transient_outward_K_current_s_gate (dimensionless).
C ALGBRC(18) is tau_s_slow_endo in component Ca_independent_transient_outward_K_current_s_slow_gate (ms).
C ALGBRC(7) is s_slow_infinity in component Ca_independent_transient_outward_K_current_s_slow_gate (dimensionless).
C CONSTS(17) is g_ss in component pandit_steady_state_outward_K_current (mSi).
C STATES(10) is r_ss in component steady_state_outward_K_current_r_ss_gate (dimensionless).
C STATES(11) is s_ss in component steady_state_outward_K_current_s_ss_gate (dimensionless).
C ALGBRC(19) is tau_r_ss in component steady_state_outward_K_current_r_ss_gate (ms).
C ALGBRC(8) is r_ss_infinity in component steady_state_outward_K_current_r_ss_gate (dimensionless).
C CONSTS(82) is tau_s_ss in component steady_state_outward_K_current_s_ss_gate (ms).
C ALGBRC(9) is s_ss_infinity in component steady_state_outward_K_current_s_ss_gate (dimensionless).
C CONSTS(18) is g_K1 in component pandit_inward_rectifier (mSi).
C ALGBRC(30) is i_f_Na in component pandit_hyperpolarisation_activated_current (uA).
C ALGBRC(31) is i_f_K in component pandit_hyperpolarisation_activated_current (uA).
C CONSTS(19) is g_f in component pandit_hyperpolarisation_activated_current (mSi).
C CONSTS(20) is f_Na in component pandit_hyperpolarisation_activated_current (dimensionless).
C CONSTS(83) is f_K in component pandit_hyperpolarisation_activated_current (dimensionless).
C STATES(12) is y in component hyperpolarisation_activated_current_y_gate (dimensionless).
C ALGBRC(20) is tau_y in component hyperpolarisation_activated_current_y_gate (ms).
C ALGBRC(10) is y_infinity in component hyperpolarisation_activated_current_y_gate (dimensionless).
C CONSTS(21) is g_B_Na in component pandit_background_currents (mSi).
C CONSTS(22) is g_B_K in component pandit_background_currents (mSi).
C CONSTS(23) is i_NaK_max in component pandit_sodium_potassium_pump (uA).
C CONSTS(24) is K_m_K in component pandit_sodium_potassium_pump (mM).
C CONSTS(25) is K_m_Na in component pandit_sodium_potassium_pump (mM).
C CONSTS(84) is sigma in component pandit_sodium_potassium_pump (dimensionless).
C CONSTS(26) is Ca_o in component pandit_standard_ionic_concentrations (mM).
C CONSTS(27) is g_D in component hinch_CaRU (um3_per_ms).
C CONSTS(28) is J_R in component hinch_CaRU (um3_per_ms).
C CONSTS(29) is J_L in component hinch_CaRU (um3_per_ms).
C CONSTS(30) is N in component hinch_CaRU (dimensionless).
C STATES(13) is Ca_i in component intracellular_ion_concentrations (mM).
C STATES(14) is Ca_SR in component intracellular_ion_concentrations (mM).
C ALGBRC(64) is I_RyR in component RyR_current (mM_per_ms).
C ALGBRC(73) is I_LCC in component LCC_current (mM_per_ms).
C ALGBRC(45) is C_oc in component DS_Calcium_Concentrations (mM).
C ALGBRC(43) is C_co in component DS_Calcium_Concentrations (mM).
C CONSTS(31) is V_L in component CaRU_Transitions (mV).
C CONSTS(32) is del_VL in component CaRU_Transitions (mV).
C CONSTS(33) is phi_L in component CaRU_Transitions (dimensionless).
C CONSTS(34) is t_L in component CaRU_Transitions (ms).
C CONSTS(35) is tau_L in component CaRU_Transitions (ms).
C CONSTS(85) is t_R in component CaRU_Transitions (ms).
C CONSTS(36) is tau_R in component CaRU_Transitions (ms).
C CONSTS(37) is phi_R in component CaRU_Transitions (dimensionless).
C CONSTS(38) is theta_R in component CaRU_Transitions (dimensionless).
C CONSTS(39) is K_RyR in component CaRU_Transitions (mM).
C CONSTS(40) is K_L in component CaRU_Transitions (mM).
C CONSTS(41) is a in component CaRU_Transitions (dimensionless).
C CONSTS(42) is b in component CaRU_Transitions (dimensionless).
C CONSTS(43) is c in component CaRU_Transitions (dimensionless).
C CONSTS(44) is d in component CaRU_Transitions (dimensionless).
C ALGBRC(36) is expVL in component CaRU_Transitions (dimensionless).
C ALGBRC(37) is alpha_p in component CaRU_Transitions (per_ms).
C CONSTS(88) is alpha_m in component CaRU_Transitions (per_ms).
C ALGBRC(46) is beta_poc in component CaRU_Transitions (per_ms).
C ALGBRC(38) is beta_pcc in component CaRU_Transitions (per_ms).
C CONSTS(90) is beta_m in component CaRU_Transitions (per_ms).
C ALGBRC(44) is epsilon_pco in component CaRU_Transitions (per_ms).
C ALGBRC(39) is epsilon_pcc in component CaRU_Transitions (per_ms).
C ALGBRC(40) is epsilon_m in component CaRU_Transitions (per_ms).
C ALGBRC(47) is mu_poc in component CaRU_Transitions (per_ms).
C ALGBRC(41) is mu_pcc in component CaRU_Transitions (per_ms).
C ALGBRC(48) is mu_moc in component CaRU_Transitions (per_ms).
C ALGBRC(42) is mu_mcc in component CaRU_Transitions (per_ms).
C ALGBRC(11) is C_cc in component DS_Calcium_Concentrations (mM).
C ALGBRC(23) is C_oo in component DS_Calcium_Concentrations (mM).
C ALGBRC(52) is J_Loo in component LCC_and_RyR_fluxes (um3_mM_per_ms).
C ALGBRC(51) is J_Loc in component LCC_and_RyR_fluxes (um3_mM_per_ms).
C ALGBRC(49) is J_Rco in component LCC_and_RyR_fluxes (um3_mM_per_ms).
C ALGBRC(50) is J_Roo in component LCC_and_RyR_fluxes (um3_mM_per_ms).
C ALGBRC(53) is denom in component CaRU_states (per_ms3).
C ALGBRC(54) is y_oc in component CaRU_states (dimensionless).
C ALGBRC(55) is y_co in component CaRU_states (dimensionless).
C ALGBRC(56) is y_oo in component CaRU_states (dimensionless).
C ALGBRC(57) is y_cc in component CaRU_states (dimensionless).
C ALGBRC(59) is y_ci in component CaRU_states (dimensionless).
C ALGBRC(62) is y_oi in component CaRU_states (dimensionless).
C ALGBRC(65) is y_ic in component CaRU_states (dimensionless).
C ALGBRC(68) is y_io in component CaRU_states (dimensionless).
C ALGBRC(71) is y_ii in component CaRU_states (dimensionless).
C ALGBRC(60) is r_1 in component CaRU_reduced_states (per_ms).
C ALGBRC(63) is r_2 in component CaRU_reduced_states (per_ms).
C ALGBRC(66) is r_3 in component CaRU_reduced_states (per_ms).
C ALGBRC(69) is r_4 in component CaRU_reduced_states (per_ms).
C ALGBRC(72) is r_5 in component CaRU_reduced_states (per_ms).
C ALGBRC(74) is r_6 in component CaRU_reduced_states (per_ms).
C ALGBRC(76) is r_7 in component CaRU_reduced_states (per_ms).
C ALGBRC(78) is r_8 in component CaRU_reduced_states (per_ms).
C STATES(15) is z_1 in component CaRU_reduced_states (dimensionless).
C STATES(16) is z_2 in component CaRU_reduced_states (dimensionless).
C STATES(17) is z_3 in component CaRU_reduced_states (dimensionless).
C ALGBRC(80) is z_4 in component CaRU_reduced_states (dimensionless).
C ALGBRC(58) is J_R1 in component RyR_current (um3_mM_per_ms).
C ALGBRC(61) is J_R3 in component RyR_current (um3_mM_per_ms).
C ALGBRC(67) is J_L1 in component LCC_current (um3_mM_per_ms).
C ALGBRC(70) is J_L2 in component LCC_current (um3_mM_per_ms).
C CONSTS(45) is K_mNa in component hinch_Na_Ca_Exchanger (mM).
C CONSTS(46) is K_mCa in component hinch_Na_Ca_Exchanger (mM).
C CONSTS(47) is eta in component hinch_Na_Ca_Exchanger (dimensionless).
C CONSTS(48) is k_sat in component hinch_Na_Ca_Exchanger (dimensionless).
C CONSTS(49) is g_NCX in component hinch_Na_Ca_Exchanger (mM_per_ms).
C ALGBRC(75) is I_NaCa in component hinch_Na_Ca_Exchanger (mM_per_ms).
C CONSTS(50) is g_SERCA in component hinch_SERCA (mM_per_ms).
C CONSTS(51) is K_SERCA in component hinch_SERCA (mM).
C ALGBRC(77) is I_SERCA in component hinch_SERCA (mM_per_ms).
C CONSTS(52) is g_pCa in component hinch_Sarcolemmal_Ca_pump (mM_per_ms).
C CONSTS(53) is K_mpCa in component hinch_Sarcolemmal_Ca_pump (mM).
C ALGBRC(79) is I_pCa in component hinch_Sarcolemmal_Ca_pump (mM_per_ms).
C ALGBRC(81) is E_Ca in component hinch_Background_Ca_current (mV).
C CONSTS(54) is g_CaB in component hinch_Background_Ca_current (mM_per_mV_ms).
C ALGBRC(82) is I_CaB in component hinch_Background_Ca_current (mM_per_ms).
C CONSTS(55) is g_SRl in component hinch_SR_Ca_leak_current (per_ms).
C ALGBRC(83) is I_SR in component hinch_SR_Ca_leak_current (mM_per_ms).
C CONSTS(56) is k_CMDN in component hinch_calmodulin_Ca_buffer (mM).
C CONSTS(57) is B_CMDN in component hinch_calmodulin_Ca_buffer (mM).
C ALGBRC(84) is beta_CMDN in component hinch_calmodulin_Ca_buffer (dimensionless).
C ALGBRC(89) is I_RyR in component convert_hinch (mM_per_ms).
C STATES(18) is z in component niederer_tropomyosin (dimensionless).
C ALGBRC(96) is z_max in component niederer_tropomyosin (dimensionless).
C CONSTS(58) is k_on in component niederer_troponin (per_mM_ms).
C CONSTS(59) is k_Ref_off in component niederer_troponin (per_ms).
C CONSTS(60) is gamma_trpn in component niederer_troponin (dimensionless).
C CONSTS(61) is Ca_TRPN_Max in component niederer_troponin (mM).
C CONSTS(62) is alpha_0 in component niederer_tropomyosin (per_ms).
C CONSTS(63) is alpha_r1 in component niederer_tropomyosin (per_ms).
C CONSTS(64) is alpha_r2 in component niederer_tropomyosin (per_ms).
C CONSTS(65) is n_Rel in component niederer_tropomyosin (dimensionless).
C CONSTS(66) is K_z in component niederer_tropomyosin (dimensionless).
C CONSTS(67) is n_Hill in component niederer_tropomyosin (dimensionless).
C CONSTS(68) is Ca_50ref in component niederer_tropomyosin (mM).
C CONSTS(69) is z_p in component niederer_tropomyosin (dimensionless).
C CONSTS(70) is beta_1 in component niederer_tropomyosin (dimensionless).
C ALGBRC(94) is Ca_50 in component niederer_tropomyosin (mM).
C ALGBRC(95) is Ca_TRPN_50 in component niederer_tropomyosin (mM).
C CONSTS(86) is K_2 in component niederer_tropomyosin (per_ms).
C CONSTS(89) is K_1 in component niederer_tropomyosin (per_ms).
C ALGBRC(98) is alpha_Tm in component niederer_tropomyosin (per_ms).
C ALGBRC(90) is beta_Tm in component niederer_tropomyosin (per_ms).
C CONSTS(71) is beta_0 in component niederer_filament_overlap (dimensionless).
C ALGBRC(97) is Ca_b in component intracellular_ion_concentrations (mM).
C ALGBRC(92) is lambda in component niederer_Myofilaments (dimensionless).
C ALGBRC(105) is I_TRPN in component niederer_troponin (mM_per_ms).
C STATES(19) is TRPN in component intracellular_ion_concentrations (mM).
C ALGBRC(104) is k_off in component niederer_troponin (per_ms).
C ALGBRC(103) is Tension in component niederer_Cross_Bridges (N_per_mm2).
C CONSTS(72) is T_ref in component niederer_length_independent_tension (N_per_mm2).
C ALGBRC(91) is ExtensionRatio in component niederer_Myofilaments (dimensionless).
C CONSTS(87) is dExtensionRatiodt in component niederer_Myofilaments (per_ms).
C ALGBRC(93) is lambda_prev in component niederer_Myofilaments (dimensionless).
C ALGBRC(99) is overlap in component niederer_filament_overlap (dimensionless).
C ALGBRC(100) is T_Base in component niederer_length_independent_tension (N_per_mm2).
C ALGBRC(101) is T_0 in component niederer_isometric_tension (N_per_mm2).
C ALGBRC(102) is Q in component niederer_Cross_Bridges (dimensionless).
C CONSTS(73) is a in component niederer_Cross_Bridges (dimensionless).
C STATES(20) is Q_1 in component niederer_Cross_Bridges (dimensionless).
C STATES(21) is Q_2 in component niederer_Cross_Bridges (dimensionless).
C STATES(22) is Q_3 in component niederer_Cross_Bridges (dimensionless).
C CONSTS(74) is A_1 in component niederer_Cross_Bridges (dimensionless).
C CONSTS(75) is A_2 in component niederer_Cross_Bridges (dimensionless).
C CONSTS(76) is A_3 in component niederer_Cross_Bridges (dimensionless).
C CONSTS(77) is alpha_1 in component niederer_Cross_Bridges (per_ms).
C CONSTS(78) is alpha_2 in component niederer_Cross_Bridges (per_ms).
C CONSTS(79) is alpha_3 in component niederer_Cross_Bridges (per_ms).
C RATES(1) is d/dt V in component membrane (mV).
C RATES(3) is d/dt m in component sodium_current_m_gate (dimensionless).
C RATES(4) is d/dt h in component sodium_current_h_gate (dimensionless).
C RATES(5) is d/dt j in component sodium_current_j_gate (dimensionless).
C RATES(7) is d/dt r in component Ca_independent_transient_outward_K_current_r_gate (dimensionless).
C RATES(8) is d/dt s in component Ca_independent_transient_outward_K_current_s_gate (dimensionless).
C RATES(9) is d/dt s_slow in component Ca_independent_transient_outward_K_current_s_slow_gate (dimensionless).
C RATES(10) is d/dt r_ss in component steady_state_outward_K_current_r_ss_gate (dimensionless).
C RATES(11) is d/dt s_ss in component steady_state_outward_K_current_s_ss_gate (dimensionless).
C RATES(12) is d/dt y in component hyperpolarisation_activated_current_y_gate (dimensionless).
C RATES(15) is d/dt z_1 in component CaRU_reduced_states (dimensionless).
C RATES(16) is d/dt z_2 in component CaRU_reduced_states (dimensionless).
C RATES(17) is d/dt z_3 in component CaRU_reduced_states (dimensionless).
C RATES(18) is d/dt z in component niederer_tropomyosin (dimensionless).
C RATES(20) is d/dt Q_1 in component niederer_Cross_Bridges (dimensionless).
C RATES(21) is d/dt Q_2 in component niederer_Cross_Bridges (dimensionless).
C RATES(22) is d/dt Q_3 in component niederer_Cross_Bridges (dimensionless).
C RATES(2) is d/dt Na_i in component intracellular_ion_concentrations (mM).
C RATES(6) is d/dt K_i in component intracellular_ion_concentrations (mM).
C RATES(19) is d/dt TRPN in component intracellular_ion_concentrations (mM).
C RATES(13) is d/dt Ca_i in component intracellular_ion_concentrations (mM).
C RATES(14) is d/dt Ca_SR in component intracellular_ion_concentrations (mM).
C
SUBROUTINE initConsts(CONSTS, RATES, STATES)
REAL CONSTS(*), RATES(*), STATES(*)
STATES(1) = -78.8
CONSTS(1) = 8314.5
CONSTS(2) = 295
CONSTS(3) = 96487
CONSTS(4) = 0.0001
CONSTS(5) = 10
CONSTS(6) = -0.6e-3
CONSTS(7) = 25.85e3
CONSTS(8) = 2.098e3
CONSTS(9) = 25.85e-6
CONSTS(10) = 2.098e-6
CONSTS(11) = 0.8e-3
STATES(2) = 11.28
CONSTS(12) = 140
STATES(3) = 0.0054828
STATES(4) = 0.6095126
STATES(5) = 0.60876276
CONSTS(13) = 0.035e-3
CONSTS(14) = 0.583
CONSTS(15) = 0.417
CONSTS(16) = 5.4
STATES(6) = 138.7225
STATES(7) = 0.002542
STATES(8) = 0.8823
STATES(9) = 0.42756
CONSTS(17) = 0.007e-3
STATES(10) = 0.0033545
STATES(11) = 0.266596
CONSTS(18) = 0.024e-3
CONSTS(19) = 0.00145e-3
CONSTS(20) = 0.2
STATES(12) = 0.0026369
CONSTS(21) = 0.00008015e-3
CONSTS(22) = 0.000138e-3
CONSTS(23) = 0.95e-4
CONSTS(24) = 1.5
CONSTS(25) = 10
CONSTS(26) = 1.2
CONSTS(27) = 0.065
CONSTS(28) = 0.02
CONSTS(29) = 9.13e-4
CONSTS(30) = 50000
STATES(13) = 0.00011423
STATES(14) = 721.96e-3
CONSTS(31) = -2
CONSTS(32) = 7
CONSTS(33) = 2.35
CONSTS(34) = 1
CONSTS(35) = 650
CONSTS(36) = 2.43
CONSTS(37) = 0.05
CONSTS(38) = 0.012
CONSTS(39) = 41e-3
CONSTS(40) = 0.22e-3
CONSTS(41) = 0.0625
CONSTS(42) = 14
CONSTS(43) = 0.01
CONSTS(44) = 100
STATES(15) = 0.98794
STATES(16) = 0.00887
STATES(17) = 0.003156
CONSTS(45) = 87.5
CONSTS(46) = 1380e-3
CONSTS(47) = 0.35
CONSTS(48) = 0.1
CONSTS(49) = 38.5e-3
CONSTS(50) = 0.45e-3
CONSTS(51) = 0.5e-3
CONSTS(52) = 0.0035e-3
CONSTS(53) = 0.5e-3
CONSTS(54) = 2.6875e-8
CONSTS(55) = 1.8951e-5
CONSTS(56) = 2.382e-3
CONSTS(57) = 50e-3
STATES(18) = 0.020023
CONSTS(58) = 100
CONSTS(59) = 0.2
CONSTS(60) = 2
CONSTS(61) = 70e-3
CONSTS(62) = 8e-3
CONSTS(63) = 2e-3
CONSTS(64) = 1.75e-3
CONSTS(65) = 3
CONSTS(66) = 0.15
CONSTS(67) = 3
CONSTS(68) = 1.05e-3
CONSTS(69) = 0.85
CONSTS(70) = -4
CONSTS(71) = 4.9
STATES(19) = 0.0661796
CONSTS(72) = 56.2
CONSTS(73) = 0.35
STATES(20) = 0
STATES(21) = 0
STATES(22) = 0
CONSTS(74) = -29
CONSTS(75) = 138
CONSTS(76) = 129
CONSTS(77) = 0.03
CONSTS(78) = 0.13
CONSTS(79) = 0.625
CONSTS(80) = 1.33000*CONSTS(11)
CONSTS(81) = 0.464700*CONSTS(13)
CONSTS(82) = 2100.00
CONSTS(83) = 1.00000 - CONSTS(20)
CONSTS(84) = (EXP(CONSTS(12)/67.3000) - 1.00000)/7.00000
CONSTS(85) = 1.17000*CONSTS(34)
CONSTS(86) = (( CONSTS(64)*CONSTS(69) ** CONSTS(65))/(CONSTS(69) ** CONSTS(65)+CONSTS(66) ** CONSTS(65)))*(1.00000 - ( CONSTS(65)*CONSTS(66) ** CONSTS(65))/(CONSTS(69) ** CONSTS(65)+CONSTS(66) ** CONSTS(65)))
CONSTS(87) = 0.00000
CONSTS(88) = CONSTS(33)/CONSTS(34)
CONSTS(89) = ( CONSTS(64)*CONSTS(69) ** CONSTS(65) - 1.00000*CONSTS(65)*CONSTS(66) ** CONSTS(65))/CONSTS(69) ** CONSTS(65)+CONSTS(66) ** CONSTS(65) ** 2.00000
CONSTS(90) = CONSTS(37)/CONSTS(85)
RETURN
END
SUBROUTINE computeRates(VOI, CONSTS, RATES, STATES, ALGBRC)
REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*)
RATES(20) = CONSTS(74)*CONSTS(87) - CONSTS(77)*STATES(20)
RATES(21) = CONSTS(75)*CONSTS(87) - CONSTS(78)*STATES(21)
RATES(22) = CONSTS(76)*CONSTS(87) - CONSTS(79)*STATES(22)
ALGBRC(9) = 1.00000/(1.00000+EXP((STATES(1)+87.5000)/10.3000))
RATES(11) = (ALGBRC(9) - STATES(11))/CONSTS(82)
ALGBRC(2) = 1.00000/(1.00000+EXP((STATES(1)+45.0000)/- 6.50000))
ALGBRC(13) = 1.36000/(( 0.320000*(STATES(1)+47.1300))/(1.00000 - EXP( - 0.100000*(STATES(1)+47.1300)))+ 0.0800000*EXP(- STATES(1)/11.0000))
RATES(3) = (ALGBRC(2) - STATES(3))/ALGBRC(13)
ALGBRC(3) = 1.00000/(1.00000+EXP((STATES(1)+76.1000)/6.07000))
ALGBRC(14) = TERNRY(STATES(1).GE.- 40.0000, 0.453700*(1.00000+EXP(- (STATES(1)+10.6600)/11.1000)), 3.49000/( 0.135000*EXP(- (STATES(1)+80.0000)/6.80000)+ 3.56000*EXP( 0.0790000*STATES(1))+ 310000.*EXP( 0.350000*STATES(1))))
RATES(4) = (ALGBRC(3) - STATES(4))/ALGBRC(14)
ALGBRC(4) = 1.00000/(1.00000+EXP((STATES(1)+76.1000)/6.07000))
ALGBRC(15) = TERNRY(STATES(1).GE.- 40.0000, ( 11.6300*(1.00000+EXP( - 0.100000*(STATES(1)+32.0000))))/EXP( - 2.53500e-07*STATES(1)), 3.49000/( ((STATES(1)+37.7800)/(1.00000+EXP( 0.311000*(STATES(1)+79.2300))))*( - 127140.*EXP( 0.244400*STATES(1)) - 3.47400e-05*EXP( - 0.0439100*STATES(1)))+( 0.121200*EXP( - 0.0105200*STATES(1)))/(1.00000+EXP( - 0.137800*(STATES(1)+40.1400)))))
RATES(5) = (ALGBRC(4) - STATES(5))/ALGBRC(15)
ALGBRC(16) = 1000.00/( 45.1600*EXP( 0.0357700*(STATES(1)+50.0000))+ 98.9000*EXP( - 0.100000*(STATES(1)+38.0000)))
ALGBRC(5) = 1.00000/(1.00000+EXP((STATES(1)+10.6000)/- 11.4200))
RATES(7) = (ALGBRC(5) - STATES(7))/ALGBRC(16)
ALGBRC(17) = 550.000*EXP(- (STATES(1)+70.0000)/25.0000 ** 2.00000)+49.0000
ALGBRC(6) = 1.00000/(1.00000+EXP((STATES(1)+45.3000)/6.88410))
RATES(8) = (ALGBRC(6) - STATES(8))/ALGBRC(17)
ALGBRC(18) = 3300.00*EXP(- (STATES(1)+70.0000)/30.0000 ** 2.00000)+49.0000
ALGBRC(7) = 1.00000/(1.00000+EXP((STATES(1)+45.3000)/6.88410))
RATES(9) = (ALGBRC(7) - STATES(9))/ALGBRC(18)
ALGBRC(19) = 10000.0/( 45.1600*EXP( 0.0357700*(STATES(1)+50.0000))+ 98.9000*EXP( - 0.100000*(STATES(1)+38.0000)))
ALGBRC(8) = 1.00000/(1.00000+EXP((STATES(1)+11.5000)/- 11.8200))
RATES(10) = (ALGBRC(8) - STATES(10))/ALGBRC(19)
ALGBRC(20) = 1000.00/( 0.118850*EXP((STATES(1)+80.0000)/28.3700)+ 0.562300*EXP((STATES(1)+80.0000)/- 14.1900))
ALGBRC(10) = 1.00000/(1.00000+EXP((STATES(1)+138.600)/10.4800))
RATES(12) = (ALGBRC(10) - STATES(12))/ALGBRC(20)
ALGBRC(1) = TERNRY(VOI.GE.5000.00.AND.VOI.LE.10000.0, 500.000, 1000.00)
ALGBRC(12) = TERNRY(VOI - INT(VOI/ALGBRC(1))*ALGBRC(1).GE.0.00000.AND.VOI - INT(VOI/ALGBRC(1))*ALGBRC(1).LE.CONSTS(5), CONSTS(6), 0.00000)
ALGBRC(26) = (( CONSTS(1)*CONSTS(2))/CONSTS(3))*log(CONSTS(16)/STATES(6))
ALGBRC(27) = CONSTS(81)*STATES(7)*( CONSTS(14)*STATES(8)+ CONSTS(15)*STATES(9))*(STATES(1) - ALGBRC(26))
ALGBRC(28) = CONSTS(17)*STATES(10)*STATES(11)*(STATES(1) - ALGBRC(26))
ALGBRC(29) = (0.0480000/(EXP((STATES(1)+37.0000)/25.0000)+EXP((STATES(1)+37.0000)/- 25.0000))+0.0100000)*(0.00100000/(1.00000+EXP((STATES(1) - (ALGBRC(26)+76.7700))/- 17.0000)))+( CONSTS(18)*(STATES(1) - (ALGBRC(26)+1.73000)))/( (1.00000+EXP(( 1.61300*CONSTS(3)*(STATES(1) - (ALGBRC(26)+1.73000)))/( CONSTS(1)*CONSTS(2))))*(1.00000+EXP((CONSTS(16) - 0.998800)/- 0.124000)))
ALGBRC(34) = CONSTS(22)*(STATES(1) - ALGBRC(26))
ALGBRC(35) = ( (( (( CONSTS(23)*1.00000)/(1.00000+ 0.124500*EXP(( - 0.100000*STATES(1)*CONSTS(3))/( CONSTS(1)*CONSTS(2)))+ 0.0365000*CONSTS(84)*EXP(( - STATES(1)*CONSTS(3))/( CONSTS(1)*CONSTS(2)))))*CONSTS(16))/(CONSTS(16)+CONSTS(24)))*1.00000)/(1.00000+CONSTS(25)/STATES(2) ** 4.00000)
ALGBRC(31) = CONSTS(19)*STATES(12)*CONSTS(83)*(STATES(1) - ALGBRC(26))
RATES(6) = ( - (ALGBRC(12)+ALGBRC(28)+ALGBRC(34)+ALGBRC(27)+ALGBRC(29)+ALGBRC(31)+ - 2.00000*ALGBRC(35))*1.00000)/( CONSTS(9)*CONSTS(3))
ALGBRC(21) = ( CONSTS(3)*STATES(1))/( CONSTS(1)*CONSTS(2))
ALGBRC(22) = 2.00000*ALGBRC(21)
ALGBRC(45) = TERNRY(ABS(ALGBRC(22)).GT.1.00000e-09, (STATES(13)+( (CONSTS(29)/CONSTS(27))*CONSTS(26)*ALGBRC(22)*EXP(- ALGBRC(22)))/(1.00000 - EXP(- ALGBRC(22))))/(1.00000+( (CONSTS(29)/CONSTS(27))*ALGBRC(22))/(1.00000 - EXP(- ALGBRC(22)))), (STATES(13)+ (CONSTS(29)/CONSTS(27))*CONSTS(26))/(1.00000+CONSTS(29)/CONSTS(27)))
ALGBRC(47) = (ALGBRC(45) ** 2.00000+ CONSTS(43)*CONSTS(39) ** 2.00000)/( CONSTS(36)*(ALGBRC(45) ** 2.00000+CONSTS(39) ** 2.00000))
ALGBRC(41) = (STATES(13) ** 2.00000+ CONSTS(43)*CONSTS(39) ** 2.00000)/( CONSTS(36)*(STATES(13) ** 2.00000+CONSTS(39) ** 2.00000))
ALGBRC(36) = EXP((STATES(1) - CONSTS(31))/CONSTS(32))
ALGBRC(37) = ALGBRC(36)/( CONSTS(34)*(ALGBRC(36)+1.00000))
ALGBRC(38) = STATES(13) ** 2.00000/( CONSTS(85)*(STATES(13) ** 2.00000+CONSTS(39) ** 2.00000))
ALGBRC(46) = ALGBRC(45) ** 2.00000/( CONSTS(85)*(ALGBRC(45) ** 2.00000+CONSTS(39) ** 2.00000))
ALGBRC(53) = (ALGBRC(37)+CONSTS(88))*( (CONSTS(88)+CONSTS(90)+ALGBRC(46))*(CONSTS(90)+ALGBRC(38))+ ALGBRC(37)*(CONSTS(90)+ALGBRC(46)))
ALGBRC(54) = ( ALGBRC(37)*CONSTS(90)*(ALGBRC(37)+CONSTS(88)+CONSTS(90)+ALGBRC(38)))/ALGBRC(53)
ALGBRC(57) = ( CONSTS(88)*CONSTS(90)*(CONSTS(88)+ALGBRC(37)+CONSTS(90)+ALGBRC(46)))/ALGBRC(53)
ALGBRC(60) = ALGBRC(54)*ALGBRC(47)+ ALGBRC(57)*ALGBRC(41)
ALGBRC(48) = ( CONSTS(38)*CONSTS(44)*(ALGBRC(45) ** 2.00000+ CONSTS(43)*CONSTS(39) ** 2.00000))/( CONSTS(36)*( CONSTS(44)*ALGBRC(45) ** 2.00000+ CONSTS(43)*CONSTS(39) ** 2.00000))
ALGBRC(42) = ( CONSTS(38)*CONSTS(44)*(STATES(13) ** 2.00000+ CONSTS(43)*CONSTS(39) ** 2.00000))/( CONSTS(36)*( CONSTS(44)*STATES(13) ** 2.00000+ CONSTS(43)*CONSTS(39) ** 2.00000))
ALGBRC(63) = ( ALGBRC(37)*ALGBRC(48)+ CONSTS(88)*ALGBRC(42))/(ALGBRC(37)+CONSTS(88))
ALGBRC(43) = (STATES(13)+ (CONSTS(28)/CONSTS(27))*STATES(14))/(1.00000+CONSTS(28)/CONSTS(27))
ALGBRC(44) = ( ALGBRC(43)*(ALGBRC(36)+CONSTS(41)))/( CONSTS(35)*CONSTS(40)*(ALGBRC(36)+1.00000))
ALGBRC(39) = ( STATES(13)*(ALGBRC(36)+CONSTS(41)))/( CONSTS(35)*CONSTS(40)*(ALGBRC(36)+1.00000))
ALGBRC(55) = ( CONSTS(88)*( ALGBRC(38)*(CONSTS(88)+CONSTS(90)+ALGBRC(46))+ ALGBRC(46)*ALGBRC(37)))/ALGBRC(53)
ALGBRC(72) = ALGBRC(55)*ALGBRC(44)+ ALGBRC(57)*ALGBRC(39)
ALGBRC(40) = ( CONSTS(42)*(ALGBRC(36)+CONSTS(41)))/( CONSTS(35)*( CONSTS(42)*ALGBRC(36)+CONSTS(41)))
ALGBRC(74) = ALGBRC(40)
RATES(15) = - (ALGBRC(60)+ALGBRC(72))*STATES(15)+ ALGBRC(63)*STATES(16)+ ALGBRC(74)*STATES(17)
ALGBRC(76) = ( CONSTS(88)*ALGBRC(39))/(ALGBRC(37)+CONSTS(88))
ALGBRC(78) = ALGBRC(40)
ALGBRC(80) = ((1.00000 - STATES(15)) - STATES(16)) - STATES(17)
RATES(16) = ( ALGBRC(60)*STATES(15) - (ALGBRC(63)+ALGBRC(76))*STATES(16))+ ALGBRC(78)*ALGBRC(80)
ALGBRC(66) = ( CONSTS(90)*ALGBRC(41))/(CONSTS(90)+ALGBRC(38))
ALGBRC(69) = ALGBRC(42)
RATES(17) = ( ALGBRC(72)*STATES(15) - (ALGBRC(74)+ALGBRC(66))*STATES(17))+ ALGBRC(69)*ALGBRC(80)
ALGBRC(24) = (( CONSTS(1)*CONSTS(2))/CONSTS(3))*log(CONSTS(12)/STATES(2))
ALGBRC(25) = CONSTS(80)*STATES(3) ** 3.00000*STATES(4)*STATES(5)*(STATES(1) - ALGBRC(24))
ALGBRC(33) = CONSTS(21)*(STATES(1) - ALGBRC(24))
ALGBRC(75) = ( CONSTS(49)*( EXP( CONSTS(47)*ALGBRC(21))*STATES(2) ** 3.00000*CONSTS(26) - EXP( (CONSTS(47) - 1.00000)*ALGBRC(21))*CONSTS(12) ** 3.00000*STATES(13)))/( (CONSTS(12) ** 3.00000+CONSTS(45) ** 3.00000)*(CONSTS(26)+CONSTS(46))*(1.00000+ CONSTS(48)*EXP( (CONSTS(47) - 1.00000)*ALGBRC(21))))
ALGBRC(86) = ALGBRC(75)*CONSTS(9)*CONSTS(3)
ALGBRC(30) = CONSTS(19)*STATES(12)*CONSTS(20)*(STATES(1) - ALGBRC(24))
RATES(2) = ( - (ALGBRC(25)+ALGBRC(33)+ ALGBRC(86)*3.00000+ ALGBRC(35)*3.00000+ALGBRC(30))*1.00000)/( CONSTS(9)*CONSTS(3))
ALGBRC(32) = ALGBRC(30)+ALGBRC(31)
ALGBRC(52) = TERNRY(ABS(ALGBRC(22)).GT.1.00000e-05, ( (( CONSTS(29)*ALGBRC(22))/(1.00000 - EXP(- ALGBRC(22))))*(( CONSTS(26)*EXP(- ALGBRC(22)) - STATES(13))+ (CONSTS(28)/CONSTS(27))*( CONSTS(26)*EXP(- ALGBRC(22)) - STATES(14))))/(1.00000+CONSTS(28)/CONSTS(27)+( (CONSTS(29)/CONSTS(27))*ALGBRC(22))/(1.00000 - EXP(ALGBRC(22)))), ( (( CONSTS(29)*1.00000e-05)/(1.00000 - EXP(- 1.00000e-05)))*(( CONSTS(26)*EXP(- 1.00000e-05) - STATES(13))+ (CONSTS(28)/CONSTS(27))*( CONSTS(26)*EXP(- 1.00000e-05) - STATES(14))))/(1.00000+CONSTS(28)/CONSTS(27)+( (CONSTS(29)/CONSTS(27))*1.00000e-05)/(1.00000 - EXP(- 1.00000e-05))))
ALGBRC(51) = TERNRY(ABS(ALGBRC(22)).GT.1.00000e-05, ( (( CONSTS(29)*ALGBRC(22))/(1.00000 - EXP(- ALGBRC(22))))*( CONSTS(26)*EXP(- ALGBRC(22)) - STATES(13)))/(1.00000+( (CONSTS(29)/CONSTS(27))*ALGBRC(22))/(1.00000 - EXP(- ALGBRC(22)))), ( (( CONSTS(29)*1.00000e-05)/(1.00000 - EXP(- 1.00000e-05)))*( CONSTS(26)*EXP(- 1.00000e-05) - STATES(13)))/(1.00000+( (CONSTS(29)/CONSTS(27))*1.00000e-05)/(1.00000 - EXP(- 1.00000e-05))))
ALGBRC(56) = ( ALGBRC(37)*( ALGBRC(46)*(ALGBRC(37)+CONSTS(90)+ALGBRC(38))+ ALGBRC(38)*CONSTS(88)))/ALGBRC(53)
ALGBRC(67) = ALGBRC(52)*ALGBRC(56)+ ALGBRC(51)*ALGBRC(54)
ALGBRC(70) = ( ALGBRC(51)*ALGBRC(37))/(ALGBRC(37)+CONSTS(88))
ALGBRC(73) = ( ( STATES(15)*ALGBRC(67)+ STATES(16)*ALGBRC(70))*CONSTS(30))/CONSTS(7)
ALGBRC(85) = - 1.50000*ALGBRC(73)*2.00000*CONSTS(9)*CONSTS(3)
ALGBRC(79) = ( CONSTS(52)*STATES(13))/(CONSTS(53)+STATES(13))
ALGBRC(87) = ALGBRC(79)*2.00000*CONSTS(9)*CONSTS(3)
ALGBRC(81) = (( CONSTS(1)*CONSTS(2))/( 2.00000*CONSTS(3)))*log(CONSTS(26)/STATES(13))
ALGBRC(82) = CONSTS(54)*(ALGBRC(81) - STATES(1))
ALGBRC(88) = - ALGBRC(82)*2.00000*CONSTS(9)*CONSTS(3)
RATES(1) = - (ALGBRC(25)+ALGBRC(27)+ALGBRC(28)+ALGBRC(32)+ALGBRC(29)+ALGBRC(33)+ALGBRC(34)+ALGBRC(35)+ALGBRC(12)+ALGBRC(88)+ALGBRC(86)+ALGBRC(87)+ALGBRC(85))/CONSTS(4)
ALGBRC(77) = ( CONSTS(50)*STATES(13) ** 2.00000)/(CONSTS(51) ** 2.00000+STATES(13) ** 2.00000)
ALGBRC(83) = CONSTS(55)*(STATES(14) - STATES(13))
ALGBRC(49) = ( CONSTS(28)*(STATES(14) - STATES(13)))/(1.00000+CONSTS(28)/CONSTS(27))
ALGBRC(50) = TERNRY(ABS(ALGBRC(22)).GT.1.00000e-05, ( CONSTS(28)*((STATES(14) - STATES(13))+ (( (CONSTS(29)/CONSTS(27))*ALGBRC(22))/(1.00000 - EXP(- ALGBRC(22))))*(STATES(14) - CONSTS(26)*EXP(- ALGBRC(22)))))/(1.00000+CONSTS(28)/CONSTS(27)+( (CONSTS(29)/CONSTS(27))*ALGBRC(22))/(1.00000 - EXP(- ALGBRC(22)))), ( CONSTS(28)*((STATES(14) - STATES(13))+ (( (CONSTS(29)/CONSTS(27))*1.00000e-05)/(1.00000 - EXP(- 1.00000e-05)))*(STATES(14) - CONSTS(26)*EXP(- 1.00000e-05))))/(1.00000+CONSTS(28)/CONSTS(27)+( (CONSTS(29)/CONSTS(27))*1.00000e-05)/(1.00000 - EXP(- 1.00000e-05))))
ALGBRC(58) = ALGBRC(56)*ALGBRC(50)+ ALGBRC(49)*ALGBRC(55)
ALGBRC(61) = ( ALGBRC(49)*ALGBRC(38))/(CONSTS(90)+ALGBRC(38))
ALGBRC(64) = ( ( STATES(15)*ALGBRC(58)+ STATES(17)*ALGBRC(61))*CONSTS(30))/CONSTS(7)
ALGBRC(89) = 1.50000*ALGBRC(64)
RATES(14) = (CONSTS(9)/CONSTS(10))*((- ALGBRC(89)+ALGBRC(77)) - ALGBRC(83))
ALGBRC(91) = TERNRY(VOI.GT.300000., 1.00000, 1.00000)
ALGBRC(92) = TERNRY(ALGBRC(91).GT.0.800000.AND.ALGBRC(91).LE.1.15000, ALGBRC(91), TERNRY(ALGBRC(91).GT.1.15000, 1.15000, 0.800000)
ALGBRC(94) = CONSTS(68)*(1.00000+ CONSTS(70)*(ALGBRC(92) - 1.00000))
ALGBRC(95) = ( ALGBRC(94)*CONSTS(61))/(ALGBRC(94)+ (CONSTS(59)/CONSTS(58))*(1.00000 - ( (1.00000+ CONSTS(71)*(ALGBRC(92) - 1.00000))*0.500000)/CONSTS(60)))
ALGBRC(97) = CONSTS(61) - STATES(19)
ALGBRC(98) = CONSTS(62)*ALGBRC(97)/ALGBRC(95) ** CONSTS(67)
ALGBRC(90) = CONSTS(63)+( CONSTS(64)*STATES(18) ** CONSTS(65) - 1.00000)/(STATES(18) ** CONSTS(65)+CONSTS(66) ** CONSTS(65))
RATES(18) = ALGBRC(98)*(1.00000 - STATES(18)) - ALGBRC(90)*STATES(18)
ALGBRC(99) = 1.00000+ CONSTS(71)*(ALGBRC(92) - 1.00000)
ALGBRC(96) = (CONSTS(62)/ALGBRC(95)/CONSTS(61) ** CONSTS(67) - CONSTS(86))/(CONSTS(63)+CONSTS(89)+CONSTS(62)/ALGBRC(95)/CONSTS(61) ** CONSTS(67))
ALGBRC(100) = ( CONSTS(72)*STATES(18))/ALGBRC(96)
ALGBRC(101) = ALGBRC(100)*ALGBRC(99)
ALGBRC(102) = STATES(20)+STATES(21)+STATES(22)
ALGBRC(103) = TERNRY(ALGBRC(102).LT.0.00000, ( ALGBRC(101)*( CONSTS(73)*ALGBRC(102)+1.00000))/(1.00000 - ALGBRC(102)), ( ALGBRC(101)*(1.00000+ (CONSTS(73)+2.00000)*ALGBRC(102)))/(1.00000+ALGBRC(102)))
ALGBRC(104) = TERNRY(1.00000 - ALGBRC(103)/( CONSTS(60)*CONSTS(72)).GT.0.100000, CONSTS(59)*(1.00000 - ALGBRC(103)/( CONSTS(60)*CONSTS(72))), CONSTS(59)*0.100000)
ALGBRC(105) = (CONSTS(61) - STATES(19))*ALGBRC(104) - STATES(13)*STATES(19)*CONSTS(58)
RATES(19) = ALGBRC(105)
ALGBRC(84) = 1.00000+( CONSTS(56)*CONSTS(57))/CONSTS(56)+STATES(13) ** 2.00000 ** - 1.00000
RATES(13) = ALGBRC(84)*(((ALGBRC(89) - ALGBRC(77))+ALGBRC(83)+ALGBRC(105)) - ( - 2.00000*ALGBRC(86)+ALGBRC(87)+ALGBRC(88)+ALGBRC(85))/( 2.00000*CONSTS(9)*CONSTS(3)))
RETURN
END
SUBROUTINE computeVariables(VOI, CONSTS, RATES, STATES, ALGBRC)
REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*)
ALGBRC(9) = 1.00000/(1.00000+EXP((STATES(1)+87.5000)/10.3000))
ALGBRC(2) = 1.00000/(1.00000+EXP((STATES(1)+45.0000)/- 6.50000))
ALGBRC(13) = 1.36000/(( 0.320000*(STATES(1)+47.1300))/(1.00000 - EXP( - 0.100000*(STATES(1)+47.1300)))+ 0.0800000*EXP(- STATES(1)/11.0000))
ALGBRC(3) = 1.00000/(1.00000+EXP((STATES(1)+76.1000)/6.07000))
ALGBRC(14) = TERNRY(STATES(1).GE.- 40.0000, 0.453700*(1.00000+EXP(- (STATES(1)+10.6600)/11.1000)), 3.49000/( 0.135000*EXP(- (STATES(1)+80.0000)/6.80000)+ 3.56000*EXP( 0.0790000*STATES(1))+ 310000.*EXP( 0.350000*STATES(1))))
ALGBRC(4) = 1.00000/(1.00000+EXP((STATES(1)+76.1000)/6.07000))
ALGBRC(15) = TERNRY(STATES(1).GE.- 40.0000, ( 11.6300*(1.00000+EXP( - 0.100000*(STATES(1)+32.0000))))/EXP( - 2.53500e-07*STATES(1)), 3.49000/( ((STATES(1)+37.7800)/(1.00000+EXP( 0.311000*(STATES(1)+79.2300))))*( - 127140.*EXP( 0.244400*STATES(1)) - 3.47400e-05*EXP( - 0.0439100*STATES(1)))+( 0.121200*EXP( - 0.0105200*STATES(1)))/(1.00000+EXP( - 0.137800*(STATES(1)+40.1400)))))
ALGBRC(16) = 1000.00/( 45.1600*EXP( 0.0357700*(STATES(1)+50.0000))+ 98.9000*EXP( - 0.100000*(STATES(1)+38.0000)))
ALGBRC(5) = 1.00000/(1.00000+EXP((STATES(1)+10.6000)/- 11.4200))
ALGBRC(17) = 550.000*EXP(- (STATES(1)+70.0000)/25.0000 ** 2.00000)+49.0000
ALGBRC(6) = 1.00000/(1.00000+EXP((STATES(1)+45.3000)/6.88410))
ALGBRC(18) = 3300.00*EXP(- (STATES(1)+70.0000)/30.0000 ** 2.00000)+49.0000
ALGBRC(7) = 1.00000/(1.00000+EXP((STATES(1)+45.3000)/6.88410))
ALGBRC(19) = 10000.0/( 45.1600*EXP( 0.0357700*(STATES(1)+50.0000))+ 98.9000*EXP( - 0.100000*(STATES(1)+38.0000)))
ALGBRC(8) = 1.00000/(1.00000+EXP((STATES(1)+11.5000)/- 11.8200))
ALGBRC(20) = 1000.00/( 0.118850*EXP((STATES(1)+80.0000)/28.3700)+ 0.562300*EXP((STATES(1)+80.0000)/- 14.1900))
ALGBRC(10) = 1.00000/(1.00000+EXP((STATES(1)+138.600)/10.4800))
ALGBRC(1) = TERNRY(VOI.GE.5000.00.AND.VOI.LE.10000.0, 500.000, 1000.00)
ALGBRC(12) = TERNRY(VOI - INT(VOI/ALGBRC(1))*ALGBRC(1).GE.0.00000.AND.VOI - INT(VOI/ALGBRC(1))*ALGBRC(1).LE.CONSTS(5), CONSTS(6), 0.00000)
ALGBRC(26) = (( CONSTS(1)*CONSTS(2))/CONSTS(3))*log(CONSTS(16)/STATES(6))
ALGBRC(27) = CONSTS(81)*STATES(7)*( CONSTS(14)*STATES(8)+ CONSTS(15)*STATES(9))*(STATES(1) - ALGBRC(26))
ALGBRC(28) = CONSTS(17)*STATES(10)*STATES(11)*(STATES(1) - ALGBRC(26))
ALGBRC(29) = (0.0480000/(EXP((STATES(1)+37.0000)/25.0000)+EXP((STATES(1)+37.0000)/- 25.0000))+0.0100000)*(0.00100000/(1.00000+EXP((STATES(1) - (ALGBRC(26)+76.7700))/- 17.0000)))+( CONSTS(18)*(STATES(1) - (ALGBRC(26)+1.73000)))/( (1.00000+EXP(( 1.61300*CONSTS(3)*(STATES(1) - (ALGBRC(26)+1.73000)))/( CONSTS(1)*CONSTS(2))))*(1.00000+EXP((CONSTS(16) - 0.998800)/- 0.124000)))
ALGBRC(34) = CONSTS(22)*(STATES(1) - ALGBRC(26))
ALGBRC(35) = ( (( (( CONSTS(23)*1.00000)/(1.00000+ 0.124500*EXP(( - 0.100000*STATES(1)*CONSTS(3))/( CONSTS(1)*CONSTS(2)))+ 0.0365000*CONSTS(84)*EXP(( - STATES(1)*CONSTS(3))/( CONSTS(1)*CONSTS(2)))))*CONSTS(16))/(CONSTS(16)+CONSTS(24)))*1.00000)/(1.00000+CONSTS(25)/STATES(2) ** 4.00000)
ALGBRC(31) = CONSTS(19)*STATES(12)*CONSTS(83)*(STATES(1) - ALGBRC(26))
ALGBRC(21) = ( CONSTS(3)*STATES(1))/( CONSTS(1)*CONSTS(2))
ALGBRC(22) = 2.00000*ALGBRC(21)
ALGBRC(45) = TERNRY(ABS(ALGBRC(22)).GT.1.00000e-09, (STATES(13)+( (CONSTS(29)/CONSTS(27))*CONSTS(26)*ALGBRC(22)*EXP(- ALGBRC(22)))/(1.00000 - EXP(- ALGBRC(22))))/(1.00000+( (CONSTS(29)/CONSTS(27))*ALGBRC(22))/(1.00000 - EXP(- ALGBRC(22)))), (STATES(13)+ (CONSTS(29)/CONSTS(27))*CONSTS(26))/(1.00000+CONSTS(29)/CONSTS(27)))
ALGBRC(47) = (ALGBRC(45) ** 2.00000+ CONSTS(43)*CONSTS(39) ** 2.00000)/( CONSTS(36)*(ALGBRC(45) ** 2.00000+CONSTS(39) ** 2.00000))
ALGBRC(41) = (STATES(13) ** 2.00000+ CONSTS(43)*CONSTS(39) ** 2.00000)/( CONSTS(36)*(STATES(13) ** 2.00000+CONSTS(39) ** 2.00000))
ALGBRC(36) = EXP((STATES(1) - CONSTS(31))/CONSTS(32))
ALGBRC(37) = ALGBRC(36)/( CONSTS(34)*(ALGBRC(36)+1.00000))
ALGBRC(38) = STATES(13) ** 2.00000/( CONSTS(85)*(STATES(13) ** 2.00000+CONSTS(39) ** 2.00000))
ALGBRC(46) = ALGBRC(45) ** 2.00000/( CONSTS(85)*(ALGBRC(45) ** 2.00000+CONSTS(39) ** 2.00000))
ALGBRC(53) = (ALGBRC(37)+CONSTS(88))*( (CONSTS(88)+CONSTS(90)+ALGBRC(46))*(CONSTS(90)+ALGBRC(38))+ ALGBRC(37)*(CONSTS(90)+ALGBRC(46)))
ALGBRC(54) = ( ALGBRC(37)*CONSTS(90)*(ALGBRC(37)+CONSTS(88)+CONSTS(90)+ALGBRC(38)))/ALGBRC(53)
ALGBRC(57) = ( CONSTS(88)*CONSTS(90)*(CONSTS(88)+ALGBRC(37)+CONSTS(90)+ALGBRC(46)))/ALGBRC(53)
ALGBRC(60) = ALGBRC(54)*ALGBRC(47)+ ALGBRC(57)*ALGBRC(41)
ALGBRC(48) = ( CONSTS(38)*CONSTS(44)*(ALGBRC(45) ** 2.00000+ CONSTS(43)*CONSTS(39) ** 2.00000))/( CONSTS(36)*( CONSTS(44)*ALGBRC(45) ** 2.00000+ CONSTS(43)*CONSTS(39) ** 2.00000))
ALGBRC(42) = ( CONSTS(38)*CONSTS(44)*(STATES(13) ** 2.00000+ CONSTS(43)*CONSTS(39) ** 2.00000))/( CONSTS(36)*( CONSTS(44)*STATES(13) ** 2.00000+ CONSTS(43)*CONSTS(39) ** 2.00000))
ALGBRC(63) = ( ALGBRC(37)*ALGBRC(48)+ CONSTS(88)*ALGBRC(42))/(ALGBRC(37)+CONSTS(88))
ALGBRC(43) = (STATES(13)+ (CONSTS(28)/CONSTS(27))*STATES(14))/(1.00000+CONSTS(28)/CONSTS(27))
ALGBRC(44) = ( ALGBRC(43)*(ALGBRC(36)+CONSTS(41)))/( CONSTS(35)*CONSTS(40)*(ALGBRC(36)+1.00000))
ALGBRC(39) = ( STATES(13)*(ALGBRC(36)+CONSTS(41)))/( CONSTS(35)*CONSTS(40)*(ALGBRC(36)+1.00000))
ALGBRC(55) = ( CONSTS(88)*( ALGBRC(38)*(CONSTS(88)+CONSTS(90)+ALGBRC(46))+ ALGBRC(46)*ALGBRC(37)))/ALGBRC(53)
ALGBRC(72) = ALGBRC(55)*ALGBRC(44)+ ALGBRC(57)*ALGBRC(39)
ALGBRC(40) = ( CONSTS(42)*(ALGBRC(36)+CONSTS(41)))/( CONSTS(35)*( CONSTS(42)*ALGBRC(36)+CONSTS(41)))
ALGBRC(74) = ALGBRC(40)
ALGBRC(76) = ( CONSTS(88)*ALGBRC(39))/(ALGBRC(37)+CONSTS(88))
ALGBRC(78) = ALGBRC(40)
ALGBRC(80) = ((1.00000 - STATES(15)) - STATES(16)) - STATES(17)
ALGBRC(66) = ( CONSTS(90)*ALGBRC(41))/(CONSTS(90)+ALGBRC(38))
ALGBRC(69) = ALGBRC(42)
ALGBRC(24) = (( CONSTS(1)*CONSTS(2))/CONSTS(3))*log(CONSTS(12)/STATES(2))
ALGBRC(25) = CONSTS(80)*STATES(3) ** 3.00000*STATES(4)*STATES(5)*(STATES(1) - ALGBRC(24))
ALGBRC(33) = CONSTS(21)*(STATES(1) - ALGBRC(24))
ALGBRC(75) = ( CONSTS(49)*( EXP( CONSTS(47)*ALGBRC(21))*STATES(2) ** 3.00000*CONSTS(26) - EXP( (CONSTS(47) - 1.00000)*ALGBRC(21))*CONSTS(12) ** 3.00000*STATES(13)))/( (CONSTS(12) ** 3.00000+CONSTS(45) ** 3.00000)*(CONSTS(26)+CONSTS(46))*(1.00000+ CONSTS(48)*EXP( (CONSTS(47) - 1.00000)*ALGBRC(21))))
ALGBRC(86) = ALGBRC(75)*CONSTS(9)*CONSTS(3)
ALGBRC(30) = CONSTS(19)*STATES(12)*CONSTS(20)*(STATES(1) - ALGBRC(24))
ALGBRC(32) = ALGBRC(30)+ALGBRC(31)
ALGBRC(52) = TERNRY(ABS(ALGBRC(22)).GT.1.00000e-05, ( (( CONSTS(29)*ALGBRC(22))/(1.00000 - EXP(- ALGBRC(22))))*(( CONSTS(26)*EXP(- ALGBRC(22)) - STATES(13))+ (CONSTS(28)/CONSTS(27))*( CONSTS(26)*EXP(- ALGBRC(22)) - STATES(14))))/(1.00000+CONSTS(28)/CONSTS(27)+( (CONSTS(29)/CONSTS(27))*ALGBRC(22))/(1.00000 - EXP(ALGBRC(22)))), ( (( CONSTS(29)*1.00000e-05)/(1.00000 - EXP(- 1.00000e-05)))*(( CONSTS(26)*EXP(- 1.00000e-05) - STATES(13))+ (CONSTS(28)/CONSTS(27))*( CONSTS(26)*EXP(- 1.00000e-05) - STATES(14))))/(1.00000+CONSTS(28)/CONSTS(27)+( (CONSTS(29)/CONSTS(27))*1.00000e-05)/(1.00000 - EXP(- 1.00000e-05))))
ALGBRC(51) = TERNRY(ABS(ALGBRC(22)).GT.1.00000e-05, ( (( CONSTS(29)*ALGBRC(22))/(1.00000 - EXP(- ALGBRC(22))))*( CONSTS(26)*EXP(- ALGBRC(22)) - STATES(13)))/(1.00000+( (CONSTS(29)/CONSTS(27))*ALGBRC(22))/(1.00000 - EXP(- ALGBRC(22)))), ( (( CONSTS(29)*1.00000e-05)/(1.00000 - EXP(- 1.00000e-05)))*( CONSTS(26)*EXP(- 1.00000e-05) - STATES(13)))/(1.00000+( (CONSTS(29)/CONSTS(27))*1.00000e-05)/(1.00000 - EXP(- 1.00000e-05))))
ALGBRC(56) = ( ALGBRC(37)*( ALGBRC(46)*(ALGBRC(37)+CONSTS(90)+ALGBRC(38))+ ALGBRC(38)*CONSTS(88)))/ALGBRC(53)
ALGBRC(67) = ALGBRC(52)*ALGBRC(56)+ ALGBRC(51)*ALGBRC(54)
ALGBRC(70) = ( ALGBRC(51)*ALGBRC(37))/(ALGBRC(37)+CONSTS(88))
ALGBRC(73) = ( ( STATES(15)*ALGBRC(67)+ STATES(16)*ALGBRC(70))*CONSTS(30))/CONSTS(7)
ALGBRC(85) = - 1.50000*ALGBRC(73)*2.00000*CONSTS(9)*CONSTS(3)
ALGBRC(79) = ( CONSTS(52)*STATES(13))/(CONSTS(53)+STATES(13))
ALGBRC(87) = ALGBRC(79)*2.00000*CONSTS(9)*CONSTS(3)
ALGBRC(81) = (( CONSTS(1)*CONSTS(2))/( 2.00000*CONSTS(3)))*log(CONSTS(26)/STATES(13))
ALGBRC(82) = CONSTS(54)*(ALGBRC(81) - STATES(1))
ALGBRC(88) = - ALGBRC(82)*2.00000*CONSTS(9)*CONSTS(3)
ALGBRC(77) = ( CONSTS(50)*STATES(13) ** 2.00000)/(CONSTS(51) ** 2.00000+STATES(13) ** 2.00000)
ALGBRC(83) = CONSTS(55)*(STATES(14) - STATES(13))
ALGBRC(49) = ( CONSTS(28)*(STATES(14) - STATES(13)))/(1.00000+CONSTS(28)/CONSTS(27))
ALGBRC(50) = TERNRY(ABS(ALGBRC(22)).GT.1.00000e-05, ( CONSTS(28)*((STATES(14) - STATES(13))+ (( (CONSTS(29)/CONSTS(27))*ALGBRC(22))/(1.00000 - EXP(- ALGBRC(22))))*(STATES(14) - CONSTS(26)*EXP(- ALGBRC(22)))))/(1.00000+CONSTS(28)/CONSTS(27)+( (CONSTS(29)/CONSTS(27))*ALGBRC(22))/(1.00000 - EXP(- ALGBRC(22)))), ( CONSTS(28)*((STATES(14) - STATES(13))+ (( (CONSTS(29)/CONSTS(27))*1.00000e-05)/(1.00000 - EXP(- 1.00000e-05)))*(STATES(14) - CONSTS(26)*EXP(- 1.00000e-05))))/(1.00000+CONSTS(28)/CONSTS(27)+( (CONSTS(29)/CONSTS(27))*1.00000e-05)/(1.00000 - EXP(- 1.00000e-05))))
ALGBRC(58) = ALGBRC(56)*ALGBRC(50)+ ALGBRC(49)*ALGBRC(55)
ALGBRC(61) = ( ALGBRC(49)*ALGBRC(38))/(CONSTS(90)+ALGBRC(38))
ALGBRC(64) = ( ( STATES(15)*ALGBRC(58)+ STATES(17)*ALGBRC(61))*CONSTS(30))/CONSTS(7)
ALGBRC(89) = 1.50000*ALGBRC(64)
ALGBRC(91) = TERNRY(VOI.GT.300000., 1.00000, 1.00000)
ALGBRC(92) = TERNRY(ALGBRC(91).GT.0.800000.AND.ALGBRC(91).LE.1.15000, ALGBRC(91), TERNRY(ALGBRC(91).GT.1.15000, 1.15000, 0.800000)
ALGBRC(94) = CONSTS(68)*(1.00000+ CONSTS(70)*(ALGBRC(92) - 1.00000))
ALGBRC(95) = ( ALGBRC(94)*CONSTS(61))/(ALGBRC(94)+ (CONSTS(59)/CONSTS(58))*(1.00000 - ( (1.00000+ CONSTS(71)*(ALGBRC(92) - 1.00000))*0.500000)/CONSTS(60)))
ALGBRC(97) = CONSTS(61) - STATES(19)
ALGBRC(98) = CONSTS(62)*ALGBRC(97)/ALGBRC(95) ** CONSTS(67)
ALGBRC(90) = CONSTS(63)+( CONSTS(64)*STATES(18) ** CONSTS(65) - 1.00000)/(STATES(18) ** CONSTS(65)+CONSTS(66) ** CONSTS(65))
ALGBRC(99) = 1.00000+ CONSTS(71)*(ALGBRC(92) - 1.00000)
ALGBRC(96) = (CONSTS(62)/ALGBRC(95)/CONSTS(61) ** CONSTS(67) - CONSTS(86))/(CONSTS(63)+CONSTS(89)+CONSTS(62)/ALGBRC(95)/CONSTS(61) ** CONSTS(67))
ALGBRC(100) = ( CONSTS(72)*STATES(18))/ALGBRC(96)
ALGBRC(101) = ALGBRC(100)*ALGBRC(99)
ALGBRC(102) = STATES(20)+STATES(21)+STATES(22)
ALGBRC(103) = TERNRY(ALGBRC(102).LT.0.00000, ( ALGBRC(101)*( CONSTS(73)*ALGBRC(102)+1.00000))/(1.00000 - ALGBRC(102)), ( ALGBRC(101)*(1.00000+ (CONSTS(73)+2.00000)*ALGBRC(102)))/(1.00000+ALGBRC(102)))
ALGBRC(104) = TERNRY(1.00000 - ALGBRC(103)/( CONSTS(60)*CONSTS(72)).GT.0.100000, CONSTS(59)*(1.00000 - ALGBRC(103)/( CONSTS(60)*CONSTS(72))), CONSTS(59)*0.100000)
ALGBRC(105) = (CONSTS(61) - STATES(19))*ALGBRC(104) - STATES(13)*STATES(19)*CONSTS(58)
ALGBRC(84) = 1.00000+( CONSTS(56)*CONSTS(57))/CONSTS(56)+STATES(13) ** 2.00000 ** - 1.00000
ALGBRC(11) = STATES(13)
ALGBRC(23) = TERNRY(ABS(ALGBRC(22)).GT.1.00000e-09, (STATES(13)+ (CONSTS(28)/CONSTS(27))*STATES(14)+( (CONSTS(29)/CONSTS(27))*CONSTS(26)*ALGBRC(22)*EXP(- ALGBRC(22)))/(1.00000 - EXP(- ALGBRC(22))))/(1.00000+CONSTS(28)/CONSTS(27)+( (CONSTS(29)/CONSTS(27))*ALGBRC(22))/(1.00000 - EXP(- ALGBRC(22)))), (STATES(13)+ (CONSTS(28)/CONSTS(27))*STATES(14)+ (CONSTS(29)/CONSTS(27))*CONSTS(26))/(1.00000+CONSTS(28)/CONSTS(27)+CONSTS(29)/CONSTS(27)))
ALGBRC(59) = CONSTS(88)/(ALGBRC(37)+CONSTS(88))
ALGBRC(62) = ALGBRC(37)/(ALGBRC(37)+CONSTS(88))
ALGBRC(65) = CONSTS(90)/(ALGBRC(38)+CONSTS(90))
ALGBRC(68) = ALGBRC(38)/(ALGBRC(38)+CONSTS(90))
ALGBRC(71) = (((((((1.00000 - ALGBRC(54)) - ALGBRC(55)) - ALGBRC(56)) - ALGBRC(57)) - ALGBRC(59)) - ALGBRC(65)) - ALGBRC(62)) - ALGBRC(68)
ALGBRC(93) = ALGBRC(91)
RETURN
END
REAL FUNCTION TERNRY(TEST, VALA, VALB)
LOGICAL TEST
REAL VALA, VALB
IF (TEST) THEN
TERNRY = VALA
ELSE
TERNRY = VALB
ENDIF
RETURN
END
