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 35 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 37 entries in the constant variable array.
C
C
C CONSTS(1) is kappa_R_12 in component BG_parameters (fmol_per_sec).
C CONSTS(2) is kappa_R_34 in component BG_parameters (fmol_per_sec).
C CONSTS(3) is kappa_R_56 in component BG_parameters (fmol_per_sec).
C CONSTS(4) is kappa_R_78 in component BG_parameters (fmol_per_sec).
C CONSTS(5) is kappa_R_1a_cGMP in component BG_parameters (fmol_per_sec).
C CONSTS(6) is kappa_R_1b_cGMP in component BG_parameters (fmol_per_sec).
C CONSTS(7) is kappa_R_2a_cGMP in component BG_parameters (fmol_per_sec).
C CONSTS(8) is kappa_R_2b_cGMP in component BG_parameters (fmol_per_sec).
C CONSTS(9) is kappa_R_1_sGC in component BG_parameters (fmol_per_sec).
C CONSTS(10) is kappa_R_2_sGC in component BG_parameters (fmol_per_sec).
C CONSTS(11) is kappa_R_3_sGC in component BG_parameters (fmol_per_sec).
C CONSTS(12) is kappa_R_4_sGC in component BG_parameters (fmol_per_sec).
C CONSTS(13) is kappa_R_DNO_sGC in component BG_parameters (fmol_per_sec).
C CONSTS(14) is K_A in component BG_parameters (per_fmol).
C CONSTS(15) is K_M in component BG_parameters (per_fmol).
C CONSTS(16) is K_Mp in component BG_parameters (per_fmol).
C CONSTS(17) is K_AM in component BG_parameters (per_fmol).
C CONSTS(18) is K_AMp in component BG_parameters (per_fmol).
C CONSTS(19) is K_Pi in component BG_parameters (per_fmol).
C CONSTS(20) is K_Ca_i in component BG_parameters (per_fmol).
C CONSTS(21) is K_cGMP in component BG_parameters (per_fmol).
C CONSTS(22) is K_GTP in component BG_parameters (per_fmol).
C CONSTS(23) is K_E5c in component BG_parameters (per_fmol).
C CONSTS(24) is K_PDE in component BG_parameters (per_fmol).
C CONSTS(25) is K_GTP_E5c in component BG_parameters (per_fmol).
C CONSTS(26) is K_cGMP_PDE in component BG_parameters (per_fmol).
C CONSTS(27) is K_GMP in component BG_parameters (per_fmol).
C CONSTS(28) is K_Eb in component BG_parameters (per_fmol).
C CONSTS(29) is K_NO in component BG_parameters (per_fmol).
C CONSTS(30) is K_E6c in component BG_parameters (per_fmol).
C CONSTS(31) is K_NO_product in component BG_parameters (per_fmol).
C VOI is t in component environment (second).
C CONSTS(32) is vol_myo in component environment (pL).
C STATES(1) is q_A in component environment (fmol).
C STATES(2) is q_M in component environment (fmol).
C STATES(3) is q_Mp in component environment (fmol).
C STATES(4) is q_AM in component environment (fmol).
C STATES(5) is q_AMp in component environment (fmol).
C STATES(6) is q_Pi in component environment (fmol).
C STATES(7) is q_Ca_i in component environment (fmol).
C STATES(8) is q_cGMP in component environment (fmol).
C STATES(9) is q_GTP in component environment (fmol).
C STATES(10) is q_E5c in component environment (fmol).
C STATES(11) is q_PDE in component environment (fmol).
C STATES(12) is q_GTP_E5c in component environment (fmol).
C STATES(13) is q_cGMP_PDE in component environment (fmol).
C STATES(14) is q_GMP in component environment (fmol).
C STATES(15) is q_Eb in component environment (fmol).
C STATES(16) is q_NO in component environment (fmol).
C STATES(17) is q_E6c in component environment (fmol).
C STATES(18) is q_NO_product in component environment (fmol).
C ALGBRC(10) is v_R_12 in component HaiMurphy (fmol_per_sec).
C ALGBRC(11) is v_R_34 in component HaiMurphy (fmol_per_sec).
C ALGBRC(12) is v_R_56 in component HaiMurphy (fmol_per_sec).
C ALGBRC(13) is v_R_78 in component HaiMurphy (fmol_per_sec).
C CONSTS(33) is n_Cai_SM in component environment (dimensionless).
C ALGBRC(21) is v_R_1a_cGMP in component cGMP (fmol_per_sec).
C ALGBRC(22) is v_R_1b_cGMP in component cGMP (fmol_per_sec).
C ALGBRC(23) is v_R_2a_cGMP in component cGMP (fmol_per_sec).
C ALGBRC(24) is v_R_2b_cGMP in component cGMP (fmol_per_sec).
C ALGBRC(31) is v_R_1_sGC in component sGC (fmol_per_sec).
C ALGBRC(32) is v_R_2_sGC in component sGC (fmol_per_sec).
C ALGBRC(33) is v_R_3_sGC in component sGC (fmol_per_sec).
C ALGBRC(34) is v_R_4_sGC in component sGC (fmol_per_sec).
C ALGBRC(35) is v_R_DNO_sGC in component sGC (fmol_per_sec).
C CONSTS(34) is v_NO_generation in component environment (fmol_per_sec).
C ALGBRC(2) is stress in component environment (dimensionless).
C CONSTS(35) is R in component constants (J_per_K_per_mol).
C CONSTS(36) is T in component constants (kelvin).
C CONSTS(37) is F in component constants (C_per_mol).
C ALGBRC(1) is mu_A in component HaiMurphy (J_per_mol).
C ALGBRC(3) is mu_M in component HaiMurphy (J_per_mol).
C ALGBRC(4) is mu_Mp in component HaiMurphy (J_per_mol).
C ALGBRC(5) is mu_AM in component HaiMurphy (J_per_mol).
C ALGBRC(6) is mu_AMp in component HaiMurphy (J_per_mol).
C ALGBRC(7) is mu_Pi in component HaiMurphy (J_per_mol).
C ALGBRC(8) is mu_Ca_i in component HaiMurphy (J_per_mol).
C ALGBRC(9) is mu_cGMP in component HaiMurphy (J_per_mol).
C ALGBRC(14) is mu_GTP in component cGMP (J_per_mol).
C ALGBRC(15) is mu_E5c in component cGMP (J_per_mol).
C ALGBRC(16) is mu_cGMP in component cGMP (J_per_mol).
C ALGBRC(17) is mu_PDE in component cGMP (J_per_mol).
C ALGBRC(18) is mu_GTP_E5c in component cGMP (J_per_mol).
C ALGBRC(19) is mu_cGMP_PDE in component cGMP (J_per_mol).
C ALGBRC(20) is mu_GMP in component cGMP (J_per_mol).
C ALGBRC(25) is mu_Eb in component sGC (J_per_mol).
C ALGBRC(26) is mu_NO in component sGC (J_per_mol).
C ALGBRC(27) is mu_E6c in component sGC (J_per_mol).
C ALGBRC(28) is mu_E5c in component sGC (J_per_mol).
C ALGBRC(29) is mu_cGMP in component sGC (J_per_mol).
C ALGBRC(30) is mu_NO_product in component sGC (J_per_mol).
C RATES(1) is d/dt q_A in component environment (fmol).
C RATES(2) is d/dt q_M in component environment (fmol).
C RATES(3) is d/dt q_Mp in component environment (fmol).
C RATES(4) is d/dt q_AM in component environment (fmol).
C RATES(5) is d/dt q_AMp in component environment (fmol).
C RATES(6) is d/dt q_Pi in component environment (fmol).
C RATES(7) is d/dt q_Ca_i in component environment (fmol).
C RATES(8) is d/dt q_cGMP in component environment (fmol).
C RATES(9) is d/dt q_GTP in component environment (fmol).
C RATES(10) is d/dt q_E5c in component environment (fmol).
C RATES(11) is d/dt q_PDE in component environment (fmol).
C RATES(12) is d/dt q_GTP_E5c in component environment (fmol).
C RATES(13) is d/dt q_cGMP_PDE in component environment (fmol).
C RATES(14) is d/dt q_GMP in component environment (fmol).
C RATES(15) is d/dt q_Eb in component environment (fmol).
C RATES(16) is d/dt q_NO in component environment (fmol).
C RATES(17) is d/dt q_E6c in component environment (fmol).
C RATES(18) is d/dt q_NO_product in component environment (fmol).
C
      SUBROUTINE initConsts(CONSTS, RATES, STATES)
      REAL CONSTS(*), RATES(*), STATES(*)
      CONSTS(1) = 0.0628586
      CONSTS(2) = 10.3507
      CONSTS(3) = 1.13145
      CONSTS(4) = 0.031236
      CONSTS(5) = 192.663
      CONSTS(6) = 0.00328297
      CONSTS(7) = 56591.2
      CONSTS(8) = 0.0110353
      CONSTS(9) = 3.61127e+06
      CONSTS(10) = 0.00328297
      CONSTS(11) = 4.92446
      CONSTS(12) = 0.0361127
      CONSTS(13) = 0.01
      CONSTS(14) = 1.65213
      CONSTS(15) = 15.6959
      CONSTS(16) = 0.105259
      CONSTS(17) = 1.44065
      CONSTS(18) = 0.00966114
      CONSTS(19) = 723.915
      CONSTS(20) = 1
      CONSTS(21) = 1
      CONSTS(22) = 17040
      CONSTS(23) = 0.304602
      CONSTS(24) = 17.6706
      CONSTS(25) = 5190.42
      CONSTS(26) = 35.3412
      CONSTS(27) = 0.0051282
      CONSTS(28) = 0.0276911
      CONSTS(29) = 1
      CONSTS(30) = 30.4602
      CONSTS(31) = 0.1
      CONSTS(32) = 1
      STATES(1) = 1e-6
      STATES(2) = 1e-6
      STATES(3) = 0
      STATES(4) = 0
      STATES(5) = 0
      STATES(6) = 15
      STATES(7) = 1e-3
      STATES(8) = 1e-6
      STATES(9) = 0.0005
      STATES(10) = 1e-16
      STATES(11) = 1e-10
      STATES(12) = 1e-16
      STATES(13) = 1e-16
      STATES(14) = 1e-16
      STATES(15) = 1e-6
      STATES(16) = 0.00836
      STATES(17) = 1e-16
      STATES(18) = 1e-16
      CONSTS(33) = 1.66
      CONSTS(34) = 0.000114
      CONSTS(35) = 8.31
      CONSTS(36) = 310
      CONSTS(37) = 96485
      RETURN
      END
      SUBROUTINE computeRates(VOI, CONSTS,  RATES, STATES, ALGBRC)
      REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*)
      ALGBRC(3) =  CONSTS(35)*CONSTS(36)*log( CONSTS(15)*STATES(2))
      ALGBRC(4) =  CONSTS(35)*CONSTS(36)*log( CONSTS(16)*STATES(3))
      ALGBRC(7) =  CONSTS(35)*CONSTS(36)*log( CONSTS(19)*STATES(6))
      ALGBRC(8) =  CONSTS(35)*CONSTS(36)*log( CONSTS(20)*STATES(7))
      ALGBRC(9) =  CONSTS(35)*CONSTS(36)*log( CONSTS(21)*STATES(8))
      ALGBRC(10) =  CONSTS(1)*(EXP((ALGBRC(3)+ALGBRC(7)+ CONSTS(33)*ALGBRC(8))/( CONSTS(35)*CONSTS(36))) - EXP((ALGBRC(4)+ALGBRC(9))/( CONSTS(35)*CONSTS(36))))
      ALGBRC(1) =  CONSTS(35)*CONSTS(36)*log( CONSTS(14)*STATES(1))
      ALGBRC(6) =  CONSTS(35)*CONSTS(36)*log( CONSTS(18)*STATES(5))
      ALGBRC(11) =  CONSTS(2)*(EXP((ALGBRC(1)+ALGBRC(4))/( CONSTS(35)*CONSTS(36))) - EXP(ALGBRC(6)/( CONSTS(35)*CONSTS(36))))
      RATES(3) = ALGBRC(10) - ALGBRC(11)
      ALGBRC(5) =  CONSTS(35)*CONSTS(36)*log( CONSTS(17)*STATES(4))
      ALGBRC(12) =  CONSTS(3)*(EXP((ALGBRC(6)+ CONSTS(33)*ALGBRC(8))/( CONSTS(35)*CONSTS(36))) - EXP((ALGBRC(5)+ALGBRC(7)+ALGBRC(9))/( CONSTS(35)*CONSTS(36))))
      RATES(5) = ALGBRC(11) - ALGBRC(12)
      RATES(6) = - ALGBRC(10)+ALGBRC(12)
      RATES(7) =  CONSTS(33)*(- ALGBRC(10) - ALGBRC(12))
      ALGBRC(13) =  CONSTS(4)*(EXP(ALGBRC(5)/( CONSTS(35)*CONSTS(36))) - EXP((ALGBRC(1)+ALGBRC(3))/( CONSTS(35)*CONSTS(36))))
      RATES(1) = - ALGBRC(11)+ALGBRC(13)
      RATES(2) = - ALGBRC(10)+ALGBRC(13)
      RATES(4) = ALGBRC(12) - ALGBRC(13)
      ALGBRC(14) =  CONSTS(35)*CONSTS(36)*log( CONSTS(22)*STATES(9))
      ALGBRC(15) =  CONSTS(35)*CONSTS(36)*log( CONSTS(23)*STATES(10))
      ALGBRC(18) =  CONSTS(35)*CONSTS(36)*log( CONSTS(25)*STATES(12))
      ALGBRC(21) =  CONSTS(5)*(EXP((ALGBRC(14)+ALGBRC(15))/( CONSTS(35)*CONSTS(36))) - EXP(ALGBRC(18)/( CONSTS(35)*CONSTS(36))))
      RATES(9) = - ALGBRC(21)
      ALGBRC(16) =  CONSTS(35)*CONSTS(36)*log( CONSTS(21)*STATES(8))
      ALGBRC(22) =  CONSTS(6)*(EXP(ALGBRC(18)/( CONSTS(35)*CONSTS(36))) - EXP((ALGBRC(16)+ALGBRC(15))/( CONSTS(35)*CONSTS(36))))
      RATES(12) = ALGBRC(21) - ALGBRC(22)
      ALGBRC(17) =  CONSTS(35)*CONSTS(36)*log( CONSTS(24)*STATES(11))
      ALGBRC(19) =  CONSTS(35)*CONSTS(36)*log( CONSTS(26)*STATES(13))
      ALGBRC(23) =  CONSTS(7)*(EXP((ALGBRC(16)+ALGBRC(17))/( CONSTS(35)*CONSTS(36))) - EXP(ALGBRC(19)/( CONSTS(35)*CONSTS(36))))
      ALGBRC(20) =  CONSTS(35)*CONSTS(36)*log( CONSTS(27)*STATES(14))
      ALGBRC(24) =  CONSTS(8)*(EXP((ALGBRC(19)+ALGBRC(16))/( CONSTS(35)*CONSTS(36))) - EXP((ALGBRC(20)+ALGBRC(17))/( CONSTS(35)*CONSTS(36))))
      RATES(11) = - ALGBRC(23)+ALGBRC(24)
      RATES(13) = ALGBRC(23) - ALGBRC(24)
      RATES(14) = ALGBRC(24)
      ALGBRC(25) =  CONSTS(35)*CONSTS(36)*log( CONSTS(28)*STATES(15))
      ALGBRC(26) =  CONSTS(35)*CONSTS(36)*log( CONSTS(29)*STATES(16))
      ALGBRC(27) =  CONSTS(35)*CONSTS(36)*log( CONSTS(30)*STATES(17))
      ALGBRC(31) =  CONSTS(9)*(EXP((ALGBRC(25)+ALGBRC(26))/( CONSTS(35)*CONSTS(36))) - EXP(ALGBRC(27)/( CONSTS(35)*CONSTS(36))))
      ALGBRC(28) =  CONSTS(35)*CONSTS(36)*log( CONSTS(23)*STATES(10))
      ALGBRC(32) =  CONSTS(10)*(EXP(ALGBRC(27)/( CONSTS(35)*CONSTS(36))) - EXP(ALGBRC(28)/( CONSTS(35)*CONSTS(36))))
      ALGBRC(33) =  CONSTS(11)*(EXP((ALGBRC(27)+ALGBRC(26))/( CONSTS(35)*CONSTS(36))) - EXP((ALGBRC(28)+ALGBRC(26))/( CONSTS(35)*CONSTS(36))))
      RATES(17) = (ALGBRC(31) - ALGBRC(32)) - ALGBRC(33)
      ALGBRC(29) =  CONSTS(35)*CONSTS(36)*log( CONSTS(21)*STATES(8))
      ALGBRC(34) =  CONSTS(12)*(EXP((ALGBRC(28)+ ALGBRC(29)*2.00000)/( CONSTS(35)*CONSTS(36))) - EXP((ALGBRC(25)+ALGBRC(26))/( CONSTS(35)*CONSTS(36))))
      RATES(8) = (((ALGBRC(10)+ALGBRC(12)+ALGBRC(22)) - ALGBRC(23)) - ALGBRC(24)) -  2.00000*ALGBRC(34)
      RATES(10) = (- ALGBRC(21)+ALGBRC(22)+ALGBRC(32)+ALGBRC(33)) - ALGBRC(34)
      RATES(15) = - ALGBRC(31)+ALGBRC(34)
      ALGBRC(30) =  CONSTS(35)*CONSTS(36)*log( CONSTS(31)*STATES(18))
      ALGBRC(35) =  CONSTS(13)*(EXP(ALGBRC(26)/( CONSTS(35)*CONSTS(36))) - EXP(ALGBRC(30)/( CONSTS(35)*CONSTS(36))))
      RATES(16) = ((- ALGBRC(31)+ALGBRC(34)) - ALGBRC(35))+CONSTS(34)
      RATES(18) = ALGBRC(35)
      RETURN
      END
      SUBROUTINE computeVariables(VOI, CONSTS, RATES, STATES, ALGBRC)
      REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*)
      ALGBRC(3) =  CONSTS(35)*CONSTS(36)*log( CONSTS(15)*STATES(2))
      ALGBRC(4) =  CONSTS(35)*CONSTS(36)*log( CONSTS(16)*STATES(3))
      ALGBRC(7) =  CONSTS(35)*CONSTS(36)*log( CONSTS(19)*STATES(6))
      ALGBRC(8) =  CONSTS(35)*CONSTS(36)*log( CONSTS(20)*STATES(7))
      ALGBRC(9) =  CONSTS(35)*CONSTS(36)*log( CONSTS(21)*STATES(8))
      ALGBRC(10) =  CONSTS(1)*(EXP((ALGBRC(3)+ALGBRC(7)+ CONSTS(33)*ALGBRC(8))/( CONSTS(35)*CONSTS(36))) - EXP((ALGBRC(4)+ALGBRC(9))/( CONSTS(35)*CONSTS(36))))
      ALGBRC(1) =  CONSTS(35)*CONSTS(36)*log( CONSTS(14)*STATES(1))
      ALGBRC(6) =  CONSTS(35)*CONSTS(36)*log( CONSTS(18)*STATES(5))
      ALGBRC(11) =  CONSTS(2)*(EXP((ALGBRC(1)+ALGBRC(4))/( CONSTS(35)*CONSTS(36))) - EXP(ALGBRC(6)/( CONSTS(35)*CONSTS(36))))
      ALGBRC(5) =  CONSTS(35)*CONSTS(36)*log( CONSTS(17)*STATES(4))
      ALGBRC(12) =  CONSTS(3)*(EXP((ALGBRC(6)+ CONSTS(33)*ALGBRC(8))/( CONSTS(35)*CONSTS(36))) - EXP((ALGBRC(5)+ALGBRC(7)+ALGBRC(9))/( CONSTS(35)*CONSTS(36))))
      ALGBRC(13) =  CONSTS(4)*(EXP(ALGBRC(5)/( CONSTS(35)*CONSTS(36))) - EXP((ALGBRC(1)+ALGBRC(3))/( CONSTS(35)*CONSTS(36))))
      ALGBRC(14) =  CONSTS(35)*CONSTS(36)*log( CONSTS(22)*STATES(9))
      ALGBRC(15) =  CONSTS(35)*CONSTS(36)*log( CONSTS(23)*STATES(10))
      ALGBRC(18) =  CONSTS(35)*CONSTS(36)*log( CONSTS(25)*STATES(12))
      ALGBRC(21) =  CONSTS(5)*(EXP((ALGBRC(14)+ALGBRC(15))/( CONSTS(35)*CONSTS(36))) - EXP(ALGBRC(18)/( CONSTS(35)*CONSTS(36))))
      ALGBRC(16) =  CONSTS(35)*CONSTS(36)*log( CONSTS(21)*STATES(8))
      ALGBRC(22) =  CONSTS(6)*(EXP(ALGBRC(18)/( CONSTS(35)*CONSTS(36))) - EXP((ALGBRC(16)+ALGBRC(15))/( CONSTS(35)*CONSTS(36))))
      ALGBRC(17) =  CONSTS(35)*CONSTS(36)*log( CONSTS(24)*STATES(11))
      ALGBRC(19) =  CONSTS(35)*CONSTS(36)*log( CONSTS(26)*STATES(13))
      ALGBRC(23) =  CONSTS(7)*(EXP((ALGBRC(16)+ALGBRC(17))/( CONSTS(35)*CONSTS(36))) - EXP(ALGBRC(19)/( CONSTS(35)*CONSTS(36))))
      ALGBRC(20) =  CONSTS(35)*CONSTS(36)*log( CONSTS(27)*STATES(14))
      ALGBRC(24) =  CONSTS(8)*(EXP((ALGBRC(19)+ALGBRC(16))/( CONSTS(35)*CONSTS(36))) - EXP((ALGBRC(20)+ALGBRC(17))/( CONSTS(35)*CONSTS(36))))
      ALGBRC(25) =  CONSTS(35)*CONSTS(36)*log( CONSTS(28)*STATES(15))
      ALGBRC(26) =  CONSTS(35)*CONSTS(36)*log( CONSTS(29)*STATES(16))
      ALGBRC(27) =  CONSTS(35)*CONSTS(36)*log( CONSTS(30)*STATES(17))
      ALGBRC(31) =  CONSTS(9)*(EXP((ALGBRC(25)+ALGBRC(26))/( CONSTS(35)*CONSTS(36))) - EXP(ALGBRC(27)/( CONSTS(35)*CONSTS(36))))
      ALGBRC(28) =  CONSTS(35)*CONSTS(36)*log( CONSTS(23)*STATES(10))
      ALGBRC(32) =  CONSTS(10)*(EXP(ALGBRC(27)/( CONSTS(35)*CONSTS(36))) - EXP(ALGBRC(28)/( CONSTS(35)*CONSTS(36))))
      ALGBRC(33) =  CONSTS(11)*(EXP((ALGBRC(27)+ALGBRC(26))/( CONSTS(35)*CONSTS(36))) - EXP((ALGBRC(28)+ALGBRC(26))/( CONSTS(35)*CONSTS(36))))
      ALGBRC(29) =  CONSTS(35)*CONSTS(36)*log( CONSTS(21)*STATES(8))
      ALGBRC(34) =  CONSTS(12)*(EXP((ALGBRC(28)+ ALGBRC(29)*2.00000)/( CONSTS(35)*CONSTS(36))) - EXP((ALGBRC(25)+ALGBRC(26))/( CONSTS(35)*CONSTS(36))))
      ALGBRC(30) =  CONSTS(35)*CONSTS(36)*log( CONSTS(31)*STATES(18))
      ALGBRC(35) =  CONSTS(13)*(EXP(ALGBRC(26)/( CONSTS(35)*CONSTS(36))) - EXP(ALGBRC(30)/( CONSTS(35)*CONSTS(36))))
      ALGBRC(2) = (STATES(4)+STATES(5))/1.00000
      RETURN
      END