# Exchange isotherms, Rothmund-Kornfeld vs. active fraction # Appelo and Postma, 2005, Example 6.6, p.259. # Rothmund-Kornfeld... EXCHANGE_SPECIES 0.618Ca+2 + 2KX = CaX2 + 1.236K+; -log_k -0.281 -no_check -mole_balance CaX2 -gamma 5.0 0.165 SOLUTION 1 K 100 # 100 mmol K/kg H2O EXCHANGE 1 KX 0.4 # 400 mmol KX, total K in the system = 500 mmol END PRINT; -reset false; -status false USE solution 1; USE exchange 1 REACTION 1 # Remove 500 mmol K+, replace with 250 mmol Ca+2 K -1 Ca 0.5 0 20*0.02499 INCREMENTAL_REACTIONS SELECTED_OUTPUT; -file a_f.prn; -reset false USER_PUNCH -head alpha_K beta_K 10 punch tot("K") / 0.1 20 punch mol("KX") / 0.4 USER_GRAPH # Plot isotherm... -head alpha_K Rothmund-K -axis_titles "Solute K / (K + 2Ca)" "Exchangeable K / (K + 2Ca)" -axis_scale x_axis 0 1 0.2 0.1; -axis_scale y_axis 0 1 0.2 0.1 -init false 10 graph_x tot("K") / 0.1 20 graph_y mol("KX") / 0.4 END # active fraction... EXCHANGE_SPECIES K+ + X- = KX; log_k 0.7; -gamma 3.5 0.015 0.7 Ca+2 + 2X- = CaX2; log_k 0.8; -gamma 5.0 0.165 0.5 USER_GRAPH # Plot isotherm... -head alpha_K active_fraction USE solution 1; USE exchange 1; USE reaction 1 END