C C There are a total of 3 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 20 entries in the constant variable array. C C C VOI is time in component environment (minute). C CONSTS(1) is V_0 in component Vin (micromolar_per_minute). C CONSTS(2) is V_1 in component Vin (micromolar_per_minute). C CONSTS(3) is beta in component Vin (dimensionless). C CONSTS(20) is V_in in component Vin (micromolar_per_minute). C CONSTS(4) is V_M2 in component V2 (micromolar_per_minute). C STATES(1) is Z in component cytosol (micromolar). C CONSTS(5) is K_2 in component V2 (micromolar). C ALGBRC(1) is V_2 in component V2 (micromolar_per_minute). C CONSTS(6) is V_M3 in component V3 (micromolar_per_minute). C CONSTS(7) is K_Z in component V3 (micromolar). C CONSTS(8) is K_A in component V3 (micromolar). C CONSTS(9) is K_Y in component V3 (micromolar). C CONSTS(10) is m in component V3 (dimensionless). C STATES(2) is Y in component internal_pool (micromolar). C STATES(3) is A in component InsP3_conc (micromolar). C ALGBRC(3) is V_3 in component V3 (micromolar_per_minute). C CONSTS(11) is V_M5 in component V5 (micromolar_per_minute). C CONSTS(12) is K_5 in component V5 (micromolar). C CONSTS(13) is K_d in component V5 (micromolar). C CONSTS(14) is p in component V5 (dimensionless). C CONSTS(15) is n in component V5 (dimensionless). C ALGBRC(2) is V_5 in component V5 (micromolar_per_minute). C CONSTS(16) is k in component cytosol (per_minute). C CONSTS(17) is k_f in component cytosol (per_minute). C CONSTS(18) is epsilon in component InsP3_conc (per_minute). C CONSTS(19) is V_4 in component InsP3_conc (micromolar_per_minute). C RATES(1) is d/dt Z in component cytosol (micromolar). C RATES(2) is d/dt Y in component internal_pool (micromolar). C RATES(3) is d/dt A in component InsP3_conc (micromolar). C SUBROUTINE initConsts(CONSTS, RATES, STATES) REAL CONSTS(*), RATES(*), STATES(*) CONSTS(1) = 2 CONSTS(2) = 2 CONSTS(3) = 0.6 CONSTS(4) = 6 STATES(1) = 0.15 CONSTS(5) = 0.1 CONSTS(6) = 20 CONSTS(7) = 0.5 CONSTS(8) = 0.2 CONSTS(9) = 0.2 CONSTS(10) = 2 STATES(2) = 1 STATES(3) = 0.42 CONSTS(11) = 5 CONSTS(12) = 1 CONSTS(13) = 0.4 CONSTS(14) = 2 CONSTS(15) = 4 CONSTS(16) = 10 CONSTS(17) = 1 CONSTS(18) = 0.1 CONSTS(19) = 2 CONSTS(20) = CONSTS(1)+ CONSTS(2)*CONSTS(3) RETURN END SUBROUTINE computeRates(VOI, CONSTS, RATES, STATES, ALGBRC) REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*) ALGBRC(2) = ( (( CONSTS(11)*STATES(3) ** CONSTS(14))/(CONSTS(12) ** CONSTS(14)+STATES(3) ** CONSTS(14)))*STATES(1) ** CONSTS(15))/(CONSTS(13) ** CONSTS(15)+STATES(1) ** CONSTS(15)) RATES(3) = ( CONSTS(3)*CONSTS(19) - ALGBRC(2)) - CONSTS(18)*STATES(3) ALGBRC(1) = ( CONSTS(4)*STATES(1) ** 2.00000)/(CONSTS(5) ** 2.00000+STATES(1) ** 2.00000) ALGBRC(3) = ( (( (( CONSTS(6)*STATES(1) ** CONSTS(10))/(CONSTS(7) ** CONSTS(10)+STATES(1) ** CONSTS(10)))*STATES(2) ** 2.00000)/(CONSTS(9) ** 2.00000+STATES(2) ** 2.00000))*STATES(3) ** 4.00000)/(CONSTS(8) ** 4.00000+STATES(3) ** 4.00000) RATES(1) = ((CONSTS(20) - ALGBRC(1))+ALGBRC(3)+ CONSTS(17)*STATES(2)) - CONSTS(16)*STATES(1) RATES(2) = (ALGBRC(1) - ALGBRC(3)) - CONSTS(17)*STATES(2) RETURN END SUBROUTINE computeVariables(VOI, CONSTS, RATES, STATES, ALGBRC) REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*) ALGBRC(2) = ( (( CONSTS(11)*STATES(3) ** CONSTS(14))/(CONSTS(12) ** CONSTS(14)+STATES(3) ** CONSTS(14)))*STATES(1) ** CONSTS(15))/(CONSTS(13) ** CONSTS(15)+STATES(1) ** CONSTS(15)) ALGBRC(1) = ( CONSTS(4)*STATES(1) ** 2.00000)/(CONSTS(5) ** 2.00000+STATES(1) ** 2.00000) ALGBRC(3) = ( (( (( CONSTS(6)*STATES(1) ** CONSTS(10))/(CONSTS(7) ** CONSTS(10)+STATES(1) ** CONSTS(10)))*STATES(2) ** 2.00000)/(CONSTS(9) ** 2.00000+STATES(2) ** 2.00000))*STATES(3) ** 4.00000)/(CONSTS(8) ** 4.00000+STATES(3) ** 4.00000) RETURN END