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 67 entries in the algebraic variable array.
C There are a total of 18 entries in each of the rate and state variable arrays.
C There are a total of 68 entries in the constant variable array.
C
C
C VOI is time in component Environment (ms).
C CONSTS(1) is F in component Environment (C_per_mole).
C CONSTS(2) is R in component Environment (mJ_per_mole_K).
C CONSTS(3) is Temp in component Environment (kelvin).
C CONSTS(54) is FonRT in component Environment (per_mV).
C CONSTS(4) is K_o in component Environment (mM).
C CONSTS(5) is Na_o in component Environment (mM).
C CONSTS(6) is Ca_o in component Environment (mM).
C STATES(1) is V in component cell (mV).
C ALGBRC(53) is ilca in component ICaL (uA_per_uF).
C ALGBRC(63) is icab in component ICab (uA_per_uF).
C ALGBRC(62) is ipca in component IpCa (uA_per_uF).
C ALGBRC(60) is inaca in component INaCa (uA_per_uF).
C ALGBRC(65) is icat in component ICaT (uA_per_uF).
C ALGBRC(31) is ina in component INa (uA_per_uF).
C ALGBRC(32) is inab in component INab (uA_per_uF).
C ALGBRC(54) is ilcana in component ICaL (uA_per_uF).
C ALGBRC(29) is inak in component INaK (uA_per_uF).
C ALGBRC(38) is ikr in component IKr (uA_per_uF).
C ALGBRC(58) is iks in component IKs (uA_per_uF).
C ALGBRC(37) is IK1 in component IK1 (uA_per_uF).
C ALGBRC(39) is ikp in component IKp (uA_per_uF).
C ALGBRC(56) is ilcak in component ICaL (uA_per_uF).
C ALGBRC(66) is caiont in component cell (uA_per_uF).
C ALGBRC(61) is naiont in component cell (uA_per_uF).
C ALGBRC(59) is kiont in component cell (uA_per_uF).
C CONSTS(7) is l in component cell (cm).
C CONSTS(8) is ra in component cell (cm).
C CONSTS(57) is vcell in component cell (uL).
C CONSTS(58) is ageo in component cell (cm2).
C CONSTS(62) is Acap in component cell (uF).
C CONSTS(66) is AF in component cell (uF_mole_per_C).
C CONSTS(63) is vmyo in component cell (uL).
C CONSTS(59) is vmito in component cell (uL).
C CONSTS(60) is vsr in component cell (uL).
C CONSTS(64) is vnsr in component cell (uL).
C CONSTS(65) is vjsr in component cell (uL).
C CONSTS(61) is vss in component cell (uL).
C ALGBRC(10) is i_Stim in component cell (uA_per_uF).
C CONSTS(9) is stim_offset in component cell (ms).
C CONSTS(10) is stim_period in component cell (ms).
C CONSTS(11) is stim_duration in component cell (ms).
C CONSTS(12) is stim_amplitude in component cell (uA_per_uF).
C ALGBRC(1) is past in component cell (ms).
C ALGBRC(30) is ENa in component reversal_potentials (mV).
C STATES(2) is H in component INa (dimensionless).
C STATES(3) is m in component INa (dimensionless).
C STATES(4) is J in component INa (dimensionless).
C CONSTS(13) is GNa in component INa (mS_per_uF).
C ALGBRC(2) is a in component INa (per_ms).
C ALGBRC(11) is aH in component INa (per_ms).
C ALGBRC(21) is bH in component INa (per_ms).
C ALGBRC(12) is aj in component INa (per_ms).
C ALGBRC(22) is bj in component INa (per_ms).
C ALGBRC(3) is am in component INa (per_ms).
C ALGBRC(13) is bm in component INa (per_ms).
C ALGBRC(50) is Ca_i in component Ca (mM).
C STATES(5) is Na_i in component Na (mM).
C STATES(6) is K_i in component K (mM).
C STATES(7) is d in component ICaL (dimensionless).
C STATES(8) is f in component ICaL (dimensionless).
C ALGBRC(4) is dss0 in component ICaL (dimensionless).
C ALGBRC(14) is taud in component ICaL (ms).
C ALGBRC(23) is dss1 in component ICaL (dimensionless).
C ALGBRC(26) is dss in component ICaL (dimensionless).
C ALGBRC(5) is fss in component ICaL (dimensionless).
C ALGBRC(15) is tauf in component ICaL (ms).
C CONSTS(14) is gacai in component ICaL (dimensionless).
C CONSTS(15) is gacao in component ICaL (dimensionless).
C CONSTS(16) is kmca in component ICaL (mM).
C CONSTS(17) is pca in component ICaL (L_per_F_ms).
C CONSTS(18) is pna in component ICaL (L_per_F_ms).
C CONSTS(19) is ganai in component ICaL (dimensionless).
C CONSTS(20) is ganao in component ICaL (dimensionless).
C CONSTS(21) is pk in component ICaL (L_per_F_ms).
C CONSTS(22) is gaki in component ICaL (dimensionless).
C CONSTS(23) is gako in component ICaL (dimensionless).
C ALGBRC(51) is ibarca in component ICaL (uA_per_uF).
C ALGBRC(20) is ibarna in component ICaL (uA_per_uF).
C ALGBRC(25) is ibark in component ICaL (uA_per_uF).
C ALGBRC(52) is fca in component ICaL (dimensionless).
C ALGBRC(33) is EK in component reversal_potentials (mV).
C CONSTS(24) is GK1max in component IK1 (mS_per_uF).
C CONSTS(55) is GK1_ in component IK1 (mS_per_uF).
C ALGBRC(34) is ak1 in component IK1 (per_ms).
C ALGBRC(35) is bk1 in component IK1 (per_ms).
C ALGBRC(36) is gK1 in component IK1 (mS_per_uF).
C CONSTS(25) is gkrmax in component IKr (mS_per_uF).
C STATES(9) is xr in component IKr (dimensionless).
C ALGBRC(27) is r in component IKr (dimensionless).
C ALGBRC(6) is xrss in component IKr (dimensionless).
C ALGBRC(16) is tauxr in component IKr (ms).
C ALGBRC(40) is EKs in component reversal_potentials (mV).
C CONSTS(26) is GKsmax in component IKs (mS_per_uF).
C STATES(10) is xs1 in component IKs (dimensionless).
C STATES(11) is xs2 in component IKs (dimensionless).
C ALGBRC(57) is gks in component IKs (mS_per_uF).
C ALGBRC(7) is xss in component IKs (dimensionless).
C ALGBRC(17) is tauxs in component IKs (ms).
C CONSTS(27) is kmnai in component INaK (mM).
C CONSTS(28) is kmko in component INaK (mM).
C CONSTS(29) is ibarnak in component INaK (uA_per_uF).
C ALGBRC(28) is fnak in component INaK (dimensionless).
C CONSTS(56) is sigma in component INaK (dimensionless).
C CONSTS(30) is c1 in component INaCa (uA_per_uF).
C CONSTS(31) is c2 in component INaCa (dimensionless).
C CONSTS(32) is gammas in component INaCa (dimensionless).
C CONSTS(33) is GKpmax in component IKp (mS_per_uF).
C CONSTS(34) is ibarpca in component IpCa (uA_per_uF).
C CONSTS(35) is kmpca in component IpCa (mM).
C CONSTS(36) is gcab in component ICab (mS_per_uF).
C CONSTS(37) is GNab in component INab (mS_per_uF).
C ALGBRC(64) is ECa in component reversal_potentials (mV).
C STATES(12) is b in component ICaT (dimensionless).
C STATES(13) is g in component ICaT (dimensionless).
C CONSTS(38) is gcat in component ICaT (mS_per_uF).
C ALGBRC(8) is bss in component ICaT (dimensionless).
C ALGBRC(18) is taub in component ICaT (ms).
C ALGBRC(9) is gss in component ICaT (dimensionless).
C ALGBRC(19) is aa in component ICaT (dimensionless).
C ALGBRC(24) is taug in component ICaT (ms).
C CONSTS(39) is prnak in component reversal_potentials (dimensionless).
C STATES(14) is Ca_JSR_T in component Ca (mM).
C STATES(15) is Rel in component Irel (mM_per_ms).
C ALGBRC(55) is Rel_ss in component Irel (mM_per_ms).
C ALGBRC(44) is tau_Rel in component Irel (ms).
C CONSTS(40) is K_Relss in component Irel (mM).
C CONSTS(67) is alpha_Rel in component Irel (mM_per_mV).
C CONSTS(41) is tau in component Irel (ms).
C CONSTS(42) is kappa in component Irel (mM_per_mV_ms).
C CONSTS(43) is qn in component Irel (dimensionless).
C ALGBRC(43) is Ca_JSR_free in component Irel (mM).
C ALGBRC(41) is bbb in component Irel (mM).
C ALGBRC(42) is c in component Irel (mM2).
C CONSTS(44) is kmcsqn in component Irel (mM).
C CONSTS(45) is csqnbar in component Irel (mM).
C STATES(16) is Ca_NSR in component Ca (mM).
C CONSTS(46) is kmup in component Iup_Ileak (mM).
C CONSTS(47) is iupbar in component Iup_Ileak (mM_per_ms).
C CONSTS(48) is nsrbar in component Iup_Ileak (mM).
C ALGBRC(67) is iup in component Iup_Ileak (mM_per_ms).
C ALGBRC(45) is ileak in component Iup_Ileak (mM_per_ms).
C CONSTS(49) is tautr in component Itr (ms).
C ALGBRC(46) is itr in component Itr (mM_per_ms).
C STATES(17) is Ca_T in component Ca (mM).
C STATES(18) is Over in component Ca (dimensionless).
C CONSTS(50) is cmdnbar in component Ca (mM).
C CONSTS(51) is trpnbar in component Ca (mM).
C CONSTS(52) is kmcmdn in component Ca (mM).
C CONSTS(53) is kmtrpn in component Ca (mM).
C ALGBRC(47) is bmyo in component Ca (mM).
C ALGBRC(48) is cmyo in component Ca (mM2).
C ALGBRC(49) is dmyo in component Ca (mM3).
C RATES(1) is d/dt V in component cell (mV).
C RATES(2) is d/dt H in component INa (dimensionless).
C RATES(3) is d/dt m in component INa (dimensionless).
C RATES(4) is d/dt J in component INa (dimensionless).
C RATES(7) is d/dt d in component ICaL (dimensionless).
C RATES(8) is d/dt f in component ICaL (dimensionless).
C RATES(9) is d/dt xr in component IKr (dimensionless).
C RATES(10) is d/dt xs1 in component IKs (dimensionless).
C RATES(11) is d/dt xs2 in component IKs (dimensionless).
C RATES(12) is d/dt b in component ICaT (dimensionless).
C RATES(13) is d/dt g in component ICaT (dimensionless).
C RATES(15) is d/dt Rel in component Irel (mM_per_ms).
C RATES(5) is d/dt Na_i in component Na (mM).
C RATES(6) is d/dt K_i in component K (mM).
C RATES(18) is d/dt Over in component Ca (dimensionless).
C RATES(17) is d/dt Ca_T in component Ca (mM).
C RATES(16) is d/dt Ca_NSR in component Ca (mM).
C RATES(14) is d/dt Ca_JSR_T in component Ca (mM).
C
SUBROUTINE initConsts(CONSTS, RATES, STATES)
REAL CONSTS(*), RATES(*), STATES(*)
CONSTS(1) = 96485
CONSTS(2) = 8314
CONSTS(3) = 310
CONSTS(4) = 4.5
CONSTS(5) = 140
CONSTS(6) = 1.8
STATES(1) = -89.4356034692784
CONSTS(7) = 0.01
CONSTS(8) = 0.0011
CONSTS(9) = 0
CONSTS(10) = 400
CONSTS(11) = 3
CONSTS(12) = -15
STATES(2) = 0.994401369032678
STATES(3) = 0.000734780346592185
STATES(4) = 0.996100688673679
CONSTS(13) = 16
STATES(5) = 16.612739313555
STATES(6) = 139.730914103161
STATES(7) = 3.2514786721066e-27
STATES(8) = 0.997404948824816
CONSTS(14) = 1
CONSTS(15) = 0.341
CONSTS(16) = 0.0006
CONSTS(17) = 0.00054
CONSTS(18) = 6.75e-7
CONSTS(19) = 0.75
CONSTS(20) = 0.75
CONSTS(21) = 1.93e-7
CONSTS(22) = 0.75
CONSTS(23) = 0.75
CONSTS(24) = 0.75
CONSTS(25) = 0.02614
STATES(9) = 0.000162194715543637
CONSTS(26) = 0.433
STATES(10) = 0.0285147332973946
STATES(11) = 0.0764114040188678
CONSTS(27) = 10
CONSTS(28) = 1.5
CONSTS(29) = 2.25
CONSTS(30) = 0.00025
CONSTS(31) = 0.0001
CONSTS(32) = 0.15
CONSTS(33) = 0.00552
CONSTS(34) = 1.15
CONSTS(35) = 0.0005
CONSTS(36) = 0.003016
CONSTS(37) = 0.004
STATES(12) = 0.000927461915392873
STATES(13) = 0.952834331760863
CONSTS(38) = 0.05
CONSTS(39) = 0.01833
STATES(14) = 7.87371650296567
STATES(15) = 1.06874246141923e-23
CONSTS(40) = 1
CONSTS(41) = 4.75
CONSTS(42) = 0.125
CONSTS(43) = 9
CONSTS(44) = 0.8
CONSTS(45) = 10
STATES(16) = 2.71518235696672
CONSTS(46) = 0.00092
CONSTS(47) = 0.00875
CONSTS(48) = 15
CONSTS(49) = 120
STATES(17) = 0.0257059808595638
STATES(18) = 1e-12
CONSTS(50) = 0.05
CONSTS(51) = 0.07
CONSTS(52) = 0.00238
CONSTS(53) = 0.0005
CONSTS(54) = (CONSTS(1)/CONSTS(3))/CONSTS(2)
CONSTS(55) = CONSTS(24)* (CONSTS(4)/5.40000) ** (1.0 / 2)
CONSTS(56) = (EXP(CONSTS(5)/67.3000) - 1.00000)/7.00000
CONSTS(67) = 0.00000
CONSTS(57) = 1000.00* 3.14159265358979*CONSTS(8)*CONSTS(8)*CONSTS(7)
CONSTS(58) = 2.00000* 3.14159265358979*CONSTS(8)*CONSTS(8)+ 2.00000* 3.14159265358979*CONSTS(8)*CONSTS(7)
CONSTS(59) = CONSTS(57)*0.240000
CONSTS(60) = CONSTS(57)*0.0600000
CONSTS(61) = CONSTS(57)*0.0200000
CONSTS(62) = CONSTS(58)*2.00000
CONSTS(63) = CONSTS(57)*0.680000
CONSTS(64) = CONSTS(57)*0.0552000
CONSTS(65) = CONSTS(57)*0.00480000
CONSTS(66) = CONSTS(62)/CONSTS(1)
CONSTS(67) = CONSTS(41)*CONSTS(42)
RETURN
END
SUBROUTINE computeRates(VOI, CONSTS, RATES, STATES, ALGBRC)
REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*)
RATES(18) = CONSTS(67)
ALGBRC(3) = ( 0.320000*1.00000*(STATES(1)+47.1300))/(1.00000 - EXP( - 0.100000*(STATES(1)+47.1300)))
ALGBRC(13) = 0.0800000*EXP(- STATES(1)/11.0000)
RATES(3) = ALGBRC(3)*(1.00000 - STATES(3)) - ALGBRC(13)*STATES(3)
ALGBRC(5) = 1.00000/(1.00000+EXP((STATES(1)+32.0000)/8.00000))+0.600000/(1.00000+EXP((50.0000 - STATES(1))/20.0000))
ALGBRC(15) = 1.00000/( 0.0197000*EXP(- 0.0337000*(STATES(1)+10.0000) ** 2.00000)+0.0200000)
RATES(8) = (ALGBRC(5) - STATES(8))/ALGBRC(15)
ALGBRC(6) = 1.00000/(1.00000+EXP(- (STATES(1)+10.0850)/4.25000))
ALGBRC(16) = 1.00000/(( 0.00138000*(STATES(1)+14.2000))/(1.00000 - EXP( - 0.123000*(STATES(1)+14.2000)))+( 0.000610000*(STATES(1)+38.9000))/(EXP( 0.145000*(STATES(1)+38.9000)) - 1.00000))
RATES(9) = (ALGBRC(6) - STATES(9))/ALGBRC(16)
ALGBRC(7) = 1.00000/(1.00000+EXP(- (STATES(1) - 1.50000)/16.7000))
ALGBRC(17) = 1.00000/(( 7.19000e-05*(STATES(1)+30.0000))/(1.00000 - EXP( - 0.148000*(STATES(1)+30.0000)))+( 0.000131000*(STATES(1)+30.0000))/(EXP( 0.0687000*(STATES(1)+30.0000)) - 1.00000))
RATES(10) = (ALGBRC(7) - STATES(10))/ALGBRC(17)
RATES(11) = ((ALGBRC(7) - STATES(11))/ALGBRC(17))/4.00000
ALGBRC(8) = 1.00000/(1.00000+EXP(- (STATES(1)+14.0000)/10.8000))
ALGBRC(18) = 3.70000+6.10000/(1.00000+EXP((STATES(1)+25.0000)/4.50000))
RATES(12) = (ALGBRC(8) - STATES(12))/ALGBRC(18)
ALGBRC(2) = 1.00000 - 1.00000/(1.00000+EXP(- (STATES(1)+40.0000)/0.0240000))
ALGBRC(11) = ALGBRC(2)*0.135000*EXP((80.0000+STATES(1))/- 6.80000)
ALGBRC(21) = (1.00000 - ALGBRC(2))/( 0.130000*(1.00000+EXP((STATES(1)+10.6600)/- 11.1000)))+ ALGBRC(2)*( 3.56000*EXP( 0.0790000*STATES(1))+ 3.10000*100000.*EXP( 0.350000*STATES(1)))
RATES(2) = ALGBRC(11)*(1.00000 - STATES(2)) - ALGBRC(21)*STATES(2)
ALGBRC(12) = ( ALGBRC(2)*( - 127140.*EXP( 0.244400*STATES(1)) - 3.47400e-05*EXP( - 0.0439100*STATES(1)))*1.00000*(STATES(1)+37.7800))/(1.00000+EXP( 0.311000*(STATES(1)+79.2300)))
ALGBRC(22) = ( (1.00000 - ALGBRC(2))*0.300000*EXP( - 2.53500e-07*STATES(1)))/(1.00000+EXP( - 0.100000*(STATES(1)+32.0000)))+( ALGBRC(2)*0.121200*EXP( - 0.0105200*STATES(1)))/(1.00000+EXP( - 0.137800*(STATES(1)+40.1400)))
RATES(4) = ALGBRC(12)*(1.00000 - STATES(4)) - ALGBRC(22)*STATES(4)
ALGBRC(9) = 1.00000/(1.00000+EXP((STATES(1)+60.0000)/5.60000))
ALGBRC(19) = 1.00000 - 1.00000/(1.00000+EXP(- STATES(1)/0.00240000))
ALGBRC(24) = ALGBRC(19)*1.00000*( - 0.875000*STATES(1)+12.0000)+ 12.0000*(1.00000 - ALGBRC(19))
RATES(13) = (ALGBRC(9) - STATES(13))/ALGBRC(24)
ALGBRC(4) = 1.00000/(1.00000+EXP(- (STATES(1)+10.0000)/6.24000))
ALGBRC(14) = ( ALGBRC(4)*1.00000*(1.00000 - EXP(- (STATES(1)+10.0000)/6.24000)))/( 0.0350000*(STATES(1)+10.0000))
ALGBRC(23) = 1.00000/(1.00000+EXP(- (STATES(1)+60.0000)/0.0240000))
ALGBRC(26) = ALGBRC(4)*ALGBRC(23)
RATES(7) = (ALGBRC(26) - STATES(7))/ALGBRC(14)
ALGBRC(41) = (CONSTS(45)+CONSTS(44)) - STATES(14)
ALGBRC(42) = STATES(14)*CONSTS(44)
ALGBRC(43) = - ALGBRC(41)/2.00000+ (ALGBRC(41) ** 2.00000+ 4.00000*ALGBRC(42)) ** (1.0 / 2)/2.00000
ALGBRC(46) = (STATES(16) - ALGBRC(43))/CONSTS(49)
RATES(14) = ALGBRC(46) - STATES(15)
ALGBRC(47) = ((CONSTS(50)+CONSTS(51)) - STATES(17))+CONSTS(53)+CONSTS(52)
ALGBRC(48) = ( CONSTS(52)*CONSTS(53) - STATES(17)*(CONSTS(53)+CONSTS(52)))+ CONSTS(51)*CONSTS(52)+ CONSTS(50)*CONSTS(53)
ALGBRC(49) = - CONSTS(53)*CONSTS(52)*STATES(17)
ALGBRC(50) = (( 2.00000* ( ALGBRC(47)*ALGBRC(47) - 3.00000*ALGBRC(48)) ** (1.0 / 2))/3.00000)*cos(acos((( 9.00000*ALGBRC(47)*ALGBRC(48) - 2.00000*ALGBRC(47)*ALGBRC(47)*ALGBRC(47)) - 27.0000*ALGBRC(49))/( 2.00000* ALGBRC(47)*ALGBRC(47) - 3.00000*ALGBRC(48) ** 1.50000))/3.00000) - ALGBRC(47)/3.00000
ALGBRC(51) = ( CONSTS(17)*4.00000*STATES(1)*CONSTS(1)*CONSTS(54)*( CONSTS(14)*ALGBRC(50)*EXP( 2.00000*STATES(1)*CONSTS(54)) - CONSTS(15)*CONSTS(6)))/(EXP( 2.00000*STATES(1)*CONSTS(54)) - 1.00000)
ALGBRC(52) = 1.00000/(1.00000+ALGBRC(50)/CONSTS(16))
ALGBRC(53) = STATES(7)*STATES(8)*ALGBRC(52)*ALGBRC(51)
ALGBRC(55) = ( ALGBRC(53)*CONSTS(67))/(1.00000+CONSTS(40)/ALGBRC(43) ** CONSTS(43))
ALGBRC(44) = CONSTS(41)/(1.00000+0.0123000/ALGBRC(43))
RATES(15) = - (ALGBRC(55)+STATES(15))/ALGBRC(44)
ALGBRC(28) = 1.00000/(1.00000+ 0.124500*EXP( - 0.100000*STATES(1)*CONSTS(54))+ 0.0365000*CONSTS(56)*EXP( - STATES(1)*CONSTS(54)))
ALGBRC(29) = (( CONSTS(29)*ALGBRC(28))/(1.00000+CONSTS(27)/STATES(5) ** 2.00000))/(1.00000+CONSTS(28)/CONSTS(4))
ALGBRC(33) = log(CONSTS(4)/STATES(6))/CONSTS(54)
ALGBRC(27) = 1.00000/(1.00000+EXP((STATES(1)+9.00000)/22.4000))
ALGBRC(38) = CONSTS(25)* (CONSTS(4)/5.40000) ** (1.0 / 2)*STATES(9)*ALGBRC(27)*(STATES(1) - ALGBRC(33))
ALGBRC(40) = log((CONSTS(4)+ CONSTS(39)*CONSTS(5))/(STATES(6)+ CONSTS(39)*STATES(5)))/CONSTS(54)
ALGBRC(57) = CONSTS(26)*(1.00000+0.600000/(1.00000+3.80000e-05/ALGBRC(50) ** 1.40000))
ALGBRC(58) = ALGBRC(57)*STATES(10)*STATES(11)*(STATES(1) - ALGBRC(40))
ALGBRC(34) = 1.02000/(1.00000+EXP( 0.238500*((STATES(1) - ALGBRC(33)) - 59.2150)))
ALGBRC(35) = ( 0.491240*EXP( 0.0803200*((STATES(1) - ALGBRC(33))+5.47600))+ 1.00000*EXP( 0.0617500*((STATES(1) - ALGBRC(33)) - 594.310)))/(1.00000+EXP( - 0.514300*((STATES(1) - ALGBRC(33))+4.75300)))
ALGBRC(36) = ( CONSTS(55)*ALGBRC(34))/(ALGBRC(34)+ALGBRC(35))
ALGBRC(37) = ALGBRC(36)*(STATES(1) - ALGBRC(33))
ALGBRC(39) = ( CONSTS(33)*(STATES(1) - ALGBRC(33)))/(1.00000+EXP((7.48800 - STATES(1))/5.98000))
ALGBRC(25) = ( CONSTS(21)*STATES(1)*CONSTS(1)*CONSTS(54)*( CONSTS(22)*STATES(6)*EXP( STATES(1)*CONSTS(54)) - CONSTS(23)*CONSTS(4)))/(EXP( STATES(1)*CONSTS(54)) - 1.00000)
ALGBRC(56) = STATES(7)*STATES(8)*ALGBRC(52)*ALGBRC(25)
ALGBRC(1) = INT(VOI/CONSTS(10))*CONSTS(10)
ALGBRC(10) = TERNRY(VOI - ALGBRC(1).GE.CONSTS(9).AND.VOI - ALGBRC(1).LE.CONSTS(9)+CONSTS(11), CONSTS(12), 0.00000)
ALGBRC(59) = ((ALGBRC(38)+ALGBRC(58)+ALGBRC(37)+ALGBRC(39)+ALGBRC(56)) - 2.00000*ALGBRC(29))+ALGBRC(10)
RATES(6) = ( - ALGBRC(59)*CONSTS(66))/CONSTS(63)
ALGBRC(60) = ( CONSTS(30)*EXP( (CONSTS(32) - 1.00000)*STATES(1)*CONSTS(54))*( EXP( STATES(1)*CONSTS(54))*STATES(5) ** 3.00000*CONSTS(6) - CONSTS(5) ** 3.00000*ALGBRC(50)))/(1.00000+ CONSTS(31)*EXP( (CONSTS(32) - 1.00000)*STATES(1)*CONSTS(54))*( EXP( STATES(1)*CONSTS(54))*STATES(5) ** 3.00000*CONSTS(6)+ CONSTS(5) ** 3.00000*ALGBRC(50)))
ALGBRC(30) = log(CONSTS(5)/STATES(5))/CONSTS(54)
ALGBRC(31) = CONSTS(13)*STATES(3)*STATES(3)*STATES(3)*STATES(2)*STATES(4)*(STATES(1) - ALGBRC(30))
ALGBRC(32) = CONSTS(37)*(STATES(1) - ALGBRC(30))
ALGBRC(20) = ( CONSTS(18)*STATES(1)*CONSTS(1)*CONSTS(54)*( CONSTS(19)*STATES(5)*EXP( STATES(1)*CONSTS(54)) - CONSTS(20)*CONSTS(5)))/(EXP( STATES(1)*CONSTS(54)) - 1.00000)
ALGBRC(54) = STATES(7)*STATES(8)*ALGBRC(52)*ALGBRC(20)
ALGBRC(61) = ALGBRC(31)+ALGBRC(32)+ 3.00000*ALGBRC(60)+ALGBRC(54)+ 3.00000*ALGBRC(29)
RATES(5) = ( - ALGBRC(61)*CONSTS(66))/CONSTS(63)
ALGBRC(63) = CONSTS(36)*(STATES(1) - log(CONSTS(6)/ALGBRC(50))/( 2.00000*CONSTS(54)))
ALGBRC(62) = ( CONSTS(34)*ALGBRC(50))/(CONSTS(35)+ALGBRC(50))
ALGBRC(64) = (log(CONSTS(6)/ALGBRC(50))/2.00000)/CONSTS(54)
ALGBRC(65) = CONSTS(38)*STATES(12)*STATES(12)*STATES(13)*(STATES(1) - ALGBRC(64))
ALGBRC(66) = ((ALGBRC(53)+ALGBRC(63)+ALGBRC(62)) - 2.00000*ALGBRC(60))+ALGBRC(65)
RATES(1) = - (ALGBRC(61)+ALGBRC(59)+ALGBRC(66))
ALGBRC(67) = ( CONSTS(47)*ALGBRC(50))/(ALGBRC(50)+CONSTS(46))
ALGBRC(45) = ( CONSTS(47)*STATES(16))/CONSTS(48)
RATES(17) = ( - ALGBRC(66)*CONSTS(66))/( CONSTS(63)*2.00000)+( (ALGBRC(45) - ALGBRC(67))*CONSTS(64))/CONSTS(63)+( STATES(15)*CONSTS(65))/CONSTS(63)
RATES(16) = (ALGBRC(67) - ( ALGBRC(46)*CONSTS(65))/CONSTS(64)) - ALGBRC(45)
RETURN
END
SUBROUTINE computeVariables(VOI, CONSTS, RATES, STATES, ALGBRC)
REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*)
ALGBRC(3) = ( 0.320000*1.00000*(STATES(1)+47.1300))/(1.00000 - EXP( - 0.100000*(STATES(1)+47.1300)))
ALGBRC(13) = 0.0800000*EXP(- STATES(1)/11.0000)
ALGBRC(5) = 1.00000/(1.00000+EXP((STATES(1)+32.0000)/8.00000))+0.600000/(1.00000+EXP((50.0000 - STATES(1))/20.0000))
ALGBRC(15) = 1.00000/( 0.0197000*EXP(- 0.0337000*(STATES(1)+10.0000) ** 2.00000)+0.0200000)
ALGBRC(6) = 1.00000/(1.00000+EXP(- (STATES(1)+10.0850)/4.25000))
ALGBRC(16) = 1.00000/(( 0.00138000*(STATES(1)+14.2000))/(1.00000 - EXP( - 0.123000*(STATES(1)+14.2000)))+( 0.000610000*(STATES(1)+38.9000))/(EXP( 0.145000*(STATES(1)+38.9000)) - 1.00000))
ALGBRC(7) = 1.00000/(1.00000+EXP(- (STATES(1) - 1.50000)/16.7000))
ALGBRC(17) = 1.00000/(( 7.19000e-05*(STATES(1)+30.0000))/(1.00000 - EXP( - 0.148000*(STATES(1)+30.0000)))+( 0.000131000*(STATES(1)+30.0000))/(EXP( 0.0687000*(STATES(1)+30.0000)) - 1.00000))
ALGBRC(8) = 1.00000/(1.00000+EXP(- (STATES(1)+14.0000)/10.8000))
ALGBRC(18) = 3.70000+6.10000/(1.00000+EXP((STATES(1)+25.0000)/4.50000))
ALGBRC(2) = 1.00000 - 1.00000/(1.00000+EXP(- (STATES(1)+40.0000)/0.0240000))
ALGBRC(11) = ALGBRC(2)*0.135000*EXP((80.0000+STATES(1))/- 6.80000)
ALGBRC(21) = (1.00000 - ALGBRC(2))/( 0.130000*(1.00000+EXP((STATES(1)+10.6600)/- 11.1000)))+ ALGBRC(2)*( 3.56000*EXP( 0.0790000*STATES(1))+ 3.10000*100000.*EXP( 0.350000*STATES(1)))
ALGBRC(12) = ( ALGBRC(2)*( - 127140.*EXP( 0.244400*STATES(1)) - 3.47400e-05*EXP( - 0.0439100*STATES(1)))*1.00000*(STATES(1)+37.7800))/(1.00000+EXP( 0.311000*(STATES(1)+79.2300)))
ALGBRC(22) = ( (1.00000 - ALGBRC(2))*0.300000*EXP( - 2.53500e-07*STATES(1)))/(1.00000+EXP( - 0.100000*(STATES(1)+32.0000)))+( ALGBRC(2)*0.121200*EXP( - 0.0105200*STATES(1)))/(1.00000+EXP( - 0.137800*(STATES(1)+40.1400)))
ALGBRC(9) = 1.00000/(1.00000+EXP((STATES(1)+60.0000)/5.60000))
ALGBRC(19) = 1.00000 - 1.00000/(1.00000+EXP(- STATES(1)/0.00240000))
ALGBRC(24) = ALGBRC(19)*1.00000*( - 0.875000*STATES(1)+12.0000)+ 12.0000*(1.00000 - ALGBRC(19))
ALGBRC(4) = 1.00000/(1.00000+EXP(- (STATES(1)+10.0000)/6.24000))
ALGBRC(14) = ( ALGBRC(4)*1.00000*(1.00000 - EXP(- (STATES(1)+10.0000)/6.24000)))/( 0.0350000*(STATES(1)+10.0000))
ALGBRC(23) = 1.00000/(1.00000+EXP(- (STATES(1)+60.0000)/0.0240000))
ALGBRC(26) = ALGBRC(4)*ALGBRC(23)
ALGBRC(41) = (CONSTS(45)+CONSTS(44)) - STATES(14)
ALGBRC(42) = STATES(14)*CONSTS(44)
ALGBRC(43) = - ALGBRC(41)/2.00000+ (ALGBRC(41) ** 2.00000+ 4.00000*ALGBRC(42)) ** (1.0 / 2)/2.00000
ALGBRC(46) = (STATES(16) - ALGBRC(43))/CONSTS(49)
ALGBRC(47) = ((CONSTS(50)+CONSTS(51)) - STATES(17))+CONSTS(53)+CONSTS(52)
ALGBRC(48) = ( CONSTS(52)*CONSTS(53) - STATES(17)*(CONSTS(53)+CONSTS(52)))+ CONSTS(51)*CONSTS(52)+ CONSTS(50)*CONSTS(53)
ALGBRC(49) = - CONSTS(53)*CONSTS(52)*STATES(17)
ALGBRC(50) = (( 2.00000* ( ALGBRC(47)*ALGBRC(47) - 3.00000*ALGBRC(48)) ** (1.0 / 2))/3.00000)*cos(acos((( 9.00000*ALGBRC(47)*ALGBRC(48) - 2.00000*ALGBRC(47)*ALGBRC(47)*ALGBRC(47)) - 27.0000*ALGBRC(49))/( 2.00000* ALGBRC(47)*ALGBRC(47) - 3.00000*ALGBRC(48) ** 1.50000))/3.00000) - ALGBRC(47)/3.00000
ALGBRC(51) = ( CONSTS(17)*4.00000*STATES(1)*CONSTS(1)*CONSTS(54)*( CONSTS(14)*ALGBRC(50)*EXP( 2.00000*STATES(1)*CONSTS(54)) - CONSTS(15)*CONSTS(6)))/(EXP( 2.00000*STATES(1)*CONSTS(54)) - 1.00000)
ALGBRC(52) = 1.00000/(1.00000+ALGBRC(50)/CONSTS(16))
ALGBRC(53) = STATES(7)*STATES(8)*ALGBRC(52)*ALGBRC(51)
ALGBRC(55) = ( ALGBRC(53)*CONSTS(67))/(1.00000+CONSTS(40)/ALGBRC(43) ** CONSTS(43))
ALGBRC(44) = CONSTS(41)/(1.00000+0.0123000/ALGBRC(43))
ALGBRC(28) = 1.00000/(1.00000+ 0.124500*EXP( - 0.100000*STATES(1)*CONSTS(54))+ 0.0365000*CONSTS(56)*EXP( - STATES(1)*CONSTS(54)))
ALGBRC(29) = (( CONSTS(29)*ALGBRC(28))/(1.00000+CONSTS(27)/STATES(5) ** 2.00000))/(1.00000+CONSTS(28)/CONSTS(4))
ALGBRC(33) = log(CONSTS(4)/STATES(6))/CONSTS(54)
ALGBRC(27) = 1.00000/(1.00000+EXP((STATES(1)+9.00000)/22.4000))
ALGBRC(38) = CONSTS(25)* (CONSTS(4)/5.40000) ** (1.0 / 2)*STATES(9)*ALGBRC(27)*(STATES(1) - ALGBRC(33))
ALGBRC(40) = log((CONSTS(4)+ CONSTS(39)*CONSTS(5))/(STATES(6)+ CONSTS(39)*STATES(5)))/CONSTS(54)
ALGBRC(57) = CONSTS(26)*(1.00000+0.600000/(1.00000+3.80000e-05/ALGBRC(50) ** 1.40000))
ALGBRC(58) = ALGBRC(57)*STATES(10)*STATES(11)*(STATES(1) - ALGBRC(40))
ALGBRC(34) = 1.02000/(1.00000+EXP( 0.238500*((STATES(1) - ALGBRC(33)) - 59.2150)))
ALGBRC(35) = ( 0.491240*EXP( 0.0803200*((STATES(1) - ALGBRC(33))+5.47600))+ 1.00000*EXP( 0.0617500*((STATES(1) - ALGBRC(33)) - 594.310)))/(1.00000+EXP( - 0.514300*((STATES(1) - ALGBRC(33))+4.75300)))
ALGBRC(36) = ( CONSTS(55)*ALGBRC(34))/(ALGBRC(34)+ALGBRC(35))
ALGBRC(37) = ALGBRC(36)*(STATES(1) - ALGBRC(33))
ALGBRC(39) = ( CONSTS(33)*(STATES(1) - ALGBRC(33)))/(1.00000+EXP((7.48800 - STATES(1))/5.98000))
ALGBRC(25) = ( CONSTS(21)*STATES(1)*CONSTS(1)*CONSTS(54)*( CONSTS(22)*STATES(6)*EXP( STATES(1)*CONSTS(54)) - CONSTS(23)*CONSTS(4)))/(EXP( STATES(1)*CONSTS(54)) - 1.00000)
ALGBRC(56) = STATES(7)*STATES(8)*ALGBRC(52)*ALGBRC(25)
ALGBRC(1) = INT(VOI/CONSTS(10))*CONSTS(10)
ALGBRC(10) = TERNRY(VOI - ALGBRC(1).GE.CONSTS(9).AND.VOI - ALGBRC(1).LE.CONSTS(9)+CONSTS(11), CONSTS(12), 0.00000)
ALGBRC(59) = ((ALGBRC(38)+ALGBRC(58)+ALGBRC(37)+ALGBRC(39)+ALGBRC(56)) - 2.00000*ALGBRC(29))+ALGBRC(10)
ALGBRC(60) = ( CONSTS(30)*EXP( (CONSTS(32) - 1.00000)*STATES(1)*CONSTS(54))*( EXP( STATES(1)*CONSTS(54))*STATES(5) ** 3.00000*CONSTS(6) - CONSTS(5) ** 3.00000*ALGBRC(50)))/(1.00000+ CONSTS(31)*EXP( (CONSTS(32) - 1.00000)*STATES(1)*CONSTS(54))*( EXP( STATES(1)*CONSTS(54))*STATES(5) ** 3.00000*CONSTS(6)+ CONSTS(5) ** 3.00000*ALGBRC(50)))
ALGBRC(30) = log(CONSTS(5)/STATES(5))/CONSTS(54)
ALGBRC(31) = CONSTS(13)*STATES(3)*STATES(3)*STATES(3)*STATES(2)*STATES(4)*(STATES(1) - ALGBRC(30))
ALGBRC(32) = CONSTS(37)*(STATES(1) - ALGBRC(30))
ALGBRC(20) = ( CONSTS(18)*STATES(1)*CONSTS(1)*CONSTS(54)*( CONSTS(19)*STATES(5)*EXP( STATES(1)*CONSTS(54)) - CONSTS(20)*CONSTS(5)))/(EXP( STATES(1)*CONSTS(54)) - 1.00000)
ALGBRC(54) = STATES(7)*STATES(8)*ALGBRC(52)*ALGBRC(20)
ALGBRC(61) = ALGBRC(31)+ALGBRC(32)+ 3.00000*ALGBRC(60)+ALGBRC(54)+ 3.00000*ALGBRC(29)
ALGBRC(63) = CONSTS(36)*(STATES(1) - log(CONSTS(6)/ALGBRC(50))/( 2.00000*CONSTS(54)))
ALGBRC(62) = ( CONSTS(34)*ALGBRC(50))/(CONSTS(35)+ALGBRC(50))
ALGBRC(64) = (log(CONSTS(6)/ALGBRC(50))/2.00000)/CONSTS(54)
ALGBRC(65) = CONSTS(38)*STATES(12)*STATES(12)*STATES(13)*(STATES(1) - ALGBRC(64))
ALGBRC(66) = ((ALGBRC(53)+ALGBRC(63)+ALGBRC(62)) - 2.00000*ALGBRC(60))+ALGBRC(65)
ALGBRC(67) = ( CONSTS(47)*ALGBRC(50))/(ALGBRC(50)+CONSTS(46))
ALGBRC(45) = ( CONSTS(47)*STATES(16))/CONSTS(48)
RETURN
END
REAL FUNCTION TERNRY(TEST, VALA, VALB)
LOGICAL TEST
REAL VALA, VALB
IF (TEST) THEN
TERNRY = VALA
ELSE
TERNRY = VALB
ENDIF
RETURN
END
