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 4 entries in the algebraic variable array.
C There are a total of 3 entries in each of the rate and state variable arrays.
C There are a total of 25 entries in the constant variable array.
C
C
C VOI is time in component environment (second).
C STATES(1) is Vm in component membrane (millivolt).
C CONSTS(1) is C in component membrane (picoF).
C ALGBRC(3) is i_K in component potassium_current (picoA).
C ALGBRC(4) is i_R in component repolarising_current (picoA).
C STATES(2) is IP3 in component IP3 (nanomolar).
C CONSTS(2) is m3IP3 in component IP3 (dimensionless).
C CONSTS(3) is m4IP3 in component IP3 (dimensionless).
C CONSTS(4) is kIP3 in component IP3 (first_order_rate_constant).
C CONSTS(5) is A in component IP3 (dimensionless).
C STATES(3) is Ca in component Ca (nanomolar).
C CONSTS(6) is m3SR in component Ca (dimensionless).
C CONSTS(7) is m4SR in component Ca (dimensionless).
C CONSTS(8) is m3PMCA in component Ca (dimensionless).
C CONSTS(9) is m4PMCA in component Ca (dimensionless).
C CONSTS(10) is kSR_rel in component Ca (flux).
C CONSTS(11) is kPMCA in component Ca (flux).
C ALGBRC(2) is Jcat in component Jcat (flux).
C CONSTS(12) is ECa in component Jcat (millivolt).
C CONSTS(13) is Gcat in component Jcat (nanomolar_per_millivolt_second).
C CONSTS(14) is m3cat in component Jcat (dimensionless).
C CONSTS(15) is m4cat in component Jcat (dimensionless).
C CONSTS(16) is Gtot in component potassium_current (picoS).
C ALGBRC(1) is PoBKCa in component potassium_current (dimensionless).
C CONSTS(17) is PoSKCa in component potassium_current (dimensionless).
C CONSTS(18) is E_K in component potassium_current (millivolt).
C CONSTS(19) is a in component potassium_current (dimensionless).
C CONSTS(20) is b in component potassium_current (dimensionless).
C CONSTS(21) is c in component potassium_current (dimensionless).
C CONSTS(22) is m3 in component potassium_current (dimensionless).
C CONSTS(23) is m4 in component potassium_current (dimensionless).
C CONSTS(24) is GR in component repolarising_current (picoS).
C CONSTS(25) is Vrest in component repolarising_current (millivolt).
C RATES(1) is d/dt Vm in component membrane (millivolt).
C RATES(2) is d/dt IP3 in component IP3 (nanomolar).
C RATES(3) is d/dt Ca in component Ca (nanomolar).
C
SUBROUTINE initConsts(CONSTS, RATES, STATES)
REAL CONSTS(*), RATES(*), STATES(*)
STATES(1) = -31.1
CONSTS(1) = 1.0
STATES(2) = 1.0
CONSTS(2) = 4.0
CONSTS(3) = 55.0
CONSTS(4) = 0.1733
CONSTS(5) = 0.211
STATES(3) = 50.0
CONSTS(6) = 1.1
CONSTS(7) = 0.3
CONSTS(8) = -6.19
CONSTS(9) = 0.39
CONSTS(10) = 180.0
CONSTS(11) = 0.679
CONSTS(12) = 50.0
CONSTS(13) = 0.66
CONSTS(14) = -6.18
CONSTS(15) = 0.37
CONSTS(16) = 6927
CONSTS(17) = 0.5
CONSTS(18) = -80.0
CONSTS(19) = 53.3
CONSTS(20) = -80.8
CONSTS(21) = -6.4
CONSTS(22) = 1.32E-3
CONSTS(23) = 0.30
CONSTS(24) = 955.0
CONSTS(25) = -31.1
RETURN
END
SUBROUTINE computeRates(VOI, CONSTS, RATES, STATES, ALGBRC)
REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*)
RATES(2) = CONSTS(5)*(1.00000+ tanh((CONSTS(2) - VOI)/CONSTS(3))) - CONSTS(4)*STATES(2)
RATES(3) = (CONSTS(10)/2.00000)*(1.00000+ tanh((STATES(2) - CONSTS(6))/CONSTS(7))) - (CONSTS(11)/2.00000)*(1.00000+ tanh((arbitrary_log(STATES(3), 10) - CONSTS(8))/CONSTS(9)))
ALGBRC(1) = 0.500000*(1.00000+ tanh(( (arbitrary_log(STATES(3), 10) - CONSTS(21))*(STATES(1) - CONSTS(20)) - CONSTS(19))/( CONSTS(22)*(STATES(1)+ CONSTS(19)*(arbitrary_log(STATES(3), 10) - CONSTS(21))) - CONSTS(20) ** 2.00000+CONSTS(23))))
ALGBRC(3) = CONSTS(16)*(STATES(1) - CONSTS(18))*( 0.400000*ALGBRC(1)+ 0.600000*CONSTS(17))
ALGBRC(4) = CONSTS(24)*(STATES(1) - CONSTS(25))
RATES(1) = - (1.00000/CONSTS(1))*(ALGBRC(3)+ALGBRC(4))
RETURN
END
SUBROUTINE computeVariables(VOI, CONSTS, RATES, STATES, ALGBRC)
REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*)
ALGBRC(1) = 0.500000*(1.00000+ tanh(( (arbitrary_log(STATES(3), 10) - CONSTS(21))*(STATES(1) - CONSTS(20)) - CONSTS(19))/( CONSTS(22)*(STATES(1)+ CONSTS(19)*(arbitrary_log(STATES(3), 10) - CONSTS(21))) - CONSTS(20) ** 2.00000+CONSTS(23))))
ALGBRC(3) = CONSTS(16)*(STATES(1) - CONSTS(18))*( 0.400000*ALGBRC(1)+ 0.600000*CONSTS(17))
ALGBRC(4) = CONSTS(24)*(STATES(1) - CONSTS(25))
ALGBRC(2) = ( CONSTS(13)*(CONSTS(12) - STATES(1)))*( 0.500000*(1.00000+ tanh((arbitrary_log(STATES(3), 10) - CONSTS(14))/CONSTS(15))))
RETURN
END
