C C There are a total of 1 entries in the algebraic variable array. C There are a total of 2 entries in each of the rate and state variable arrays. C There are a total of 34 entries in the constant variable array. C C C VOI is t in component environment (second). C CONSTS(1) is x in component environment (nanometer). C STATES(1) is n in component Crossbridges_attached (dimensionless). C STATES(2) is A_c in component Actin_free (dimensionless). C CONSTS(24) is f in component f (per_second). C CONSTS(25) is g in component g (per_second). C CONSTS(2) is h in component Crossbridges_attached (nanometer). C CONSTS(3) is f_1 in component f (per_second). C CONSTS(4) is g_1 in component g (per_second). C CONSTS(5) is g_2 in component g (per_second). C ALGBRC(1) is Ca_f in component Ca_sarcoplasm (molar). C CONSTS(6) is t_d in component Ca_sarcoplasm (second). C CONSTS(7) is a_1 in component Ca_sarcoplasm (per_second_squared). C CONSTS(8) is b_1 in component Ca_sarcoplasm (per_second_squared). C CONSTS(9) is Ca_0 in component Ca_sarcoplasm (molar). C CONSTS(10) is c_1 in component Actin_free (per_second). C CONSTS(27) is c_2 in component Actin_free (per_second). C CONSTS(11) is c_2_0 in component Actin_free (per_second). C CONSTS(12) is k_i in component Actin_free (dimensionless). C CONSTS(26) is s_h in component s_h (muscle_length). C CONSTS(13) is q in component Actin_free (dimensionless). C CONSTS(14) is AT_0 in component Actin_free (dimensionless). C CONSTS(33) is F_SE in component Series_Elastic_Element (force). C CONSTS(15) is alpha_s in component Series_Elastic_Element (force). C CONSTS(16) is beta_s in component Series_Elastic_Element (muscle_length). C CONSTS(32) is x_s in component SE_constants (muscle_length). C CONSTS(17) is x_so in component Series_Elastic_Element (muscle_length). C CONSTS(31) is X_M_0 in component X_0 (muscle_length). C CONSTS(18) is L_max in component Series_Elastic_Element (muscle_length). C CONSTS(29) is F_PE in component Parallel_Elastic_Element (force). C CONSTS(19) is alpha_p in component Parallel_Elastic_Element (force). C CONSTS(20) is beta_p in component Parallel_Elastic_Element (muscle_length). C CONSTS(28) is x_p in component PE_constants (muscle_length). C CONSTS(21) is x_po in component Parallel_Elastic_Element (muscle_length). C CONSTS(34) is F_CE in component Contractile_Element (force). C CONSTS(22) is F_PL in component s_h (force). C CONSTS(30) is X_S_0 in component X_0 (muscle_length). C CONSTS(23) is F_PL in component X_0 (force). C RATES(1) is d/dt n in component Crossbridges_attached (dimensionless). C RATES(2) is d/dt A_c in component Actin_free (dimensionless). C SUBROUTINE initConsts(CONSTS, RATES, STATES) REAL CONSTS(*), RATES(*), STATES(*) CONSTS(1) = 10 STATES(1) = 0 STATES(2) = 1 CONSTS(2) = 12 CONSTS(3) = 70 CONSTS(4) = 40 CONSTS(5) = 240 CONSTS(6) = 0.3 CONSTS(7) = 200 CONSTS(8) = 5 CONSTS(9) = 0.45e-6 CONSTS(10) = 200e12 CONSTS(11) = 20 CONSTS(12) = 30.9 CONSTS(13) = 1.45 CONSTS(14) = 2 CONSTS(15) = 0.1027 CONSTS(16) = 20 CONSTS(17) = 0.0387 CONSTS(18) = 1 CONSTS(19) = 0.00224 CONSTS(20) = 20 CONSTS(21) = 0.221 CONSTS(22) = 3 CONSTS(23) = 3 CONSTS(24) = TERNRY(CONSTS(1).LT.0.00000, 0.00000, TERNRY(CONSTS(1).GE.0.00000.AND.CONSTS(1).LT.CONSTS(2), ( CONSTS(3)*CONSTS(1))/CONSTS(2), 0.00000) CONSTS(25) = TERNRY(CONSTS(1).LT.0.00000, CONSTS(5), TERNRY(CONSTS(1).GE.0.00000.AND.CONSTS(1).LT.CONSTS(2), ( CONSTS(4)*CONSTS(1))/CONSTS(2), ( CONSTS(4)*CONSTS(1))/CONSTS(2)) CONSTS(26) = CONSTS(21) - ( 1.00000*1.00000*arbitrary_log(1.00000+CONSTS(22)/CONSTS(19), 10))/CONSTS(20) CONSTS(27) = CONSTS(11)*EXP( CONSTS(12)*CONSTS(26)/1.00000 ** CONSTS(13)) CONSTS(28) = CONSTS(21) - CONSTS(26) CONSTS(29) = CONSTS(19)*(EXP(( CONSTS(20)*CONSTS(28))/( 1.00000*1.00000)) - 1.00000) CONSTS(30) = ( 1.00000*1.00000*arbitrary_log(1.00000+CONSTS(23)/CONSTS(15), 10))/CONSTS(16) CONSTS(31) = ((CONSTS(30)+CONSTS(18)) - CONSTS(26)) - CONSTS(17) CONSTS(32) = (CONSTS(17)+CONSTS(26)+CONSTS(31)) - CONSTS(18) CONSTS(33) = CONSTS(15)*(EXP(( CONSTS(16)*CONSTS(32))/( 1.00000*1.00000)) - 1.00000) CONSTS(34) = CONSTS(33) - CONSTS(29) RETURN END SUBROUTINE computeRates(VOI, CONSTS, RATES, STATES, ALGBRC) REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*) RATES(1) = CONSTS(24)*(STATES(2) - STATES(1)) - CONSTS(25)*STATES(1) ALGBRC(1) = CONSTS(9)*ABS(1.00000 - EXP( - CONSTS(7)*VOI ** 2.00000))*EXP( - CONSTS(8)*VOI - CONSTS(6) ** 2.00000) RATES(2) = CONSTS(10)*ALGBRC(1)/1.00000 ** 2.00000*(CONSTS(14) - STATES(2)) - CONSTS(27)*STATES(2) RETURN END SUBROUTINE computeVariables(VOI, CONSTS, RATES, STATES, ALGBRC) REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*) ALGBRC(1) = CONSTS(9)*ABS(1.00000 - EXP( - CONSTS(7)*VOI ** 2.00000))*EXP( - CONSTS(8)*VOI - CONSTS(6) ** 2.00000) RETURN END REAL FUNCTION TERNRY(TEST, VALA, VALB) LOGICAL TEST REAL VALA, VALB IF (TEST) THEN TERNRY = VALA ELSE TERNRY = VALB ENDIF RETURN END