C C There are a total of 7 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 10 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 ALGBRC(1) is q_Cai in component environment (fmol). C ALGBRC(2) is q_TRPN in component environment (fmol). C ALGBRC(3) is q_Ca_TRPN in component environment (fmol). C STATES(1) is q_Cai in component TRPN (fmol). C STATES(2) is q_TRPN in component TRPN (fmol). C STATES(3) is q_Ca_TRPN in component TRPN (fmol). C CONSTS(4) is kappa_R_TRPNCa in component TRPN_parameters (fmol_per_sec). C CONSTS(5) is K_Cai in component TRPN_parameters (per_fmol). C CONSTS(6) is K_TRPN in component TRPN_parameters (per_fmol). C CONSTS(7) is K_Ca_TRPN in component TRPN_parameters (per_fmol). C CONSTS(8) is R in component constants (J_per_K_per_mol). C CONSTS(9) is T in component constants (kelvin). C ALGBRC(4) is mu_Cai in component TRPN (J_per_mol). C ALGBRC(5) is mu_TRPN in component TRPN (J_per_mol). C ALGBRC(6) is mu_Ca_TRPN in component TRPN (J_per_mol). C ALGBRC(7) is v_R_TRPNCa in component TRPN (fmol_per_sec). C CONSTS(10) is F in component constants (C_per_mol). C RATES(1) is d/dt q_Cai in component TRPN (fmol). C RATES(2) is d/dt q_TRPN in component TRPN (fmol). C RATES(3) is d/dt q_Ca_TRPN in component TRPN (fmol). C SUBROUTINE initConsts(CONSTS, RATES, STATES) REAL CONSTS(*), RATES(*), STATES(*) CONSTS(1) = 6.82e-1 CONSTS(2) = 2.57 CONSTS(3) = 1e-16 STATES(1) = 1e-16 STATES(2) = 1e-16 STATES(3) = 1e-16 CONSTS(4) = 83.2553 CONSTS(5) = 1.00748 CONSTS(6) = 1.00748 CONSTS(7) = 0.0698328 CONSTS(8) = 8.31 CONSTS(9) = 310 CONSTS(10) = 96485 RETURN END SUBROUTINE computeRates(VOI, CONSTS, RATES, STATES, ALGBRC) REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*) ALGBRC(1) = STATES(1)+CONSTS(1) ALGBRC(4) = CONSTS(8)*CONSTS(9)*log( CONSTS(5)*ALGBRC(1)) ALGBRC(2) = STATES(2)+CONSTS(2) ALGBRC(5) = CONSTS(8)*CONSTS(9)*log( CONSTS(6)*ALGBRC(2)) ALGBRC(3) = STATES(3)+CONSTS(3) ALGBRC(6) = CONSTS(8)*CONSTS(9)*log( CONSTS(7)*ALGBRC(3)) ALGBRC(7) = CONSTS(4)*(EXP((ALGBRC(4)+ALGBRC(5))/( CONSTS(8)*CONSTS(9))) - EXP(ALGBRC(6)/( CONSTS(8)*CONSTS(9)))) RATES(1) = - ALGBRC(7) RATES(2) = - ALGBRC(7) RATES(3) = ALGBRC(7) RETURN END SUBROUTINE computeVariables(VOI, CONSTS, RATES, STATES, ALGBRC) REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*) ALGBRC(1) = STATES(1)+CONSTS(1) ALGBRC(4) = CONSTS(8)*CONSTS(9)*log( CONSTS(5)*ALGBRC(1)) ALGBRC(2) = STATES(2)+CONSTS(2) ALGBRC(5) = CONSTS(8)*CONSTS(9)*log( CONSTS(6)*ALGBRC(2)) ALGBRC(3) = STATES(3)+CONSTS(3) ALGBRC(6) = CONSTS(8)*CONSTS(9)*log( CONSTS(7)*ALGBRC(3)) ALGBRC(7) = CONSTS(4)*(EXP((ALGBRC(4)+ALGBRC(5))/( CONSTS(8)*CONSTS(9))) - EXP(ALGBRC(6)/( CONSTS(8)*CONSTS(9)))) RETURN END