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 31 entries in the algebraic variable array.
C There are a total of 6 entries in each of the rate and state variable arrays.
C There are a total of 23 entries in the constant variable array.
C
C
C VOI is time in component environment (second).
C CONSTS(1) is C_m in component environment (fF).
C STATES(1) is q_Ca_o in component environment (fmol).
C STATES(2) is q_Ca_i in component environment (fmol).
C STATES(3) is q_s00_TCC in component environment (fmol).
C STATES(4) is q_s10_TCC in component environment (fmol).
C STATES(5) is q_s01_TCC in component environment (fmol).
C STATES(6) is q_s11_TCC in component environment (fmol).
C ALGBRC(3) is q_mem in component environment (fC).
C ALGBRC(2) is V_mem in component environment (volt).
C CONSTS(2) is R in component environment (J_per_K_per_mol).
C CONSTS(3) is T in component environment (kelvin).
C CONSTS(4) is F in component environment (C_per_mol).
C ALGBRC(23) is v_TCC in component TCC (fmol_per_sec).
C ALGBRC(29) is I_mem_TCC in component TCC (fA).
C CONSTS(23) is I_stim in component environment (fA).
C CONSTS(5) is stimPeriod in component environment (second).
C CONSTS(6) is stimDuration in component environment (second).
C ALGBRC(1) is tPeriod in component environment (second).
C CONSTS(7) is kappa_TCC in component TCC_parameters (fmol_per_sec).
C CONSTS(8) is kappa_R1_TCC in component TCC_parameters (fmol_per_sec).
C CONSTS(9) is kappa_R2_TCC in component TCC_parameters (fmol_per_sec).
C CONSTS(10) is kappa_R3_TCC in component TCC_parameters (fmol_per_sec).
C CONSTS(11) is kappa_R4_TCC in component TCC_parameters (fmol_per_sec).
C CONSTS(12) is K_Ca_i in component TCC_parameters (per_fmol).
C CONSTS(13) is K_Ca_o in component TCC_parameters (per_fmol).
C CONSTS(14) is K_S00_TCC in component TCC_parameters (per_fmol).
C CONSTS(15) is K_S10_TCC in component TCC_parameters (per_fmol).
C CONSTS(16) is K_S01_TCC in component TCC_parameters (per_fmol).
C CONSTS(17) is K_S11_TCC in component TCC_parameters (per_fmol).
C CONSTS(18) is zCa in component TCC_parameters (dimensionless).
C CONSTS(19) is z_df in component TCC_parameters (dimensionless).
C CONSTS(20) is z_ff in component TCC_parameters (dimensionless).
C CONSTS(21) is z_dr in component TCC_parameters (dimensionless).
C CONSTS(22) is z_fr in component TCC_parameters (dimensionless).
C ALGBRC(4) is u_Ca_i in component TCC (J_per_mol).
C ALGBRC(5) is u_Ca_o in component TCC (J_per_mol).
C ALGBRC(6) is V_mem in component TCC (J_per_C).
C ALGBRC(7) is Am_TCC in component TCC (J_per_mol).
C ALGBRC(21) is Af_Ca in component TCC (J_per_mol).
C ALGBRC(22) is Ar_Ca in component TCC (J_per_mol).
C ALGBRC(19) is v_s00_TCC in component TCC (fmol_per_sec).
C ALGBRC(30) is v_s10_TCC in component TCC (fmol_per_sec).
C ALGBRC(27) is v_s01_TCC in component TCC (fmol_per_sec).
C ALGBRC(31) is v_s11_TCC in component TCC (fmol_per_sec).
C ALGBRC(14) is v_R1_TCC in component TCC (fmol_per_sec).
C ALGBRC(26) is v_R2_TCC in component TCC (fmol_per_sec).
C ALGBRC(18) is v_R3_TCC in component TCC (fmol_per_sec).
C ALGBRC(28) is v_R4_TCC in component TCC (fmol_per_sec).
C ALGBRC(8) is mu_s00_TCC in component TCC (J_per_mol).
C ALGBRC(11) is mu_s10_TCC in component TCC (J_per_mol).
C ALGBRC(15) is mu_s01_TCC in component TCC (J_per_mol).
C ALGBRC(20) is mu_s11_TCC in component TCC (J_per_mol).
C ALGBRC(9) is Af_R1_TCC in component TCC (J_per_mol).
C ALGBRC(12) is Ar_R1_TCC in component TCC (J_per_mol).
C ALGBRC(16) is Af_R2_TCC in component TCC (J_per_mol).
C ALGBRC(24) is Ar_R2_TCC in component TCC (J_per_mol).
C ALGBRC(10) is Af_R3_TCC in component TCC (J_per_mol).
C ALGBRC(17) is Ar_R3_TCC in component TCC (J_per_mol).
C ALGBRC(13) is Af_R4_TCC in component TCC (J_per_mol).
C ALGBRC(25) is Ar_R4_TCC in component TCC (J_per_mol).
C RATES(2) is d/dt q_Ca_i in component environment (fmol).
C RATES(1) is d/dt q_Ca_o in component environment (fmol).
C RATES(3) is d/dt q_s00_TCC in component environment (fmol).
C RATES(4) is d/dt q_s10_TCC in component environment (fmol).
C RATES(5) is d/dt q_s01_TCC in component environment (fmol).
C RATES(6) is d/dt q_s11_TCC in component environment (fmol).
C
      SUBROUTINE initConsts(CONSTS, RATES, STATES)
      REAL CONSTS(*), RATES(*), STATES(*)
      CONSTS(1) = 60000
      STATES(1) = 0.04653
      STATES(2) = 0.000001551
      STATES(3) = 3.653271338425772e-07
      STATES(4) = 1e-16
      STATES(5) = 1e-16
      STATES(6) = 1e-16
      CONSTS(2) = 8.31
      CONSTS(3) = 310
      CONSTS(4) = 96500
      CONSTS(5) = 1
      CONSTS(6) = 0.0001
      CONSTS(7) = 11414.6
      CONSTS(8) = 1266.14
      CONSTS(9) = 4.33488
      CONSTS(10) = 1.34962
      CONSTS(11) = 7.44777
      CONSTS(12) = 28.7976
      CONSTS(13) = 211.182
      CONSTS(14) = 2.10659
      CONSTS(15) = 0.381738
      CONSTS(16) = 615.294
      CONSTS(17) = 111.498
      CONSTS(18) = 2
      CONSTS(19) = 0.876568910405296
      CONSTS(20) = -0.576510778245838
      CONSTS(21) = -0.872117216889333
      CONSTS(22) = 1.73582739545622
      CONSTS(23) = 0.00000
      RETURN
      END
      SUBROUTINE computeRates(VOI, CONSTS,  RATES, STATES, ALGBRC)
      REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*)
      ALGBRC(2) = TERNRY(VOI.GE.0.00000.AND.VOI.LT.0.400000, - 0.0900000, TERNRY(VOI.GT.1.10000.AND.VOI.LT.2.10000, - 0.0600000, TERNRY(VOI.GT.2.20000.AND.VOI.LT.3.10000, 0.0400000, TERNRY(VOI.GT.3.50000, - 0.0900000, - 0.0800000)
      ALGBRC(3) =  ALGBRC(2)*CONSTS(1)
      ALGBRC(6) = ALGBRC(3)/CONSTS(1)
      ALGBRC(8) =  CONSTS(2)*CONSTS(3)*log( CONSTS(14)*STATES(3))
      ALGBRC(9) = ALGBRC(8)+ CONSTS(19)*CONSTS(4)*ALGBRC(6)
      ALGBRC(11) =  CONSTS(2)*CONSTS(3)*log( CONSTS(15)*STATES(4))
      ALGBRC(12) = ALGBRC(11)+ CONSTS(21)*CONSTS(4)*ALGBRC(6)
      ALGBRC(14) =  CONSTS(8)*(EXP(ALGBRC(9)/( CONSTS(2)*CONSTS(3))) - EXP(ALGBRC(12)/( CONSTS(2)*CONSTS(3))))
      ALGBRC(10) = ALGBRC(8)+ CONSTS(20)*CONSTS(4)*ALGBRC(6)
      ALGBRC(15) =  CONSTS(2)*CONSTS(3)*log( CONSTS(16)*STATES(5))
      ALGBRC(17) = ALGBRC(15)+ CONSTS(22)*CONSTS(4)*ALGBRC(6)
      ALGBRC(18) =  CONSTS(10)*(EXP(ALGBRC(10)/( CONSTS(2)*CONSTS(3))) - EXP(ALGBRC(17)/( CONSTS(2)*CONSTS(3))))
      ALGBRC(19) = - ALGBRC(14) - ALGBRC(18)
      RATES(3) = ALGBRC(19)
      ALGBRC(7) =  CONSTS(18)*CONSTS(4)*ALGBRC(6)
      ALGBRC(4) =  CONSTS(2)*CONSTS(3)*log( CONSTS(12)*STATES(2))
      ALGBRC(20) =  CONSTS(2)*CONSTS(3)*log( CONSTS(17)*STATES(6))
      ALGBRC(21) = ALGBRC(20)+ALGBRC(4)+ALGBRC(7)
      ALGBRC(5) =  CONSTS(2)*CONSTS(3)*log( CONSTS(13)*STATES(1))
      ALGBRC(22) = ALGBRC(20)+ALGBRC(5)
      ALGBRC(23) = TERNRY(ALGBRC(7).EQ.0.00000,  CONSTS(7)*(EXP(ALGBRC(21)/( CONSTS(2)*CONSTS(3))) - EXP(ALGBRC(22)/( CONSTS(2)*CONSTS(3)))),  ((( CONSTS(7)*ALGBRC(7))/( CONSTS(2)*CONSTS(3)))/(EXP(ALGBRC(7)/( CONSTS(2)*CONSTS(3))) - 1.00000))*(EXP(ALGBRC(21)/( CONSTS(2)*CONSTS(3))) - EXP(ALGBRC(22)/( CONSTS(2)*CONSTS(3)))))
      RATES(2) = - ALGBRC(23)
      RATES(1) = ALGBRC(23)
      ALGBRC(16) = ALGBRC(15)+ CONSTS(19)*CONSTS(4)*ALGBRC(6)
      ALGBRC(24) = ALGBRC(20)+ CONSTS(21)*CONSTS(4)*ALGBRC(6)
      ALGBRC(26) =  CONSTS(9)*(EXP(ALGBRC(16)/( CONSTS(2)*CONSTS(3))) - EXP(ALGBRC(24)/( CONSTS(2)*CONSTS(3))))
      ALGBRC(27) = ALGBRC(18) - ALGBRC(26)
      RATES(5) = ALGBRC(27)
      ALGBRC(13) = ALGBRC(11)+ CONSTS(20)*CONSTS(4)*ALGBRC(6)
      ALGBRC(25) = ALGBRC(20)+ CONSTS(22)*CONSTS(4)*ALGBRC(6)
      ALGBRC(28) =  CONSTS(11)*(EXP(ALGBRC(13)/( CONSTS(2)*CONSTS(3))) - EXP(ALGBRC(25)/( CONSTS(2)*CONSTS(3))))
      ALGBRC(30) = ALGBRC(14) - ALGBRC(28)
      RATES(4) = ALGBRC(30)
      ALGBRC(31) = ALGBRC(26)+ALGBRC(28)
      RATES(6) = ALGBRC(31)
      RETURN
      END
      SUBROUTINE computeVariables(VOI, CONSTS, RATES, STATES, ALGBRC)
      REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*)
      ALGBRC(2) = TERNRY(VOI.GE.0.00000.AND.VOI.LT.0.400000, - 0.0900000, TERNRY(VOI.GT.1.10000.AND.VOI.LT.2.10000, - 0.0600000, TERNRY(VOI.GT.2.20000.AND.VOI.LT.3.10000, 0.0400000, TERNRY(VOI.GT.3.50000, - 0.0900000, - 0.0800000)
      ALGBRC(3) =  ALGBRC(2)*CONSTS(1)
      ALGBRC(6) = ALGBRC(3)/CONSTS(1)
      ALGBRC(8) =  CONSTS(2)*CONSTS(3)*log( CONSTS(14)*STATES(3))
      ALGBRC(9) = ALGBRC(8)+ CONSTS(19)*CONSTS(4)*ALGBRC(6)
      ALGBRC(11) =  CONSTS(2)*CONSTS(3)*log( CONSTS(15)*STATES(4))
      ALGBRC(12) = ALGBRC(11)+ CONSTS(21)*CONSTS(4)*ALGBRC(6)
      ALGBRC(14) =  CONSTS(8)*(EXP(ALGBRC(9)/( CONSTS(2)*CONSTS(3))) - EXP(ALGBRC(12)/( CONSTS(2)*CONSTS(3))))
      ALGBRC(10) = ALGBRC(8)+ CONSTS(20)*CONSTS(4)*ALGBRC(6)
      ALGBRC(15) =  CONSTS(2)*CONSTS(3)*log( CONSTS(16)*STATES(5))
      ALGBRC(17) = ALGBRC(15)+ CONSTS(22)*CONSTS(4)*ALGBRC(6)
      ALGBRC(18) =  CONSTS(10)*(EXP(ALGBRC(10)/( CONSTS(2)*CONSTS(3))) - EXP(ALGBRC(17)/( CONSTS(2)*CONSTS(3))))
      ALGBRC(19) = - ALGBRC(14) - ALGBRC(18)
      ALGBRC(7) =  CONSTS(18)*CONSTS(4)*ALGBRC(6)
      ALGBRC(4) =  CONSTS(2)*CONSTS(3)*log( CONSTS(12)*STATES(2))
      ALGBRC(20) =  CONSTS(2)*CONSTS(3)*log( CONSTS(17)*STATES(6))
      ALGBRC(21) = ALGBRC(20)+ALGBRC(4)+ALGBRC(7)
      ALGBRC(5) =  CONSTS(2)*CONSTS(3)*log( CONSTS(13)*STATES(1))
      ALGBRC(22) = ALGBRC(20)+ALGBRC(5)
      ALGBRC(23) = TERNRY(ALGBRC(7).EQ.0.00000,  CONSTS(7)*(EXP(ALGBRC(21)/( CONSTS(2)*CONSTS(3))) - EXP(ALGBRC(22)/( CONSTS(2)*CONSTS(3)))),  ((( CONSTS(7)*ALGBRC(7))/( CONSTS(2)*CONSTS(3)))/(EXP(ALGBRC(7)/( CONSTS(2)*CONSTS(3))) - 1.00000))*(EXP(ALGBRC(21)/( CONSTS(2)*CONSTS(3))) - EXP(ALGBRC(22)/( CONSTS(2)*CONSTS(3)))))
      ALGBRC(16) = ALGBRC(15)+ CONSTS(19)*CONSTS(4)*ALGBRC(6)
      ALGBRC(24) = ALGBRC(20)+ CONSTS(21)*CONSTS(4)*ALGBRC(6)
      ALGBRC(26) =  CONSTS(9)*(EXP(ALGBRC(16)/( CONSTS(2)*CONSTS(3))) - EXP(ALGBRC(24)/( CONSTS(2)*CONSTS(3))))
      ALGBRC(27) = ALGBRC(18) - ALGBRC(26)
      ALGBRC(13) = ALGBRC(11)+ CONSTS(20)*CONSTS(4)*ALGBRC(6)
      ALGBRC(25) = ALGBRC(20)+ CONSTS(22)*CONSTS(4)*ALGBRC(6)
      ALGBRC(28) =  CONSTS(11)*(EXP(ALGBRC(13)/( CONSTS(2)*CONSTS(3))) - EXP(ALGBRC(25)/( CONSTS(2)*CONSTS(3))))
      ALGBRC(30) = ALGBRC(14) - ALGBRC(28)
      ALGBRC(31) = ALGBRC(26)+ALGBRC(28)
      ALGBRC(1) = VOI -  INT(VOI/CONSTS(5))*CONSTS(5)
      ALGBRC(29) =  CONSTS(4)*( - CONSTS(18)*ALGBRC(23)+ ALGBRC(14)*(CONSTS(21) - CONSTS(19))+ ALGBRC(26)*(CONSTS(21) - CONSTS(19))+ ALGBRC(18)*(CONSTS(22) - CONSTS(20))+ ALGBRC(28)*(CONSTS(22) - CONSTS(20)))
      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 CaT protein knowledge page at changeset b7e7f45db3c7.
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.