C C There are a total of 30 entries in the algebraic variable array. C There are a total of 9 entries in each of the rate and state variable arrays. C There are a total of 27 entries in the constant variable array. C C C VOI is time in component environment (second). C CONSTS(1) is C_m_Imp in component imported_variables (mmol_per_cm3). C CONSTS(2) is C_c_Imp in component imported_variables (mmol_per_cm3). C CONSTS(3) is psi_m in component imported_variables (millivolt). C CONSTS(4) is psi_c in component imported_variables (millivolt). C STATES(1) is C_m_Na in component solute_concentrations (mmol_per_cm3). C STATES(2) is C_m_K in component solute_concentrations (mmol_per_cm3). C STATES(3) is C_m_Cl in component solute_concentrations (mmol_per_cm3). C STATES(4) is C_c_Na in component solute_concentrations (mmol_per_cm3). C STATES(5) is C_c_K in component solute_concentrations (mmol_per_cm3). C STATES(6) is C_c_Cl in component solute_concentrations (mmol_per_cm3). C STATES(7) is C_s_Na in component solute_concentrations (mmol_per_cm3). C STATES(8) is C_s_K in component solute_concentrations (mmol_per_cm3). C STATES(9) is C_s_Cl in component solute_concentrations (mmol_per_cm3). C ALGBRC(5) is J_mc_Na in component mc_sodium_flux (flux). C ALGBRC(23) is J_ms_Na in component ms_sodium_flux (flux). C ALGBRC(17) is J_sc_Na in component sc_sodium_flux (flux). C ALGBRC(12) is J_mc_K in component mc_potassium_flux (flux). C ALGBRC(26) is J_ms_K in component ms_potassium_flux (flux). C ALGBRC(21) is J_sc_K in component sc_potassium_flux (flux). C ALGBRC(16) is J_mc_Cl in component mc_chloride_flux (flux). C ALGBRC(27) is J_ms_Cl in component ms_chloride_flux (flux). C ALGBRC(22) is J_sc_Cl in component sc_chloride_flux (flux). C CONSTS(5) is RT in component constants (J_per_mmol). C CONSTS(6) is F in component constants (C_per_mmol). C CONSTS(7) is C_s_Imp in component constants (mmol_per_cm3). C CONSTS(8) is psi_s in component constants (millivolt). C ALGBRC(3) is J_mc_NaCl in component mc_sodium_flux (flux). C ALGBRC(1) is G_mc_Na in component mc_sodium_flux (flux). C CONSTS(9) is P_mc_Na in component mc_sodium_flux (cm_per_s). C CONSTS(10) is J_mc_NaCl_max in component mc_sodium_flux (flux). C CONSTS(11) is K_mc_Na_NaCl in component mc_sodium_flux (mmol_per_cm3). C CONSTS(12) is K_mc_Cl_NaCl in component mc_sodium_flux (mmol_per_cm3). C ALGBRC(10) is J_mc_KCl in component mc_potassium_flux (flux). C ALGBRC(7) is G_mc_K in component mc_potassium_flux (flux). C CONSTS(13) is J_mc_KCl_max in component mc_potassium_flux (flux). C CONSTS(14) is K_mc_K_KCl in component mc_potassium_flux (mmol_per_cm3). C CONSTS(15) is K_mc_Cl_KCl in component mc_potassium_flux (mmol_per_cm3). C CONSTS(16) is P_mc_K in component mc_potassium_flux (cm_per_s). C ALGBRC(13) is G_mc_Cl in component mc_chloride_flux (flux). C CONSTS(17) is P_mc_Cl in component mc_chloride_flux (cm_per_s). C ALGBRC(15) is J_a in component sc_sodium_flux (flux). C CONSTS(18) is J_a_max in component sc_sodium_flux (flux). C CONSTS(19) is K_Na_ATPase in component sc_sodium_flux (mmol_per_cm3). C ALGBRC(18) is G_sc_K in component sc_potassium_flux (flux). C CONSTS(20) is P_sc_K in component sc_potassium_flux (cm_per_s). C ALGBRC(19) is G_sc_Cl in component sc_chloride_flux (flux). C CONSTS(21) is P_sc_Cl in component sc_chloride_flux (cm_per_s). C ALGBRC(20) is G_ms_Na in component ms_sodium_flux (flux). C CONSTS(22) is P_ms_Na in component ms_sodium_flux (cm_per_s). C ALGBRC(24) is G_ms_K in component ms_potassium_flux (flux). C CONSTS(23) is P_ms_K in component ms_potassium_flux (cm_per_s). C ALGBRC(25) is G_ms_Cl in component ms_chloride_flux (flux). C CONSTS(24) is P_ms_Cl in component ms_chloride_flux (cm_per_s). C ALGBRC(28) is J_Na in component total_transepithelial_sodium_flux (flux). C ALGBRC(29) is J_K in component total_transepithelial_potassium_flux (flux). C ALGBRC(30) is J_Cl in component total_transepithelial_chloride_flux (flux). C ALGBRC(2) is Osm_m in component osmolarities (mmol_per_cm3). C ALGBRC(4) is Osm_c in component osmolarities (mmol_per_cm3). C ALGBRC(6) is Osm_s in component osmolarities (mmol_per_cm3). C ALGBRC(8) is J_mc_v in component mc_transepithelial_volume_flux (cm_per_s). C CONSTS(25) is L_mc_v in component mc_transepithelial_volume_flux (cm_per_s_mmHg). C ALGBRC(11) is J_ms_v in component ms_transepithelial_volume_flux (cm_per_s). C CONSTS(26) is L_ms_v in component ms_transepithelial_volume_flux (cm_per_s_mmHg). C ALGBRC(9) is J_sc_v in component sc_transepithelial_volume_flux (cm_per_s). C CONSTS(27) is L_sc_v in component sc_transepithelial_volume_flux (cm_per_s_mmHg). C ALGBRC(14) is J_v in component total_transepithelial_volume_flux (cm_per_s). C RATES(1) is d/dt C_m_Na in component solute_concentrations (mmol_per_cm3). C RATES(7) is d/dt C_s_Na in component solute_concentrations (mmol_per_cm3). C RATES(4) is d/dt C_c_Na in component solute_concentrations (mmol_per_cm3). C RATES(2) is d/dt C_m_K in component solute_concentrations (mmol_per_cm3). C RATES(8) is d/dt C_s_K in component solute_concentrations (mmol_per_cm3). C RATES(5) is d/dt C_c_K in component solute_concentrations (mmol_per_cm3). C RATES(3) is d/dt C_m_Cl in component solute_concentrations (mmol_per_cm3). C RATES(9) is d/dt C_s_Cl in component solute_concentrations (mmol_per_cm3). C RATES(6) is d/dt C_c_Cl in component solute_concentrations (mmol_per_cm3). C SUBROUTINE initConsts(CONSTS, RATES, STATES) REAL CONSTS(*), RATES(*), STATES(*) CONSTS(1) = 0.1033 CONSTS(2) = 0.1124 CONSTS(3) = -28.0 CONSTS(4) = -86.4 STATES(1) = 0.05 STATES(2) = 0.002 STATES(3) = 0.03 STATES(4) = 0.0164 STATES(5) = 0.1637 STATES(6) = 0.0203 STATES(7) = 1.438E-1 STATES(8) = 4.25E-3 STATES(9) = 1.12E-1 CONSTS(5) = 2.579 CONSTS(6) = 96.48 CONSTS(7) = 4.525E-2 CONSTS(8) = 0.0 CONSTS(9) = 3.27E-6 CONSTS(10) = 3.21E-5 CONSTS(11) = 5.11E-2 CONSTS(12) = 1.92E-2 CONSTS(13) = 6.31E-8 CONSTS(14) = 5.30E-2 CONSTS(15) = 2.13E-2 CONSTS(16) = 4.90E-7 CONSTS(17) = 1.43E-6 CONSTS(18) = 2.69E-6 CONSTS(19) = 1.20E-2 CONSTS(20) = 4.74E-4 CONSTS(21) = 9.16E-5 CONSTS(22) = 4.80E-6 CONSTS(23) = 4.80E-6 CONSTS(24) = 2.40E-6 CONSTS(25) = 5.22E-9 CONSTS(26) = 0.0 CONSTS(27) = 5.22E-7 RETURN END SUBROUTINE computeRates(VOI, CONSTS, RATES, STATES, ALGBRC) REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*) ALGBRC(3) = CONSTS(10)*(( (STATES(1)/CONSTS(11))*(STATES(3)/CONSTS(12)) - (STATES(4)/CONSTS(11))*(STATES(6)/CONSTS(12)))/( (1.00000+ (STATES(1)/CONSTS(11))*(STATES(3)/CONSTS(12)))*(1.00000+STATES(4)/CONSTS(11))*(1.00000+STATES(6)/CONSTS(12))+ (1.00000+ (STATES(4)/CONSTS(11))*(STATES(6)/CONSTS(12)))*(1.00000+STATES(1)/CONSTS(11))*(1.00000+STATES(3)/CONSTS(12)))) ALGBRC(1) = CONSTS(9)*(( CONSTS(6)*(CONSTS(3) - CONSTS(4)))/CONSTS(5))*((STATES(1) - STATES(4)*EXP( - (CONSTS(6)/CONSTS(5))*(CONSTS(3) - CONSTS(4))))/(1.00000 - EXP( - (CONSTS(6)/CONSTS(5))*(CONSTS(3) - CONSTS(4))))) ALGBRC(5) = ALGBRC(3)+ALGBRC(1) ALGBRC(15) = CONSTS(18)*(1.00000/(1.00000+CONSTS(19)/STATES(4) ** 3.00000)) ALGBRC(17) = -3.00000*ALGBRC(15) RATES(4) = ALGBRC(5)+ALGBRC(17) ALGBRC(10) = CONSTS(13)*(( (STATES(2)/CONSTS(14))*(STATES(3)/CONSTS(15)) - (STATES(5)/CONSTS(14))*(STATES(6)/CONSTS(15)))/( (1.00000+ (STATES(2)/CONSTS(14))*(STATES(3)/CONSTS(15)))*(1.00000+STATES(5)/CONSTS(14))*(1.00000+STATES(6)/CONSTS(15))+ (1.00000+ (STATES(5)/CONSTS(14))*(STATES(6)/CONSTS(15)))*(1.00000+STATES(2)/CONSTS(14))*(1.00000+STATES(3)/CONSTS(15)))) ALGBRC(7) = CONSTS(16)*(( CONSTS(6)*(CONSTS(3) - CONSTS(4)))/CONSTS(5))*((STATES(2) - STATES(5)*EXP( - (CONSTS(6)/CONSTS(5))*(CONSTS(3) - CONSTS(4))))/(1.00000 - EXP( - (CONSTS(6)/CONSTS(5))*(CONSTS(3) - CONSTS(4))))) ALGBRC(12) = ALGBRC(10)+ALGBRC(7) ALGBRC(18) = CONSTS(20)*(( CONSTS(6)*(CONSTS(8) - CONSTS(4)))/CONSTS(5))*((STATES(8) - STATES(5)*EXP( - (CONSTS(6)/CONSTS(5))*(CONSTS(8) - CONSTS(4))))/(1.00000 - EXP( - (CONSTS(6)/CONSTS(5))*(CONSTS(8) - CONSTS(4))))) ALGBRC(21) = 2.00000*ALGBRC(15)+ALGBRC(18) RATES(5) = ALGBRC(12)+ALGBRC(21) ALGBRC(13) = CONSTS(17)*(( -1.00000*CONSTS(6)*(CONSTS(3) - CONSTS(4)))/CONSTS(5))*((STATES(3) - STATES(6)*EXP( - (( -1.00000*CONSTS(6))/CONSTS(5))*(CONSTS(3) - CONSTS(4))))/(1.00000 - EXP( - (( -1.00000*CONSTS(6))/CONSTS(5))*(CONSTS(3) - CONSTS(4))))) ALGBRC(16) = ALGBRC(3)+ALGBRC(10)+ALGBRC(13) ALGBRC(19) = CONSTS(21)*(( -1.00000*CONSTS(6)*(CONSTS(8) - CONSTS(4)))/CONSTS(5))*((STATES(9) - STATES(6)*EXP( - (( -1.00000*CONSTS(6))/CONSTS(5))*(CONSTS(8) - CONSTS(4))))/(1.00000 - EXP( - (( -1.00000*CONSTS(6))/CONSTS(5))*(CONSTS(8) - CONSTS(4))))) ALGBRC(22) = ALGBRC(19) RATES(6) = ALGBRC(16)+ALGBRC(22) ALGBRC(20) = CONSTS(22)*(( CONSTS(6)*(CONSTS(3) - CONSTS(8)))/CONSTS(5))*((STATES(1) - STATES(7)*EXP( - (CONSTS(6)/CONSTS(5))*(CONSTS(3) - CONSTS(8))))/(1.00000 - EXP( - (CONSTS(6)/CONSTS(5))*(CONSTS(3) - CONSTS(8))))) ALGBRC(23) = ALGBRC(20) RATES(1) = - (ALGBRC(5)+ALGBRC(23)) RATES(7) = ALGBRC(23) - ALGBRC(17) ALGBRC(24) = CONSTS(23)*(( CONSTS(6)*(CONSTS(3) - CONSTS(8)))/CONSTS(5))*((STATES(2) - STATES(8)*EXP( - (CONSTS(6)/CONSTS(5))*(CONSTS(3) - CONSTS(8))))/(1.00000 - EXP( - (CONSTS(6)/CONSTS(5))*(CONSTS(3) - CONSTS(8))))) ALGBRC(26) = ALGBRC(24) RATES(2) = - (ALGBRC(12)+ALGBRC(26)) RATES(8) = ALGBRC(26) - ALGBRC(21) ALGBRC(25) = CONSTS(24)*(( -1.00000*CONSTS(6)*(CONSTS(3) - CONSTS(8)))/CONSTS(5))*((STATES(3) - STATES(9)*EXP( - (( -1.00000*CONSTS(6))/CONSTS(5))*(CONSTS(3) - CONSTS(8))))/(1.00000 - EXP( - (( -1.00000*CONSTS(6))/CONSTS(5))*(CONSTS(3) - CONSTS(8))))) ALGBRC(27) = ALGBRC(25) RATES(3) = - (ALGBRC(16)+ALGBRC(27)) RATES(9) = ALGBRC(27) - ALGBRC(22) RETURN END SUBROUTINE computeVariables(VOI, CONSTS, RATES, STATES, ALGBRC) REAL VOI, CONSTS(*), RATES(*), STATES(*), ALGBRC(*) ALGBRC(3) = CONSTS(10)*(( (STATES(1)/CONSTS(11))*(STATES(3)/CONSTS(12)) - (STATES(4)/CONSTS(11))*(STATES(6)/CONSTS(12)))/( (1.00000+ (STATES(1)/CONSTS(11))*(STATES(3)/CONSTS(12)))*(1.00000+STATES(4)/CONSTS(11))*(1.00000+STATES(6)/CONSTS(12))+ (1.00000+ (STATES(4)/CONSTS(11))*(STATES(6)/CONSTS(12)))*(1.00000+STATES(1)/CONSTS(11))*(1.00000+STATES(3)/CONSTS(12)))) ALGBRC(1) = CONSTS(9)*(( CONSTS(6)*(CONSTS(3) - CONSTS(4)))/CONSTS(5))*((STATES(1) - STATES(4)*EXP( - (CONSTS(6)/CONSTS(5))*(CONSTS(3) - CONSTS(4))))/(1.00000 - EXP( - (CONSTS(6)/CONSTS(5))*(CONSTS(3) - CONSTS(4))))) ALGBRC(5) = ALGBRC(3)+ALGBRC(1) ALGBRC(15) = CONSTS(18)*(1.00000/(1.00000+CONSTS(19)/STATES(4) ** 3.00000)) ALGBRC(17) = -3.00000*ALGBRC(15) ALGBRC(10) = CONSTS(13)*(( (STATES(2)/CONSTS(14))*(STATES(3)/CONSTS(15)) - (STATES(5)/CONSTS(14))*(STATES(6)/CONSTS(15)))/( (1.00000+ (STATES(2)/CONSTS(14))*(STATES(3)/CONSTS(15)))*(1.00000+STATES(5)/CONSTS(14))*(1.00000+STATES(6)/CONSTS(15))+ (1.00000+ (STATES(5)/CONSTS(14))*(STATES(6)/CONSTS(15)))*(1.00000+STATES(2)/CONSTS(14))*(1.00000+STATES(3)/CONSTS(15)))) ALGBRC(7) = CONSTS(16)*(( CONSTS(6)*(CONSTS(3) - CONSTS(4)))/CONSTS(5))*((STATES(2) - STATES(5)*EXP( - (CONSTS(6)/CONSTS(5))*(CONSTS(3) - CONSTS(4))))/(1.00000 - EXP( - (CONSTS(6)/CONSTS(5))*(CONSTS(3) - CONSTS(4))))) ALGBRC(12) = ALGBRC(10)+ALGBRC(7) ALGBRC(18) = CONSTS(20)*(( CONSTS(6)*(CONSTS(8) - CONSTS(4)))/CONSTS(5))*((STATES(8) - STATES(5)*EXP( - (CONSTS(6)/CONSTS(5))*(CONSTS(8) - CONSTS(4))))/(1.00000 - EXP( - (CONSTS(6)/CONSTS(5))*(CONSTS(8) - CONSTS(4))))) ALGBRC(21) = 2.00000*ALGBRC(15)+ALGBRC(18) ALGBRC(13) = CONSTS(17)*(( -1.00000*CONSTS(6)*(CONSTS(3) - CONSTS(4)))/CONSTS(5))*((STATES(3) - STATES(6)*EXP( - (( -1.00000*CONSTS(6))/CONSTS(5))*(CONSTS(3) - CONSTS(4))))/(1.00000 - EXP( - (( -1.00000*CONSTS(6))/CONSTS(5))*(CONSTS(3) - CONSTS(4))))) ALGBRC(16) = ALGBRC(3)+ALGBRC(10)+ALGBRC(13) ALGBRC(19) = CONSTS(21)*(( -1.00000*CONSTS(6)*(CONSTS(8) - CONSTS(4)))/CONSTS(5))*((STATES(9) - STATES(6)*EXP( - (( -1.00000*CONSTS(6))/CONSTS(5))*(CONSTS(8) - CONSTS(4))))/(1.00000 - EXP( - (( -1.00000*CONSTS(6))/CONSTS(5))*(CONSTS(8) - CONSTS(4))))) ALGBRC(22) = ALGBRC(19) ALGBRC(20) = CONSTS(22)*(( CONSTS(6)*(CONSTS(3) - CONSTS(8)))/CONSTS(5))*((STATES(1) - STATES(7)*EXP( - (CONSTS(6)/CONSTS(5))*(CONSTS(3) - CONSTS(8))))/(1.00000 - EXP( - (CONSTS(6)/CONSTS(5))*(CONSTS(3) - CONSTS(8))))) ALGBRC(23) = ALGBRC(20) ALGBRC(24) = CONSTS(23)*(( CONSTS(6)*(CONSTS(3) - CONSTS(8)))/CONSTS(5))*((STATES(2) - STATES(8)*EXP( - (CONSTS(6)/CONSTS(5))*(CONSTS(3) - CONSTS(8))))/(1.00000 - EXP( - (CONSTS(6)/CONSTS(5))*(CONSTS(3) - CONSTS(8))))) ALGBRC(26) = ALGBRC(24) ALGBRC(25) = CONSTS(24)*(( -1.00000*CONSTS(6)*(CONSTS(3) - CONSTS(8)))/CONSTS(5))*((STATES(3) - STATES(9)*EXP( - (( -1.00000*CONSTS(6))/CONSTS(5))*(CONSTS(3) - CONSTS(8))))/(1.00000 - EXP( - (( -1.00000*CONSTS(6))/CONSTS(5))*(CONSTS(3) - CONSTS(8))))) ALGBRC(27) = ALGBRC(25) ALGBRC(2) = STATES(1)+STATES(2)+STATES(3)+CONSTS(1) ALGBRC(4) = STATES(4)+STATES(5)+STATES(6)+CONSTS(2) ALGBRC(6) = STATES(7)+STATES(8)+STATES(9)+CONSTS(7) ALGBRC(8) = CONSTS(25)*CONSTS(5)*(ALGBRC(2) - ALGBRC(4)) ALGBRC(9) = CONSTS(27)*CONSTS(5)*(ALGBRC(6) - ALGBRC(4)) ALGBRC(11) = CONSTS(26)*CONSTS(5)*(ALGBRC(2) - ALGBRC(6)) ALGBRC(14) = ALGBRC(8)+ALGBRC(11) ALGBRC(28) = ALGBRC(5)+ALGBRC(23) ALGBRC(29) = ALGBRC(12)+ALGBRC(26) ALGBRC(30) = ALGBRC(16)+ALGBRC(27) RETURN END