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 15 entries in the algebraic variable array.
C There are a total of 1 entries in each of the rate and state variable arrays.
C There are a total of 17 entries in the constant variable array.
C
C
C VOI is time in component environment (second).
C STATES(1) is HCO3_i in component Concentrations (mM).
C CONSTS(1) is HCO3_e in component Concentrations (mM).
C CONSTS(2) is Cl_i in component Concentrations (mM).
C CONSTS(3) is Cl_e in component Concentrations (mM).
C CONSTS(4) is x_Tmax in component Concentrations (nmol_per_cm2).
C ALGBRC(1) is x_T in component Concentrations (nmol_per_cm2).
C CONSTS(5) is K_I in component AE1_rate_constants (mM).
C CONSTS(6) is Kc_p in component AE1_rate_constants (mM).
C CONSTS(7) is Kc_pp in component AE1_rate_constants (mM).
C CONSTS(8) is Kb_p in component AE1_rate_constants (mM).
C CONSTS(9) is Kb_pp in component AE1_rate_constants (mM).
C CONSTS(10) is Pc_p in component AE1_rate_constants (per_s).
C CONSTS(11) is Pc_pp in component AE1_rate_constants (per_s).
C CONSTS(12) is Pb_p in component AE1_rate_constants (per_s).
C CONSTS(13) is Pb_pp in component AE1_rate_constants (per_s).
C CONSTS(14) is beta_p in component AE1 (dimensionless).
C ALGBRC(2) is beta_pp in component AE1 (dimensionless).
C CONSTS(15) is gamma_p in component AE1 (dimensionless).
C CONSTS(16) is gamma_pp in component AE1 (dimensionless).
C ALGBRC(9) is sigma in component AE1 (per_s).
C ALGBRC(10) is x_p in component AE1 (nmol_per_cm2).
C ALGBRC(11) is x_pp in component AE1 (nmol_per_cm2).
C ALGBRC(12) is J_HCO3 in component AE1 (nmol_per_s_per_cm2).
C ALGBRC(15) is J_Cl in component AE1 (nmol_per_s_per_cm2).
C ALGBRC(13) is Jb_influx in component AE1 (nmol_per_s_per_cm2).
C ALGBRC(14) is Jc_influx in component AE1 (nmol_per_s_per_cm2).
C ALGBRC(3) is Jo_bm in component AE1 (nmol_per_s_per_cm2).
C ALGBRC(4) is Ji_bm in component AE1 (nmol_per_s_per_cm2).
C ALGBRC(5) is Js_bm in component AE1 (nmol_per_s_per_cm2).
C ALGBRC(6) is Jo_cm in component AE1 (nmol_per_s_per_cm2).
C ALGBRC(7) is Ji_cm in component AE1 (nmol_per_s_per_cm2).
C ALGBRC(8) is Js_cm in component AE1 (nmol_per_s_per_cm2).
C RATES(1) is d/dt HCO3_i in component Concentrations (mM).
C
      SUBROUTINE initConsts(CONSTS, RATES, STATES)
      REAL CONSTS(*), RATES(*), STATES(*)
      STATES(1) = 0
      CONSTS(1) = 26
      CONSTS(2) = 29
      CONSTS(3) = 114
      CONSTS(4) = 1
      CONSTS(5) = 172
      CONSTS(6) = 50
      CONSTS(7) = 50
      CONSTS(8) = 198
      CONSTS(9) = 198
      CONSTS(10) = 562
      CONSTS(11) = 61
      CONSTS(12) = 1247
      CONSTS(13) = 135
      CONSTS(14) = CONSTS(1)/CONSTS(8)
      CONSTS(16) = 60.0000
      CONSTS(15) = CONSTS(3)/CONSTS(6)
      CONSTS(16) = CONSTS(2)/CONSTS(7)
      RETURN
      END
      SUBROUTINE computeRates(VOI, CONSTS,  RATES, STATES, ALGBRC)
      REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*)
      RATES(1) = CONSTS(16)
      RETURN
      END
      SUBROUTINE computeVariables(VOI, CONSTS, RATES, STATES, ALGBRC)
      REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*)
      ALGBRC(1) = CONSTS(4)/(1.00000+STATES(1)/CONSTS(5))
      ALGBRC(2) = STATES(1)/CONSTS(9)
      ALGBRC(3) =  (1.00000/ALGBRC(1))*(1.00000/CONSTS(12)+1.00000/CONSTS(13)+CONSTS(9)/( CONSTS(13)*STATES(1))) ** - 1.00000
      ALGBRC(4) =  (1.00000/ALGBRC(1))*(1.00000/CONSTS(12)+1.00000/CONSTS(13)+CONSTS(8)/( CONSTS(12)*CONSTS(1))) ** - 1.00000
      ALGBRC(5) =  (1.00000/ALGBRC(1))*(1.00000/CONSTS(12)+1.00000/CONSTS(13)) ** - 1.00000
      ALGBRC(6) =  (1.00000/ALGBRC(1))*(1.00000/CONSTS(10)+1.00000/CONSTS(11)+CONSTS(7)/( CONSTS(11)*CONSTS(2))) ** - 1.00000
      ALGBRC(7) =  (1.00000/ALGBRC(1))*(1.00000/CONSTS(10)+1.00000/CONSTS(11)+CONSTS(6)/( CONSTS(10)*CONSTS(3))) ** - 1.00000
      ALGBRC(8) =  (1.00000/ALGBRC(1))*(1.00000/CONSTS(10)+1.00000/CONSTS(11)) ** - 1.00000
      ALGBRC(9) =  (1.00000+CONSTS(14)+CONSTS(15))*( CONSTS(13)*ALGBRC(2)+ CONSTS(11)*CONSTS(16))+ (1.00000+ALGBRC(2)+CONSTS(16))*( CONSTS(12)*CONSTS(14)+ CONSTS(10)*CONSTS(15))
      ALGBRC(10) = ( ALGBRC(1)*( CONSTS(13)*ALGBRC(2)+ CONSTS(11)*CONSTS(16)))/ALGBRC(9)
      ALGBRC(11) = ( ALGBRC(1)*( CONSTS(12)*CONSTS(14)+ CONSTS(10)*CONSTS(15)))/ALGBRC(9)
      ALGBRC(12) =  (ALGBRC(1)/ALGBRC(9))*( CONSTS(13)*ALGBRC(2)*CONSTS(10)*CONSTS(15) -  CONSTS(12)*CONSTS(14)*CONSTS(11)*CONSTS(16))
      ALGBRC(13) =  (ALGBRC(1)/ALGBRC(9))*CONSTS(12)*CONSTS(14)*( CONSTS(13)*ALGBRC(2)+ CONSTS(11)*CONSTS(16))
      ALGBRC(14) =  (ALGBRC(1)/ALGBRC(9))*CONSTS(10)*CONSTS(15)*( CONSTS(13)*ALGBRC(2)+ CONSTS(11)*CONSTS(16))
      ALGBRC(15) = - ALGBRC(12)
      RETURN
      END