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 10 entries in the algebraic variable array.
C There are a total of 8 entries in each of the rate and state variable arrays.
C There are a total of 29 entries in the constant variable array.
C
C
C VOI is time in component environment (second).
C STATES(1) is c in component c (micromolar).
C CONSTS(1) is delta in component c (dimensionless).
C ALGBRC(3) is J_serca in component J_serca (flux).
C CONSTS(29) is J_in in component J_in (flux).
C ALGBRC(5) is J_pm in component J_pm (flux).
C ALGBRC(1) is J_IPR in component J_IPR (flux).
C STATES(2) is ce in component ce (micromolar).
C CONSTS(2) is gamma in component ce (dimensionless).
C CONSTS(3) is p in component p (micromolar).
C CONSTS(4) is kf in component J_IPR (first_order_rate_constant).
C CONSTS(5) is g1 in component J_IPR (first_order_rate_constant).
C STATES(3) is A in component A (dimensionless).
C STATES(4) is O in component O (dimensionless).
C STATES(5) is R in component R (dimensionless).
C ALGBRC(2) is phi_1 in component IPR_parameters (first_order_rate_constant).
C ALGBRC(4) is phi_2 in component IPR_parameters (second_order_rate_constant).
C ALGBRC(6) is phi_2_ in component IPR_parameters (first_order_rate_constant).
C CONSTS(6) is k_1_ in component IPR_parameters (first_order_rate_constant).
C CONSTS(7) is l_2_ in component IPR_parameters (first_order_rate_constant).
C STATES(6) is I_1 in component I_1 (dimensionless).
C STATES(7) is S in component S (dimensionless).
C ALGBRC(7) is phi_3 in component IPR_parameters (second_order_rate_constant).
C ALGBRC(8) is phi_4 in component IPR_parameters (first_order_rate_constant).
C ALGBRC(9) is phi_4_ in component IPR_parameters (first_order_rate_constant).
C CONSTS(8) is k_3_ in component IPR_parameters (first_order_rate_constant).
C STATES(8) is I_2 in component I_2 (dimensionless).
C ALGBRC(10) is phi_5 in component IPR_parameters (first_order_rate_constant).
C CONSTS(9) is k_1 in component IPR_parameters (second_order_rate_constant).
C CONSTS(10) is k_2 in component IPR_parameters (second_order_rate_constant).
C CONSTS(11) is k_2_ in component IPR_parameters (first_order_rate_constant).
C CONSTS(12) is k_3 in component IPR_parameters (second_order_rate_constant).
C CONSTS(13) is k_4 in component IPR_parameters (second_order_rate_constant).
C CONSTS(14) is k_4_ in component IPR_parameters (first_order_rate_constant).
C CONSTS(15) is l_2 in component IPR_parameters (first_order_rate_constant).
C CONSTS(16) is l_4 in component IPR_parameters (second_order_rate_constant).
C CONSTS(17) is l_4_ in component IPR_parameters (second_order_rate_constant).
C CONSTS(18) is l_6 in component IPR_parameters (first_order_rate_constant).
C CONSTS(19) is l_6_ in component IPR_parameters (first_order_rate_constant).
C CONSTS(20) is L_1 in component IPR_parameters (micromolar).
C CONSTS(21) is L_3 in component IPR_parameters (micromolar).
C CONSTS(22) is L_5 in component IPR_parameters (micromolar).
C CONSTS(23) is Vs in component J_serca (micromolar2_per_second).
C CONSTS(24) is Ks in component J_serca (micromolar).
C CONSTS(25) is Vp in component J_pm (flux).
C CONSTS(26) is Kp in component J_pm (micromolar).
C CONSTS(27) is alpha1 in component J_in (flux).
C CONSTS(28) is alpha2 in component J_in (first_order_rate_constant).
C RATES(1) is d/dt c in component c (micromolar).
C RATES(2) is d/dt ce in component ce (micromolar).
C RATES(5) is d/dt R in component R (dimensionless).
C RATES(4) is d/dt O in component O (dimensionless).
C RATES(6) is d/dt I_1 in component I_1 (dimensionless).
C RATES(8) is d/dt I_2 in component I_2 (dimensionless).
C RATES(7) is d/dt S in component S (dimensionless).
C RATES(3) is d/dt A in component A (dimensionless).
C
      SUBROUTINE initConsts(CONSTS, RATES, STATES)
      REAL CONSTS(*), RATES(*), STATES(*)
      STATES(1) = 0.01
      CONSTS(1) = 0.1
      STATES(2) = 0.01
      CONSTS(2) = 5.4
      CONSTS(3) = 10.0
      CONSTS(4) = 0.96
      CONSTS(5) = 0.002
      STATES(3) = 0.16
      STATES(4) = 0.01
      STATES(5) = 0.16
      CONSTS(6) = 0.04
      CONSTS(7) = 0.8
      STATES(6) = 0.16
      STATES(7) = 0.16
      CONSTS(8) = 29.8
      STATES(8) = 0.16
      CONSTS(9) = 0.64
      CONSTS(10) = 37.4
      CONSTS(11) = 1.4
      CONSTS(12) = 0.11
      CONSTS(13) = 4.0
      CONSTS(14) = 0.54
      CONSTS(15) = 1.7
      CONSTS(16) = 1.7
      CONSTS(17) = 2.5
      CONSTS(18) = 4707.0
      CONSTS(19) = 11.4
      CONSTS(20) = 0.12
      CONSTS(21) = 0.025
      CONSTS(22) = 54.7
      CONSTS(23) = 120.0
      CONSTS(24) = 0.18
      CONSTS(25) = 28.0
      CONSTS(26) = 0.42
      CONSTS(27) = 0.03
      CONSTS(28) = 0.2
      CONSTS(29) = CONSTS(27)+ CONSTS(28)*CONSTS(3)
      RETURN
      END
      SUBROUTINE computeRates(VOI, CONSTS,  RATES, STATES, ALGBRC)
      REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*)
      ALGBRC(2) = ( ( CONSTS(9)*CONSTS(20)+CONSTS(15))*STATES(1))/(CONSTS(20)+ STATES(1)*(1.00000+CONSTS(20)/CONSTS(21)))
      RATES(6) =  ALGBRC(2)*STATES(5) -  (CONSTS(6)+CONSTS(7))*STATES(6)
      ALGBRC(3) =  (( CONSTS(23)*STATES(1))/(CONSTS(24)+STATES(1)))*(1.00000/STATES(2))
      ALGBRC(1) =  ( CONSTS(4)* 0.100000*STATES(4)+ 0.900000*STATES(3) ** 4.00000+CONSTS(5))*(STATES(2) - STATES(1))
      RATES(2) =  CONSTS(2)*(ALGBRC(3) - ALGBRC(1))
      ALGBRC(5) = ( CONSTS(25)*STATES(1) ** 2.00000)/(CONSTS(26) ** 2.00000+STATES(1) ** 2.00000)
      RATES(1) = (ALGBRC(1) - ALGBRC(3))+ CONSTS(1)*(CONSTS(29) - ALGBRC(5))
      ALGBRC(4) = ( CONSTS(10)*CONSTS(21)+ CONSTS(16)*STATES(1))/(CONSTS(21)+ STATES(1)*(1.00000+CONSTS(21)/CONSTS(20)))
      ALGBRC(6) = (CONSTS(11)+ CONSTS(17)*STATES(1))/(1.00000+STATES(1)/CONSTS(22))
      RATES(5) = ( ALGBRC(6)*STATES(4) - ( ALGBRC(4)*CONSTS(3)*STATES(5)+ ALGBRC(2)*STATES(5)))+ (CONSTS(7)+CONSTS(6))*STATES(6)
      ALGBRC(7) = ( CONSTS(12)*CONSTS(22))/(STATES(1)+CONSTS(22))
      RATES(7) =  1.00000*ALGBRC(7)*STATES(4) -  CONSTS(8)*STATES(7)
      ALGBRC(8) = ( ( CONSTS(13)*CONSTS(22)+CONSTS(18))*STATES(1))/(STATES(1)+CONSTS(22))
      ALGBRC(9) = ( CONSTS(20)*(CONSTS(14)+CONSTS(19)))/(STATES(1)+CONSTS(20))
      RATES(4) = ( ALGBRC(4)*CONSTS(3)*STATES(5) -  (ALGBRC(6)+ALGBRC(8)+ 1.00000*ALGBRC(7))*STATES(4))+ ALGBRC(9)*STATES(3)+ CONSTS(8)*STATES(7)
      ALGBRC(10) = ( ( CONSTS(9)*CONSTS(20)+CONSTS(15))*STATES(1))/(STATES(1)+CONSTS(20))
      RATES(8) =  ALGBRC(10)*STATES(3) -  (CONSTS(6)+CONSTS(7))*STATES(8)
      RATES(3) = ( ALGBRC(8)*STATES(4) - ( ALGBRC(9)*STATES(3)+ ALGBRC(10)*STATES(3)))+ (CONSTS(6)+CONSTS(7))*STATES(8)
      RETURN
      END
      SUBROUTINE computeVariables(VOI, CONSTS, RATES, STATES, ALGBRC)
      REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*)
      ALGBRC(2) = ( ( CONSTS(9)*CONSTS(20)+CONSTS(15))*STATES(1))/(CONSTS(20)+ STATES(1)*(1.00000+CONSTS(20)/CONSTS(21)))
      ALGBRC(3) =  (( CONSTS(23)*STATES(1))/(CONSTS(24)+STATES(1)))*(1.00000/STATES(2))
      ALGBRC(1) =  ( CONSTS(4)* 0.100000*STATES(4)+ 0.900000*STATES(3) ** 4.00000+CONSTS(5))*(STATES(2) - STATES(1))
      ALGBRC(5) = ( CONSTS(25)*STATES(1) ** 2.00000)/(CONSTS(26) ** 2.00000+STATES(1) ** 2.00000)
      ALGBRC(4) = ( CONSTS(10)*CONSTS(21)+ CONSTS(16)*STATES(1))/(CONSTS(21)+ STATES(1)*(1.00000+CONSTS(21)/CONSTS(20)))
      ALGBRC(6) = (CONSTS(11)+ CONSTS(17)*STATES(1))/(1.00000+STATES(1)/CONSTS(22))
      ALGBRC(7) = ( CONSTS(12)*CONSTS(22))/(STATES(1)+CONSTS(22))
      ALGBRC(8) = ( ( CONSTS(13)*CONSTS(22)+CONSTS(18))*STATES(1))/(STATES(1)+CONSTS(22))
      ALGBRC(9) = ( CONSTS(20)*(CONSTS(14)+CONSTS(19)))/(STATES(1)+CONSTS(20))
      ALGBRC(10) = ( ( CONSTS(9)*CONSTS(20)+CONSTS(15))*STATES(1))/(STATES(1)+CONSTS(20))
      RETURN
      END