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 1 entries in the algebraic variable array.
C There are a total of 17 entries in each of the rate and state variable arrays.
C There are a total of 16 entries in the constant variable array.
C
C
C VOI is time in component environment (second).
C STATES(1) is Py in component Py (nanomolar).
C CONSTS(1) is Zn in component model_parameters (nanomolar).
C STATES(2) is Py1 in component Py1 (nanomolar).
C CONSTS(2) is r3 in component model_parameters (third_order_rate_constant).
C CONSTS(3) is r4 in component model_parameters (first_order_rate_constant).
C STATES(3) is Dw in component Dw (nanomolar).
C STATES(4) is Qw2 in component Qw2 (nanomolar).
C CONSTS(4) is k_1 in component model_parameters (first_order_rate_constant).
C CONSTS(5) is k1a in component model_parameters (second_order_rate_constant).
C STATES(5) is Qw1 in component Qw1 (nanomolar).
C STATES(6) is Rw in component Rw (nanomolar).
C CONSTS(6) is k2 in component model_parameters (second_order_rate_constant).
C CONSTS(7) is k_2 in component model_parameters (first_order_rate_constant).
C ALGBRC(1) is k3 in component model_parameters (first_order_rate_constant).
C STATES(7) is Mw in component Mw (nanomolar).
C STATES(8) is Px in component Px (nanomolar).
C STATES(9) is Px1 in component Px1 (nanomolar).
C STATES(10) is Dz in component Dz (nanomolar).
C STATES(11) is Qz4 in component Qz4 (nanomolar).
C CONSTS(8) is r1 in component model_parameters (second_order_rate_constant).
C CONSTS(9) is r2 in component model_parameters (first_order_rate_constant).
C CONSTS(10) is k1b in component model_parameters (second_order_rate_constant).
C STATES(12) is Qz2 in component Qz2 (nanomolar).
C CONSTS(11) is k1 in component model_parameters (second_order_rate_constant).
C STATES(13) is Qz1 in component Qz1 (nanomolar).
C STATES(14) is Rz in component Rz (nanomolar).
C CONSTS(12) is k2a in component model_parameters (second_order_rate_constant).
C STATES(15) is Qz3 in component Qz3 (nanomolar).
C STATES(16) is Qz5 in component Qz5 (nanomolar).
C CONSTS(13) is k2b in component model_parameters (second_order_rate_constant).
C CONSTS(14) is k2c in component model_parameters (second_order_rate_constant).
C STATES(17) is Mz in component Mz (nanomolar).
C CONSTS(15) is td0 in component model_parameters (second).
C CONSTS(16) is td in component model_parameters (second).
C RATES(1) is d/dt Py in component Py (nanomolar).
C RATES(2) is d/dt Py1 in component Py1 (nanomolar).
C RATES(3) is d/dt Dw in component Dw (nanomolar).
C RATES(6) is d/dt Rw in component Rw (nanomolar).
C RATES(5) is d/dt Qw1 in component Qw1 (nanomolar).
C RATES(4) is d/dt Qw2 in component Qw2 (nanomolar).
C RATES(7) is d/dt Mw in component Mw (nanomolar).
C RATES(8) is d/dt Px in component Px (nanomolar).
C RATES(9) is d/dt Px1 in component Px1 (nanomolar).
C RATES(10) is d/dt Dz in component Dz (nanomolar).
C RATES(14) is d/dt Rz in component Rz (nanomolar).
C RATES(13) is d/dt Qz1 in component Qz1 (nanomolar).
C RATES(12) is d/dt Qz2 in component Qz2 (nanomolar).
C RATES(15) is d/dt Qz3 in component Qz3 (nanomolar).
C RATES(11) is d/dt Qz4 in component Qz4 (nanomolar).
C RATES(16) is d/dt Qz5 in component Qz5 (nanomolar).
C RATES(17) is d/dt Mz in component Mz (nanomolar).
C
      SUBROUTINE initConsts(CONSTS, RATES, STATES)
      REAL CONSTS(*), RATES(*), STATES(*)
      STATES(1) = 25.0
      CONSTS(1) = 1E-5
      STATES(2) = 0.0
      CONSTS(2) = 4.41E10
      CONSTS(3) = 9E-3
      STATES(3) = 4.0
      STATES(4) = 0.0
      CONSTS(4) = 0.9
      CONSTS(5) = 1.0
      STATES(5) = 0.0
      STATES(6) = 50.0
      CONSTS(6) = 0.02
      CONSTS(7) = 0.3
      STATES(7) = 0.0
      STATES(8) = 25.0
      STATES(9) = 0.0
      STATES(10) = 4.0
      STATES(11) = 0.0
      CONSTS(8) = 2.73E2
      CONSTS(9) = 3.437E-4
      CONSTS(10) = 1.253E-2
      STATES(12) = 0.0
      CONSTS(11) = 0.025
      STATES(13) = 0.0
      STATES(14) = 50.0
      CONSTS(12) = 0.00005
      STATES(15) = 0.0
      STATES(16) = 0.0
      CONSTS(13) = 0.0002
      CONSTS(14) = 0.0037
      STATES(17) = 0.0
      CONSTS(15) = 1800.0
      CONSTS(16) = 2700
      RETURN
      END
      SUBROUTINE computeRates(VOI, CONSTS,  RATES, STATES, ALGBRC)
      REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*)
      RATES(1) =  CONSTS(3)*STATES(2) -  CONSTS(2)*CONSTS(1) ** 2.00000*STATES(1)
      RATES(2) = ( CONSTS(2)*CONSTS(1) ** 2.00000*STATES(1)+ CONSTS(4)*STATES(4)) - ( CONSTS(3)*STATES(2)+ CONSTS(5)*STATES(3)*STATES(2))
      RATES(4) =  CONSTS(5)*STATES(3)*STATES(2) -  CONSTS(4)*STATES(4)
      RATES(8) = ( CONSTS(9)*STATES(9)+ CONSTS(4)*STATES(11)) - ( CONSTS(8)*CONSTS(1)*STATES(8)+ CONSTS(10)*STATES(10)*STATES(8))
      RATES(9) = ( CONSTS(8)*CONSTS(1)*STATES(8)+ CONSTS(4)*STATES(12)) - ( CONSTS(9)*STATES(9)+ CONSTS(11)*STATES(10)*STATES(9))
      ALGBRC(1) = TERNRY(VOI.GE.0.00000.AND.VOI.LT.CONSTS(15), 0.00000, TERNRY(VOI.GE.CONSTS(15).AND.VOI.LT.CONSTS(16), 0.0110000, 0.0/0.0)
      RATES(3) = ( CONSTS(4)*STATES(4)+ ALGBRC(1)*STATES(5)+ CONSTS(7)*STATES(5)) - ( CONSTS(5)*STATES(3)*STATES(2)+ CONSTS(6)*STATES(3)*STATES(6))
      RATES(6) = ( ALGBRC(1)*STATES(5)+ CONSTS(7)*STATES(5)) -  CONSTS(6)*STATES(3)*STATES(6)
      RATES(5) =  CONSTS(6)*STATES(3)*STATES(6) - ( ALGBRC(1)*STATES(5)+ CONSTS(7)*STATES(5))
      RATES(7) =  ALGBRC(1)*STATES(5)
      RATES(10) = ( CONSTS(4)*STATES(12)+ ALGBRC(1)*STATES(13)+ CONSTS(7)*STATES(13)+ CONSTS(4)*STATES(11)) - ( CONSTS(10)*STATES(10)*STATES(8)+ CONSTS(11)*STATES(10)*STATES(9)+ CONSTS(12)*STATES(10)*STATES(14))
      RATES(14) = ( ALGBRC(1)*STATES(13)+ CONSTS(7)*STATES(13)+ ALGBRC(1)*STATES(15)+ CONSTS(7)*STATES(15)+ ALGBRC(1)*STATES(16)+ CONSTS(7)*STATES(16)) - ( CONSTS(12)*STATES(10)*STATES(14)+ CONSTS(13)*STATES(11)*STATES(14)+ CONSTS(14)*STATES(12)*STATES(14))
      RATES(13) =  CONSTS(12)*STATES(10)*STATES(14) - ( ALGBRC(1)*STATES(13)+ CONSTS(7)*STATES(13))
      RATES(12) = ( CONSTS(11)*STATES(10)*STATES(9)+ ALGBRC(1)*STATES(15)+ CONSTS(7)*STATES(15)) - ( CONSTS(4)*STATES(12)+ CONSTS(14)*STATES(12)*STATES(14))
      RATES(15) =  CONSTS(14)*STATES(12)*STATES(14) - ( ALGBRC(1)*STATES(15)+ CONSTS(7)*STATES(15))
      RATES(11) = ( CONSTS(10)*STATES(10)*STATES(8)+ ALGBRC(1)*STATES(16)+ CONSTS(7)*STATES(16)) - ( CONSTS(4)*STATES(11)+ CONSTS(13)*STATES(11)*STATES(14))
      RATES(16) =  CONSTS(13)*STATES(11)*STATES(14) - ( ALGBRC(1)*STATES(16)+ CONSTS(7)*STATES(16))
      RATES(17) =  ALGBRC(1)*STATES(13)+ ALGBRC(1)*STATES(15)+ ALGBRC(1)*STATES(16)
      RETURN
      END
      SUBROUTINE computeVariables(VOI, CONSTS, RATES, STATES, ALGBRC)
      REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*)
      ALGBRC(1) = TERNRY(VOI.GE.0.00000.AND.VOI.LT.CONSTS(15), 0.00000, TERNRY(VOI.GE.CONSTS(15).AND.VOI.LT.CONSTS(16), 0.0110000, 0.0/0.0)
      RETURN
      END
      REAL FUNCTION TERNRY(TEST, VALA, VALB)
      LOGICAL TEST
      REAL VALA, VALB
      IF (TEST) THEN
        TERNRY = VALA
      ELSE
        TERNRY = VALB
      ENDIF
      RETURN
      END