phreeqc实例练习

更新时间:2024-02-02 08:28:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

PHREEQC实例分析

例1——物种形成分析

这个例子计算了海水中矿物质的分布以及一组有关矿物在海水中的饱和程度。为了证明如何在这个模型中应用新的元素,将元素铀添加入由phreeqc.dat定义的液相模型中[wateq.dat是包含于程序分类中的一个数据库文件,它来自于WATEQ4F(Ball and Nordstrom, 1991),并包含铀]。

物质形成计算所需要的数据包括温度、Ph、元素的浓度和/或其元素的化合价。海水中的这些数据见表10。这个例子计算中输入的数据组见表11。在模拟中所运用的有关计算的注释包含在TITLE关键字中。SOLUTION数据块定义了海水的成分。注意:元素的化合价用元素化学符号后面圆括号中的数字表示[S(6), N(5), N(-3)和O(0)]。

表10—海水的成分

[未指定浓度时,其浓度的单位为ppm]

分析的组分 钙

镁 钠 钾 铁 锰

硅石,SiO2 氯化物

碱度,HCO3- 硫酸盐,SO42- 硝酸盐,NO3- 铵,NH4+ 铀

pH,标准单位 pe,无单位 温度,℃

密度,千克/升

PHREEQC符号 Ca Mg Na K Fe Mn Si Cl

Alkalinity S(6) N(5) N(-3) U pH pe

temperature density

浓度 412.3 1291.8 10768.0 399.1 .002 .0002 4.28 19353.0 141.682 2712.0 .29 .03 .0033 8.22 8.451 25.0 1.023

用于分配氧化还原元素和计算饱和指数的pe由redox标识符所指定。在这个例子中,用氧化还原电对O(-2)/O(0) 计算的pe值相对应于溶解氧/水,并且这个pe适用于需要pe值的所有的计算。如果redox没有指定,那么缺省的值将会是所输入的pe。缺省的氧化还原标识符可被任何氧化还原元素代替,如输入元素锰时,则输入的pe被用来表示各种

化合价状态的锰;输入铀时,这里是氮/铵电对将会用来计算所形成各种价态铀的pe值。

数据组中缺省的单位为ppm(units标识符)。这个缺省值可以替换为任何浓度单位,如指定铀的浓度为ppb来代替ppm。因为ppm是一个质量单位,而不是一个摩尔单位,这个程序必须用分子量来将浓度单位转化为摩尔单位。每一种主要物质缺省的分子量在

SOLUTION_MASTER_SPECIES输入中指定(缺省数据库phreeqc.dat的值列在表4和附录

B中)。如果提交的分子量数据不同于其缺省值,必须在输入数据的设置中指定适当的分子量。这可以用gfw标识符来完成,在这里输入真正的分子量,转化硝酸盐的分子量为62.0

g/mol,或是更简便的是以as标识符来完成,在这里输入所使用的化学分子式的单位,正如在这个例子中输入的碱和铵是一样的。注意最后给定的溶解氧O(0)的浓度是1ppm的初始估计值,但它的浓度将会得以调整,直到氧气分压的对数达到-0.7。[O2(g)的定义是在缺省数据库文件中在PHASES输入(附录B)]。当使用相均衡来指定初始浓度[正如这个例子中的O(0)],则仅有一种浓度是得以调整。例如,例如石膏被用来调整钙的浓度,钙的浓度会改变,而硫酸盐的浓度却保持不变。

表11 例1的输入数据

TITLE Example 1.--Add uranium and speciate seawater.

SOLUTION 1 SEAWATER FROM NORDSTROM ET AL. (1979)

units ppm pH 8.22 pe 8.451 density 1.023 temp 25.0

redox O(0)/O(-2) Ca 412.3 Mg 1291.8 Na 10768.0 K 399.1 Fe 0.002 Mn 0.0002 pe Si 4.28 Cl 19353.0 Alkalinity 141.682 as HCO3 S(6) 2712.0 N(5) 0.29 gfw 62.0 N(-3) 0.03 as NH4 U 3.3 ppb N(5)/N(-3) O(0) 1.0 O2(g) -0.7

SOLUTION_MASTER_SPECIES

U U+4 0.0 238.0290 238.0290 U(4) U+4 0.0 238.0290 U(5) UO2+ 0.0 238.0290

U(6) UO2+2 0.0 238.0290 SOLUTION_SPECIES

# primary master species for U

# is also secondary master species for U(4)

PHASES

END

U+4 = U+4

log_k 0.0

U+4 + 4 H2O = U(OH)4 + 4 H+

log_k -8.538 delta_h 24.760 kcal

U+4 + 5 H2O = U(OH)5- + 5 H+

log_k -13.147 delta_h 27.580 kcal

# secondary master species for U(5) U+4 + 2 H2O = UO2+ + 4 H+ + e-

log_k -6.432 delta_h 31.130 kcal

# secondary master species for U(6) U+4 + 2 H2O = UO2+2 + 4 H+ + 2 e-

log_k -9.217 delta_h 34.430 kcal

UO2+2 + H2O = UO2OH+ + H+

log_k -5.782 delta_h 11.015 kcal

2UO2+2 + 2H2O = (UO2)2(OH)2+2 + 2H+

log_k -5.626 delta_h -36.04 kcal

3UO2+2 + 5H2O = (UO2)3(OH)5+ + 5H+

log_k -15.641 delta_h -44.27 kcal

UO2+2 + CO3-2 = UO2CO3

log_k 10.064 delta_h 0.84 kcal

UO2+2 + 2CO3-2 = UO2(CO3)2-2

log_k 16.977 delta_h 3.48 kcal

UO2+2 + 3CO3-2 = UO2(CO3)3-4

log_k 21.397 delta_h -8.78 kcal

Uraninite

UO2 + 4 H+ = U+4 + 2 H2O log_k -3.490 delta_h -18.630 kcal

程序的的数据库文件phreeqc.dat中不包含铀。这样,当应用这个数据库文件时,输入文件中一定得包括描述热动力学和液相中含铀组分的数据。需要两个关键字来定义铀的形态,即SOLUTION_MASTER_SPECIES和SOLUTION_SPECIES。通过把这两个数据块加到输入文件中,将会在程序运行中确定液相中含铀组分。为把铀稳定地加到列出的元素中,则这些数据块应加入到数据库文件中。这里铀的数据是说明性的,而不是铀物质的完整描述。

使用SOLUTION_MASTER_SPECIES输入来定义含铀的主要物质成分是必要的。因为铀是活泼的氧化还原元素,所以定义具有不同化合价的次要含铀物质也是很有必要的。SOLUTION_MASTER_SPECIES(表11)数据块定义了U+4为主要的含铀物质,同时+4价的铀也是次级主要物质。UO2 +是化合价为+5的次级主要含铀物质,UO2 +2是化合价为+6的次级主要含铀物质。定义这些液相和其它任何铀络合物的方程必须通过SOLUTION_SPECIES输入来进行。

在数据块SOLUTION_SPECIES (表11)中,主要的和次要的物质均附有注释。首要的主要物质总是以恒等反应(U+4 = U+4)的形式来定义的。次主要物质是在化学反应中仅有的含有电子的液相。另外的氢氧化物和碳酸盐络合物定义为+4和+6价,无+5价。

最后,在PHASES输入中定义一种新的含铀矿物。在物质形成模拟中该物质将会被用来计算饱和指数,在计算机运行中的批反应、运移或是反向模拟中,如果没有重新定义,则不能使用。

表12--例1的输出 Input file: ex1

Output file: ex1.out

Database file: ../phreeqc.dat ------------------ Reading data base. ------------------ SOLUTION_MASTER_SPECIES SOLUTION_SPECIES PHASES EXCHANGE_MASTER_SPECIES EXCHANGE_SPECIES SURFACE_MASTER_SPECIES SURFACE_SPECIES RATES END

------------------------------------

Reading input data for simulation 1. ------------------------------------

SOLUTION 1 SEAWATER FROM NORDSTROM ET AL. (1979) units ppm pH 8.22 pe 8.451 density 1.023 temp 25.0

redox O(0)/O(-2)

Ca 412.3 Mg 1291.8 Na 10768.0 K 399.1 Fe 0.002

Mn 0.0002 pe Si 4.28 Cl 19353.0

Alkalinity 141.682 as HCO3 S(6) 2712.0

N(5) 0.29 as NO3 N(-3) 0.03 as NH4

U 3.3 ppb N(5)/N(-3) O(0) 1.0 O2(g) -0.7 SOLUTION_MASTER_SPECIES

U U+4 0.0 238.0290 238.0290 U(4) U+4 0.0 238.0290 U(5) UO2+ 0.0 238.0290 U(6) UO2+2 0.0 238.0290 SOLUTION_SPECIES U+4 = U+4

log_k 0.0 U+4 + 4 H2O = U(OH)4 + 4 H+ log_k -8.538 delta_h 24.760 kcal U+4 + 5 H2O = U(OH)5- + 5 H+ log_k -13.147 delta_h 27.580 kcal U+4 + 2 H2O = UO2+ + 4 H+ + e- log_k -6.432 delta_h 31.130 kcal U+4 + 2 H2O = UO2+2 + 4 H+ + 2 e- log_k -9.217 delta_h 34.430 kcal UO2+2 + H2O = UO2OH+ + H+ log_k -5.782 delta_h 11.015 kcal

2UO2+2 + 2H2O = (UO2)2(OH)2+2 + 2H+ log_k -5.626 delta_h -36.04 kcal 3UO2+2 + 5H2O = (UO2)3(OH)5+ + 5H+ log_k -15.641 delta_h -44.27 kcal UO2+2 + CO3-2 = UO2CO3 log_k 10.064 delta_h 0.84 kcal UO2+2 + 2CO3-2 = UO2(CO3)2-2 log_k 16.977 delta_h 3.48 kcal UO2+2 + 3CO3-2 = UO2(CO3)3-4 log_k 21.397 delta_h -8.78 kcal PHASES Uraninite UO2 + 4 H+ = U+4 + 2 H2O log_k -3.490 delta_h -18.630 kcal END ----- TITLE -----

Example 1.--Add uranium and speciate seawater.

-------------------------------------------

Beginning of initial solution calculations. -------------------------------------------

Initial solution 1. SEAWATER FROM NORDSTROM ET AL. (1979)

-----------------------------Solution composition------------------------------ Elements Molality Moles Alkalinity 2.406e-03 2.406e-03 Ca 1.066e-02 1.066e-02 Cl 5.657e-01 5.657e-01 Fe 3.711e-08 3.711e-08 K 1.058e-02 1.058e-02 Mg 5.507e-02 5.507e-02 Mn 3.773e-09 3.773e-09

N(-3) 1.724e-06 1.724e-06 N(5) 4.847e-06 4.847e-06 Na 4.854e-01 4.854e-01 O(0) 3.746e-04 3.746e-04 Equilibrium with O2(g) S(6) 2.926e-02 2.926e-02 Si 7.382e-05 7.382e-05 U 1.437e-08 1.437e-08

----------------------------Description of solution----------------------------

pH = 8.220 pe = 8.451 Activity of water = 0.981 Ionic strength = 6.748e-01 Mass of water (kg) = 1.000e+00 Total carbon (mol/kg) = 2.180e-03 Total CO2 (mol/kg) = 2.180e-03 Temperature (deg C) = 25.000 Electrical balance (eq) = 7.936e-04 Percent error, 100*(Cat-|An|)/(Cat+|An|) = 0.07 Iterations = 7

Total H = 1.110147e+02 Total O = 5.563047e+01

---------------------------------Redox couples--------------------------------- Redox couple pe Eh (volts) N(-3)/N(5) 4.6737 0.2765 O(-2)/O(0) 12.3893 0.7329

----------------------------Distribution of species---------------------------- Log Log Species Molality Activity Molality Activity OH- 2.674e-06 1.629e-06 -5.573 -5.788 H+ 7.981e-09 6.026e-09 -8.098 -8.220 H2O 5.551e+01 9.806e-01 -0.009 -0.009 C(4) 2.180e-03 HCO3- 1.514e-03 1.023e-03 -2.820 -2.990 MgHCO3+ 2.195e-04 1.640e-04 -3.658 -3.785 NaHCO3 1.667e-04 1.948e-04 -3.778 -3.710 MgCO3 8.913e-05 1.041e-04 -4.050 -3.982 Log Gamma -0.215 -0.122 0.000 -0.170 -0.127 0.067 0.067

NaCO3- 6.718e-05 5.020e-05 -4.173 -4.299 -0.127 CaHCO3+ 4.597e-05 3.106e-05 -4.337 -4.508 -0.170 CO3-2 3.821e-05 7.959e-06 -4.418 -5.099 -0.681 CaCO3 2.725e-05 3.183e-05 -4.565 -4.497 0.067 CO2 1.210e-05 1.413e-05 -4.917 -4.850 0.067 UO2(CO3)3-4 1.255e-08 1.183e-10 -7.901 -9.927 -2.025 UO2(CO3)2-2 1.814e-09 5.653e-10 -8.741 -9.248 -0.506 MnCO3 2.696e-10 3.150e-10 -9.569 -9.502 0.067 MnHCO3+ 6.077e-11 4.541e-11 -10.216 -10.343 -0.127 UO2CO3 FeCO3 FeHCO3+ Ca Ca+2 CaSO4 CaHCO3+ CaCO3 CaOH+ Cl Cl- MnCl+ MnCl2 MnCl3- FeCl+2 FeCl2+ FeCl+ FeCl3 Fe(2) Fe+2 FeCl+ FeSO4 FeCO3 FeHCO3+ FeOH+ FeHSO4+ Fe(3) Fe(OH)3 Fe(OH)4- Fe(OH)2+ FeOH+2 FeSO4+ FeCl+2 FeCl2+ Fe+3 7.429e-12 8.678e-12 -11.129 -11.062 1.952e-20 2.281e-20 -19.709 -19.642 1.635e-20 1.222e-20 -19.786 -19.913 1.066e-02 9.504e-03 2.380e-03 -2.022 -2.623 1.083e-03 1.265e-03 -2.965 -2.898 4.597e-05 3.106e-05 -4.337 -4.508 2.725e-05 3.183e-05 -4.565 -4.497 8.604e-08 6.429e-08 -7.065 -7.192 5.657e-01 5.657e-01 3.528e-01 -0.247 -0.452 9.582e-10 7.160e-10 -9.019 -9.145 9.439e-11 1.103e-10 -10.025 -9.958 1.434e-11 1.071e-11 -10.844 -10.970 9.557e-19 2.978e-19 -18.020 -18.526 6.281e-19 4.693e-19 -18.202 -18.329 7.786e-20 5.817e-20 -19.109 -19.235 1.417e-20 1.656e-20 -19.849 -19.781 6.909e-19 5.205e-19 1.195e-19 -18.284 -18.923 7.786e-20 5.817e-20 -19.109 -19.235 4.845e-20 5.660e-20 -19.315 -19.247 1.952e-20 2.281e-20 -19.709 -19.642 1.635e-20 1.222e-20 -19.786 -19.913 8.227e-21 6.147e-21 -20.085 -20.211 3.000e-27 2.242e-27 -26.523 -26.649 3.711e-08 2.841e-08 3.318e-08 -7.547 -7.479 6.591e-09 4.924e-09 -8.181 -8.308 2.118e-09 1.583e-09 -8.674 -8.801 9.425e-14 2.937e-14 -13.026 -13.532 1.093e-18 8.167e-19 -17.961 -18.088 9.557e-19 2.978e-19 -18.020 -18.526 6.281e-19 4.693e-19 -18.202 -18.329 3.509e-19 2.796e-20 -18.455 -19.554 0.067 0.067 -0.127 -0.601 0.067 -0.170 0.067 -0.127 -0.205 -0.127 0.067 -0.127 -0.506 -0.127 -0.127 0.067 -0.639 -0.127 0.067 0.067 -0.127 -0.127 -0.127 0.067 -0.127 -0.127 -0.506 -0.127 -0.506 -0.127 -1.099

Fe(SO4)2- 6.371e-20 4.760e-20 -19.196 -19.322 -0.127 FeCl3 1.417e-20 1.656e-20 -19.849 -19.781 0.067 Fe2(OH)2+4 2.462e-24 2.322e-26 -23.609 -25.634 -2.025 FeHSO4+2 4.228e-26 1.318e-26 -25.374 -25.880 -0.506 Fe3(OH)4+5 1.122e-29 7.679e-33 -28.950 -32.115 -3.165 H(0) 0.000e+00 H2 0.000e+00 0.000e+00 -44.436 -44.369 0.067 K 1.058e-02 K+ 1.041e-02 6.494e-03 -1.982 -2.187 -0.205 KSO4- KOH Mg Mg+2 MgSO4 MgHCO3+ MgCO3 MgOH+ Mn(2) Mn+2 MnCl+ MnCO3 MnSO4 MnCl2 MnHCO3+ MnCl3- MnOH+ Mn(NO3)2 Mn(3) Mn+3 N(-3) NH4+ NH3 N(5) NO3- Mn(NO3)2 Na Na+ NaSO4- NaHCO3 NaCO3- NaOH O(0) O2 S(6) 1.639e-04 1.225e-04 -3.785 -3.912 3.137e-09 3.664e-09 -8.504 -8.436 5.507e-02 4.742e-02 1.371e-02 -1.324 -1.863 7.330e-03 8.562e-03 -2.135 -2.067 2.195e-04 1.640e-04 -3.658 -3.785 8.913e-05 1.041e-04 -4.050 -3.982 1.084e-05 8.100e-06 -4.965 -5.092 3.773e-09 2.171e-09 4.982e-10 -8.663 -9.303 9.582e-10 7.160e-10 -9.019 -9.145 2.696e-10 3.150e-10 -9.569 -9.502 2.021e-10 2.360e-10 -9.695 -9.627 9.439e-11 1.103e-10 -10.025 -9.958 6.077e-11 4.541e-11 -10.216 -10.343 1.434e-11 1.071e-11 -10.844 -10.970 2.789e-12 2.084e-12 -11.555 -11.681 1.375e-20 1.606e-20 -19.862 -19.794 5.993e-26 5.993e-26 4.349e-27 -25.222 -26.362 1.724e-06 1.648e-06 9.272e-07 -5.783 -6.033 7.507e-08 8.769e-08 -7.125 -7.057 4.847e-06 4.847e-06 2.846e-06 -5.315 -5.546 1.375e-20 1.606e-20 -19.862 -19.794 4.854e-01 4.791e-01 3.387e-01 -0.320 -0.470 6.053e-03 4.522e-03 -2.218 -2.345 1.667e-04 1.948e-04 -3.778 -3.710 6.718e-05 5.020e-05 -4.173 -4.299 3.117e-07 3.641e-07 -6.506 -6.439 3.746e-04 1.873e-04 2.188e-04 -3.727 -3.660 2.926e-02

-0.127 0.067 -0.539 0.067 -0.127 0.067 -0.127 -0.639 -0.127 0.067 0.067 0.067 -0.127 -0.127 -0.127 0.067 -1.139 -0.250 0.067 -0.231 0.067 -0.151 -0.127 0.067 -0.127 0.067 0.067 SO4-2 1.463e-02 2.664e-03 -1.835 -2.574 -0.740 MgSO4 7.330e-03 8.562e-03 -2.135 -2.067 0.067 NaSO4- 6.053e-03 4.522e-03 -2.218 -2.345 -0.127 CaSO4 1.083e-03 1.265e-03 -2.965 -2.898 0.067 KSO4- 1.639e-04 1.225e-04 -3.785 -3.912 -0.127 HSO4- 2.089e-09 1.561e-09 -8.680 -8.807 -0.127 MnSO4 2.021e-10 2.360e-10 -9.695 -9.627 0.067 FeSO4+ 1.093e-18 8.167e-19 -17.961 -18.088 -0.127 Fe(SO4)2- 6.371e-20 4.760e-20 -19.196 -19.322 -0.127 FeSO4 4.845e-20 5.660e-20 -19.315 -19.247 FeHSO4+2 4.228e-26 1.318e-26 -25.374 -25.880 FeHSO4+ 3.000e-27 2.242e-27 -26.523 -26.649 Si 7.382e-05 H4SiO4 7.110e-05 8.306e-05 -4.148 -4.081 H3SiO4- 2.720e-06 2.032e-06 -5.565 -5.692 H2SiO4-2 7.362e-11 2.294e-11 -10.133 -10.639 U(4) 1.040e-21 U(OH)5- 1.040e-21 7.773e-22 -20.983 -21.109 U(OH)4 1.662e-25 1.941e-25 -24.779 -24.712 U+4 0.000e+00 0.000e+00 -46.994 -49.020 U(5) 1.627e-18 UO2+ 1.627e-18 1.216e-18 -17.789 -17.915 U(6) 1.437e-08 UO2(CO3)3-4 1.255e-08 1.183e-10 -7.901 -9.927 UO2(CO3)2-2 1.814e-09 5.653e-10 -8.741 -9.248 UO2CO3 7.429e-12 8.678e-12 -11.129 -11.062 UO2OH+ 3.386e-14 2.530e-14 -13.470 -13.597 UO2+2 3.019e-16 9.410e-17 -15.520 -16.026 (UO2)2(OH)2+2 1.780e-21 5.547e-22 -20.750 -21.256 (UO2)3(OH)5+ 2.908e-23 2.173e-23 -22.536 -22.663

------------------------------Saturation indices------------------------------- Phase SI log IAP log KT Anhydrite -0.84 -5.20 -4.36 CaSO4 Aragonite 0.61 -7.72 -8.34 CaCO3 Calcite 0.76 -7.72 -8.48 CaCO3 Chalcedony -0.51 -4.06 -3.55 SiO2 Chrysotile 3.36 35.56 32.20 Mg3Si2O5(OH)4 CO2(g) -3.38 -21.53 -18.15 CO2 Dolomite 2.41 -14.68 -17.09 CaMg(CO3)2 Fe(OH)3(a) 0.19 -3.42 -3.61 Fe(OH)3 Goethite 6.09 -3.41 -9.50 FeOOH

0.067 -0.506 -0.127 0.067 -0.127 -0.506 -0.127 0.067 -2.025 -0.127 -2.025 -0.506 0.067 -0.127 -0.506 -0.506 -0.127

Gypsum -0.63 -5.21 -4.58 CaSO4:2H2O H2(g) -41.22 1.82 43.04 H2 Hausmannite 1.57 19.56 17.99 Mn3O4 Hematite 14.20 -6.81 -21.01 Fe2O3 Jarosite-K -7.52 -42.23 -34.71 KFe3(SO4)2(OH)6 Manganite 2.39 6.21 3.82 MnOOH Melanterite -19.35 -21.56 -2.21 FeSO4:7H2O O2(g) -0.70 -3.66 -2.96 O2 Pyrochroite -8.08 7.12 15.20 Mn(OH)2 Pyrolusite 6.95 5.29 -1.66 MnO2:H2O Quartz -0.11 -4.06 -3.96 SiO2 Rhodochrosite -3.27 -14.40 -11.13 MnCO3 Sepiolite 1.16 16.92 15.76 Mg2Si3O7.5OH:3H2O Sepiolite(d) -1.74 16.92 18.66 Mg2Si3O7.5OH:3H2O Siderite -13.13 -24.02 -10.89 FeCO3 SiO2(a) -1.35 -4.06 -2.71 SiO2 Talc 6.04 27.44 21.40 Mg3Si4O10(OH)2 Uraninite -12.67 4.40 17.06 UO2

------------------ End of simulation. ------------------

模拟中的输出(表12)包含标题所描绘的几个信息块。首先,是运行的输入、输出、数据库文件的名字。其次,在标题“Reading data base”下列出了在读数据库中碰到的所有关键字。后面,输入数据在标题“Reading input data for simulation 1”下进行重复输出,不包括注释和空行。所有的输入数据以及END关键字构成了该模拟。

在这个模拟中,TITLE关键字后面所碰到的任何注释都将打印在后面。名称后面是标题,“Beginning of initial solution calculations”,在它的下面是海水物质形成计算的结果。浓度数据,转化成重量摩尔数,在子标题“Solution composition”下所给出。对初始溶液计算而言,溶液中的摩尔数目在数字上等于它的重量摩尔数,这是因为假定的是1kg的水。标识符-water是用来定义溶液中不同质量的水。在批反应计算中,水的质量可发生变化,液相中的摩尔数不会准确地等于组分的重量摩尔数。注意,产生分压力对数为-0.7的溶解氧的重量摩尔数已被计算,并且在输出中会加以解释。

在子标题“Description of solution”之后,在输出的第一个数据块中所列出的一些属性等于它们的输入值,另一些是计算值。在这个例子中,pH,pe和温度都等于它们的输入值。离子强度,总碳(碱度是输入数据),总无机碳(“Total CO2”),电子平衡,和百分误差在模拟计算中得到。

在子标题“Redox couples”下面打印的是可获得的每个氧化还原电对的pe和Eh,在该例中,为铵/硝酸盐,以及水/溶解氧。

在子标题“Distribution of species”下面,列出的是每种元素所有形态和价态的摩尔浓度、活度及活度系数。它的顺序是根据元素的字母顺序或是按每种元素的浓度或是元素化合价递减的顺序列出的。除了每种元素或元素的化合价,也给出了总摩尔数。

最后,在子标题“Saturation indices”下,适于给出分析数据的矿物的饱和指数,在输出的末尾部分以物质的名字按子母顺序列出。饱和指数是在标有“SI”的栏中给出的,跟在后面的是的一栏是离子活度积的对数(“log IAP”)和溶解常数的对数(“log KT”)。每种物质的化学分子式都在右边栏中打出。注意,例如没有包括含铝的矿物,这是因为在分析数据中不包括铝。同样也注意,输出中也没有包括四方硫铁矿(FeS)和其它的硫化矿物,这是因为没有指定(S-2)的分析数据。如输入了S[代替S(6)]或S(-2)的浓度,那么这个S(-2)的浓度将会被加以计算,四方硫铁矿和其它硫化矿物的饱和指数也将得到计算。

例2——矿物相的溶解平衡

这个例子测定了最稳定相——石膏或是无水石膏在一定温度范围内的溶解性。输入数据组见表13。仅用pH和温度来定义纯水溶液。缺省单位是millimolal,但没有指定浓度。缺省状态下,pe为4.0,缺省的氧化还原计算使用pe,且水的密度为1.0(这是没有必要的,因为没有浓度为“每升”)。在批反应期间,所有允许反应达到指定的饱和指数的反应都列在EQUILIBRIUM_PHASES中,无论开始时它们是否存在。输入数据包含相的名字(之前通过PHASES输入在数据库或输入文件中定义)、指定的饱和指数和以摩尔数表示的当前存在的相的数量。如果一种相在当前不存在,则在纯相集合中给定其浓度为0.0 mol。在这个例子中,石膏和无水石膏允许反应来达到平衡(饱和指数等于0.0),初始相的集合中每种矿物都为1mol。每一种矿物或是反应达到平衡或是被耗尽。在大多数的情况下,1 mol的单纯相足够达到反应平衡。

表13--例2输入数据的设置

TITLE Example 2.--Temperature dependence of solubility

of gypsum and anhydrite SOLUTION 1 Pure water pH 7.0

temp 25.0 EQUILIBRIUM_PHASES 1

Gypsum 0.0 1.0 Anhydrite 0.0 1.0 REACTION_TEMPERATURE 1 25.0 75.0 in 51 steps SELECTED_OUTPUT

file ex2.sel

si anhydrite gypsum END

在REACTION_TEMPERATURE数据块中,指定反应温度计算步长为1℃,从25℃开始,75℃结束,共计算温度变化51次。温度的每一度变化都详细指定输入数据,在可能的情况下,在EQUILIBRIUM_PHASES(石膏和无水石膏)中定义的物质将会反应达到平衡,或是直到两种物质都完全溶解。最后在每一次计算之后,用SELECTED_OUTPUT来输出石膏和无水石膏的饱和指数到文件ex2.sel中。然后用这个文件来生成图5。

初始溶液计算和第一次批反应的结果见表14。纯水中物质的分布列于标题 “开始初始溶液计算”下。在25℃下,与所给定石膏和无水石膏量达到平衡的体系是第一次批反应,反应结果列在标题“开始批反应计算”之后。紧接着这个标题,定义了批反应阶段,接下来是计算中确定关键字数据的列表。在这个例子中,计算时所应用的反应组分保存为序号1,纯相集合保存为序号1,反应温度保存为序号1。概念上,溶液和纯相放在一个烧杯中,并调整温度为25℃,使其反应达到体系平衡。

图5--在25到75℃的温度范围内,溶液中石膏和硬石膏稳定时的饱和指数, 在子标题“Phase assemblage”下,列出了由EQUILIBRIUM_PHASES所定义的每一种相的饱和指数和数量。在第一次的批反应阶段,最后相的集合不含无水石膏,对溶液而言这并没有达到平衡(饱和指数为-0.22),1.985mol的石膏,与溶液达到平衡(饱和指数等于0.0)。所有的无水石膏得以溶解,且大多数的钙和硫酸盐是生成石膏沉淀下来。“溶液组分”表明,15.64 mmol/kgw的钙和硫酸盐留在溶液中,这确定了纯水中石膏的溶解度。然而,在液相中每一成分的摩尔总数为15.08,这是因为水的质量仅为0.9645kg(“溶液的定义”)。在形成石膏(CaSO4 .2H2O)时,水从溶液中移除。因此,在批反应计算中,溶剂水的质量并不是常数;在溶解和沉淀相中,反应和水合作用可以增加或减少溶剂水的质量。

所有批反应阶段的饱和指数绘于图5。在每一阶段,纯水与相在不同的温度下反应(反应并不累加)。PHREEQC缺省的数据块表明:在温度低于57℃时,石膏是稳定相(饱和指数等于0.0);在高于这个温度时,无水石膏是稳定相。

表14—例2的选择性输出

-------------------------------------------

Beginning of initial solution calculations. -------------------------------------------

Initial solution 1. Pure water

-----------------------------Solution composition------------------------------

Elements Molality Moles

Pure water

----------------------------Description of solution----------------------------

pH = 7.000 pe = 4.000 Activity of water = 1.000 Ionic strength = 1.001e-07 Mass of water (kg) = 1.000e+00 Total alkalinity (eq/kg) = 1.082e-10 Total carbon (mol/kg) = 0.000e+00 Total CO2 (mol/kg) = 0.000e+00 Temperature (deg C) = 25.000 Electrical balance (eq) = -1.082e-10 Percent error, 100*(Cat-|An|)/(Cat+|An|) = -0.05 Iterations = 0

Total H = 1.110124e+02 Total O = 5.550622e+01

----------------------------Distribution of species----------------------------

Log Log Log Species Molality Activity Molality Activity Gamma

OH- 1.002e-07 1.001e-07 -6.999 -6.999 -0.000 H+ 1.001e-07 1.000e-07 -7.000 -7.000 -0.000 H2O 5.551e+01 1.000e+00 0.000 0.000 0.000 H(0) 1.416e-25

H2 7.079e-26 7.079e-26 -25.150 -25.150 0.000 O(0) 0.000e+00

O2 0.000e+00 0.000e+00 -42.080 -42.080 0.000

------------------------------Saturation indices-------------------------------

Phase SI log IAP log KT

H2(g) -22.00 -22.00 0.00 H2 O2(g) -39.12 44.00 83.12 O2

-----------------------------------------

Beginning of batch-reaction calculations. -----------------------------------------

Reaction step 1.

Using solution 1. Pure water Using pure phase assemblage 1. Using temperature 1.

-------------------------------Phase assemblage--------------------------------

Moles in assemblage Phase SI log IAP log KT Initial Final Delta

Anhydrite -0.22 -4.58 -4.36 1.000e+00 -1.000e+00 Gypsum 0.00 -4.58 -4.58 1.000e+00 1.985e+00 9.849e-01

-----------------------------Solution composition------------------------------

Elements Molality Moles

Ca 1.564e-02 1.508e-02 S 1.564e-02 1.508e-02

----------------------------Description of solution----------------------------

pH = 7.062 Charge balance pe = 10.691 Adjusted to redox equilibrium

Activity of water = 1.000 Ionic strength = 4.178e-02 Mass of water (kg) = 9.645e-01 Total alkalinity (eq/kg) = 1.122e-10 Total carbon (mol/kg) = 0.000e+00

Total CO2 (mol/kg) = 0.000e+00 Temperature (deg C) = 25.000 Electrical balance (eq) = -9.766e-11 Percent error, 100*(Cat-|An|)/(Cat+|An|) = -0.00 Iterations = 23

Total H = 1.070728e+02 Total O = 5.359671e+01

----------------------------Distribution of species----------------------------

Log Log Log Species Molality Activity Molality Activity Gamma

OH- 1.402e-07 1.155e-07 -6.853 -6.937 -0.084 H+ 1.006e-07 8.665e-08 -6.997 -7.062 -0.065 H2O 5.551e+01 9.996e-01 -0.000 -0.000 0.000 Ca 1.564e-02

Ca+2 1.045e-02 5.176e-03 -1.981 -2.286 -0.305 CaSO4 5.191e-03 5.242e-03 -2.285 -2.281 0.004 CaOH+ 1.192e-08 9.910e-09 -7.924 -8.004 -0.080 H(0) 4.363e-39

H2 2.181e-39 2.202e-39 -38.661 -38.657 0.004 O(0) 1.701e-15

O2 8.504e-16 8.587e-16 -15.070 -15.066 0.004 S(-2) 0.000e+00

HS- 0.000e+00 0.000e+00 -117.650 -117.734 -0.084 H2S 0.000e+00 0.000e+00 -117.807 -117.803 0.004 S-2 0.000e+00 0.000e+00 -123.278 -123.590 -0.312 S(6) 1.564e-02

SO4-2 1.045e-02 5.075e-03 -1.981 -2.295 -0.313 CaSO4 5.191e-03 5.242e-03 -2.285 -2.281 0.004 HSO4- 5.141e-08 4.276e-08 -7.289 -7.369 -0.080

------------------------------Saturation indices-------------------------------

Phase SI log IAP log KT

Anhydrite -0.22 -4.58 -4.36 CaSO4

Gypsum 0.00 -4.58 -4.58 CaSO4:2H2O H2(g) -35.51 -35.51 0.00 H2 H2S(g) -116.81 -158.45 -41.64 H2S O2(g) -12.11 71.01 83.12 O2 Sulfur -87.18 -122.94 -35.76 S

例3——混合反应

这个例子证明了PHREEQC进行一系列地球化学模拟的能力,在同一次运行中,最后的模拟依赖于以前模拟的结果。这个例子研究了海水与碳酸盐地下水混合区域中发生的成岩反

-2.0

应。该例子分五次模拟,在表15中标为A到E。(A)在PCO2为10atm时,通过纯水与方解石的溶解平衡定义碳酸盐地下水。(B)用在表10中给定的主要离子数据定义海水。(C)将70%的地下水与30%的海水溶液进行混合。(D)混合物与方解石和白云石达到平衡。最后,(E)假定白云石沉淀可以忽略的情况下,研究混合物仅与方解石达到平衡的化学演化。

例3. —输入的数据组

TITLE Example 3, part A.--Calcite equilibrium at log Pco2 = -2.0 and 25℃. SOLUTION 1 Pure water pH 7.0 temp 25.0 EQUILIBRIUM_PHASES

CO2(g) -2.0 Calcite 0.0 SAVE solution 1 END

TITLE Example 3, part B.--Definition of seawater. SOLUTION 2 Seawater units ppm pH 8.22 pe 8.451 density 1.023 temp 25.0

Ca 412.3 Mg 1291.8 Na 10768.0 K 399.1 Si 4.28 Cl 19353.0

Alkalinity 141.682 as HCO3 S(6) 2712.0 END

TITLE Example 3, part C.--Mix 70% ground water, 30% seawater. MIX 1

1 0.7 2 0.3 SAVE solution 3 END

TITLE Example 3, part D.--Equilibrate mixture with calcite and dolomite. EQUILIBRIUM_PHASES 1 Calcite 0.0

Dolomite 0.0 USE solution 3 END

A部分(表15)的输入包括在SOLUTION输入中纯水的定义,以及在EQUILIBRIUM_PHASES输入中纯相组分的定义。在定义这些相时,仅给定每一种相的饱和指数。如果没有指定,那每一种相的缺省量为10.0mol,对大多数相而言,这基本上是无限的。暗中定义的批反应是一个平衡,即在模拟中第一次定义的溶液与在模拟中第一次定义的纯相的集合所达到的平衡。(批反应的显性定义是用USE关键字来完成的)。SAVE关键字命令这个程序保存最终的批反应中形成的批反应溶液组分为溶液1。这样,当模拟开始时,溶液1是纯水。在模拟的批反应计算完成后,批反应溶液——水与方解石和CO2达到平衡——保存为溶液1。

B部分定义了海水的成分, 保存为溶液2。C部分是地下水(溶液1)与海水(溶液2)在封闭体系中相混合,其中Pco2应计算得到,而不指定。MIX关键字是用来定义混合物中每种溶液所占的比例(大致的混合体积)。SAVE关键字将混合物保存为溶液3。MIX关键字允许以指定的任何比例混合。比例分数(体积)不必是1.0。如果用7.0和3.0来代替0.7和0.3,那么溶液1中每一种元素(包括氢和氧)摩尔数的数目将乘以7.0,在溶液2中每一种元素摩尔数的数目将乘以3.0,元素的总摩尔数是两者的和。在混合物中水的质量将大约为10kg(来自溶液1的为7.0,来自溶液2的为3.0),代替比例分别为0.7和0.3时的1kg。混合物的浓度会与任一混合比例相一致,因为溶液1和溶液2的相对比例是一样的。然而,在后面的反应中,对于7.0和3.0的混合分数,将会消耗比表16中所给定数值大10倍的摩尔转换,这是因为在体系中具有10倍的水。

D部分是与方解石和白云石的平衡。USE关键字指定了达到平衡后的溶液为溶液3,这是来自C部分的混合物。通过使用“EQUILIBRIUM_PHASES 1”来定义相的集合,这个相的集合将代替了前面在A部分所定义的集合1。E部分进行与D部分相似的计算,但使用相集合2,集合2中白云石不作为反应物。

表16. —例3的选择输出结果

[模拟A产生了碳酸盐地下水;B定义了海水;C进行没有其它摩尔转移的混合;D平衡了方解石和白云石的混合物;E仅仅平衡了方解石的混合物。摩尔转移与相集合中的摩尔数有关;正数表明当前相数量的增长,也就是说沉淀;负数表明了当前相数量的降低,即溶解。饱和指数:“--”表明饱和指数的计算是不可行的,这是由于组成元素的一种在溶液中不存在。摩尔转移:“--”表明这种矿物在模拟中不允许进行摩尔转换]

模拟 A B C D pH 7.297 8.220 7.351 7.056 logPCO2 -2.00 -3.38 -2.23 -1.98 饱和指数 方解石 0.00 .76 -.10 .00 白云石 -- 2.41 .52 .00 CO2 -1.976 -- -- -- 摩尔转移 方解石 -1.646 -- -- -15.71 白云石 -- -- -- 7.935 E

7.442 -2.31 .00 .73 -- -.040 -- 在表16中所列出了例3的选择输出结果。由A部分的地下水与方解石达到平衡,且在输入中指定二氧化碳分压的对数为-2.0。在相集合中的CO2摩尔数会降低大约为2.0mmol,这意味着大约有2.0mmol CO2溶解到溶液中。同样地,大约有1.6mmol的方解石被溶解。B部分定义了海水,它的计算值比大气中的二氧化碳要大一些(-3.38 与-3.5 对比),与方解石(饱和指数为0.76)和白云石(2.41)将会达到过饱和。在B部分不允许有矿物的转移。C部分进行混合,并计算了混合物中各种物质的平衡分布,同样不允许有矿物的摩尔转移。二氧化碳分压的对数为-2.23,方解石没有达到饱和,白云石达到了过饱和。该饱和指数表明热动力学状态下白云石化作用应该发生,也即是方解石应该溶解而白云石应当沉淀。D部分计算了应当发生反应的方解石和白云石的量。为了达到平衡,15.71mmol的方解石应当溶解,7.935mmol的白云石应当沉淀。在当前区域环境中,没有观测到白云石化作用,即使白云石是热动力学稳定相。无白云石化作用是由于白云石形成时缓慢的反应动力学。因此,E部分模拟了如果白云石不沉淀时将会发生的反应。如果白云石没有沉淀,对于该混合比率,将仅一小部分的方解石会溶解(0.040mmol)。

例4——蒸发和类似的氧化还原反应

蒸发是通过除去化学系统中的水完成的,水能够以三种方法除去:(1)在REACTION关键字输入中,可指定水为具有负反应系数的不可逆反应物,(2)在MIX关键字输入中,将溶液与给定负混合分数的纯水相混合,或(3)在EQUILIBRIUM PHASES关键字输入中,指定“H2O”为可替代的反应,在这种情况下,从液相中增减水以达到纯相的指定饱和指数。这个例子应用的是第一种方法;REACTION数据块用来模拟大约20倍雨水的浓度,它是通过移除95%的水实现的。产生的结果溶液仅包含有0.05kg的水。在后来的模拟中,用MIX关键字来生成与蒸发后的溶液具有相同浓度的溶液,但所具有的水的质量大约为1kg。

第一种模拟数据输入组(表17)包含四个关键字:(1)TITLE用来描述包含在输出文件中的模拟,(2)SOLUTION是用来定义来自中部Oklahoma地区的雨水的组分,(3)REACTION是用来指定从液相中移除水的量,以摩尔数表示,和(4)SAVE是用来保存批反应计算的结果,存储为溶液2。

表17. —例4的输入数据组

TITLE Example 4a.--Rain water evaporation

SOLUTION 1 Precipitation from Central Oklahoma units mg/L

pH 4.5 # estimated

temp 25.0 Ca .384 Mg .043 Na .141 K .036 Cl .236

C .1 CO2(g) -3.5 S(6) 1.3 N(-3) .208 N(5) .237 REACTION 1

H2O -1.0 52.73 moles SAVE solution 2 END

除非使用了标识符-water,否则,通过SOLUTION输入定义的所有溶液都精确地具有1kg(大约为55.5mol)的水。为了将溶液浓缩20倍,大约需要移除52.8mol的水(55.5 x 0.95)。

应用MIX关键字的第二次模拟是将溶液中包含的所有元素的摩尔数乘以20,包括氢和氧。这个过程有效地增加了液相的总质量(或是体积),但保持了同样的浓度。为了便于识别,来自于MIX模拟的溶液用SAVE关键字保存为溶液3。溶液3与溶液2(前面模拟中产生的)具有相同的浓度,但溶液3中水的质量大约为1kg。

模拟的选择输出结果见表18。在中部的Oklahoma,根据蒸散过程中水的均衡,20倍的浓度因子是合理的(Parkhurst和其他, 1996)。PHREEQC模拟假定蒸发和蒸散具有相同的效果,且蒸散不影响离子比率。这个假定并没有被证明,也可能是不正确的。蒸发作用之后,所模拟溶液的组分相对于方解石、白云石和石膏仍不饱和。正如所想的一样,当水从反应中移除时,1 kg雨水的质量(溶液1)大约降低为溶液2中的0.05 kg。一般而言,反应之后,所保留水的量是大约的,因为可以通过类似的水解反应、表面配位反应以及纯相的溶解和沉淀反应所消耗或生成水。减少的水对氯化物(μ? mol)的摩尔数目没有影响,因为水量的降少,氯化物的浓度(μ? ?mol/kgw)会有所增大。第二种混合模拟增加水的质量和氯化物的摩尔数20倍。因此,氯化物的摩尔数升高了,然而氯化物的浓度在混合模拟之前(溶液2)和之后(溶液3)是相同的,这是因为水的质量按比例增大了。

这些模拟结果解释了有关类似氧化还原反应的一个重点(表18)。批反应计算(和运移计算)总是保持每种氧化还原元素的液相平衡。雨水分析包括铵和硝酸盐的数据,但并不含有溶解氮。雨水的pe对初始溶液中离子的分布是没有影响的,这是因为氧化还原元素各个氧化还原形态是指定的(C, N, 和S)。尽管在热力学平衡中硝酸盐与铵不能共存,物种形成计算允许氧化还原作用不均衡,并接受在输入数据中定义的氮的两种氧

化还原态浓度,而不管热动力学平衡。在批反应(蒸发)步骤中,达到液相的氧化还原平衡,会引起铵的氧化和硝酸盐的还原,而生成溶解氮[在PHREEQC中的符号为N2(aq), 或N(0)]。最初的批反应溶液(溶液2)包含有氮的平衡分布,由硝酸盐和溶解氮组成,但没有铵(表18)。在批反应模拟计算中发生的铵的氧化和硝酸盐的还原,是为将定义雨水组分时固有的氧化还原不均衡调整为氧化还原平衡。在模拟中会产生氮的氧化还原,即使REACTION关键字已指定溶液中没有水分移除。避免氮氧化还原态完全平衡的唯一方法是定义各个氧化还原态作为单独的SOLUTION_MASTER_SPECIES和SOLUTION_SPECIES,例如在SOLUTION_MASTER_SPECIES中通过定义新成分“Amm”,并根据Amm(AmmH3, AmmH4+和其它)定义NH3和其它的N(-3)(AmmH3, AmmH4+ 等)。在这种情况下,将会在含N物质和含Amm物质之间取得平衡,但在N和Amm间不存在均衡。

表18例4的选择结果

[kg,千克,μmol,微摩尔]

组分 水的质量,kg Cl,μmol Cl,μmol/kg水 硝酸盐[N(5)],μmol/kg水 溶解氮[N(0)],μmol/kg水 铵[N(-3)],μmol/kg水 方解石饱和指数 白云石饱和指数 石膏饱和指数

溶液1 雨水 1.000 6.657 6.657 16.9 0 14.8 -9.21 -19.02 -5.35 溶液2 浓缩20倍 0.05002 6.657 133.1 160.1 475.1 0 -9.37 -19.35 -2.91 溶液3 乘以因数20混合 1.000 133.1 133.1 160.1 475.1 0 -9.37 -19.35 -2.91 例5——不可逆反应

在这个例子中,通过用PHREEQC模拟黄铁矿氧化反应证明了其模拟不可逆反应的能力。将氧气(O2)和NaCl以五种不同的量不可逆地加入到纯水中(0.0, 1.0, 5.0, 10.0, 50.0 mmol);在不可逆反应中,O2 和NaCl的相对比例分别为1.0和0.5。黄铁矿、方解石和针铁矿允许溶解以达到平衡,二氧化碳分压力的保持为10(大气分压力)。另外,达到过饱和时,允许生成石膏沉淀。

-3.5

表19. —例5输入数据组

TITLE Example 5.--Add oxygen, equilibrate with pyrite, calcite, and goethite.

SOLUTION 1 PURE WATER pH 7.0 temp 25.0 EQUILIBRIUM_PHASES 1 Pyrite 0.0 Goethite 0.0 Calcite 0.0 CO2(g) -3.5

Gypsum 0.0 0.0 REACTION 1

O2 1.0 NaCl 0.5

0.0 0.001 0.005 0.01 0.05 SELECTED_OUTPUT file ex5.sel totals Cl

si Gypsum

equilibrium_phases pyrite goethite calcite CO2(g) gypsum END

表20. —例5的选择输出结果

[摩尔转移与相集合中的摩尔数有关;正数示当前相数量的增长,也即是,沉淀;负数表示当前相数量降低,也即溶解]

反应物量, 毫摩尔 O2 0.0 1.0 5.0 NaCl pH pe 黄铁矿 -.27 -1.33 -2.67 -13.33 摩尔转移,毫摩 针铁矿 .27 1.33 2.67 13.33 方解石 CO2(g) 石膏 0.0 .0 .0 0.0 9.00 -.93 -2.94 -5.56 .14 2.40 5.11 石膏的饱和指数 -6.13 -2.02 -1.06 -.65 .0 0.0 8.28 -4.94 -0.000032 0.000011 -0.49 -0.49 0.5 8.17 -4.29 2.5 7.98 -3.97 10.0 5.0 7.88 -3.82 50.0 25.0 7.72 -3.57

-26.84 26.49 定义纯水在SOLUTION关键字中输入(表19)。纯相组分在EQUILIBRIUM_PHASES中定义。缺省状态下,在纯相集合中存在10 mol的黄铁矿,针铁矿,方解石和二氧化碳;而石膏在纯相集合中为0.0 mol。石膏达到了过饱和时将会沉淀;由于在当前石膏摩尔数为零,所以不能溶解。REACTION数据块定义了所要模拟的不可逆反应。在这个例子中,氧(“O2”)气和NaCl以1:0.5的相对比例加入。反应量分别为0.0, 0.001, 0.005, 0.01, 和0.05 mol。反应物以化学分子式来定义,正如在这种情况下的(O2)或是在PHASES输入中所定义的相的名字。因此,缺省数据块文件中名字为“O2(g)”或是“Halite”的相可代替“O2”或“NaCl”得到相同的结果。在每一步反应中,加入水中的氧元素的摩尔数等于分子式“O2” (2.0)中的氧的化学计量系数乘以相对系数(1.0),并乘以由反应步骤中(0.0, 0.001, 0.005, 0.01, 或0.05)定义的反应摩尔数。加到每一步中氯化物的摩尔数是在分子式“NaCl” (1.0)中的氯化物计量系数乘以相对系数(0.5)并乘以反应步骤中定义的摩尔数。在每一步平衡计算中,SELECTED_OUTPUT用来打印氯化物的总浓度,石膏的饱和指数,黄铁矿、针铁矿、二氧化碳和石膏的总数量和转移的摩尔数到文件ex5.sel中。

例5中的结果概括在表20中。当没有氧和氯化钠加到体系中时,很少量的方解石和二氧化碳溶解,痕量的黄铁矿和针铁矿发生反应;由于与黄铁矿达到平衡,石膏未饱和达六个数量级(饱和指数为-6.13),故pH为8.28,pe很低(-4.94)。当加入氧和氯化钠,黄铁矿氧化,针铁矿相对不溶,发生沉淀。反应产生了硫磺酸,pH值降低,pe轻微增大,引起了方解石溶解并释放出二氧化碳。在加入10和50 mmol氧之间的某点上,方解石达到了饱和,且开始沉淀。当已经加入了50 mmol的氧和25 mmol的氯化钠时,共有9.00 mmol的石膏沉淀出来。

例6——反应路径模拟

在这个例子中,研究了相的沉淀,它是不同的钾长石(微斜长石)不全等溶解的结果。在这个例子中考虑了有限的相—钾长石、水铝矿、高岭石、云母(白云母)。这种相设置的路径最初是由Helgeson和其他人提出的(1969)。在这个例子中,这个相的热动力学数据(表21,PHASES关键字)是来自于Robie和他人的成果(1978),这个成果与在PHREEQC是用手册中实验问题5的一样(Parkhurst和他人,1980)。

PHREEQC能够用三种方法来解决这个问题:在相图表中,反应路径和相边界的单一交集能够被计算(例子6A),反应路径能够被用来逐一的计算(6B),或是反应路径能够作为动力学过程进行计算(6C)。在第一种方法中,没有必要知道有关反应的数量,但需要大量的模拟来找到适宜的相边界交点。在第二种方法中,仅要一次模拟就足够了,但必须提前知道一定数量的反应。在第三种方法中,用动力学反应速率表达式来计算反应路径,运用步长的大小来调整运算法则,这将通过在必要的时候自动地降低时间间隔处理相边界的国

度。仅仅要求总时间达到钾长石的平衡点。在这个例子中证明了所有这三种方法。PHREEQC暗中包含了完全反应路经程序的逻辑性(例如Helgeson和他人, 1970,Wolery, 1979,Wolery和他人, 1990)。此外,直接计算相边界交集的能力提供了在相图上描述反应路径,逐步增加反应的选项和自动地寻找固定相的集合允许容易和快速计算在相边界之间的反应路径上的点。对每种相转移而言,PHREEQC中的动力学方法和Basic编译程序能够用来保存和打印所耗的时间和液相的组分。

在概念上,这个例子考虑了将钾长石放入烧杯中,并且允许缓慢反应时,将会发生的反应。当钾长石溶解时,其它的相便开始沉淀。在这个例子中,假定了仅有水铝矿、高岭石或钾云母能形成,如果这些相达到饱和,那么这些相将会可逆地沉淀。在反应开始时,沉淀的矿物相随着反应的进行也可能再次溶解。

表21—例6输入数据的设置

TITLE Example 6A.--React to phase boundaries. SOLUTION 1 PURE WATER

pH 7.0 charge temp 25.0 PHASES

Gibbsite

Al(OH)3 + 3 H+ = Al+3 + 3 H2O log_k 8.049

delta_h -22.792 kcal Kaolinite

Al2Si2O5(OH)4 + 6 H+ = H2O + 2 H4SiO4 + 2 Al+3 log_k 5.708

delta_h -35.306 kcal K-mica

KAl3Si3O10(OH)2 + 10 H+ = 3 Al+3 + 3 H4SiO4 + K+ log_k 12.970

delta_h -59.377 kcal K-feldspar

KAlSi3O8 + 4 H2O + 4 H+ = Al+3 + 3 H4SiO4 + K+ log_k 0.875

delta_h -12.467 kcal SELECTED_OUTPUT

-file ex6A-B.sel -activities K+ H+ H4SiO4

-si Gibbsite Kaolinite K-mica K-feldspar -equilibrium Gibbsite Kaolinite K-mica K-feldspar END

TITLE Example 6A1.--Find amount of K-feldspar dissolved to reach gibbsite saturation. USE solution 1

EQUILIBRIUM_PHASES 1

Gibbsite 0.0 KAlSi3O8 10.0 Kaolinite 0.0 0.0 K-mica 0.0 0.0 K-feldspar 0.0 0.0 END

TITLE Example 6A2.--Find amount of K-feldspar dissolved to reach kaolinite saturation. USE solution 1

EQUILIBRIUM_PHASES 1

Gibbsite 0.0 0.0

Kaolinite 0.0 KAlSi3O8 10.0 K-mica 0.0 0.0 K-feldspar 0.0 0.0 END

TITLE Example 6A3.--Find amount of K-feldspar dissolved to reach K-mica saturation. USE solution 1

EQUILIBRIUM_PHASES 1

Gibbsite 0.0 0.0 Kaolinite 0.0 0.0

K-mica 0.0 KAlSi3O8 10.0 K-feldspar 0.0 0.0 END

TITLE Example 6A4.--Find amount of K-feldspar dissolved to reach K-feldspar saturation. USE solution 1

EQUILIBRIUM_PHASES 1

Gibbsite 0.0 0.0 Kaolinite 0.0 0.0 K-mica 0.0 0.0

K-feldspar 0.0 KAlSi3O8 10.0 END

TITLE Example 6A5.--Find point with kaolinite present, but no gibbsite. USE solution 1

EQUILIBRIUM_PHASES 1

Gibbsite 0.0 KAlSi3O8 10.0 Kaolinite 0.0 1.0 END

TITLE Example 6A6.--Find point with K-mica present, but no kaolinite USE solution 1

EQUILIBRIUM_PHASES 1

Kaolinite 0.0 KAlSi3O8 10.0 K-mica 0.0 1.0 END

TITLE Example 6B.--Path between phase boundaries. USE solution 1

EQUILIBRIUM_PHASES 1

Kaolinite 0.0 0.0

Gibbsite 0.0 0.0 K-mica 0.0 0.0 K-feldspar 0.0 0.0 REACTION 1

K-feldspar 1.0

0.04 0.08 0.16 0.32 0.64 1.0 2.0 4.0 8.0 16.0 32.0 64.0 100 200 umol END

TITLE Example 6C.--kinetic calculation SOLUTION 1

units mol/kgw Al 1.e-13 K 1.e-13 Si 3.e-13 EQUILIBRIUM_PHASES 1

Gibbsite 0.0 0.0 Kaolinite 0.0 0.0 K-mica 0.0 0.0 KINETICS 1 K-feldspar

parms 1.36e-11 m0 2.16 m 1.94

step_divide 1e-6

steps 1e2 1e3 1e4 1e5 1e6 1e7 1e8 INCREMENTAL_REACTIONS true RATES

K-feldspar -start

10 REM store the initial amount of K-feldspar 20 IF EXISTS(1) = 0 THEN PUT(M, 1) 30 REM calculate moles of reaction 40 SR_kfld = SR(\

50 moles = PARM(1) * (M/M0)^0.67 * (1 - SR_kfld) * TIME 60 REM The following is for printout of phase transitions 80 REM Start Gibbsite

90 if ABS(SI(\ 100 i = 2

110 GOSUB 1500

150 REM Start Gibbsite -> Kaolinite

160 if ABS(SI(\ 170 i = 3

180 GOSUB 1500

200 REM End Gibbsite -> Kaolinite

210 if ABS(SI(\ 220 i = 4

230 GOSUB 1500

250 REM Start Kaolinite -> K-mica

260 if ABS(SI(\

270 i = 5

280 GOSUB 1500

300 REM End Kaolinite -> K-mica

310 if ABS(SI(\ 320 i = 6

330 GOSUB 1500

350 REM Start K-mica -> K-feldspar

360 if ABS(SI(\ 370 i = 7

380 GOSUB 1500 1000 SAVE moles 1010 END

1500 REM subroutine to store data 1510 if GET(i) >= M THEN RETURN 1520 PUT(M, i)

1530 PUT(TOTAL_TIME, i, 1)

1540 PUT(LA(\ 1550 PUT(LA(\ 1560 RETURN -end

USER_PRINT

10 DATA \Gibbsite \Gibbsite -> Kaolinite \\Gibbsite -> Kaolinite \\Kaolinite -> K-mica \Kaolinite -> K-mica \ 20 PRINT \LA(H4SiO4)\

30 PRINT \ 40 PRINT \ 50 FOR i = 2 TO 7 60 READ s$

70 IF EXISTS(i) THEN PRINT s$, GET(i,1), GET(1) - GET(i), GET(i,2), GET(i,3) 80 NEXT i SELECTED_OUTPUT

file ex6C.sel reset false USER_PUNCH

heading pH+log[K] log[H4SiO4]

10 PUNCH LA(\END

输入数据的设置(表21),首先在SOLUTION输入中定义纯水,在PHASES输入中定

义相的热动力学数据。一些矿物在数据库文件中已经定义(phreeqc.dat),但是在运行过程中,在输入数据设置中包含的相代替以前的定义(数据库文件没有改变)。

SELECTED_OUTPUT是用来产生在表22中列出的所有数据的文件,这些数据被用来会制图6。指定了钾离子、氢离子和硅酸活度系数的对数;水铝矿、高岭石、钾云母、钾长石的饱和指数以及在相集合中的总数量,并且在每一次计算之后,水铝矿、高岭石、钾云母、和钾长石的摩尔转换都将写到文件ex6A-B.sel中。SELECTED_OUTPUT的定义在运行所有模拟中都保持有效,直到读入新的SELECTED_OUTPUT数据块,或是直到在PRINT数据块中,用-selected_output标识符将写到文件暂停。

表22. —例6A的选择输出

[例6A输入数据组中模拟的参考标志。负摩尔转移标明溶解,正摩尔转移标明沉淀。图形上的点标明的是例6中的标志点]

钾长石的

模拟

摩尔转移,微摩尔

6A1 6A2 6A3 6A4 6A5 6A6

活度对数

+

摩尔转移,微摩尔 水铝矿

高岭石

钾云母

水铝矿 0.0 .0 -.7 .0 -.9

饱和指数 高岭石

钾 云 母

钾 长 石

图形上的点 A B D F C E

H

K? H4SiO4 ?H-7.10 -5.20 -4.47 -3.55 -5.20 -4.25

-0.03 -2.18 -20.02 -190.9 -3.02 -32.68

-7.01 -0.57 -8.21 -9.11 -9.39 -8.35 -9.07

2.55 4.41 5.49 2.83 4.41

0.00 0.00 0.00 1.78 .00 .00

.00

.00 .00 .00

.00 9.71 .00 1.24

-3.8 -10.7 -14.7 .0 .0 -.7 .0 .0

-1.9 .0 .0 -1.6 .0

-5.9 -2.5 .0 -5.6 -2.1

.00 63.61 -2.0 .00 10.78

模拟6A1允许钾长石参加反应,直到达到水铝矿矿物的溶解平衡。这在EQUILIBRIUM_PHASES输入中设置的,它是通过指定水铝矿平衡(饱和指数为0.0)和一个选择的反应达到其平衡,KAlSi3O8(钾长石的分子式)。大量的钾长石(10.0mol)可确保能达到水铝矿的平衡。高岭石,钾云母,和钾长石在达到饱和之后,可允许生成沉淀,但不允许其溶解,这是因为在相集合中,所给定它们的初始摩尔数为0。在这个模拟中所计算

的反应的数量是刚好溶解足够的钾长石以达到与水铝矿的平衡,这也可能包含一种或是几种其它的矿物沉淀。没有水铝矿将会溶解或是沉淀;选择的反应物(KAlSi3O8)将会在它们本来的位置溶解或沉淀。模拟6A2-6A4中对高岭石,钾云母、和钾长石进行了相同的计算。在其它的温度下或是应用其它的矿物时,可能的情况是,不管所增加的替代反应的数量有多少,目标相仍不饱和,这是因为相对于其它相而言,该相不稳定。在这种情况下,这种数字化的方法将会找到产生最大饱和指数的选择反应的数量。

图6—25℃下,纯水中钾长石溶解的相图表(微斜长石)表明了稳定相边界的交叉点(例6A)和穿过稳定区域的反应路径(例6B)。图表的建立用到了来自Robie和他人(1978)所做的水铝矿,高岭石,钾云母(白云母),和微斜长石的热动力学数据。

模拟6A1-6A4的选取结果见表22,并且在图6中以点A、B、D和F标出。基于热动力学数据,在图上标出了相的稳定区域,但没有建立这些模拟来进行计算。在点B,水铝矿开始形成高岭石,这个反应消耗Si。这个反应路径必须沿着水铝矿-高岭石相的边界达到一些中间点C,直到水铝矿被转换,然后这个路径穿过高岭石区域到D点。相似的,在高岭石-K-云母相边界会形成点E,在那里反应路径开始穿过K-云母区域到点F。模拟6A5和6A6(表21)解释了这两点。在模拟6A5中,通过允许钾长石溶解,并在某一点上,高岭石达到饱和且出现在相集合中,而水铝矿饱和却不出现在相集合中计算得到点C。同样,模拟6A6解答了钾云母处于饱和态且出现在相集合中,而高岭石达到饱和,但不出现在相集合中的点。在6A5和6A6中,为高岭石和钾云母指定1 mol的初始量是任意的,这个数量仅仅要求必须足够达到矿物平衡。

决定反应路径的一种简单方法是增加钾长石的反应,允许在沿路径的每一点形成水铝矿,高岭石,钾云母,和钾长石之间稳定的相集合。在这种方法中,唯一的难点是知道所加反应的适当的数量。在表22中,从点A到点F钾长石的溶解范围从0.03到190.0 mmol。在6B

部分中(表21),反应增量的对数范围是用来定义路径(固体线),这个路径穿过相图,从水铝矿的平衡(A点)开始到钾长石的平衡(F点)结束。然而,A点到F点的准确位置不是由B部分中应用的任意的反应增量决定的。通过6B部分中计算的反应路径标出在图6中的相图中,从A点到在6A部分F点。

最后,在动力学方法中,钾长石的动力学分解是遵循不同的时间变量而决定的,随着动力学反应的进行,允许水铝矿、高岭石和钾云母沉淀或再次溶解。SOLUTION 1定义为溶解有少量的钾长石(1e-13 moles),那么这种溶液包含有与EQUILIBRIUM_PHASES中的相相关的所有元素,虽然程序的成功运行不要求,但可以排除一些警告信息。

在反应速率的积分期间,基于过渡态理论,假定了一个简单的溶解速率定律。

RK?feldspar?k1这里,k = 1e-16 mol/cm2/s。

AmIAP()(1?()K?feldspar)Vm0K

这个KINETICS数据块是用来输入动力学模拟的指定数据。动力学反应的化学计量是钾长石的化学分子式;缺省状态下,速率的名字是假定在PHASES数据块中所定义的相,且相分子式用作反应的化学计量系数。据假定,在0.1 立方毫米的古土壤中含有10%的钾长石,

3?/??6g/cmb其中,,因此,A/V?136/cm。用-parms标识符在KINETICS数据块

中输入

k1A?1.36e?11V的值(假定1kgw=1升),且能够在RATES数据块中的Basic速率定

义中作为“PARM(1)”调用。假定土壤在一定程度上风化,最初的钾长石仅余下了90%[-m0 2.16 和 -m 1.94,这里m0表示初始质量(1 kg soil x 0.1 = 100 g / 278.3 g/mol = 0.359 mol/kg x 6 kg/L = 2.16 mol/L),m为剩余的质量(2.16的90%为1.94mol/L)]。在任何时间间隔反应的最大数量限制在1e-6mole(-step_divide 1e-6)。时间步长(秒)以-steps标识符来定义。INCREMENTAL_REACTIONS true使得模拟的总时间为所有时间步长的总和(1.111111e8秒);每一次新的时间步长都在前面时间步长的结束后开始。

钾长石分解速率在RATES数据块中以Basic声明的形式定义。为了证明Basic编译的一些

特点,Basic程序同样在相转换时确定和保存一些信息,这在运行结束时通过USER_PRINT来打印。确定相转换的准确性是通过用户可定义的积分的准确性决定的。小的公差(-tol),大于1的大的-step_divide(初始时间间隔将会通过这个数字来剖分),以及小于1的

-step_divide(反应所指定的最大数量)将会产生小一些的时间间隔阂更准确的相转换证明。在这个例子中,-step_divide设置为1e-6,这将会限制任何的时间段反应的最大数量小于1 micromole。这样,达到相转换的反应的数量应当为的精度1micromole。然而,在积分反应期间,限制反应数量需要更小的时间间隔,因此,需要更多的时间间隔用来完成积分反应,这将会增加CPU的运行时间。

Basic程序不同部分函数的描述见表23。函数PUT, GET,和EXISTS用作操纵静态,和动态存贮的数据。应用在PUT声明中的下标指明唯一的数据。EXISTS能够用来决定是否具有给定下标的数据已被存贮,GET是用来检索已被存贮的数据。一旦一种数据已经用PUT保存,

要是CO2,以及一定量的CH4和少量N2。随着气相成分的变化,CO2 和CH4的偏压力变得几乎相等。N2的偏压力总是比CO2 和CH4小一个数量级;NH3的偏压力总是很小(图中没有表示)。反应达到1 mol之前,定体积气相的偏压力小于定压力气相的偏压力。如果继续反应超过1.0 mol,定体积气相的偏压力将继续增加,并将大于定压力气相的偏压力,并保持不变。相反, l反应达到1.0 mo之前,定压力气相的体积小于定体积气相的体积。如果反应持续,超过1.0 mol时,定压力气相的体积将大于定体积气相的体积。

?例8——表面络合作用

PHREEQC 包括三个表面络合模型:(1)根据默认值,使用没有明确计算扩散层组分的双层模型。 (2) 也可选择有明确计算扩散层组分的静电双层模型(-diffuse_layer)。 (3) 最后,可能选择使用非静电模型 (-no_edl)。根据下面的修改,在Dzombak and Morel (1990) 将静电模型归纳为双层模型: (1) 表面层可能有超过两种的键联位置,(2)不包括表面析出,(3)根据Borkovec 和 Westall (1983),可选择使用电荷势联系公式,它明确计算了扩散层组分(-diffuse_layer)。 非静电模型不考虑表面络合形成中产生的表面电荷的影响,其表面络合的数学处理结果很象没有活度系数项的水溶液络合。下列归纳除来的没有明确计算扩散层组分的例子来自于Dzombak 和Morel (1990, 第8章)。

在氧化物表面,假定有强和弱两种类型的位置进行水合氧化铁吸附锌的模拟。质子和锌离子两种键型竞争,可用质量作用描述。表面物质的活度大小取决于由表面电荷的变化引起的表面电势。

该例中,描述了在0.1m硝酸钠电解液中锌浓度较低(10-7 m)和较高(10-4 m)时,以PH值为函数的水合氧化铁吸附锌的变化。要求三个关建字数据块确定模拟的表面络合数据:SURFACE_MASTER_SPECIES,SURFACE_SPECIES,和SURFACE。在默认数据块文件中SURFACE_MASTER_SPECIES数据块用两个键位定义了以名为“Hfo”(水合氧化铁)的化学键。在数据库文件中,化学键的名字由表面物质的名字“Hfo”组成,之后可加上一个下划线合一个小写的化学键名表示,“Hfo_w”和“Hfo_s”分别表示强和弱。只有单个表面物质存在两个或多个化学键时,必须用。下划线符号中,一个化学键位用一个摩尔平衡方程表示,(该例中为Hfo_w 和 Hfo_s),表面用单个电荷—电势方程和电荷平衡方程表示(该例中为Hfo)。这样,每个变面层物质中,每个化学键上的电荷将需要单个电荷—电势方程或电荷平衡方程表示。

表27—例8输入数据的设置

TITLE Example 8.--Sorption of zinc on hydrous iron oxides. SURFACE_SPECIES

Hfo_sOH + H+ = Hfo_sOH2+ log_k 7.18 Hfo_sOH = Hfo_sO- + H+ log_k -8.82 Hfo_sOH + Zn+2 = Hfo_sOZn+ + H+ log_k 0.66 Hfo_wOH + H+ = Hfo_wOH2+ log_k 7.18 Hfo_wOH = Hfo_wO- + H+ log_k -8.82 Hfo_wOH + Zn+2 = Hfo_wOZn+ + H+ log_k -2.32 SURFACE 1 Hfo_sOH 5e-6 600. 0.09 Hfo_wOH 2e-4 SOLUTION 1 units mmol/kgw pH 8.0 Zn 0.0001 Na 100. charge N(5) 100. SOLUTION 2 units mmol/kgw pH 8.0 Zn 0.1 Na 100. charge N(5) 100. USE solution none #

# Model dedinitions # PHASES Fix_H+ H+ = H+ log_k 0.0 END #

# Zn = 1e-7 #

SELECTED_OUTPUT file ex8.sel molalities Zn+2 Hfo_wOZn+ USE solution 1 USE surface 1

Hfo_sOZn+ EQUILIBRIUM_PHASES 1 Fix_H+ -5.0 NaOH 10.0 END

USE solution 1 USE surface 1 EQUILIBRIUM_PHASES 1 Fix_H+ -5.25 NaOH 10.0 END

USE solution 1 USE surface 1 EQUILIBRIUM_PHASES 1 Fix_H+ -5.5 NaOH END

USE solution 1 USE surface 1 EQUILIBRIUM_PHASES 1 Fix_H+ -5.75 NaOH END

USE solution 1 USE surface 1 EQUILIBRIUM_PHASES 1 Fix_H+ -6.0 NaOH END

USE solution 1 USE surface 1 EQUILIBRIUM_PHASES 1 Fix_H+ -6.25 NaOH END

USE solution 1 USE surface 1 EQUILIBRIUM_PHASES 1 Fix_H+ -6.5 NaOH END

USE solution 1 USE surface 1 EQUILIBRIUM_PHASES 1 Fix_H+ -6.75 NaOH END

USE solution 1 USE surface 1 EQUILIBRIUM_PHASES 1 Fix_H+ -7.0 NaOH END

USE solution 1

10.0 10.0 10.0 10.0 10.0 10.0 10.0 USE surface 1 EQUILIBRIUM_PHASES 1 Fix_H+ -7.25 NaOH 10.0 END

USE solution 1 USE surface 1 EQUILIBRIUM_PHASES 1 Fix_H+ -7.5 NaOH 10.0 END

USE solution 1 USE surface 1 EQUILIBRIUM_PHASES 1 Fix_H+ -7.75 NaOH END

USE solution 1 USE surface 1 EQUILIBRIUM_PHASES 1 Fix_H+ -8.0 NaOH END #

# Zn = 1e-4 # USE solution 2 USE surface 1 EQUILIBRIUM_PHASES 1 Fix_H+ -5.0 NaOH END

USE solution 2 USE surface 1 EQUILIBRIUM_PHASES 1 Fix_H+ -5.25 NaOH END

USE solution 2 USE surface 1 EQUILIBRIUM_PHASES 1 Fix_H+ -5.5 NaOH END

USE solution 2 USE surface 1 EQUILIBRIUM_PHASES 1 Fix_H+ -5.75 NaOH END

USE solution 2 USE surface 1

10.0 10.0 10.0 10.0 10.0 10.0 EQUILIBRIUM_PHASES 1 Fix_H+ -6.0 NaOH 10.0 END

USE solution 2 USE surface 1 EQUILIBRIUM_PHASES 1 Fix_H+ -6.25 NaOH 10.0 END

USE solution 2 USE surface 1 EQUILIBRIUM_PHASES 2 Fix_H+ -6.5 NaOH 10.0 END

USE solution 2 USE surface 1 EQUILIBRIUM_PHASES 1 Fix_H+ -6.75 NaOH 10.0 END

USE solution 2 USE surface 1 EQUILIBRIUM_PHASES 1 Fix_H+ -7.0 NaOH 10.0 END

USE solution 2 USE surface 1 EQUILIBRIUM_PHASES 1 Fix_H+ -7.25 NaOH 10.0 END

USE solution 2 USE surface 1 EQUILIBRIUM_PHASES 1 Fix_H+ -7.5 NaOH 10.0 END

USE solution 2 USE surface 1 EQUILIBRIUM_PHASES 1 Fix_H+ -7.75 NaOH 10.0 END

USE solution 2 USE surface 1 EQUILIBRIUM_PHASES 1 Fix_H+ -8.0 NaOH 10.0 END

PHREEQC中,Dzombak 和 Morel (1990)总结的表面络合反应在默认数据库文件中由

SURFACE_SPECIES 数据块确定。但是,在 Dzombak and Morel (1990, 第8章) 例中,使用的固有稳定常数与它们的和不同,因此,在输入文件中由SURFACE_SPECIES数据块(表27)专门确定。Dzombak 和 Morel (1990, p. 259)中的质量作用方程在输入数据组中(表27)给出。其中活度系数或不包括在质量作用方程中;程序本身包括电势项在内。

表面层集合的组分和其它他特征由SURFACE数据块确定。具有多个结合位置的多表面层组分可能也在这个数据块内确定。对于每个表面,位置每种类型的摩尔数、表面层的初始成分和表面积必须确定。表面层的组分随着反应程度的变化而变化。结合位置和表面积的数量可能保持不变,如果表面层与一个均衡相或热动力反应有关,则可能变化。在这个例子中,确定了一个表面层(Hfo) 和两个结合位置(Hfo_w and Hfo_s) ,并且结合位置和了表面积的数量是固定不变的。强键Hfo_s 5*10-6 ,弱键Hfo_w的摩尔数是2*10-4。最初,所有的表面位置是不带电的,以质子形式存在。整个表面 Hfo的表面积必须用两个数确定,即表面物质的质量比表面the area per mass (该例中为600 m2/g)和表面物质的总质量 (该例中为0.09 g)。习惯上用这两个数来确定表面积,但是,在这个模型中用这两个数的积来定义表面积;不分别使用单个数。 一个表面的任何键位的表面积可能由这个数来输入;在该例中,表面积用Hfo_s来输入。

Figure 8—总锌浓度为10-7和10-4克分子浓度水合氧化铁的强合弱表面位置作为PH值的函数时,氧化锌在液相中的分布。

为了确定模拟的初始条件,用不同浓度的氧化锌来确定两个硝酸钠溶液(SOLUTION 1 和2 数据块)。用PHASES数据块来确定假相 “Fix_H+”。这个相不是真实的,但在每个批反应计算中都使用,以调整PH值到固定值。最后,“USE surface none” 行在最初的模拟中自行消除了定义的用批反应计算。默认情况下。如果在模拟中定义了一个 SOLUTION 和SURFACE 数据块,那么在模拟中定义的第一个溶液 (在该例中为SOLUTION 1)和在模拟中定义的第一个表面结合起来(可能和其它集合以及一个气相)允许平衡。对于批反应计算,具有“solution none”的USE关建字从系统中排除溶液。而且不执行批反应计算。(无论何时在模拟中定义了一种溶液或混合物,即暗含确定了一个批反应,并且在同一个模拟中确定了任意一个关建字数据块EXCHANGE, QUILIBRIUM_PHASES,GAS_PHASE, KINETICS, REACTION, REACTION_TEMPERATURE, SOLID_SOLUTIONS, 或SURFACE)。

对于PH值为5到8时,输入数据集中与剩余的溶液具有溶液1或2的表面集合平衡。在单一的模拟中,可能用REACTION 数据块增加不同量的NaOH 到一种溶液中,但是反应增量不能产生均匀间隔的PH值,并且增量的大小预先不知。在这个例子中,采取不同的方法产生在要求的NaOH 量时均匀间隔的PH值,但是需要许多模拟来达到预期的PH值。在具有变化饱和指数的EQUILIBRIUM_PHASES数据块中,每额模拟用相“Fix_H+” 调节PH值。在每个模拟中增加或排除反应NaOH 以达到指定的饱和指数,根据反应的定义,“Fix_H+” 数值上等于氢活度的对数或负的PH值。注意,尽管在所有的这些模拟中,可以达到预期的PH值,但太小的PH值将使得程序出错,因为即使除去溶液中所有的钠,也不能达到如此低的PH值。

模拟的结果表示在图8中,并与Dzombak 和 Morel (1990, 图8.9)中结果一致。PH值较高时比较低时对锌的吸附更强烈。另外,锌浓度较低时,在整个PH值范围内,强健对锌的吸附均可大于弱键,且PH值较高时,大部分留在强键处。锌的浓度较大,且仅在PH值较低时,强健站主导地位。因为在PH值较高时,所有的强健都被填充,PH值较高,且锌的浓度较大时,大部分锌被吸更多的弱键位。

例9—— 溶解铁离子与氧的动力学氧化还原反应

动力学速率表达式的定义完全可以以一种一般的方式来定在,在PHREEQC中是在RATES数据块中应用Basic声明。速率表达式可以在KINETICS数据块中应用在多组反应或是运移反应中。对运移反应而言(ADVECTION或TRANSPORT),在关键字

KINETICS(KINETICS m-n)之后,动力学反应能够以数字范围的形式区域来定义。速率表达式是内含第四次序和第五次序的Runge-Kutta-Fehlberg算法的综合。在动力学计算被初始化之前和当动力学反应增量被增加时,平衡才被计算。平衡的计算包括溶液中离子的种类、各种交换物质、平衡相、固体溶液、溶液物质表面的集合,和以及已经定义的气相。应执行检查以确保在第四次序和第五次序经过一段时间间隔的速率评估差异不变化这是为不超过用户所定义的误差。如果这个误差并不满以,那么对时间的积分会自动地以更小的时间间隔来开始。

在固体相和水相之间的动力学反应能够不修改任何的数据库文件进行计算。PHREEQC也能够计算正常情况下认为是在平衡相下的水中离子的动力学反应,但这需要数据库来重新定义。动力学反应的水中的离子用SOLUTION_MASTER_SPECIES来作为独立的元素进行定义是必要的。这个例子证明了一种元素(铁)的两种化合价的状态,以及表明如何在水中用PHREEQC来计算Fe2+到Fe3+的动力学氧化还原反应。

由(Singer and Stumm, 1970)给定的在水中的Fe2+被氧化的氧化还原反应的速率是:

dmFe2?dt??(2.91e?9?1.33e12a2OH?PO2)mFe2?

这里t是时间,以秒表示,aOH-是氢氧离子的活度,是溶液中的mFe2+总摩尔数,是氧气的分压力(atm)。

铁离子完全氧化还原反应时间是当pH值高于7.0时在溶液中通入二氧化碳的时间问题。然而,Fe3+形式溶解OH-的配合物,它同样也作为铁离子的氢氧化合物来沉淀,因此,在氧化还原反应期间,pH会降低。因为氧化还原速率对OH-的活度具有二次独立性,那么,这个速率随着pH的降低而迅速的变小。这个速率等式在非缓冲溶液中是高度非线性的,且一定是需要以数字来综合。这个例子模拟了反应容器中具有10mmolNaCl/kgw和

0.1mmolFeCl2/kgw的溶液,其中pH=7.0,通过其中的空气是缓缓流入的;在溶液组分随时间的变化是计算得来的。

这个计算需要分开Fe(2) 和Fe(3)离子之间平衡。有两种新的“元素”定义在

SOLUTION_MASTER_SPECIES中—“Fe_di”,这与Fe(2)相关;和“Fe_tri”,这与Fe(3)相关。这些元素的主要离子是被定义为Fe_di+2和Fe_tri+3,以及所有溶液中的离子、相、交换的离子和溶液表面的离子一定要使用这些新的元素的主要的离子来重新打印。一些转换是

列在表28中,这给出了这个例子的部分输入文件。

表28—— 例9部分输入数据的设置

TITLE Example 9.--Kinetically controlled oxidation of ferrous iron. Decoupled valence states of iron. SOLUTION_MASTER_SPECIES

Fe_di Fe_di+2 0.0 Fe_di 55.847 Fe_tri Fe_tri+3 0.0 Fe_tri 55.847 SOLUTION_SPECIES Fe_di+2 = Fe_di+2 log_k 0.0 Fe_tri+3 = Fe_tri+3 log_k 0.0 #

# Fe+2 species #

Fe_di+2 + H2O = Fe_diOH+ + H+ log_k -9.5

delta_h 13.20 kcal #

#... and also other Fe+2 species #

Fe_di+2 + Cl- = Fe_diCl+ log_k 0.14

Fe_di+2 + CO3-2 = Fe_diCO3 log_k 4.38

Fe_di+2 + HCO3- = Fe_diHCO3+ log_k 2.0

Fe_di+2 + SO4-2 = Fe_diSO4 log_k 2.25

delta_h 3.230 kcal Fe_di+2 + HSO4- = Fe_diHSO4+ log_k 1.08

Fe_di+2 + 2HS- = Fe_di(HS)2 log_k 8.95

Fe_di+2 + 3HS- = Fe_di(HS)3- log_k 10.987

Fe_di+2 + HPO4-2 = Fe_diHPO4 log_k 3.6

Fe_di+2 + H2PO4- = Fe_diH2PO4+ log_k 2.7 Fe_di+2 + F- = Fe_diF+ log_k 1.0 #

# Fe+3 species #

Fe_tri+3 + H2O = Fe_triOH+2 + H+ log_k -2.19

delta_h 10.4 kcal #

#... and also other Fe+3 species #

Fe_tri+3 + 2 H2O = Fe_tri(OH)2+ + 2 H+ log_k -5.67

delta_h 17.1 kcal

Fe_tri+3 + 3 H2O = Fe_tri(OH)3 + 3 H+ log_k -12.56

delta_h 24.8 kcal

Fe_tri+3 + 4 H2O = Fe_tri(OH)4- + 4 H+ log_k -21.6

delta_h 31.9 kcal

2 Fe_tri+3 + 2 H2O = Fe_tri2(OH)2+4 + 2 H+ log_k -2.95

delta_h 13.5 kcal

3 Fe_tri+3 + 4 H2O = Fe_tri3(OH)4+5 + 4 H+ log_k -6.3

delta_h 14.3 kcal Fe_tri+3 + Cl- = Fe_triCl+2 log_k 1.48

delta_h 5.6 kcal Fe_tri+3 + 2 Cl- = Fe_triCl2+ log_k 2.13 Fe_tri+3 + 3 Cl- = Fe_triCl3 log_k 1.13

Fe_tri+3 + SO4-2 = Fe_triSO4+ log_k 4.04

delta_h 3.91 kcal Fe_tri+3 + HSO4- = Fe_triHSO4+2 log_k 2.48

Fe_tri+3 + 2 SO4-2 = Fe_tri(SO4)2- log_k 5.38

delta_h 4.60 kcal Fe_tri+3 + HPO4-2 = Fe_triHPO4+ log_k 5.43

delta_h 5.76 kcal

Fe_tri+3 + H2PO4- = Fe_triH2PO4+2 log_k 5.43 Fe_tri+3 + F- = Fe_triF+2

log_k 6.2

delta_h 2.7 kcal Fe_tri+3 + 2 F- = Fe_triF2+ log_k 10.8

delta_h 4.8 kcal Fe_tri+3 + 3 F- = Fe_triF3 log_k 14.0

delta_h 5.4 kcal PHASES Goethite

Fe_triOOH + 3 H+ = Fe_tri+3 + 2 H2O log_k -1.0 END

SOLUTION 1 pH 7.0

pe 10.0 O2(g) -0.67 Fe_di 0.1 Na 10.

Cl 10. charge EQUILIBRIUM_PHASES 1

O2(g) -0.67 RATES Fe_di_ox -start

10 Fe_di = TOT(\

20 if (Fe_di <= 0) then goto 200 30 p_o2 = 10^(SI(\

40 moles = (2.91e-9 + 1.33e12 * (ACT(\200 SAVE moles -end

KINETICS 1 Fe_di_ox

-formula Fe_di -1.0 Fe_tri 1.0

-steps 100 400 3100 10800 21600 5.04e4 8.64e4 1.728e5 1.728e5 1.728e5 1.728e5 INCREMENTAL_REACTIONS true SELECTED_OUTPUT -file ex9.sel -reset false USER_PUNCH

-headings Days Fe(2) Fe(3) pH si_goethite

10 PUNCH SIM_TIME/3600/24 TOT(\TOT(\-LA(\SI(\END

这个SOLUTION数据块定义了具有0.1mmol/kgw铁离子(Fe-di)的氯化钠溶液,以及它与大气中的氧达到平衡。这个EQUILIBRIUM_PHASES相数据块指定了所有的多组反应也将与大气中的氧达到平衡;这样,对于铁离子的氧化而言保持了充足的氧供应。

在RATES数据块中,速率表达式指定的名字为“Fe_di_ox”,及根据等式159来定义。注意应用特定的Basic函数“TOT”来取得铁离子(line 10)的总浓度(molality),“SI”是得到其饱和指数,或,在气体情况下,气体分压力的对数(氧,line 30),和“ACT”是取得OH-(line 40)的活度。Line 40定义了反应的摩尔数。注意,变量moles的计算是通过速率乘以当前的时间间隔(TIME),及速率的定义是以SAVE声明来结束的,SAVE和TIME声明一定要包含于速率的定义中;它们指定了经过时间间隔(sub-)的反应摩尔数。

在KINETICS数据块中,名为的速率表达式被调用和其参数被定义。在KINETICS数据

块中,速率的名字等于定义在PHASES下的矿物的名字,矿物的计量将会应用在反应中。然而,没有矿物与这个例子中速率的名字相关,及标识符- formula一定用来指定反应计量,这个反应涉及到溶液中的Fe_di[等于Fe(2)]的损失,这正如计量系数为-1.0所表明的一样。在溶液中损失平衡的取得是通过计量系数为1.0的Fe_tri[等于Fe(3)]。注意方程式所包含的元素即为体系中质量的变化。这样,这个例子整个的动力学反应是Fe2+ H++ 0.25O2 = Fe3+ + 0.5H2O,但是形成水的反应的质子和氧并不改变体系中总的氢和氧的质量。氢和氧因此并不包含于其分子式中。在这个例子中,氧是通过与大气中的O2(g)相平衡来补充的,转移1摩尔的氧发生于来自于EQUILIBRIUM_PHASES中O2(g)相到溶液中。在接近于氧的体系中,溶解氧将会部分地被消耗。

KINETICS数据块-steps标识符给予的是动力学反应必须被积分的时间步。当INCREMENTAL_REACTIONS true被用到时,每一次时间步将会增加到所模拟的总的时间上及来自于前面时间步的结果将会作为当前时间步的起点来使用。

数据块指定了所选取的输出文件的名字并且消除了所有打印到文件中的缺省的打印值

(- reset为假)。在这个例子中所选取输出文件的唯一输出结果是定义在USER_PUNCH数据块中。在所用到的Basic程序指定了在每一次动力学反应之后的接着的打印结果(-steps定义了11动力学时间步):模拟的时间累积是以天表示;总铁和铁离子以? mol/kgw表示;及pH;和针铁矿的饱和指数。

当运行输入文件时,在积分期间将会产生两个警告信息,如果积分时间间隔太大,动力学反应增量将会产生负的溶液浓度的初始估计是可能的。当发生这种情况时,这个程序会打印出警告信息,降低其时间步的大小,和重新开始积分。这些信息是警告信息,不是错误,这个程序能够顺利地完成模拟。通过减低初始时间间隔来减少这些警告信息是可能的。如果标识符-step_divide应用为100(KINETICS),这表示为把初始(整个)时间步为100平均,将不会打印警告信息。否则,如果标识符-step_divide应用为1e-7,那将不打印其警告信息,这将引起反应增量小于1e-7mol。前一种方法,-step_divide 100通常是更可取的,因为,尽管初始反应增量编译起来是很小的,后面在其积分中大的反应增量是可能的。应用

-step_divide 1e-7会致使反应增量在整个积分期间留在更小的范围上,运行时间大约比使用-step_divide长5倍,如果根本没有使用时,运行时间大约为其10倍。

图9表明了总Fe(2),总Fe(3)的浓度,及在反应容器中经过去10天模拟反应的pH。在

反应开始时,能够看到pH值迅速的降低。Fe(2)随时间性的下滑是非常快的,但随着反应的进行,将逐渐的松懈,这与等式159相一致。当在实际情况下的非缓冲溶液中操作实验时,需注意的是pH最初是升高的。pH的这种提升将与 缓慢形成的Fe(3)络合物相一致的。因为氧化还原反应的自身消耗质子,如果氢氧根络合物降低了pH缓慢形成,那pH最初是升高的。这样水中络合物的动力学信息最初也包含于PHREEQC的模拟中,但它需要Fe(3)的氢氧根络合物也使用独立的SOLUTION_MASTER_SPECIES来定义,及其定义的络合物动力学信息的速率表达式。

图9—总Fe(2),总Fe(3)的浓度,和pH随亚铁离子[Fe(2)]氧化成三价铁离子[Fe(3)]的变化。

例10——文石和菱锶矿的固体溶液

PHREEQC有能力模拟理想的、多组分的或是非理想的二元固体溶液。对理想固体溶液而言,每个最后一种固体成分的活度等于它的摩尔分数。对非理想的固体溶液而言,每个最后一种固体成分的活度是摩尔分数和活度系数的乘积,这是由摩尔分数和Guggenheim过量自由能参数所决定的。下面的例子考虑了文石(CaCO3)-菱锶矿(SrCO3)的固体溶液,并证明了将碳酸锶加入到初始的纯相碳酸钙系统中后固体溶液和水相的组分发生的变化。

这个例子来自于Glynn和Parkhurst (1992)所提出的曲线图。平衡常数为在25℃时,

KSrCO3?10?9.271和KCaCO3?10?8.336, 和Guggenheim参数, ?0?3.43与?1??1.82

(Plummer和Busenberg,1987)。输入数据见表29。PHASES数据块定义了文石和菱锶矿的log K's,并且覆盖了任何可能出现在数据库文件中的这些矿物的数据。

SOLID_SOLUTIONS数据块定义了无单位的Guggenheim过量自由能参数,及初始固体溶液组分,其中文石和菱锶矿都为0摩尔。初始溶液1定义了碳酸氢钙溶液。然后,这个溶液在二氧化碳分压大约为1大气压下与文石达到平衡,并作为新的溶液1存贮。

图10. —(A)固体溶液中菱锶矿和文石的摩尔分数,(B)液相中钙和锶的摩尔分数, (C)固体溶液中菱锶矿和文石的摩尔数,和(D)固体溶液中可混合区间内的摩尔数,

是碳酸锶增量的函数。虚线表示在可混合区间中的组分。

在下一次模拟中,溶液1将与固体溶液相混合(USE关键字),分500步加入5millimoles的碳酸锶(REACTION数据块)。PRINT关键字数据块排除了所有缺省的打印到输出文件中,仅打印在USER_PRINT数据块所定义的打印项。USER_PRINT数据块指定了在每次反应后将要打印到输出文件中的固体溶液的信息:模拟的序号,反应步骤编号,所加入碳酸锶的量,log????,菱锶矿和文石的摩尔分数,液相中钙和锶的摩尔分数,和存在于混和性

区间内的两种固体溶液的组分。这个SELECTED_OUTPUT数据块定义了输出文件为ex10.sel,取消了任何打印到所选取的输出文件中的缺省项(-reset为假),并要求每一步中所增加的反应的数量(定义在REACTION数据块中)写到所选取的输出文件中(-reaction为真)。USER_PUNCH数据块打印到选择输出文件中的附加信息栏包括:绘制图10所需要的所有的信息。两次额外的模拟需要连续地把大量的碳酸锶加到系统中,总的增加量为10摩尔。

表29 例10输入数据的设置

TITLE Example 10.--Solid solution of strontianite and aragonite. PHASES

Strontianite

SrCO3 = CO3-2 + Sr+2 log_k -9.271 Aragonite

CaCO3 = CO3-2 + Ca+2 log_k -8.336 END

SOLID_SOLUTIONS 1

本文来源:https://www.bwwdw.com/article/8j2w.html

Top