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 14 entries in each of the rate and state variable arrays.
C There are a total of 31 entries in the constant variable array.
C
C
C VOI is time in component environment (second).
C CONSTS(1) is vol_myo in component environment (pL).
C STATES(1) is q_DAG in component environment (fmol).
C STATES(2) is q_PC in component environment (fmol).
C STATES(3) is q_IP3 in component environment (fmol).
C STATES(4) is q_Ino in component environment (fmol).
C STATES(5) is q_PLC in component environment (fmol).
C STATES(6) is q_Gq in component environment (fmol).
C STATES(7) is q_Ca in component environment (fmol).
C STATES(8) is q_Gq_PLC in component environment (fmol).
C STATES(9) is q_Ca_PLC in component environment (fmol).
C STATES(10) is q_Ca_Gq_PLC in component environment (fmol).
C STATES(11) is q_G_GDP in component environment (fmol).
C STATES(12) is q_PIP2 in component environment (fmol).
C STATES(13) is q_CaPLC_PIP2 in component environment (fmol).
C STATES(14) is q_CaGqPLC_PIP2 in component environment (fmol).
C ALGBRC(21) is v_R0_PLC in component PLC (fmol_per_sec).
C ALGBRC(22) is v_R1_PLC in component PLC (fmol_per_sec).
C ALGBRC(23) is v_R2a_PLC in component PLC (fmol_per_sec).
C ALGBRC(24) is v_R2b_PLC in component PLC (fmol_per_sec).
C ALGBRC(25) is v_R3a_PLC in component PLC (fmol_per_sec).
C ALGBRC(26) is v_R3b_PLC in component PLC (fmol_per_sec).
C ALGBRC(27) is v_R4_PLC in component PLC (fmol_per_sec).
C ALGBRC(28) is v_R5_PLC in component PLC (fmol_per_sec).
C ALGBRC(29) is v_R6_PLC in component PLC (fmol_per_sec).
C ALGBRC(30) is v_R7_PLC in component PLC (fmol_per_sec).
C ALGBRC(31) is v_R8_PLC in component PLC (fmol_per_sec).
C ALGBRC(6) is Gq_stim in component environment (fmol_per_sec).
C CONSTS(2) is stimPeriod in component environment (second).
C CONSTS(3) is stimDuration in component environment (second).
C ALGBRC(1) is tPeriod in component environment (second).
C ALGBRC(2) is cGq in component environment (mM).
C ALGBRC(3) is cCa in component environment (mM).
C ALGBRC(4) is cDAG in component environment (mM).
C ALGBRC(5) is cIP3 in component environment (mM).
C CONSTS(4) is kappa_R0_PLC in component PLC_parameters (fmol_per_sec).
C CONSTS(5) is kappa_R1_PLC in component PLC_parameters (fmol_per_sec).
C CONSTS(6) is kappa_R2a_PLC in component PLC_parameters (fmol_per_sec).
C CONSTS(7) is kappa_R2b_PLC in component PLC_parameters (fmol_per_sec).
C CONSTS(8) is kappa_R3a_PLC in component PLC_parameters (fmol_per_sec).
C CONSTS(9) is kappa_R3b_PLC in component PLC_parameters (fmol_per_sec).
C CONSTS(10) is kappa_R4_PLC in component PLC_parameters (fmol_per_sec).
C CONSTS(11) is kappa_R5_PLC in component PLC_parameters (fmol_per_sec).
C CONSTS(12) is kappa_R6_PLC in component PLC_parameters (fmol_per_sec).
C CONSTS(13) is kappa_R7_PLC in component PLC_parameters (fmol_per_sec).
C CONSTS(14) is kappa_R8_PLC in component PLC_parameters (fmol_per_sec).
C CONSTS(15) is K_DAG in component PLC_parameters (per_fmol).
C CONSTS(16) is K_PC in component PLC_parameters (per_fmol).
C CONSTS(17) is K_IP3 in component PLC_parameters (per_fmol).
C CONSTS(18) is K_Ino in component PLC_parameters (per_fmol).
C CONSTS(19) is K_PLC in component PLC_parameters (per_fmol).
C CONSTS(20) is K_Gq in component PLC_parameters (per_fmol).
C CONSTS(21) is K_Ca in component PLC_parameters (per_fmol).
C CONSTS(22) is K_Gq_PLC in component PLC_parameters (per_fmol).
C CONSTS(23) is K_Ca_PLC in component PLC_parameters (per_fmol).
C CONSTS(24) is K_Ca_Gq_PLC in component PLC_parameters (per_fmol).
C CONSTS(25) is K_G_GDP in component PLC_parameters (per_fmol).
C CONSTS(26) is K_PIP2 in component PLC_parameters (per_fmol).
C CONSTS(27) is K_CaPLC_PIP2 in component PLC_parameters (per_fmol).
C CONSTS(28) is K_CaGqPLC_PIP2 in component PLC_parameters (per_fmol).
C CONSTS(29) is R in component constants (J_per_K_per_mol).
C CONSTS(30) is T in component constants (kelvin).
C ALGBRC(7) is mu_DAG in component PLC (J_per_mol).
C ALGBRC(8) is mu_PC in component PLC (J_per_mol).
C ALGBRC(9) is mu_IP3 in component PLC (J_per_mol).
C ALGBRC(10) is mu_Ino in component PLC (J_per_mol).
C ALGBRC(11) is mu_PLC in component PLC (J_per_mol).
C ALGBRC(12) is mu_Gq in component PLC (J_per_mol).
C ALGBRC(13) is mu_Ca in component PLC (J_per_mol).
C ALGBRC(14) is mu_Gq_PLC in component PLC (J_per_mol).
C ALGBRC(15) is mu_Ca_PLC in component PLC (J_per_mol).
C ALGBRC(16) is mu_Ca_Gq_PLC in component PLC (J_per_mol).
C ALGBRC(17) is mu_G_GDP in component PLC (J_per_mol).
C ALGBRC(18) is mu_PIP2 in component PLC (J_per_mol).
C ALGBRC(19) is mu_CaPLC_PIP2 in component PLC (J_per_mol).
C ALGBRC(20) is mu_CaGqPLC_PIP2 in component PLC (J_per_mol).
C CONSTS(31) is F in component constants (C_per_mol).
C RATES(1) is d/dt q_DAG in component environment (fmol).
C RATES(2) is d/dt q_PC in component environment (fmol).
C RATES(3) is d/dt q_IP3 in component environment (fmol).
C RATES(4) is d/dt q_Ino in component environment (fmol).
C RATES(5) is d/dt q_PLC in component environment (fmol).
C RATES(6) is d/dt q_Gq in component environment (fmol).
C RATES(7) is d/dt q_Ca in component environment (fmol).
C RATES(8) is d/dt q_Gq_PLC in component environment (fmol).
C RATES(9) is d/dt q_Ca_PLC in component environment (fmol).
C RATES(10) is d/dt q_Ca_Gq_PLC in component environment (fmol).
C RATES(11) is d/dt q_G_GDP in component environment (fmol).
C RATES(12) is d/dt q_PIP2 in component environment (fmol).
C RATES(13) is d/dt q_CaPLC_PIP2 in component environment (fmol).
C RATES(14) is d/dt q_CaGqPLC_PIP2 in component environment (fmol).
C
SUBROUTINE initConsts(CONSTS, RATES, STATES)
REAL CONSTS(*), RATES(*), STATES(*)
CONSTS(1) = 38
STATES(1) = 0
STATES(2) = 0
STATES(3) = 0
STATES(4) = 0
STATES(5) = 30.4
STATES(6) = 38
STATES(7) = 38
STATES(8) = 0
STATES(9) = 0
STATES(10) = 38
STATES(11) = 0
STATES(12) = 380
STATES(13) = 0
STATES(14) = 0
CONSTS(2) = 1
CONSTS(3) = 0.01
CONSTS(4) = 0.0700317
CONSTS(5) = 0.178887
CONSTS(6) = 71285.5
CONSTS(7) = 2.73747
CONSTS(8) = 5697.81
CONSTS(9) = 0.00287164
CONSTS(10) = 2.13383
CONSTS(11) = 2.28508
CONSTS(12) = 0.170556
CONSTS(13) = 0.170556
CONSTS(14) = 0.00226839
CONSTS(15) = 0.577328
CONSTS(16) = 0.00384885
CONSTS(17) = 3.76694
CONSTS(18) = 0.00150678
CONSTS(19) = 0.000942826
CONSTS(20) = 0.000141635
CONSTS(21) = 0.000180564
CONSTS(22) = 0.117957
CONSTS(23) = 0.126318
CONSTS(24) = 1.58037
CONSTS(25) = 0.000141635
CONSTS(26) = 8.06835
CONSTS(27) = 18.9051
CONSTS(28) = 938.634
CONSTS(29) = 8.31
CONSTS(30) = 310
CONSTS(31) = 96485
RETURN
END
SUBROUTINE computeRates(VOI, CONSTS, RATES, STATES, ALGBRC)
REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*)
ALGBRC(7) = CONSTS(29)*CONSTS(30)*log( CONSTS(15)*STATES(1))
ALGBRC(8) = CONSTS(29)*CONSTS(30)*log( CONSTS(16)*STATES(2))
ALGBRC(21) = CONSTS(4)*(EXP(ALGBRC(7)/( CONSTS(29)*CONSTS(30))) - EXP(ALGBRC(8)/( CONSTS(29)*CONSTS(30))))
RATES(2) = ALGBRC(21)
ALGBRC(9) = CONSTS(29)*CONSTS(30)*log( CONSTS(17)*STATES(3))
ALGBRC(10) = CONSTS(29)*CONSTS(30)*log( CONSTS(18)*STATES(4))
ALGBRC(22) = CONSTS(5)*(EXP(ALGBRC(9)/( CONSTS(29)*CONSTS(30))) - EXP(ALGBRC(10)/( CONSTS(29)*CONSTS(30))))
RATES(4) = ALGBRC(22)
ALGBRC(15) = CONSTS(29)*CONSTS(30)*log( CONSTS(23)*STATES(9))
ALGBRC(18) = CONSTS(29)*CONSTS(30)*log( CONSTS(26)*STATES(12))
ALGBRC(19) = CONSTS(29)*CONSTS(30)*log( CONSTS(27)*STATES(13))
ALGBRC(23) = CONSTS(6)*(EXP((ALGBRC(18)+ALGBRC(15))/( CONSTS(29)*CONSTS(30))) - EXP(ALGBRC(19)/( CONSTS(29)*CONSTS(30))))
ALGBRC(24) = CONSTS(7)*(EXP(ALGBRC(19)/( CONSTS(29)*CONSTS(30))) - EXP((ALGBRC(7)+ALGBRC(9)+ALGBRC(15))/( CONSTS(29)*CONSTS(30))))
RATES(13) = ALGBRC(23) - ALGBRC(24)
ALGBRC(16) = CONSTS(29)*CONSTS(30)*log( CONSTS(24)*STATES(10))
ALGBRC(20) = CONSTS(29)*CONSTS(30)*log( CONSTS(28)*STATES(14))
ALGBRC(25) = CONSTS(8)*(EXP((ALGBRC(18)+ALGBRC(16))/( CONSTS(29)*CONSTS(30))) - EXP(ALGBRC(20)/( CONSTS(29)*CONSTS(30))))
RATES(12) = - ALGBRC(23) - ALGBRC(25)
ALGBRC(26) = CONSTS(9)*(EXP(ALGBRC(20)/( CONSTS(29)*CONSTS(30))) - EXP((ALGBRC(7)+ALGBRC(9)+ALGBRC(16))/( CONSTS(29)*CONSTS(30))))
RATES(1) = (ALGBRC(24)+ALGBRC(26)) - ALGBRC(21)
RATES(3) = (ALGBRC(24)+ALGBRC(26)) - ALGBRC(22)
RATES(14) = ALGBRC(25) - ALGBRC(26)
ALGBRC(11) = CONSTS(29)*CONSTS(30)*log( CONSTS(19)*STATES(5))
ALGBRC(13) = CONSTS(29)*CONSTS(30)*log( CONSTS(21)*STATES(7))
ALGBRC(27) = CONSTS(10)*(EXP((ALGBRC(11)+ALGBRC(13))/( CONSTS(29)*CONSTS(30))) - EXP(ALGBRC(15)/( CONSTS(29)*CONSTS(30))))
ALGBRC(12) = CONSTS(29)*CONSTS(30)*log( CONSTS(20)*STATES(6))
ALGBRC(14) = CONSTS(29)*CONSTS(30)*log( CONSTS(22)*STATES(8))
ALGBRC(28) = CONSTS(11)*(EXP((ALGBRC(11)+ALGBRC(12))/( CONSTS(29)*CONSTS(30))) - EXP(ALGBRC(14)/( CONSTS(29)*CONSTS(30))))
RATES(5) = - ALGBRC(27) - ALGBRC(28)
ALGBRC(29) = CONSTS(12)*(EXP((ALGBRC(14)+ALGBRC(13))/( CONSTS(29)*CONSTS(30))) - EXP(ALGBRC(16)/( CONSTS(29)*CONSTS(30))))
RATES(7) = - ALGBRC(27) - ALGBRC(29)
RATES(8) = ALGBRC(28) - ALGBRC(29)
ALGBRC(30) = CONSTS(13)*(EXP(ALGBRC(16)/( CONSTS(29)*CONSTS(30))) - EXP((ALGBRC(12)+ALGBRC(15))/( CONSTS(29)*CONSTS(30))))
ALGBRC(1) = VOI - INT(VOI/CONSTS(2))*CONSTS(2)
ALGBRC(6) = TERNRY(ALGBRC(1).GE.0.300000.AND.ALGBRC(1).LE.0.300000+CONSTS(3), 0.00000*100.000, 0.00000)
RATES(6) = - ALGBRC(28)+ALGBRC(30)+ALGBRC(6)
ALGBRC(17) = CONSTS(29)*CONSTS(30)*log( CONSTS(25)*STATES(11))
ALGBRC(31) = CONSTS(14)*(EXP(ALGBRC(16)/( CONSTS(29)*CONSTS(30))) - EXP((ALGBRC(17)+ALGBRC(15))/( CONSTS(29)*CONSTS(30))))
RATES(9) = - ALGBRC(23)+ALGBRC(24)+ALGBRC(27)+ALGBRC(30)+ALGBRC(31)
RATES(10) = ((- ALGBRC(25)+ALGBRC(26)+ALGBRC(29)) - ALGBRC(30)) - ALGBRC(31)
RATES(11) = ALGBRC(31)
RETURN
END
SUBROUTINE computeVariables(VOI, CONSTS, RATES, STATES, ALGBRC)
REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*)
ALGBRC(7) = CONSTS(29)*CONSTS(30)*log( CONSTS(15)*STATES(1))
ALGBRC(8) = CONSTS(29)*CONSTS(30)*log( CONSTS(16)*STATES(2))
ALGBRC(21) = CONSTS(4)*(EXP(ALGBRC(7)/( CONSTS(29)*CONSTS(30))) - EXP(ALGBRC(8)/( CONSTS(29)*CONSTS(30))))
ALGBRC(9) = CONSTS(29)*CONSTS(30)*log( CONSTS(17)*STATES(3))
ALGBRC(10) = CONSTS(29)*CONSTS(30)*log( CONSTS(18)*STATES(4))
ALGBRC(22) = CONSTS(5)*(EXP(ALGBRC(9)/( CONSTS(29)*CONSTS(30))) - EXP(ALGBRC(10)/( CONSTS(29)*CONSTS(30))))
ALGBRC(15) = CONSTS(29)*CONSTS(30)*log( CONSTS(23)*STATES(9))
ALGBRC(18) = CONSTS(29)*CONSTS(30)*log( CONSTS(26)*STATES(12))
ALGBRC(19) = CONSTS(29)*CONSTS(30)*log( CONSTS(27)*STATES(13))
ALGBRC(23) = CONSTS(6)*(EXP((ALGBRC(18)+ALGBRC(15))/( CONSTS(29)*CONSTS(30))) - EXP(ALGBRC(19)/( CONSTS(29)*CONSTS(30))))
ALGBRC(24) = CONSTS(7)*(EXP(ALGBRC(19)/( CONSTS(29)*CONSTS(30))) - EXP((ALGBRC(7)+ALGBRC(9)+ALGBRC(15))/( CONSTS(29)*CONSTS(30))))
ALGBRC(16) = CONSTS(29)*CONSTS(30)*log( CONSTS(24)*STATES(10))
ALGBRC(20) = CONSTS(29)*CONSTS(30)*log( CONSTS(28)*STATES(14))
ALGBRC(25) = CONSTS(8)*(EXP((ALGBRC(18)+ALGBRC(16))/( CONSTS(29)*CONSTS(30))) - EXP(ALGBRC(20)/( CONSTS(29)*CONSTS(30))))
ALGBRC(26) = CONSTS(9)*(EXP(ALGBRC(20)/( CONSTS(29)*CONSTS(30))) - EXP((ALGBRC(7)+ALGBRC(9)+ALGBRC(16))/( CONSTS(29)*CONSTS(30))))
ALGBRC(11) = CONSTS(29)*CONSTS(30)*log( CONSTS(19)*STATES(5))
ALGBRC(13) = CONSTS(29)*CONSTS(30)*log( CONSTS(21)*STATES(7))
ALGBRC(27) = CONSTS(10)*(EXP((ALGBRC(11)+ALGBRC(13))/( CONSTS(29)*CONSTS(30))) - EXP(ALGBRC(15)/( CONSTS(29)*CONSTS(30))))
ALGBRC(12) = CONSTS(29)*CONSTS(30)*log( CONSTS(20)*STATES(6))
ALGBRC(14) = CONSTS(29)*CONSTS(30)*log( CONSTS(22)*STATES(8))
ALGBRC(28) = CONSTS(11)*(EXP((ALGBRC(11)+ALGBRC(12))/( CONSTS(29)*CONSTS(30))) - EXP(ALGBRC(14)/( CONSTS(29)*CONSTS(30))))
ALGBRC(29) = CONSTS(12)*(EXP((ALGBRC(14)+ALGBRC(13))/( CONSTS(29)*CONSTS(30))) - EXP(ALGBRC(16)/( CONSTS(29)*CONSTS(30))))
ALGBRC(30) = CONSTS(13)*(EXP(ALGBRC(16)/( CONSTS(29)*CONSTS(30))) - EXP((ALGBRC(12)+ALGBRC(15))/( CONSTS(29)*CONSTS(30))))
ALGBRC(1) = VOI - INT(VOI/CONSTS(2))*CONSTS(2)
ALGBRC(6) = TERNRY(ALGBRC(1).GE.0.300000.AND.ALGBRC(1).LE.0.300000+CONSTS(3), 0.00000*100.000, 0.00000)
ALGBRC(17) = CONSTS(29)*CONSTS(30)*log( CONSTS(25)*STATES(11))
ALGBRC(31) = CONSTS(14)*(EXP(ALGBRC(16)/( CONSTS(29)*CONSTS(30))) - EXP((ALGBRC(17)+ALGBRC(15))/( CONSTS(29)*CONSTS(30))))
ALGBRC(2) = STATES(6)/CONSTS(1)
ALGBRC(3) = STATES(7)/CONSTS(1)
ALGBRC(4) = STATES(1)/CONSTS(1)
ALGBRC(5) = STATES(3)/CONSTS(1)
RETURN
END
REAL FUNCTION TERNRY(TEST, VALA, VALB)
LOGICAL TEST
REAL VALA, VALB
IF (TEST) THEN
TERNRY = VALA
ELSE
TERNRY = VALB
ENDIF
RETURN
END
