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 41 entries in the algebraic variable array.
C There are a total of 27 entries in each of the rate and state variable arrays.
C There are a total of 65 entries in the constant variable array.
C
C
C VOI is time in component Environment (second).
C CONSTS(1) is RT in component fixed_parameters (kilojoule_per_mole).
C CONSTS(2) is F in component fixed_parameters (kilojoule_per_mole_per_millivolt).
C CONSTS(3) is dG_C1o in component fixed_parameters (kilojoule_per_mole).
C CONSTS(4) is dG_C3o in component fixed_parameters (kilojoule_per_mole).
C CONSTS(5) is dG_C4o in component fixed_parameters (kilojoule_per_mole).
C ALGBRC(4) is dG_C1op in component fixed_parameters (kilojoule_per_mole).
C ALGBRC(7) is dG_C3op in component fixed_parameters (kilojoule_per_mole).
C ALGBRC(8) is dG_C4op in component fixed_parameters (kilojoule_per_mole).
C CONSTS(6) is dG_F1o in component fixed_parameters (kilojoule_per_mole).
C ALGBRC(1) is dG_H in component fixed_parameters (kilojoule_per_mole).
C CONSTS(7) is k_dHPI in component fixed_parameters (molar).
C CONSTS(8) is k_dHatp in component fixed_parameters (molar).
C CONSTS(9) is k_dHadp in component fixed_parameters (molar).
C CONSTS(10) is K_DT in component fixed_parameters (molar).
C CONSTS(11) is K_DD in component fixed_parameters (molar).
C CONSTS(12) is K_AK in component fixed_parameters (dimensionless).
C CONSTS(13) is K_CK in component fixed_parameters (per_molar).
C CONSTS(14) is W_c in component fixed_parameters (l_water_per_l_cyto).
C CONSTS(15) is W_x in component fixed_parameters (l_water_per_l_mito).
C CONSTS(16) is W_i in component fixed_parameters (l_water_per_l_mito).
C CONSTS(17) is V_cyto in component fixed_parameters (cyto_per_cell).
C CONSTS(18) is V_mito in component fixed_parameters (mito_per_cell).
C CONSTS(62) is Rm_cyto in component fixed_parameters (mito_per_cyto).
C CONSTS(59) is Rm_cell in component fixed_parameters (mito_per_cell).
C CONSTS(64) is Rc_cell in component fixed_parameters (cyto_per_cell).
C CONSTS(19) is n_A in component fixed_parameters (dimensionless).
C CONSTS(20) is C_tot in component fixed_parameters (molar).
C CONSTS(21) is CR_tot in component fixed_parameters (molar).
C CONSTS(22) is Q_tot in component fixed_parameters (molar).
C CONSTS(23) is NAD_tot in component fixed_parameters (molar).
C CONSTS(24) is pH_C in component fixed_parameters (dimensionless).
C CONSTS(60) is H_c in component fixed_parameters (molar).
C CONSTS(25) is K_c in component fixed_parameters (molar).
C CONSTS(26) is ATP_c in component fixed_parameters (molar).
C CONSTS(27) is AMP_c in component fixed_parameters (molar).
C CONSTS(63) is H_i in component fixed_parameters (molar).
C CONSTS(61) is K_i in component fixed_parameters (molar).
C STATES(1) is H_x in component dH_x_dt (molar).
C STATES(2) is deltaPsi in component ddeltaPsi_dt (millivolt).
C CONSTS(28) is k_PI1 in component adjustable_parameters (molar).
C CONSTS(29) is k_PI2 in component adjustable_parameters (molar).
C CONSTS(30) is k_PI3 in component adjustable_parameters (molar).
C CONSTS(31) is k_PI4 in component adjustable_parameters (molar).
C CONSTS(32) is k_PIH in component adjustable_parameters (molar).
C CONSTS(33) is r in component adjustable_parameters (dimensionless).
C CONSTS(34) is X_DH in component adjustable_parameters (mole_per_second_per_l_mito_per_molar).
C CONSTS(35) is X_C1 in component adjustable_parameters (mole_per_second_per_l_mito_per_molar_per_molar).
C CONSTS(36) is X_C3 in component adjustable_parameters (mole_per_second_per_l_mito_per_molar_per_half_molar).
C CONSTS(37) is X_C4 in component adjustable_parameters (mole_per_second_per_l_mito_per_molar).
C CONSTS(38) is X_F1 in component adjustable_parameters (mole_per_second_per_l_mito_per_molar_per_molar).
C CONSTS(39) is X_ANT in component adjustable_parameters (mole_per_second_per_l_mito_per_molar).
C CONSTS(40) is X_PI1 in component adjustable_parameters (mole_per_second_per_l_mito_per_molar).
C CONSTS(41) is X_KH in component adjustable_parameters (mole_per_second_per_l_mito_per_molar_per_molar).
C CONSTS(42) is X_Hle in component adjustable_parameters (mole_per_second_per_l_mito_per_molar_per_millivolt).
C CONSTS(43) is X_K in component adjustable_parameters (mole_per_second_per_l_mito_per_molar_per_millivolt).
C CONSTS(44) is k_mADP in component adjustable_parameters (molar).
C CONSTS(45) is X_AK in component adjustable_parameters (mole_per_second_per_l_mito_per_molar_per_molar).
C CONSTS(46) is X_CK in component adjustable_parameters (mole_per_second_per_l_mito_per_molar_per_molar).
C CONSTS(47) is X_MgA in component adjustable_parameters (mole_per_second_per_l_mito_per_molar_per_molar).
C CONSTS(48) is k_O2 in component adjustable_parameters (molar).
C CONSTS(49) is beta in component adjustable_parameters (molar).
C CONSTS(50) is C_IM in component adjustable_parameters (mole_per_l_mito_per_millivolt).
C CONSTS(51) is X_A in component adjustable_parameters (micron_per_second).
C CONSTS(52) is X_PI2 in component adjustable_parameters (micron_per_second).
C CONSTS(53) is gamma in component adjustable_parameters (per_micron).
C ALGBRC(9) is NAD_x in component dNAD_x_dt (molar).
C STATES(3) is NADH_x in component dNADH_x_dt (molar).
C ALGBRC(10) is QH2_x in component dQH2_x_dt (molar).
C STATES(4) is Q_x in component dQ_x_dt (molar).
C ALGBRC(11) is Cred_x in component dCred_x_dt (molar).
C STATES(5) is Cox_x in component dCox_x_dt (molar).
C ALGBRC(12) is ATP_fx in component dATP_fx_dt (molar).
C STATES(6) is ATP_x in component dATP_x_dt (molar).
C STATES(7) is ATP_mx in component dATP_mx_dt (molar).
C ALGBRC(13) is ADP_fx in component dADP_fx_dt (molar).
C STATES(8) is ADP_x in component dADP_x_dt (molar).
C STATES(9) is ADP_mx in component dADP_mx_dt (molar).
C ALGBRC(20) is J_DH in component J_DH (mole_per_second_per_l_mito).
C ALGBRC(22) is J_C1 in component J_C1 (mole_per_second_per_l_mito).
C ALGBRC(23) is J_C3 in component J_C3 (mole_per_second_per_l_mito).
C ALGBRC(24) is J_C4 in component J_C4 (mole_per_second_per_l_mito).
C ALGBRC(25) is J_F1 in component J_F1 (mole_per_second_per_l_mito).
C ALGBRC(33) is J_PI1 in component J_PI1 (mole_per_second_per_l_mito).
C ALGBRC(39) is J_KH in component J_KH (mole_per_second_per_l_mito).
C ALGBRC(35) is J_Hle in component J_Hle (mole_per_second_per_l_mito).
C STATES(10) is K_x in component dK_x_dt (molar).
C ALGBRC(41) is J_K in component J_K (mole_per_second_per_l_mito).
C STATES(11) is Mg_x in component dMg_x_dt (molar).
C ALGBRC(15) is J_MgATP_x in component J_MgATP_x (mole_per_second_per_l_mito).
C ALGBRC(17) is J_MgADP_x in component J_MgADP_x (mole_per_second_per_l_mito).
C ALGBRC(28) is J_ANT in component J_ANT (mole_per_second_per_l_mito).
C STATES(12) is PI_x in component dPI_x_dt (molar).
C ALGBRC(14) is ATP_fi in component dATP_fi_dt (molar).
C STATES(13) is ATP_i in component dATP_i_dt (molar).
C STATES(14) is ATP_mi in component dATP_mi_dt (molar).
C ALGBRC(16) is ADP_fi in component dADP_fi_dt (molar).
C STATES(15) is ADP_i in component dADP_i_dt (molar).
C STATES(16) is ADP_mi in component dADP_mi_dt (molar).
C ALGBRC(34) is J_ATP in component J_ATP (mole_per_second_per_l_mito).
C ALGBRC(36) is J_AKi in component J_AKi (mole_per_second_per_l_mito).
C ALGBRC(32) is J_ADP in component J_ADP (mole_per_second_per_l_mito).
C STATES(17) is AMP_i in component dAMP_i_dt (molar).
C ALGBRC(30) is J_AMP in component J_AMP (mole_per_second_per_l_mito).
C ALGBRC(19) is J_MgATP_i in component J_MgATP_i (mole_per_second_per_l_mito).
C ALGBRC(21) is J_MgADP_i in component J_MgADP_i (mole_per_second_per_l_mito).
C STATES(18) is PI_i in component dPI_i_dt (molar).
C ALGBRC(37) is J_PI2 in component J_PI2 (mole_per_second_per_l_mito).
C STATES(19) is Mg_i in component dMg_i_dt (molar).
C STATES(20) is ATP_c in component dATP_c_dt (molar).
C ALGBRC(38) is J_AKc in component J_AKc (mole_per_second_per_l_cyto).
C CONSTS(65) is J_AtC in component J_AtC (mole_per_second_per_l_cell).
C ALGBRC(40) is J_CKc in component J_CKc (mole_per_second_per_l_cyto).
C STATES(21) is ADP_c in component dADP_c_dt (molar).
C STATES(22) is AMP_c in component dAMP_c_dt (molar).
C STATES(23) is ATP_mc in component dATP_mc_dt (molar).
C ALGBRC(5) is J_MgATP_c in component J_MgATP_c (mole_per_second_per_l_cyto).
C STATES(24) is ADP_mc in component dADP_mc_dt (molar).
C ALGBRC(6) is J_MgADP_c in component J_MgADP_c (mole_per_second_per_l_cyto).
C STATES(25) is PI_c in component dPI_c_dt (molar).
C STATES(26) is Mg_c in component dMg_c_dt (molar).
C STATES(27) is PCr_c in component dPCr_c_dt (molar).
C ALGBRC(2) is ATP_fc in component dATP_fc_dt (molar).
C ALGBRC(3) is ADP_fc in component dADP_fc_dt (molar).
C ALGBRC(18) is Cr_c in component dCr_c_dt (molar).
C CONSTS(54) is O2_x in component J_C4 (molar).
C CONSTS(55) is mincon in component J_ANT (molar).
C ALGBRC(26) is Psi_x in component J_ANT (millivolt).
C ALGBRC(27) is Psi_i in component J_ANT (millivolt).
C ALGBRC(29) is H2PIi in component J_PI1 (molar).
C ALGBRC(31) is H2PIx in component J_PI1 (molar).
C CONSTS(56) is mincond in component J_Hle (millivolt).
C CONSTS(57) is mincond in component J_K (millivolt).
C CONSTS(58) is X_AtC in component J_AtC (mole_per_second_per_l_cell).
C RATES(1) is d/dt H_x in component dH_x_dt (molar).
C RATES(10) is d/dt K_x in component dK_x_dt (molar).
C RATES(11) is d/dt Mg_x in component dMg_x_dt (molar).
C RATES(3) is d/dt NADH_x in component dNADH_x_dt (molar).
C RATES(4) is d/dt Q_x in component dQ_x_dt (molar).
C RATES(5) is d/dt Cox_x in component dCox_x_dt (molar).
C RATES(6) is d/dt ATP_x in component dATP_x_dt (molar).
C RATES(8) is d/dt ADP_x in component dADP_x_dt (molar).
C RATES(7) is d/dt ATP_mx in component dATP_mx_dt (molar).
C RATES(9) is d/dt ADP_mx in component dADP_mx_dt (molar).
C RATES(12) is d/dt PI_x in component dPI_x_dt (molar).
C RATES(13) is d/dt ATP_i in component dATP_i_dt (molar).
C RATES(15) is d/dt ADP_i in component dADP_i_dt (molar).
C RATES(17) is d/dt AMP_i in component dAMP_i_dt (molar).
C RATES(14) is d/dt ATP_mi in component dATP_mi_dt (molar).
C RATES(16) is d/dt ADP_mi in component dADP_mi_dt (molar).
C RATES(18) is d/dt PI_i in component dPI_i_dt (molar).
C RATES(19) is d/dt Mg_i in component dMg_i_dt (molar).
C RATES(20) is d/dt ATP_c in component dATP_c_dt (molar).
C RATES(21) is d/dt ADP_c in component dADP_c_dt (molar).
C RATES(22) is d/dt AMP_c in component dAMP_c_dt (molar).
C RATES(23) is d/dt ATP_mc in component dATP_mc_dt (molar).
C RATES(24) is d/dt ADP_mc in component dADP_mc_dt (molar).
C RATES(25) is d/dt PI_c in component dPI_c_dt (molar).
C RATES(26) is d/dt Mg_c in component dMg_c_dt (molar).
C RATES(27) is d/dt PCr_c in component dPCr_c_dt (molar).
C RATES(2) is d/dt deltaPsi in component ddeltaPsi_dt (millivolt).
C
      SUBROUTINE initConsts(CONSTS, RATES, STATES)
      REAL CONSTS(*), RATES(*), STATES(*)
      CONSTS(1) = 2.5775
      CONSTS(2) = 0.096484
      CONSTS(3) = -69.37
      CONSTS(4) = -32.53
      CONSTS(5) = -122.94
      CONSTS(6) = 36.03
      CONSTS(7) = 1.7782754100389227e-7
      CONSTS(8) = 3.311311214825911e-7
      CONSTS(9) = 5.128613839913649e-7
      CONSTS(10) = 24e-6
      CONSTS(11) = 347e-6
      CONSTS(12) = 0.4331
      CONSTS(13) = 1.66e9
      CONSTS(14) = 0.8425
      CONSTS(15) = 0.6514
      CONSTS(16) = 0.0724
      CONSTS(17) = 0.894
      CONSTS(18) = 0.056
      CONSTS(19) = 3
      CONSTS(20) = 2.7e-3
      CONSTS(21) = 42.7e-3
      CONSTS(22) = 1.35e-3
      CONSTS(23) = 2.97e-3
      CONSTS(24) = 7
      CONSTS(25) = 0.15
      CONSTS(26) = 0
      CONSTS(27) = 0
      STATES(1) = 1e-7
      STATES(2) = 166.67
      CONSTS(28) = 0.1553e-3
      CONSTS(29) = 0.8222e-3
      CONSTS(30) = 0.3601e-3
      CONSTS(31) = 5.924e-3
      CONSTS(32) = 2.542e-4
      CONSTS(33) = 4.599
      CONSTS(34) = 0.0866
      CONSTS(35) = 4.405e3
      CONSTS(36) = 4.887
      CONSTS(37) = 6.766e-5
      CONSTS(38) = 1e3
      CONSTS(39) = 8.123e-3
      CONSTS(40) = 3.85e5
      CONSTS(41) = 5.651e7
      CONSTS(42) = 200
      CONSTS(43) = 0
      CONSTS(44) = 3.5e-6
      CONSTS(45) = 1e7
      CONSTS(46) = 1e7
      CONSTS(47) = 1e7
      CONSTS(48) = 1.2e-4
      CONSTS(49) = 0.01
      CONSTS(50) = 6.75e-6
      CONSTS(51) = 85
      CONSTS(52) = 327
      CONSTS(53) = 5.99
      STATES(3) = 0.0015723
      STATES(4) = 6.75e-4
      STATES(5) = 1.35e-3
      STATES(6) = 0.0026657
      STATES(7) = 0.0026046
      STATES(8) = 0.0073343
      STATES(9) = 0.0054765
      STATES(10) = 0.14661
      STATES(11) = 1.0229e-3
      STATES(12) = 1.72e-4
      STATES(13) = 0.0065339
      STATES(14) = 0.0063812
      STATES(15) = 6.5773e-5
      STATES(16) = 4.8866e-5
      STATES(17) = 2.8837e-7
      STATES(18) = 1.72e-4
      STATES(19) = 0.0010029
      STATES(20) = 0.0081312
      STATES(21) = 6.85e-5
      STATES(22) = 3.0911e-7
      STATES(23) = 0.0079786
      STATES(24) = 5.1958e-5
      STATES(25) = 8.7702e-3
      STATES(26) = 0.001003
      STATES(27) = 23.589e-3
      CONSTS(54) = 0
      CONSTS(55) = 1e-9
      CONSTS(56) = 1e-6
      CONSTS(57) = 1e-6
      CONSTS(58) = 0
      CONSTS(59) = CONSTS(18)
      CONSTS(60) =  1.00000*10.0000 ** - CONSTS(24)
      CONSTS(61) = CONSTS(25)
      CONSTS(62) = CONSTS(18)/CONSTS(17)
      CONSTS(63) = CONSTS(60)
      CONSTS(64) = CONSTS(17)
      CONSTS(65) = CONSTS(58)
      RETURN
      END
      SUBROUTINE computeRates(VOI, CONSTS,  RATES, STATES, ALGBRC)
      REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*)
      ALGBRC(2) = STATES(20) - STATES(23)
      ALGBRC(5) =  CONSTS(47)*( ALGBRC(2)*STATES(26) -  CONSTS(10)*STATES(23))
      RATES(23) = ALGBRC(5)/CONSTS(14)
      ALGBRC(3) = STATES(21) - STATES(24)
      ALGBRC(6) =  CONSTS(47)*( ALGBRC(3)*STATES(26) -  CONSTS(11)*STATES(24))
      RATES(24) = ALGBRC(6)/CONSTS(14)
      RATES(26) = (- ALGBRC(5) - ALGBRC(5))/CONSTS(14)
      ALGBRC(12) = STATES(6) - STATES(7)
      ALGBRC(15) =  CONSTS(47)*( ALGBRC(12)*STATES(11) -  CONSTS(10)*STATES(7))
      RATES(7) = ALGBRC(15)/CONSTS(15)
      ALGBRC(13) = STATES(8) - STATES(9)
      ALGBRC(17) =  CONSTS(47)*( ALGBRC(13)*STATES(11) -  CONSTS(11)*STATES(9))
      RATES(11) = (- ALGBRC(17) - ALGBRC(15))/CONSTS(15)
      RATES(9) = ALGBRC(17)/CONSTS(15)
      ALGBRC(14) = STATES(13) - STATES(14)
      ALGBRC(19) =  CONSTS(47)*( ALGBRC(14)*STATES(19) -  CONSTS(10)*STATES(14))
      RATES(14) = ALGBRC(19)/CONSTS(16)
      ALGBRC(16) = STATES(15) - STATES(16)
      ALGBRC(21) =  CONSTS(47)*( ALGBRC(16)*STATES(19) -  CONSTS(11)*STATES(16))
      RATES(16) = ALGBRC(21)/CONSTS(16)
      RATES(19) = (- ALGBRC(21) - ALGBRC(19))/CONSTS(16)
      ALGBRC(9) = CONSTS(23) - STATES(3)
      ALGBRC(20) = ( CONSTS(34)*( CONSTS(33)*ALGBRC(9) - STATES(3))*(1.00000+STATES(12)/CONSTS(28)))/(1.00000+STATES(12)/CONSTS(29))
      ALGBRC(4) = CONSTS(3) -  1.00000*CONSTS(1)*arbitrary_log( (STATES(1)/1.00000)*10.0000 ** 7.00000, 10)
      ALGBRC(1) =  CONSTS(2)*STATES(2)+ CONSTS(1)*arbitrary_log(CONSTS(63)/STATES(1), 10)
      ALGBRC(10) = CONSTS(22) - STATES(4)
      ALGBRC(22) =  CONSTS(35)*( EXP(- (ALGBRC(4)+ 4.00000*ALGBRC(1))/CONSTS(1))*STATES(3)*STATES(4) -  ALGBRC(9)*ALGBRC(10))
      RATES(3) = (ALGBRC(20) - ALGBRC(22))/CONSTS(15)
      ALGBRC(7) = CONSTS(4)+ 2.00000*CONSTS(1)*arbitrary_log( (STATES(1)/1.00000)*10.0000 ** 7.00000, 10)
      ALGBRC(11) = CONSTS(20) - STATES(5)
      ALGBRC(23) =  (( CONSTS(36)*(1.00000+STATES(12)/CONSTS(30)))/(1.00000+STATES(12)/CONSTS(31)))*( EXP(- ((ALGBRC(7)+ 4.00000*ALGBRC(1)) -  2.00000*CONSTS(2)*STATES(2))/( 2.00000*CONSTS(1)))*STATES(5)* ALGBRC(10) ** (1.0 / 2) -  ALGBRC(11)* STATES(4) ** (1.0 / 2))
      RATES(4) = (ALGBRC(22) - ALGBRC(23))/CONSTS(15)
      ALGBRC(8) = CONSTS(5) -  2.00000*CONSTS(1)*arbitrary_log( (STATES(1)/1.00000)*10.0000 ** 7.00000, 10)
      ALGBRC(24) = TERNRY(CONSTS(54).LT.1.00000e-12, 0.00000,  (( (( CONSTS(37)*CONSTS(54))/(CONSTS(54)+CONSTS(48)))*ALGBRC(11))/CONSTS(20))*( EXP(- (ALGBRC(8)+ 2.00000*ALGBRC(1))/( 2.00000*CONSTS(1)))*ALGBRC(11)*CONSTS(54) ** 0.250000 -  STATES(5)*EXP(( CONSTS(2)*STATES(2))/CONSTS(1))))
      RATES(5) = ( 2.00000*ALGBRC(23) -  2.00000*ALGBRC(24))/CONSTS(15)
      ALGBRC(25) =  CONSTS(38)*( (( EXP(- (CONSTS(6) -  CONSTS(19)*ALGBRC(1))/CONSTS(1))*CONSTS(11))/CONSTS(10))*STATES(9)*STATES(12) -  STATES(7)*1.00000)
      ALGBRC(26) =  - 0.650000*STATES(2)
      ALGBRC(27) =  0.350000*STATES(2)
      ALGBRC(28) = TERNRY(ALGBRC(16).GT.CONSTS(55).AND.ALGBRC(14).GT.CONSTS(55), ( CONSTS(39)*(ALGBRC(16)/(ALGBRC(16)+ ALGBRC(14)*EXP(( - CONSTS(2)*ALGBRC(27))/CONSTS(1))) - ALGBRC(13)/(ALGBRC(13)+ ALGBRC(12)*EXP(( - CONSTS(2)*ALGBRC(26))/CONSTS(1))))*ALGBRC(16))/(ALGBRC(16)+CONSTS(44)), 0.00000)
      RATES(6) = (ALGBRC(25) - ALGBRC(28))/CONSTS(15)
      RATES(8) = (- ALGBRC(25)+ALGBRC(28))/CONSTS(15)
      ALGBRC(29) = ( STATES(18)*CONSTS(63))/(CONSTS(63)+CONSTS(7))
      ALGBRC(31) = ( STATES(12)*STATES(1))/(STATES(1)+CONSTS(7))
      ALGBRC(33) = ( CONSTS(40)*( CONSTS(63)*ALGBRC(29) -  STATES(1)*ALGBRC(31)))/(ALGBRC(29)+CONSTS(32))
      RATES(12) = (- ALGBRC(25) - ALGBRC(33))/CONSTS(15)
      ALGBRC(34) =  CONSTS(53)*CONSTS(51)*(STATES(20) - STATES(13))
      ALGBRC(36) =  CONSTS(45)*( CONSTS(12)*STATES(15)*STATES(15) -  STATES(17)*STATES(13))
      RATES(13) = (ALGBRC(34)+ALGBRC(28)+ALGBRC(36))/CONSTS(16)
      ALGBRC(32) =  CONSTS(53)*CONSTS(51)*(STATES(21) - STATES(15))
      RATES(15) = ((ALGBRC(32) - ALGBRC(28)) -  2.00000*ALGBRC(36))/CONSTS(16)
      ALGBRC(30) =  CONSTS(53)*CONSTS(51)*(STATES(22) - STATES(17))
      RATES(17) = (ALGBRC(30)+ALGBRC(36))/CONSTS(16)
      ALGBRC(37) =  CONSTS(53)*CONSTS(52)*(STATES(25) - STATES(18))
      RATES(18) = (- ALGBRC(33)+ALGBRC(37))/CONSTS(16)
      ALGBRC(38) =  CONSTS(45)*( CONSTS(12)*STATES(21)*STATES(21) -  STATES(22)*STATES(20))
      RATES(22) = ( - CONSTS(62)*ALGBRC(30)+ALGBRC(38))/CONSTS(14)
      RATES(25) = ( - ALGBRC(37)*CONSTS(62)+CONSTS(65)/CONSTS(64))/CONSTS(14)
      ALGBRC(39) =  CONSTS(41)*( CONSTS(61)*STATES(1) -  STATES(10)*CONSTS(63))
      ALGBRC(35) = TERNRY(ABS(STATES(2)).GT.CONSTS(56), ( CONSTS(42)*STATES(2)*( CONSTS(63)*EXP(( CONSTS(2)*STATES(2))/CONSTS(1)) - STATES(1)))/(EXP(( CONSTS(2)*STATES(2))/CONSTS(1)) - 1.00000), ( CONSTS(42)*CONSTS(1)*(CONSTS(63) - STATES(1)))/CONSTS(2))
      RATES(1) = ( (STATES(1)/CONSTS(49))*((((((ALGBRC(20) -  5.00000*ALGBRC(22)) -  2.00000*ALGBRC(23)) -  4.00000*ALGBRC(24))+ (CONSTS(19) - 1.00000)*ALGBRC(25)+ 2.00000*ALGBRC(33)) - ALGBRC(39))+ALGBRC(35)))/CONSTS(15)
      ALGBRC(18) = CONSTS(21) - STATES(27)
      ALGBRC(40) =  CONSTS(46)*( CONSTS(13)*STATES(21)*STATES(27)*CONSTS(60) -  STATES(20)*ALGBRC(18))
      RATES(20) = ((( - CONSTS(62)*ALGBRC(34)+ALGBRC(38)) - CONSTS(65)/CONSTS(64))+ALGBRC(40))/CONSTS(14)
      RATES(21) = ((( - CONSTS(62)*ALGBRC(32) -  2.00000*ALGBRC(38))+CONSTS(65)/CONSTS(64)) - ALGBRC(40))/CONSTS(14)
      RATES(27) = - ALGBRC(40)/CONSTS(14)
      ALGBRC(41) = TERNRY(ABS(STATES(2)).GT.CONSTS(57), ( CONSTS(43)*STATES(2)*( CONSTS(61)*EXP(( CONSTS(2)*STATES(2))/CONSTS(1)) - STATES(10)))/(EXP(( CONSTS(2)*STATES(2))/CONSTS(1)) - 1.00000), ( CONSTS(43)*CONSTS(1)*(CONSTS(61) - STATES(10)))/CONSTS(2))
      RATES(10) = (ALGBRC(39)+ALGBRC(41))/CONSTS(15)
      RATES(2) = ((((( 4.00000*ALGBRC(22)+ 2.00000*ALGBRC(23)+ 4.00000*ALGBRC(24)) -  CONSTS(19)*ALGBRC(25)) - ALGBRC(28)) - ALGBRC(35)) - ALGBRC(41))/CONSTS(50)
      RETURN
      END
      SUBROUTINE computeVariables(VOI, CONSTS, RATES, STATES, ALGBRC)
      REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*)
      ALGBRC(2) = STATES(20) - STATES(23)
      ALGBRC(5) =  CONSTS(47)*( ALGBRC(2)*STATES(26) -  CONSTS(10)*STATES(23))
      ALGBRC(3) = STATES(21) - STATES(24)
      ALGBRC(6) =  CONSTS(47)*( ALGBRC(3)*STATES(26) -  CONSTS(11)*STATES(24))
      ALGBRC(12) = STATES(6) - STATES(7)
      ALGBRC(15) =  CONSTS(47)*( ALGBRC(12)*STATES(11) -  CONSTS(10)*STATES(7))
      ALGBRC(13) = STATES(8) - STATES(9)
      ALGBRC(17) =  CONSTS(47)*( ALGBRC(13)*STATES(11) -  CONSTS(11)*STATES(9))
      ALGBRC(14) = STATES(13) - STATES(14)
      ALGBRC(19) =  CONSTS(47)*( ALGBRC(14)*STATES(19) -  CONSTS(10)*STATES(14))
      ALGBRC(16) = STATES(15) - STATES(16)
      ALGBRC(21) =  CONSTS(47)*( ALGBRC(16)*STATES(19) -  CONSTS(11)*STATES(16))
      ALGBRC(9) = CONSTS(23) - STATES(3)
      ALGBRC(20) = ( CONSTS(34)*( CONSTS(33)*ALGBRC(9) - STATES(3))*(1.00000+STATES(12)/CONSTS(28)))/(1.00000+STATES(12)/CONSTS(29))
      ALGBRC(4) = CONSTS(3) -  1.00000*CONSTS(1)*arbitrary_log( (STATES(1)/1.00000)*10.0000 ** 7.00000, 10)
      ALGBRC(1) =  CONSTS(2)*STATES(2)+ CONSTS(1)*arbitrary_log(CONSTS(63)/STATES(1), 10)
      ALGBRC(10) = CONSTS(22) - STATES(4)
      ALGBRC(22) =  CONSTS(35)*( EXP(- (ALGBRC(4)+ 4.00000*ALGBRC(1))/CONSTS(1))*STATES(3)*STATES(4) -  ALGBRC(9)*ALGBRC(10))
      ALGBRC(7) = CONSTS(4)+ 2.00000*CONSTS(1)*arbitrary_log( (STATES(1)/1.00000)*10.0000 ** 7.00000, 10)
      ALGBRC(11) = CONSTS(20) - STATES(5)
      ALGBRC(23) =  (( CONSTS(36)*(1.00000+STATES(12)/CONSTS(30)))/(1.00000+STATES(12)/CONSTS(31)))*( EXP(- ((ALGBRC(7)+ 4.00000*ALGBRC(1)) -  2.00000*CONSTS(2)*STATES(2))/( 2.00000*CONSTS(1)))*STATES(5)* ALGBRC(10) ** (1.0 / 2) -  ALGBRC(11)* STATES(4) ** (1.0 / 2))
      ALGBRC(8) = CONSTS(5) -  2.00000*CONSTS(1)*arbitrary_log( (STATES(1)/1.00000)*10.0000 ** 7.00000, 10)
      ALGBRC(24) = TERNRY(CONSTS(54).LT.1.00000e-12, 0.00000,  (( (( CONSTS(37)*CONSTS(54))/(CONSTS(54)+CONSTS(48)))*ALGBRC(11))/CONSTS(20))*( EXP(- (ALGBRC(8)+ 2.00000*ALGBRC(1))/( 2.00000*CONSTS(1)))*ALGBRC(11)*CONSTS(54) ** 0.250000 -  STATES(5)*EXP(( CONSTS(2)*STATES(2))/CONSTS(1))))
      ALGBRC(25) =  CONSTS(38)*( (( EXP(- (CONSTS(6) -  CONSTS(19)*ALGBRC(1))/CONSTS(1))*CONSTS(11))/CONSTS(10))*STATES(9)*STATES(12) -  STATES(7)*1.00000)
      ALGBRC(26) =  - 0.650000*STATES(2)
      ALGBRC(27) =  0.350000*STATES(2)
      ALGBRC(28) = TERNRY(ALGBRC(16).GT.CONSTS(55).AND.ALGBRC(14).GT.CONSTS(55), ( CONSTS(39)*(ALGBRC(16)/(ALGBRC(16)+ ALGBRC(14)*EXP(( - CONSTS(2)*ALGBRC(27))/CONSTS(1))) - ALGBRC(13)/(ALGBRC(13)+ ALGBRC(12)*EXP(( - CONSTS(2)*ALGBRC(26))/CONSTS(1))))*ALGBRC(16))/(ALGBRC(16)+CONSTS(44)), 0.00000)
      ALGBRC(29) = ( STATES(18)*CONSTS(63))/(CONSTS(63)+CONSTS(7))
      ALGBRC(31) = ( STATES(12)*STATES(1))/(STATES(1)+CONSTS(7))
      ALGBRC(33) = ( CONSTS(40)*( CONSTS(63)*ALGBRC(29) -  STATES(1)*ALGBRC(31)))/(ALGBRC(29)+CONSTS(32))
      ALGBRC(34) =  CONSTS(53)*CONSTS(51)*(STATES(20) - STATES(13))
      ALGBRC(36) =  CONSTS(45)*( CONSTS(12)*STATES(15)*STATES(15) -  STATES(17)*STATES(13))
      ALGBRC(32) =  CONSTS(53)*CONSTS(51)*(STATES(21) - STATES(15))
      ALGBRC(30) =  CONSTS(53)*CONSTS(51)*(STATES(22) - STATES(17))
      ALGBRC(37) =  CONSTS(53)*CONSTS(52)*(STATES(25) - STATES(18))
      ALGBRC(38) =  CONSTS(45)*( CONSTS(12)*STATES(21)*STATES(21) -  STATES(22)*STATES(20))
      ALGBRC(39) =  CONSTS(41)*( CONSTS(61)*STATES(1) -  STATES(10)*CONSTS(63))
      ALGBRC(35) = TERNRY(ABS(STATES(2)).GT.CONSTS(56), ( CONSTS(42)*STATES(2)*( CONSTS(63)*EXP(( CONSTS(2)*STATES(2))/CONSTS(1)) - STATES(1)))/(EXP(( CONSTS(2)*STATES(2))/CONSTS(1)) - 1.00000), ( CONSTS(42)*CONSTS(1)*(CONSTS(63) - STATES(1)))/CONSTS(2))
      ALGBRC(18) = CONSTS(21) - STATES(27)
      ALGBRC(40) =  CONSTS(46)*( CONSTS(13)*STATES(21)*STATES(27)*CONSTS(60) -  STATES(20)*ALGBRC(18))
      ALGBRC(41) = TERNRY(ABS(STATES(2)).GT.CONSTS(57), ( CONSTS(43)*STATES(2)*( CONSTS(61)*EXP(( CONSTS(2)*STATES(2))/CONSTS(1)) - STATES(10)))/(EXP(( CONSTS(2)*STATES(2))/CONSTS(1)) - 1.00000), ( CONSTS(43)*CONSTS(1)*(CONSTS(61) - STATES(10)))/CONSTS(2))
      RETURN
      END
      REAL FUNCTION TERNRY(TEST, VALA, VALB)
      LOGICAL TEST
      REAL VALA, VALB
      IF (TEST) THEN
        TERNRY = VALA
      ELSE
        TERNRY = VALB
      ENDIF
      RETURN
      END