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 39 entries in the algebraic variable array.
C There are a total of 11 entries in each of the rate and state variable arrays.
C There are a total of 48 entries in the constant variable array.
C
C
C VOI is time in component environment (second).
C CONSTS(1) is q_Cai_init in component environment (fmol).
C CONSTS(2) is q_TRPN_init in component environment (fmol).
C CONSTS(3) is q_Ca_TRPN_init in component environment (fmol).
C CONSTS(4) is q_B_init in component environment (fmol).
C CONSTS(5) is q_U_init in component environment (fmol).
C CONSTS(6) is q_W_init in component environment (fmol).
C CONSTS(7) is q_S_init in component environment (fmol).
C ALGBRC(3) is q_TRPN in component environment (fmol).
C ALGBRC(6) is q_Cai in component environment (fmol).
C ALGBRC(9) is q_Ca_TRPN in component environment (fmol).
C ALGBRC(10) is q_B in component environment (fmol).
C ALGBRC(11) is q_U in component environment (fmol).
C ALGBRC(12) is q_W in component environment (fmol).
C ALGBRC(13) is q_S in component environment (fmol).
C STATES(1) is q_TRPN in component crossbridge_TRPN (fmol).
C STATES(2) is q_Cai in component crossbridge_TRPN (fmol).
C STATES(3) is q_Ca_TRPN in component crossbridge_TRPN (fmol).
C STATES(4) is q_B in component crossbridge_TRPN (fmol).
C STATES(5) is q_U in component crossbridge_TRPN (fmol).
C STATES(6) is q_W in component crossbridge_TRPN (fmol).
C STATES(7) is q_S in component crossbridge_TRPN (fmol).
C ALGBRC(36) is T_total in component crossbridge_TRPN (kPa).
C STATES(8) is SL in component crossbridge_TRPN (metre).
C CONSTS(8) is kappa_R_TRPNCa in component crossbridge_TRPN_parameters (fmol_per_sec).
C CONSTS(9) is kappa_R_BU in component crossbridge_TRPN_parameters (fmol_per_sec).
C CONSTS(10) is kappa_R_UW in component crossbridge_TRPN_parameters (fmol_per_sec).
C CONSTS(11) is kappa_R_WS in component crossbridge_TRPN_parameters (fmol_per_sec).
C CONSTS(12) is kappa_R_SU in component crossbridge_TRPN_parameters (fmol_per_sec).
C CONSTS(13) is K_TRPN in component crossbridge_TRPN_parameters (per_fmol).
C CONSTS(14) is K_Cai in component crossbridge_TRPN_parameters (per_fmol).
C CONSTS(15) is K_Ca_TRPN in component crossbridge_TRPN_parameters (per_fmol).
C CONSTS(16) is K_B in component crossbridge_TRPN_parameters (per_fmol).
C CONSTS(17) is K_U in component crossbridge_TRPN_parameters (per_fmol).
C CONSTS(18) is K_W in component crossbridge_TRPN_parameters (per_fmol).
C CONSTS(19) is K_S in component crossbridge_TRPN_parameters (per_fmol).
C CONSTS(20) is R in component constants (J_per_K_per_mol).
C CONSTS(21) is T in component constants (kelvin).
C CONSTS(22) is n_Tm in component crossbridge_TRPN (dimensionless).
C ALGBRC(14) is mu_TRPN in component crossbridge_TRPN (J_per_mol).
C ALGBRC(15) is mu_Cai in component crossbridge_TRPN (J_per_mol).
C ALGBRC(16) is mu_Ca_TRPN in component crossbridge_TRPN (J_per_mol).
C ALGBRC(17) is mu_B in component crossbridge_TRPN (J_per_mol).
C ALGBRC(19) is mu_U in component crossbridge_TRPN (J_per_mol).
C ALGBRC(21) is mu_W in component crossbridge_TRPN (J_per_mol).
C ALGBRC(23) is mu_S in component crossbridge_TRPN (J_per_mol).
C ALGBRC(39) is v_R_TRPNCa in component crossbridge_TRPN (fmol_per_sec).
C ALGBRC(25) is v_R_BU in component crossbridge_TRPN (fmol_per_sec).
C ALGBRC(31) is v_R_UW in component crossbridge_TRPN (fmol_per_sec).
C ALGBRC(33) is v_R_WS in component crossbridge_TRPN (fmol_per_sec).
C ALGBRC(35) is v_R_SU in component crossbridge_TRPN (fmol_per_sec).
C ALGBRC(37) is tension in component crossbridge_TRPN (N_per_mm2).
C ALGBRC(38) is mu_tension in component crossbridge_TRPN (J_per_mol).
C CONSTS(23) is kf_coeff in component crossbridge_TRPN (dimensionless).
C CONSTS(44) is n in component crossbridge_TRPN (J_per_mol).
C CONSTS(24) is hh in component crossbridge_TRPN (mm2_per_N).
C CONSTS(25) is SL_0 in component crossbridge_TRPN (metre).
C CONSTS(26) is q_MS in component crossbridge_TRPN (fmol).
C CONSTS(27) is r_s in component crossbridge_TRPN (dimensionless).
C CONSTS(28) is r_w in component crossbridge_TRPN (dimensionless).
C CONSTS(29) is A_eff in component crossbridge_TRPN (dimensionless).
C CONSTS(30) is phi in component crossbridge_TRPN (dimensionless).
C CONSTS(31) is k_uw in component crossbridge_TRPN (per_sec).
C CONSTS(32) is k_ws in component crossbridge_TRPN (per_sec).
C STATES(9) is G_w in component crossbridge_TRPN (metre).
C STATES(10) is G_s in component crossbridge_TRPN (metre).
C CONSTS(41) is c_w in component crossbridge_TRPN (per_sec).
C CONSTS(42) is c_s in component crossbridge_TRPN (per_sec).
C CONSTS(43) is A_w in component crossbridge_TRPN (dimensionless).
C CONSTS(45) is A_s in component crossbridge_TRPN (dimensionless).
C ALGBRC(4) is mu_1 in component crossbridge_TRPN (J_per_m).
C CONSTS(46) is mu_2 in component crossbridge_TRPN (J_per_m).
C ALGBRC(1) is mu_3 in component crossbridge_TRPN (J_per_m).
C ALGBRC(5) is mu_4 in component crossbridge_TRPN (J_per_m).
C CONSTS(47) is mu_5 in component crossbridge_TRPN (J_per_m).
C ALGBRC(2) is mu_6 in component crossbridge_TRPN (J_per_m).
C ALGBRC(7) is v_1 in component crossbridge_TRPN (m_per_s).
C CONSTS(33) is v_2 in component crossbridge_TRPN (m_per_s).
C ALGBRC(8) is v_4 in component crossbridge_TRPN (m_per_s).
C CONSTS(34) is v_to_mu in component crossbridge_TRPN (Js_per_m2).
C ALGBRC(24) is T_active in component crossbridge_TRPN (kPa).
C CONSTS(35) is T_ref in component crossbridge_TRPN (kPa).
C ALGBRC(22) is mu_T_a in component crossbridge_TRPN (kPa).
C ALGBRC(18) is mu_T_S in component crossbridge_TRPN (kPa).
C ALGBRC(20) is mu_T_W in component crossbridge_TRPN (kPa).
C STATES(11) is Cdd in component crossbridge_TRPN (metre).
C ALGBRC(26) is eta in component crossbridge_TRPN (per_sec).
C CONSTS(36) is eta_l in component crossbridge_TRPN (per_sec).
C CONSTS(37) is eta_s in component crossbridge_TRPN (per_sec).
C CONSTS(38) is k in component crossbridge_TRPN (dimensionless).
C CONSTS(39) is alpha in component crossbridge_TRPN (kPa).
C ALGBRC(30) is v_Cdd in component crossbridge_TRPN (m_per_s).
C ALGBRC(27) is mu_d in component crossbridge_TRPN (J_per_m).
C ALGBRC(28) is mu_k in component crossbridge_TRPN (J_per_m).
C ALGBRC(29) is mu_f in component crossbridge_TRPN (J_per_m).
C ALGBRC(32) is mu_T_passive in component crossbridge_TRPN (kPa).
C ALGBRC(34) is T_passive in component crossbridge_TRPN (kPa).
C CONSTS(40) is F in component constants (C_per_mol).
C RATES(2) is d/dt q_Cai in component crossbridge_TRPN (fmol).
C RATES(1) is d/dt q_TRPN in component crossbridge_TRPN (fmol).
C RATES(3) is d/dt q_Ca_TRPN in component crossbridge_TRPN (fmol).
C RATES(4) is d/dt q_B in component crossbridge_TRPN (fmol).
C RATES(5) is d/dt q_U in component crossbridge_TRPN (fmol).
C RATES(6) is d/dt q_W in component crossbridge_TRPN (fmol).
C RATES(7) is d/dt q_S in component crossbridge_TRPN (fmol).
C RATES(9) is d/dt G_w in component crossbridge_TRPN (metre).
C RATES(8) is d/dt SL in component crossbridge_TRPN (metre).
C RATES(10) is d/dt G_s in component crossbridge_TRPN (metre).
C RATES(11) is d/dt Cdd in component crossbridge_TRPN (metre).
C
      SUBROUTINE initConsts(CONSTS, RATES, STATES)
      REAL CONSTS(*), RATES(*), STATES(*)
      CONSTS(1) = 6.82e-1
      CONSTS(2) = 2.57
      CONSTS(3) = 1e-6
      CONSTS(4) = 1
      CONSTS(5) = 0
      CONSTS(6) = 0
      CONSTS(7) = 0
      STATES(1) = 1e-16
      STATES(2) = 1e-16
      STATES(3) = 1e-16
      STATES(4) = 1e-16
      STATES(5) = 1e-16
      STATES(6) = 1e-16
      STATES(7) = 1e-16
      STATES(8) = 1e-6
      CONSTS(8) = 52.0453
      CONSTS(9) = 2.90875
      CONSTS(10) = 0.332501
      CONSTS(11) = 0.00782356
      CONSTS(12) = 140824
      CONSTS(13) = 1.27424
      CONSTS(14) = 1.27424
      CONSTS(15) = 0.11171
      CONSTS(16) = 6.06164
      CONSTS(17) = 2.27312
      CONSTS(18) = 14.8627
      CONSTS(19) = 3.71567e-06
      CONSTS(20) = 8.31
      CONSTS(21) = 310
      CONSTS(22) = 1.1
      CONSTS(23) = -0.0118
      CONSTS(24) = 1
      CONSTS(25) = 2e-6
      CONSTS(26) = 1e-6
      CONSTS(27) = 0.25
      CONSTS(28) = 0.5
      CONSTS(29) = 25
      CONSTS(30) = 2.23
      CONSTS(31) = 26
      CONSTS(32) = 4
      STATES(9) = 1e-6
      STATES(10) = 1e-6
      CONSTS(33) = 0
      CONSTS(34) = 1
      CONSTS(35) = 40.5
      STATES(11) = 0
      CONSTS(36) = 200e3
      CONSTS(37) = 200e3
      CONSTS(38) = 7
      CONSTS(39) = 2.1
      CONSTS(40) = 96485
      CONSTS(41) = ( CONSTS(30)*CONSTS(31)*(1.00000 - CONSTS(28)))/CONSTS(28)
      CONSTS(42) = ( CONSTS(30)*CONSTS(32)*(1.00000 - CONSTS(27))*CONSTS(28))/CONSTS(27)
      CONSTS(43) = ( CONSTS(29)*CONSTS(27))/( (1.00000 - CONSTS(27))*CONSTS(28)+CONSTS(27))
      CONSTS(44) =  CONSTS(23)*CONSTS(20)*CONSTS(21)
      CONSTS(47) = CONSTS(33)
      CONSTS(45) = CONSTS(43)
      CONSTS(46) =  - CONSTS(43)*CONSTS(33)*CONSTS(34)
      CONSTS(47) =  - CONSTS(45)*CONSTS(33)*CONSTS(34)
      RETURN
      END
      SUBROUTINE computeRates(VOI, CONSTS,  RATES, STATES, ALGBRC)
      REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*)
      RATES(8) = CONSTS(47)
      ALGBRC(1) =  CONSTS(41)*STATES(9)*CONSTS(34)
      ALGBRC(4) = - CONSTS(46) - ALGBRC(1)
      ALGBRC(7) = ALGBRC(4)/CONSTS(34)
      RATES(9) = ALGBRC(7)
      ALGBRC(2) =  CONSTS(42)*STATES(10)*CONSTS(34)
      ALGBRC(5) = - CONSTS(47) - ALGBRC(2)
      ALGBRC(8) = ALGBRC(5)/CONSTS(34)
      RATES(10) = ALGBRC(8)
      ALGBRC(9) = STATES(3)+CONSTS(3)
      ALGBRC(16) =  CONSTS(20)*CONSTS(21)*log( CONSTS(15)*ALGBRC(9))
      ALGBRC(10) = STATES(4)+CONSTS(4)
      ALGBRC(17) =  CONSTS(20)*CONSTS(21)*log( CONSTS(16)*ALGBRC(10))
      ALGBRC(11) = STATES(5)+CONSTS(5)
      ALGBRC(19) =  CONSTS(20)*CONSTS(21)*log( CONSTS(17)*ALGBRC(11))
      ALGBRC(25) =  CONSTS(9)*(EXP((ALGBRC(17)+ CONSTS(22)*ALGBRC(16))/( CONSTS(20)*CONSTS(21))) - EXP((ALGBRC(19)+ CONSTS(22)*ALGBRC(16))/( CONSTS(20)*CONSTS(21))))
      RATES(4) = - ALGBRC(25)
CALL minimize(minfunc_0, CONSTS, VARIABLES, <VAR>)
      ALGBRC(30) = ALGBRC(27)/CONSTS(34)
      RATES(11) = ALGBRC(30)
      ALGBRC(12) = STATES(6)+CONSTS(6)
      ALGBRC(21) =  CONSTS(20)*CONSTS(21)*log( CONSTS(18)*ALGBRC(12))
      ALGBRC(31) =  CONSTS(10)*(EXP(ALGBRC(19)/( CONSTS(20)*CONSTS(21))) - EXP(ALGBRC(21)/( CONSTS(20)*CONSTS(21))))
      ALGBRC(13) = STATES(7)+CONSTS(7)
      ALGBRC(23) =  CONSTS(20)*CONSTS(21)*log( CONSTS(19)*ALGBRC(13))
      ALGBRC(33) =  CONSTS(11)*(EXP(ALGBRC(21)/( CONSTS(20)*CONSTS(21))) - EXP(ALGBRC(23)/( CONSTS(20)*CONSTS(21))))
      RATES(6) = ALGBRC(31) - ALGBRC(33)
      ALGBRC(35) =  CONSTS(12)*(EXP(ALGBRC(23)/( CONSTS(20)*CONSTS(21))) - EXP(ALGBRC(19)/( CONSTS(20)*CONSTS(21))))
      RATES(5) = (ALGBRC(25) - ALGBRC(31))+ALGBRC(35)
      RATES(7) = ALGBRC(33) - ALGBRC(35)
      ALGBRC(3) = STATES(1)+CONSTS(2)
      ALGBRC(14) =  CONSTS(20)*CONSTS(21)*log( CONSTS(13)*ALGBRC(3))
      ALGBRC(6) = STATES(2)+CONSTS(1)
      ALGBRC(15) =  CONSTS(20)*CONSTS(21)*log( CONSTS(14)*ALGBRC(6))
      ALGBRC(18) =  (CONSTS(35)/( CONSTS(25)*CONSTS(26)*CONSTS(27)))*STATES(7)*(STATES(10)+CONSTS(25))
      ALGBRC(20) =  (CONSTS(35)/( CONSTS(25)*CONSTS(26)*CONSTS(27)))*STATES(6)*STATES(9)
      ALGBRC(22) = ALGBRC(18)+ALGBRC(20)
      ALGBRC(24) = ALGBRC(22)
      ALGBRC(32) =  (( CONSTS(39)*ALGBRC(26))/CONSTS(25))*ALGBRC(30)
      ALGBRC(34) = ALGBRC(32)
      ALGBRC(36) = ALGBRC(24)+ALGBRC(34)
      ALGBRC(37) =  ALGBRC(36)*1000.00
      ALGBRC(38) =  CONSTS(24)*CONSTS(44)*ALGBRC(37)
      ALGBRC(39) =  CONSTS(8)*(EXP((ALGBRC(15)+ALGBRC(14))/( CONSTS(20)*CONSTS(21))) - EXP((ALGBRC(16)+ALGBRC(38))/( CONSTS(20)*CONSTS(21))))
      RATES(2) = - ALGBRC(39)
      RATES(1) = - ALGBRC(39)
      RATES(3) = ALGBRC(39)
      RETURN
      END
      SUBROUTINE computeVariables(VOI, CONSTS, RATES, STATES, ALGBRC)
      REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*)
      ALGBRC(1) =  CONSTS(41)*STATES(9)*CONSTS(34)
      ALGBRC(4) = - CONSTS(46) - ALGBRC(1)
      ALGBRC(7) = ALGBRC(4)/CONSTS(34)
      ALGBRC(2) =  CONSTS(42)*STATES(10)*CONSTS(34)
      ALGBRC(5) = - CONSTS(47) - ALGBRC(2)
      ALGBRC(8) = ALGBRC(5)/CONSTS(34)
      ALGBRC(9) = STATES(3)+CONSTS(3)
      ALGBRC(16) =  CONSTS(20)*CONSTS(21)*log( CONSTS(15)*ALGBRC(9))
      ALGBRC(10) = STATES(4)+CONSTS(4)
      ALGBRC(17) =  CONSTS(20)*CONSTS(21)*log( CONSTS(16)*ALGBRC(10))
      ALGBRC(11) = STATES(5)+CONSTS(5)
      ALGBRC(19) =  CONSTS(20)*CONSTS(21)*log( CONSTS(17)*ALGBRC(11))
      ALGBRC(25) =  CONSTS(9)*(EXP((ALGBRC(17)+ CONSTS(22)*ALGBRC(16))/( CONSTS(20)*CONSTS(21))) - EXP((ALGBRC(19)+ CONSTS(22)*ALGBRC(16))/( CONSTS(20)*CONSTS(21))))
      ALGBRC(30) = ALGBRC(27)/CONSTS(34)
      ALGBRC(12) = STATES(6)+CONSTS(6)
      ALGBRC(21) =  CONSTS(20)*CONSTS(21)*log( CONSTS(18)*ALGBRC(12))
      ALGBRC(31) =  CONSTS(10)*(EXP(ALGBRC(19)/( CONSTS(20)*CONSTS(21))) - EXP(ALGBRC(21)/( CONSTS(20)*CONSTS(21))))
      ALGBRC(13) = STATES(7)+CONSTS(7)
      ALGBRC(23) =  CONSTS(20)*CONSTS(21)*log( CONSTS(19)*ALGBRC(13))
      ALGBRC(33) =  CONSTS(11)*(EXP(ALGBRC(21)/( CONSTS(20)*CONSTS(21))) - EXP(ALGBRC(23)/( CONSTS(20)*CONSTS(21))))
      ALGBRC(35) =  CONSTS(12)*(EXP(ALGBRC(23)/( CONSTS(20)*CONSTS(21))) - EXP(ALGBRC(19)/( CONSTS(20)*CONSTS(21))))
      ALGBRC(3) = STATES(1)+CONSTS(2)
      ALGBRC(14) =  CONSTS(20)*CONSTS(21)*log( CONSTS(13)*ALGBRC(3))
      ALGBRC(6) = STATES(2)+CONSTS(1)
      ALGBRC(15) =  CONSTS(20)*CONSTS(21)*log( CONSTS(14)*ALGBRC(6))
      ALGBRC(18) =  (CONSTS(35)/( CONSTS(25)*CONSTS(26)*CONSTS(27)))*STATES(7)*(STATES(10)+CONSTS(25))
      ALGBRC(20) =  (CONSTS(35)/( CONSTS(25)*CONSTS(26)*CONSTS(27)))*STATES(6)*STATES(9)
      ALGBRC(22) = ALGBRC(18)+ALGBRC(20)
      ALGBRC(24) = ALGBRC(22)
      ALGBRC(32) =  (( CONSTS(39)*ALGBRC(26))/CONSTS(25))*ALGBRC(30)
      ALGBRC(34) = ALGBRC(32)
      ALGBRC(36) = ALGBRC(24)+ALGBRC(34)
      ALGBRC(37) =  ALGBRC(36)*1000.00
      ALGBRC(38) =  CONSTS(24)*CONSTS(44)*ALGBRC(37)
      ALGBRC(39) =  CONSTS(8)*(EXP((ALGBRC(15)+ALGBRC(14))/( CONSTS(20)*CONSTS(21))) - EXP((ALGBRC(16)+ALGBRC(38))/( CONSTS(20)*CONSTS(21))))
      RETURN
      END
REAL FUNCTION minfunc_0(CONSTS, VARIABLES)
            REAL CONSTS(*), VARIABLES(*) 
      minfunc_0[1] = abs(ALGBRC(26) - (TERNRY(ALGBRC(27).GT.0.00000, CONSTS(36), CONSTS(37))))
      minfunc_0[2] = abs(ALGBRC(28) -  (CONSTS(38)/ALGBRC(26))*STATES(11)*CONSTS(34))
      minfunc_0[3] = abs(ALGBRC(29) -  (CONSTS(38)/ALGBRC(26))*(STATES(8) - CONSTS(25))*CONSTS(34))
      minfunc_0[4] = abs(ALGBRC(27) - (- ALGBRC(28)+ALGBRC(29)))
      RETURN
      END
      REAL FUNCTION TERNRY(TEST, VALA, VALB)
      LOGICAL TEST
      REAL VALA, VALB
      IF (TEST) THEN
        TERNRY = VALA
      ELSE
        TERNRY = VALB
      ENDIF
      RETURN
      END
Source
Derived from workspace BG_crossbridge_TRPN at changeset 1473d84d3eee.
Collaboration
To begin collaborating on this work, please use your git client and issue this command:
License
The terms of use/license for this work is unspecified.