Vous êtes sur la page 1sur 73

Visual MINTEQ 3.

1 user guide

Jon Petter Gustafsson

This user guide is not complete and at this stage it contains information on the most basic
aspects of the program, such as input/output file handling, pH options etc., as well as on
adsorption. I will extend it in the future with details on organic complexation models and
on the Biotic Ligand Model. / JPG 20/8 2014.

1
Contents

1. What is Visual MINTEQ? 3


1.1. History of the MINTEQ codes 3
1.2. MINTEQA2 and Visual MINTEQ – similarities and differences 4
1.3. Some technical specifications 4
1.4. Download and install 5
1.5. Common problems 6
1.6. Acknowledgements 7
2. Introduction to Visual MINTEQ 8
2.1. First look at Visual MINTEQ 8
2.2. Visual MINTEQ terminology 9
2.3. Input/output file handling 10
2.4. Options for setting the pH value 10
2.5. Creating a problem 12
2.6 Multi-problem / Sweep options 17
2.7 Reading data from Excel 23
2.8 Interpreting the output 25
3. Common menu options 31
3.1 Alkalinity 31
3.2 Oxidation and reduction reactions 35
3.3. Gases______________________ 38
3.4 Solid phases and excluded species 39
4. Adsorption 46
4.1 Introduction to adsorption reactions 46
4.2 Surface complexation models – mathematical basis 46
4.3 Using surface complexation models in Visual MINTEQ 54
4.4 Ion exchange reactions 60
4.5 Optimization of surface complexation constants by use of PEST 65
References 72

2
1. What is Visual MINTEQ?

1.1 History of the MINTEQ codes

Visual MINTEQ was first released in 2000 as a Windows user interface to the U.S. EPA model
MINTEQA2. The original version of this model (called MINTEQ) was developed in the early
1980's at Battelle Pacific Northwest Laboratory (Felmy et al., 1984) as a cooperative effort
funded by the U.S. Department of Energy and the U.S. EPA. The original MINTEQ developed by
Felmy et al. (1984) was produced by combining the mathematical structure of MINEQL (Westall
et al., 1976) with the thermodynamic database of the WATEQ3 model developed by the U.S.
Geological Survey (Ball et al., 1981).

The MINTEQ model was then renamed to MINTEQA1 by the U.S. EPA Environmental
Research Laboratory at Athens, Georgia (AERL) in 1985. The model was anticipated to diverge
from the original as it was adapted to the special needs of the U.S. EPA, but in reality there were
very few differences between MINTEQA1 and the original MINTEQ. The distribution package,
available for DOS-based PC’s or for Digital Equipment Corporation VAX machines, included a
preprocessor program PRODEFA1 for the preparation of MINTEQA1 input files.

After more significant revisions were made in the late 1980's, the name was changed to
MINTEQA2. With further development, version numbers were used to indicate new versions,
and the model’s formal name was left as MINTEQA2. The current version, released in 2005, is
version 4.03.

Work with Visual MINTEQ began in 1998 with the code “MINTEQA2 For Windows 95”,
which was only a Windows interface to MINTEQA2 ver. 3.11. This code was never published. It
was used for undergraduate teaching at the Swedish University of Agricultural Sciences (SLU).
In the first Visual MINTEQ version (1.0), released in 2000 on the web, the code had been entirely
rewritten in Visual Basic version 6.0. Still, however, Visual MINTEQ was essentially just a
Windows interface to MINTEQA2 ver. 4.0.

After the release of Visual MINTEQ ver. 2 in 2001, the model gradually diverged from
MINTEQA2, for example by expanding and revising the thermodynamic database as well as
including new options for modeling surface complexation and organic complexation. With
version 3.0, the code has been completely transferred to the .NET environment relying on .NET
Framework. Still, however, the numerical engine of the program still relies on the subroutines of
MINEQL (Westall et al.,. 1976) with only small changes to accommodate the new options added
later. As for its graphical structure, Visual MINTEQ has remained essentially the same since the
1998 version of “MINTEQA2 For Windows 95”.

3
1.2 MINTEQA2 and Visual MINTEQ – Similarities and differences

Because Visual MINTEQ and MINTEQA2 have the same origins and largely the same
procedures for calculations, there are many similarities between the two codes. For example, the
same terminology is used in both codes (e.g., components, infinite and finite solids, etc.). Still,
users of Visual MINTEQ may still find it useful to consult the manual for MINTEQA2 ver. 4.0,
especially for background descriptions.

However, since Visual MINTEQ started to diverge from MINTEQA2 in 2000, there are now a
number of differences between the codes. In most cases this is because a number of new options
and features have been added. Here are some examples of enhancements in Visual MINTEQ:

1. Visual MINTEQ can account for the effects of mixing and dilution when a titrant of a
given composition is added to a solution.
2. There are six different surface complexation models to choose from; Visual MINTEQ
includes the Basic Stern, the Three Plane and the Non-Electrostatic models.
3. It is now possible to use different surface complexation models on different surfaces.
4. The charge of the reference surface component is now allowed to be different from zero.
For one-pK models, the charge is typically –0.5 by default – this value can be changed by
the user.
5. The surface can have a cylindrical or a spherical geometry.
6. Fixed-charge sites can be defined for ion-exchange calculations to permanently charged
surfaces
7. Complexation to natural organic matter can be simulated with state-of-the-art models
(SHM, NICA-Donnan)
8. In surface complexation models, each surface can have a maximum of six coordination
sites and include one fixed-charge site for ion-exchange reactions.
9. Visual MINTEQ can consider counter-ion accumulation in the diffuse layer of charged
surfaces
10. Interfacing with Microsoft Excel to facilitate the handling of input and output data.
11. The thermodynamic databases are different, as Visual MINTEQ contains updated and
expanded data from the NIST Critical Stability Constants database. However, the
database of MINTEQA2 ver. 4.0 can be downloaded and used as well.

1.3 Some technical specifications

Visual MINTEQ has been coded in Microsoft Visual Basic *.NET 2005. Microsoft *.NET
Framework 1.1 or higher is required for Visual MINTEQ to run. The program will run on most
Windows platforms (except ME). Other operating systems are not supported, but Visual

4
MINTEQ has been reported to run under a Windows emulator such as Wine. Microsoft Excel
2003 or higher is required for the interaction with Excel.

There are a number of executable (.EXE) files associated with the software. Of these there are
two that can be considered being the core of Visual MINTEQ:

- The Vminteq EXE file (vminteq13.exe in Visual MINTEQ 3.1) provides most of the
interface for Visual MINTEQ. Input files are created, sent to the Mintrun EXE file (see
below) and the results are read and presented on the output pages.

- The Mintrun EXE file (mintrun13.exe in Visual MINTEQ 3.1) carries out all the
calculations. It appears as a black box during runtime.

These two EXE files communicate with one another using ASCII text files. More specifically,
when the user presses the Run MINTEQ button in the interface, the text file “minin.vda” is
created. This file contains all information necessary for the simulation. Mintrun reads in
“minin.vda” and when it terminates the calculations, the output will be written to two other
ASCII text files, “vmint.out” and “vmint.ou2”, where the former contains all detailed results for
each problem, and the latter contains the information used to set up the table Selected sweep
results for multi-problem / sweep files. This program structure is admittedly rather old-fashioned.
It is inherited from MINTEQA2 ver. 4.0, where the two core .EXE files are “Prodefa2” and
“Minteqa2”.

Therefore, if the user opens the file “minin.vda”, this represents the last simulation that was
carried out by Visual MINTEQ. Also, when the user presses the View output files button from
the main menu, Visual MINTEQ will always open the results from the last simulation, which are
stored in “vmint.out” and “vmint.ou2”.

1.4 Download and install

To install Visual MINTEQ, follow these steps:

1. If this is NOT the first time you install Visual MINTEQ ver. 3.0 on your computer, start
with removing the previous installation (go to Control Panel – choose Add or Remove
Programs – choose Visual MINTEQ).

2. Double-click on the installation zip file (Vminteq3_setup.zip, available from the Visual
MINTEQ webpage). Then double-click on the icon Setup.

3. Follow the instructions during the setup process. It is highly recommended that you
install Visual MINTEQ in the default folder.

5
4. When setup is completed, click on the new icon Visual MINTEQ on the desktop. The
main menu will open. If this is the first time you install Visual MINTEQ ver. 3.0, a
dialog box will appear (see Fig. xx), prompting the user to select the folder for the user-
editable files. Select one of the alternatives, save the settings, and return to the main
menu.

5. For best performance, decimal points should be used as the decimal symbols instead of
decimal commas. Users in non-English-speaking countries may need to change their
Windows settings accordingly (choose Control Panel – Regional and language options
– Customize – Decimal Symbol).

6. The software is now fully installed and Visual MINTEQ can be used.

NOTE: Visual MINTEQ uses an ASCII text file, “userfolder.txt”, present in My Documents, to
locate the folder with user-editable files. If this text file is destroyed, Visual MINTEQ will not be
able to locate the user-editable files and will prompt the user to supply this path the next time
Visual MINTEQ is started. The same thing happens if the folder with user-editable files is moved
or deleted.

1.5 Common problems

If the specifications in section 1.3 are not met, Visual MINTEQ will not start at all. Check, for
example, that .NET framework is installed on the computer.

There are also many situations when errors will occur when running a problem. Often this is
because the calculations do not result in a sensible result. There may be different reasons for this;
incorrect data input, or a too complex or ill-posed problem are two common types of reasons.
When an error occurs during run-time, the error will often be traced and reported to the user on
the output page. However, this is not always the case – in some cases the error handling will not
work and a dialog box will appear. Usually this dialog box will display either of two messages:

1. When Error 53 (“file not found”) is displayed, it means that there are one or more files of
Visual MINTEQ that are not present in the correct path. Check that all files that the
problem uses (databases etc.) really exists. In some extreme cases, reinstallation may be
necessary.

2. Error 62 (“input past end of file”) is a very general error that occurs whenever an error
occurs in the calculation part of the code. It frequently occurs when the problem is ill
posed so that the calculations do not converge. Please check that the problem is correctly
configured – activity guesses may also need to be changed.

6
1.6 Acknowledgments

Development of Visual MINTEQ was made possible by two research grants from Mistra
(Foundation for Strategic Environmental Research) and VR (The Swedish Research Council)
covering the period 1999-2003. Since then, the maintenance of the Visual MINTEQ has been
made possible by numerous grants from Swedish research councils (VR and Formas) as well as
from KTH (Royal Institute of Technology, Stockholm) and SLU (Swedish University of
Agricultural Sciences, Uppsala). The input and comments from numerous users are also very
much acknowledged.

7
2. Introduction to Visual MINTEQ

2.1 First look at Visual MINTEQ

Visual MINTEQ can be started in either of two ways:

1. Double-click on the program icon for Visual MINTEQ


2. Double-click on a Visual MINTEQ input file (a .vda file)

In the former case, Visual MINTEQ will open in its default mode, with no components added
etc (see Figure 2.1.1). In the latter case, the main menu will look different depending on the input
file opened.

Figure 2.1.1. The Visual MINTEQ main menu in its default mode.

The main menu contains some of the most common options that may be reviewed when
creating a problem. For example, the pH and ionic strength can be changed (sections 2.4 and 2.5),
components can be added (section 2.2), as well as units for input and temperature. The Reset
button is a useful feature that will erase everything from the present problem and return Visual
MINTEQ to its initial default state (remember, however, to save anything of importance before
you do this).

8
Just as any other Windows program you can open and save input files. The input files will
always have the filename extension .VDA and customarily they are saved into the folder with
user-editable files (usually My Documents \ Vminteq30), but they can of course be saved
elsewhere, too.

2.2 Visual MINTEQ terminology

There are some terms that are used in Visual MINTEQ that may be unfamiliar to new users.
Some of the most frequently asked questions by new users are about the meaning of the concepts
component, problem and infinite, finite and possible solid. Below these concepts are summarized:

A component is the form of a chemical compound that Visual MINTEQ uses as a building block in
+ - 2+ 2- 2-
chemical reactions. Some examples of components in MINTEQ are: H , Cl , Ca , SO4 , CO3 and
3- - -
PO4 . Many ions are not components, e.g. HCO3 and H2PO4 . The reason is that they may be
expressed from other components:

⇌ H + CO3
- + 2-
HCO3
⇌ 2H + PO4
- + 3-
H2PO4

-
The choice of the component species is rather arbitrary, so it is possible to use HCO3 as a
2- 2-
component rather than CO3 . If so, CO3 would be defined in the following way:

⇌ HCO3 – H
2- - +
CO3

However, since all reactions are defined with a given component, it is heavy work to edit the
databases should you wish to change a component, so this is normally not done.

3-
When the concentration of, for example, PO4 is stated in the Main Menu, it is important to note that
you in fact state the total concentration of all PO4 species (e.g., TOTPO4). In the output lists of the
results section however, the concentrations of the different PO4 species will be shown separately,
except on the page ”Equilibrated mass distribution”, in which the total concentration of phosphate will
be given.

Remember that you should always define more components than fixed species in Visual MINTEQ. In
-
some cases you may receive a message that tells you that Visual MINTEQ has added Cl at a
-16
concentration of 10 M. This is to ensure that there are more components than fixed species.

A problem is a user-defined composition of a water sample or water suspension to be speciated by


Visual MINTEQ. A Visual MINTEQ input file may consist of several problems, if one of the multi-
problem/sweep options is used.

Visual MINTEQ calculations may involve different kinds of solids. In Visual MINTEQ usage, a solid is
a species, the activity of which is determined by a constant value. Typically, this applies to solid
precipitates. Solids at equilibrium may be entered in three different ways in Visual MINTEQ:

9
An infinite solid is a precipitate for which there is no mass constraint, e.g. the concentration of the
solid is sufficient to maintain equilibrium in solution at all times. This is the most common option.

A finite solid is a precipitate with a known initial mass. This means that it may dissolve completely
during equilibration. When a finite solid is defined, the concentration of it (in mol / l suspension)
needs to be supplied by the user. If the solid is not completely dissolved after equilibrium, Visual
MINTEQ will report its concentration on the output page.

A possible solid is a precipitate that is not present initially, but that may be formed if Visual MINTEQ
finds that the water sample is oversaturated with respect to the relevant precipitate. Visual MINTEQ
will then re-equilibrate the solution assuming equilibrium with this precipitate. As for finite solids,
Visual MINTEQ will report the concentration of any formed solid on the output page.

2.3 Input / output file handling

Just as any other Windows program, files can be opened and/or saved using the File – Open
and File – Save commands available on the menu bar of the main menu. These files are referred
to as input files, as they contain all data necessary to run a Visual MINTEQ simulation. Some
further information:

• A Visual MINTEQ input file has the filename extension *.VDA


• By default, Visual MINTEQ expects input files to be in the folder of user-editable files
(see section 1.4). However, other locations are also possible.
• The input files are ASCII files. Therefore, in principle they can also be edited using a text
editor. However, this requires experience and familiarity with the formatting rules Visual
MINTEQ use (these are not detailed in this manual).
• Output files (i.e., results from Visual MINTEQ simulations) can also be saved or read
from the main output page (these have .OUT as their filename extension). However,
because output files are much larger in size, users are recommended to primarily save
input files (and then run these to generate the results) rather than output files.
• Many input files contain links to various other files such as database files. This can create
problems when, for example, one user mails an input file to a second user. If the file
names and/or their paths do not match, an error may result when reading or running these
input files.

2.4 Options for setting the pH value

There are three options for setting the pH value:

1. Calculated from mass balance (default option). Choose this option when you are
interested in calculating the pH in a solution for which you know the exact composition.

10
To understand how Visual MINTEQ calculates the pH, some knowledge on how the
Mintrun EXE file carries out the equilibrium calculations is useful. Briefly, Visual
MINTEQ solves the mass action equations and calculates the mass balance for all
components including H+ , but no explicit consideration of charge balance is made. This
means that for this option to work, the net charge balance for all entered components
needs to be zero, otherwise this option will not yield correct results. To check the charge
balance, choose Parameters – Show initial charge balance to show the sum of cation
and anion charges on the main menu.

2. Calculated from mass and charge balance. When the pH value is calculated with this
option, the H+ activity is fixed and then adjusted until the solution is perfectly charge-
balanced. In other words, Visual MINTEQ assumes that any charge imbalance is due to
an imbalance of H+. Also in this option, the composition of the water needs to be known,
but the total H+ concentration can be entered simply as 0. This option requires much more
numerical work by Visual MINTEQ and convergence is not always obtained. The initial
guess of the pH can be varied to aid convergence. This is done on the List of fixed
species, which is available from the main menu by first clicking View / edit list. A value
of the log activity of H+ is given here; this is interpreted by the code as the initial guess of
log {H+}. Therefore, if you change the initial pH guess to pH 4.5 you should enter -4.5
here (=log {H+}), see Figure 2.4.1.

Figure 2.4.1. The initial pH guess in the calculated from mass and charge balance option.

11
3. Fixed at… Choose this option when the pH value is known. Enter the relevant pH value
in the text box that appears. As a result, the H+ activity will be fixed and added to the list
of fixed species in Visual MINTEQ.

Why, then, does Visual MINTEQ include the option to calculate the pH from mass and
charge balance, when optimization using mass balance only is much easier numerically? The
answer is that it is tricky to set the total H+ concentration correctly when variably charged
surfaces including dissolved organic matter (DOM) are included in the calculations. In these
situations, the second option is preferred since it avoids complicated book-keeping of the
total H+ concentration inherent in surface components and in the diffuse layer.

The Visual MINTEQ input files of examples 1a, 1b, 1c and 1d illustrate the difference in
how the two options for calculating pH works. In these four input files, the pH is calculated in
solutions of 0.01 M Na2CO3 or 0.01 M NaHCO3, at 25oC. The pH value in these two cases is
10.96 and 8.22, respectively.

- Example 1a: Use of the “Calculated from mass balance” option to calculate the pH in
0.01 M Na2CO3.
- Example 1b: Same, but with 0.01 M NaHCO3. Note that the total concentration of H+
(0.01 M) should be given.
- Example 1c: Use of the “Calculated from mass and charge balance” option to
calculate the pH in 0.01 M Na2CO3. Note the larger number of iterations required to
solve the problem compared to example 1a (194 instead of 11).
- Example 1d: Same, but with 0.01 M NaHCO3. Here the total concentration of H+ is
set to 0. In this case, 42 iterations were required, compared to 5 for example 1b.

2.5 Creating a problem

In this section we describe the general procedure for how to set up a very simple Visual
MINTEQ simulation that does not involve any choices from the menu bar (i.e. adsorption, redox,
surface complexation, solid phases, gases etc.). We show how to set up, run and interpret the
results. The question is:

Example 2. In a 0.01 M CaSO4 solution at pH 7.0 and at 25oC, what is the speciation? In other
words, what are the relative proportions of Ca2+, SO42- and CaSO40 in solution? Is the solution
oversaturated with respect to any solid phase, such as gypsum?

1. Start Visual MINTEQ. The main menu will appear.


2. Change the pH option to “Fixed at” and make sure that the value in the text box is 7.0.
3. The ionic strength option should be To be calculated, as is the default option.

12
4. The concentration unit should be Molal (mol/kg solvent, equal to mol/l or M for most
water solutions unless they are very concentrated, see here).
5. The temperature is given as 25oC, so the default value should not be changed.
6. Now add components. In this case there are two components, Ca2+ and SO42-, both with a
concentration of 0.01 M. Therefore, locate Ca2+ in the dropdown list to the left. Then
enter 0.01 in the Total concentration text box. Next, click Add to list to add Ca2+ to the
problem.
7. Add SO42- by following the same procedure as for Ca2+.

Figure 2.5.1. The list of components in example 1 with 0.01 M CaSO4.

8. Click View / edit list to ensure that all components have been added, with the right
concentrations. If everything is correct the list will look as Figure 2.5.1. Note that there
are three components in the problem: H+, which is fixed by the pH value, is set to 0 on
the component list. Ca2+ and SO42- are added with a concentration of 0.01 M each.
9. Click Run to calculate the speciation.
10. After the calculation, the main Output page will be shown, see next page. On the top of
this page, it is seen that the pH at equilibrium is 7.00 (same as what we entered). The
calculated ionic strength is 0.0277 M, and there is an almost perfect charge balance, as
judged from the fact that the Sum of cations and Sum of anions are equal. These sums

13
are shown in the unit eq / kg (equivalents of charge per kg solvent). The charge
difference (%) is calculated as:

 SumA − SumC 
Charge difference (%) = 100 ⋅ Abs 
 SumA + SumC 

, where SumA is the sum of anions (eq/kg solvent) and SumC the sum of cations (eq/kg
solvent).

On the lower part of the page, the calculated concentrations and activities of all
considered species at equilibrium are shown. The concentration unit on the main Output
page is always mol / l, regardless of the unit used for the added components.

Figure 2.5.2. The main output page in example 1 with 0.01 M CaSO4.

11. Below the table with concentrations and activities there are buttons with links to other
results. Start reviewing these by clicking the View species distribution button.
12. A new menu is shown with the Species table, i.e. the calculated distribution among
dissolved and adsorbed species, see Figure 2.5.3. This table does not show the
distribution of H+, so in this case there are results only for two components, Ca2+ and

14
SO42-. These results show that free Ca2+ ions account for 69.2 % of all dissolved Ca, with
the uncharged CaSO40 complex making up the rest. Identical results are obtained for
SO42-.

Fig. 2.5.3. The species table showing the distribution of the components.

13. Click Back to main menu to get back to the main Output page.
14. To check whether the water sample is over- or undersaturated with respect to any solid
phases, click the Display saturation indices button.
15. A new menu is shown with information for different relevant solid phases that were
found in the database, see Fig. 2.5.4. For each mineral, the calculated log IAP (Ion
activity product) is given, together with the saturation index, which is defined as the
difference between log IAP and log Ks (solubility constant of the mineral at the given
temperature). In this particular example, when undersaturation prevails, the saturation
indexes are negative and given in blue. Positive values (oversaturation) will result in red
values. The table also shows the stoichiometry of the solid phases, as they are given in
the database.

15
Fig. 2.5.4. Saturation indexes for different relevant minerals (= solid phases) in example 1.

16. Click Back to main menu to get back to the main Output page.
17. By clicking the Equlibrated mass distribution button, we will be brought to a page that
shows the total dissolved, adsorbed and precipitated concentrations of each component.
18. In this example, this menu does not contain anything that we did not already know (Fig.
2.5.5). The total dissolved concentrations of Ca2+ and SO42- are the same as we already
entered, and nothing is adsorbed or precipitated (as we have not defined any such
reactions).

Fig. 2.5.5. Equilibrated mass distribution of the components in example 1.

16
2.6 Multi-problem / sweep options

Often it is convenient to be able to set up a number of chemical equilibrium problems to be


solved in one single run. Visual MINTEQ offers a range of options depending on the problem at
hand. When clicking the menu option Multi-problem / Sweep the user will be directed to the
main Multi-problem menu (Fig. 2.6.1). This menu consists of two parts. In the upper part, the
user selects one of four different options:
• Sweep: one parameter is varied (section 2.6.1)
• Titration / mixing with a titrant with defined composition (section 2.6.2)
• Simulate evaporation / concentration (section 2.6.3)
• Multi-problem generator – add several problems to the same run (section 2.6.4)
If the last option is chosen (multi-problem generator) values for individual problems can be
read from Excel (section 2.7). In the lower part of the menu, the user will design the contents of
an output table where the results from all problems are shown (section 2.6.5).

Fig. 2.6.1. The Multi-problem / Sweep menu

17
2.6.1 Sweep – one parameter is varied

The sweep option makes it possible to run a sequence of almost identical problems that differ
only concerning the value of one parameter. When choosing the Sweep option, the mid-section of
the Multi-problem menu will appear as in Fig. 2.6.2.

Fig. 2.6.2. Menu alternatives for the Sweep – one parameter is varied option

The pH is the default component, but fixed log activities, pressures and total concentrations of
components can be used as sweep parameters. There are two kinds of sweeps in Visual MINTEQ:
1. Sweep with a fixed increment between values. Three values have to be supplied by the
user: a) the number of problems or data points of the sweep (State the number of
problems), b) the Start value of the sweep, and c) the Increment between values. For
example, if a sweep is to be performed between pH 4 and 9, with an increment of 0.1 (4,
4.1, 4.2, 4.3 … ) the start value is 4, the increment is 0.1, and the number of problems is
51.
2. Sweep with values defined separately. When clicking the button Specify each value
separately, the user will instead be able to supply values in the boxes provided on the
right.

2.6.2 Titration / mixing with a titrant with defined composition

Visual MINTEQ can be used to simulate the chemical speciation resulting from a mixture of
two waters, such as during a titration. The principle is very simple – Visual MINTEQ simply
sums the total concentrations of the components in the two solutions. By knowing the volumes of
the two solutions, the composition of the mixture can be calculated. Successful calculations
require that all input data consists of total concentrations; if fixed activities or fixed dissolved
concentrations of one or more components are used, the results are likely to be in error. This
means that the pH should not be fixed but rather calculated (see section 2.4). Usually the option
Calculated from mass balance works best for titrations; use of the option Calculated from
mass and charge balance often causes convergence problems, although it may have to be used
when dissolved organic matter is present in the solution to be titrated.

To set up a titration / mixing problem in Visual MINTEQ, the user should first define the
composition of the first water sample in the usual way on the main menu. The second solution

18
(the titrant) is then defined on the Titration manager menu that appears when the user has
clicked the button Titration manager from the Multi-problem menu.

Fig. 2.6.3. The appearance of the Titration manager menu after defining 0.005 M Ca(OH)2 as the
titrant.

Fig. 2.6.3 shows what the Titration manager should look like when 1 mL 0.005 M Ca(OH)2
is added to 10 mL of solution. Note that OH- ions are added as negative H+ ions, in line with H+
being a component and OH- not. This is the case when the pH is calculated from mass balance. If
instead the pH is calculated from mass and charge balance, H+ ions will not need to be included in
the stoichiometry as Visual MINTEQ will assume that H+ should be added or removed from
solution to get complete charge balance of the titrant. Several different titration steps can be
defined by using the State the number of problems box on the Multi-Problem menu.

Note that the composition of the titrant can only be given in terms of total concentrations. A
further limitation is that dissolved organic matter cannot be included in the titrant in the current
version of Visual MINTEQ.

19
2.6.3 Simulate evaporation / concentration

This option enables the user to calculate the chemical speciation as a function of different
concentration factors, which may simulate the effect of concentrating or diluting the solution.
This is done in the boxes Enter concentration factors on the main Multi-Problem menu. The
concentration factors modify the total concentration of all components according to:

∑ T (k ) = ∑ T ( j ) ⋅ CF
k j
(2.1)

where the concentration factor CF is multiplied with the total concentration T of component j,
which is the one given on the main menu.

2.6.4 Multi-problem generator – add several problems to the same run

The multi-problem generator makes it possible to define several different problems in the input
and then solve all problems in a single run. The input values for concentrations etc. can be input
either by using Microsoft Excel or directly into the main menu. In the former case the user clicks
the button Import data from Excel, which appears immediately after writing a valid number in
the State the number of problems box on the Multi-problem menu (c.f. section 2.7).

Fig. 2.6.4. The buttons for moving between different problems in a Multi-problem file.

20
If Microsoft Excel is not used to input the data, there is only one problem in the input file after
having defined this option, i.e. the input already defined on the main menu. To define additional
problems, click Save and Back to main menu. Click the button Next problem (see Fig. 2.6.4)
on the main menu to create a second problem. By default, all input values from the first problem
are transferred to the second, i.e. it is an exact copy of the first problem. The user may then
modify this problem in the usual ways by using the menus before moving to the third problem
etc.

At any time it is possible to scroll between the different problems and make changes by using
the buttons and combo box highlighted in Fig. 2.6.4. When working with multi-problem files
there are a few other useful things to know about:

1. If you would like to change the multi-problem settings, for example the Sweep output
list (section 2.6.5), remember to always do this when you are currently located in
problem number 1. If the This is the problem no. combo box on the main menu shows a
different problem, then any changes you make on the Multi-Problem menu will not be
saved.

2. In some situations it is useful to save a problem from a multi-problem file to a single-


problem file. To do this, first go to the problem of interest by using the This is the
problem no. combo box on the main menu. Second, go to the Multi-Problem menu and
click Cancel and Back. You can then save the problem from the main menu.

Fig. 2.6.5. Changing Ca2+ to 0.02 M for all problems in a multi-problem file (see text).

3. Often it is useful to make the same change to all problems in the file. For example, if you
would like to change the total concentration of Ca2+ to 0.02 M in all problems in the file,
follow this procedure:

21
a) Move to problem number 1 by using the This is the problem no. combo box.

b) Click View / edit list.

c) Change to 0.02 in the total concentration box for Ca+2 (note: before doing this, check
that the concentration unit is currently set to Molal).

d) A new button Save last change to all problems will appear (see Fig. 2.6.5). By
clicking this button, you will make the change to all problems at once.

The button Save last change to all problems will also appear when making a range of other
changes to the first problem of a multi-problem file. It is important to keep in mind that the Save
last change to all problems button only remembers the very last change that was made. In other
words, if the total concentration values of two components are changed, Visual MINTEQ will
only change the most recently made change and ignore the previous one.

2.6.5. Designing the sweep output table

When working with multi-problem / sweep file, the standard output menus (as described in
section 2.8) are usually not practical, since they list a large number of details for every problem
individually. For this reason the user can define a new table using the Sweep output list in the
lower part of the Multi-problem menu. This table will then be added to the output through the
Selected Sweep results (c.f. section 2.8). For very large files (> 1000 problems), there will be no
detailed output given at all, so then the user needs to rely on the information present in the
Selected Sweep results menu.

Fig. 2.6.6. The sweep output list on the Multi-problem menu.

22
Fig. 2.6.6 shows the Sweep output list when having defined headers for some output columns
from a pH sweep. For each entry two headers are needed; one for the component or species in
question, and one for the type of value that should be shown on the table. For components there
are a relatively large number of different types to choose from (see Fig. 2.6.6). In the combo box
on the left the user can choose from components, species, the redox potential, the ionic strength,
gas pressures and the mineral saturation index. To be present in the combo box, the appropriate
components need to have been defined on the main menu.

2.7 Reading data from Excel

When using Visual MINTEQ for speciation calculations on many problems at once, the most
convenient way is normally to use the Import data from Excel option on the Multi-problem
menu. However, before importing from Excel, check the following:

1. Microsoft Excel needs to be properly installed.

2. Excel should be configured such that the column headers contain letters and the row
headers numerical figures.

3. The data should be aligned in columns and not in rows.

4. The Excel worksheet cells from which Visual MINTEQ should import data should
contain a minimum of non-numeric characters. Such characters may give rise to an error
when reading from Visual MINTEQ.

Fig. 2.7.1. Example of Excel file that can be used for input to Visual MINTEQ.

A typical Excel file, which should work well for the purpose, is shown in Fig. 2.7.1.

The general procedure for using the Excel import option is as follows:

23
1. Before you try to import the data, start by adding those components that are constant
throughout. For example, you may have the same concentration of an electrolyte such as
NaNO3 in all problems, a certain fixed CO2 pressure or you may have an amount of
adsorbent that also does not change. Add this information to the file in the usual way. At
this point you should also state the unit to be used in the file and you should define
whether pH is to be fixed or calculated.
2. Now choose Multi-problem / Sweep and check the box entitled Multi-problem
generator. Then state the number of problems to be added in the text box below. A
command button will appear, entitled Import data from Excel. Click it and a new menu,
the Excel data import menu, will appear. Click Browse to locate the Excel file which
you would like to use.
3. Locate the worksheet in Excel and find out which number it is. For example, regardless
of the title of the worksheet, the 4th worksheet from the left is always worksheet no. 4.
Click on the rightmost minimized Visual MINTEQ icon (“Excel data import…”) and add
the worksheet number in the box that has appeared.
4. In the fields that have appeared below, you should specify the component. Note that pH,
alkalinity, temperature and ionic strength may also be included in the component list; this
allows you to import e.g. pH values and temperatures as well as component
concentrations. Apart from choosing the name, you should also state its unit in the Excel
file (pH does not have a unit, so leave this field blank) and state the cell address (column
letter and the number of the first row of the data), so that Visual MINTEQ knows where
to find your data. Note that you may specify the log activity of a component; this means
that MINTEQ will assign a fixed activity to that component species. Click Add to start
defining the next component in the same way.
5. Continue with the rest of the components. Please note that the maximum number of
components that may be added this way is 30.
6. Click the button Import now! to add the data to your problems. If everything went well,
a label entitled Finished! is activated. The screen will look similar to the one shown in
Fig. 2.7.2. If it fails, you receive an error message. For example, failure occurs when you
state the name of the worksheet rather than the number (see point 3). If so, fill in the
number and try again.
7. Click Quit to go back to the Multi-problem menu. Next you may wish to specify
components / species that you would like to have on a separate output list for all
problems.
8. Click Save and Back to return to the Main menu, and now you can check whether the
imported data look OK. (see section 2.6.4 for more information).

Remember that if you change anything in the Excel file, the Visual MINTEQ problems will not
be updated automatically. However, the contents of the Excel import menu are saved in the input

24
file. This means that if you open the Visual MINTEQ file and go to the Excel import menu, you
will only need to click Import now! to update your file.

Fig. 2.7.2. The Excel data import menu as it appears when the reading of input data has
been successful.

2.8 Interpreting the output

When the user clicks Run MINTEQ on the main menu, the equilibrium problem will be
solved and the results reported on separate output pages, which should open automatically when
the problem has converged. It is also possible to open the results for the problem that was
executed the last time by clicking View output files. This is because Visual MITNEQ will
always save two ASCII text files with the results from the last run (the file “vmint.out” stores the
detailed output from individual problems, and the file “vmint.ou2” stores selected sweep results).

25
2.8.1. The main output page

The main Output page contains some basic information such as pH, ionic strength and charge
balance. Moreover a large table displays the concentrations and activities of all species in
solution. Note that the concentration unit in the output is always mol / l (or more accurately
molal), regardless of the unit that was used for the input. Fig. 2.8.1 shows a typical example of
what the Output page may look like; in this case a multi-problem/sweep file was used, which
causes the button for Selected sweep results to be shown, and a combo box to appear in which
the user can choose the problem to view.

Fig. 2.8.1. The main Output page in Visual MINTEQ.

As mentioned also in section 2.5, the unit for the cation and anion sums is eq kg-1, which is
roughly equal to eq L-1 (charge equivalents per litre). The charge difference is calculated
according to:

 SumA − SumC 
Charge difference (%) = 100 ⋅ Abs 
 SumA + SumC 

26
, where SumA is the sum of anions (eq/kg solvent) and SumC the sum of cations (eq/kg
solvent).

As Fig. 2.8.1. shows, the main Output page contains buttons that links to other output pages.
Selected parts of the table can be copied into the Microsoft Clipboard (CTRL+C) and pasted into
another application such as Microsoft Excel. In addition the whole table can be exported to Excel
by clicking Print to Excel – such buttons are present also on the other output pages.

Depending on the problem, a number of different buttons serves as links to other pages with
results. The most common ones are detailed below in sections 2.8.2 to 2.8.4. In addition, if finite
or possible solids are precipitated (section 3.3), the button Amount of finite solids opens a new
menu with the molar concentration of precipitated solids. If gases (e.g. CO2) are present (section
3.4), the button Gases leads to a list of partial pressures at equilibrium for the gases concerned.
Finally, if surface complexation or organic complexation models were included (as in the
example in Fig. 2.8.1), the button See calculated adsorption parameters provides a list of
calculated surface potentials and charge densities. When interpreting this table, remember that
surfaces no. 1 to 5 represent the different adsorption surfaces that were defined on the surface
complexation menu (section 5.1), whereas surfaces 6 and higher are organic matter surfaces
(sections 4.1-4.3).

2.8.2. The species table

Fig. 2.8.2. The species or percentage distribution table.

27
When clicking View species distribution from the main Output table, the Species table will
be opened, which lists the percentage distribution of species for every component. Not all
species are listed here, the concentration needs to be higher than 0.01 % of the total component
concentration to be included.

2.8.3. The saturation index table

Fig. 2.8.3. The saturation index table.

This table is accessed when clicking the button Display saturation indices from the main
Output table. It lists the calculated log IAP (= ion activity product) of all solids that can
potentially be precipitated from solution. The definition of IAP follows exactly the one of the
solubility constant (Ks) as included in the thermodynamic database, after correction of
temperature effects. The saturation index is simply the term log IAP – log Ks. When IAP is lower
than Ks, a negative value will result, which means that the solution is undersaturated (and thus
that the solid should not be able to form). The reverse situation, i.e. that IAP is higher than Ks,
results in positive values that reflect over- or supersaturated conditions. Undersaturated values are
presented in blue fonts, and supersaturated values in red fonts, to provide a quick guide to the
saturation conditions. If IAP is equal to Ks, indicating equilibrium, the font is green. In addition,
the stoichiometry of each solid, as given in the thermodynamic database, is presented.

It is important to realise that many of the solids present in the database do not form quickly and
thus that equilibrium may not be very likely. Supersaturated conditions need not imply that
substantial amounts of the solid may form, or that precipitation of this phase will drive the
solution to a new equilibrium state within a foreseeable time. A typical example of a ‘slow’ solid
is quartz, which is present in the database but is usually not likely to be important for equilibrium
conditions. For these reasons it is essential to scrutinise the table critically. Basic geochemical

28
knowledge is needed to be able to deduce what solids that are important under the conditions at
hand, and what solids that can be ignored.

2.8.4. The equilibrated mass distribution table

Fig. 2.8.4. The equilibrated mass distribution table

The Equilibrated mass distribution table lists the concentrations of every component in the
dissolved, adsorbed and precipitated phases. In addition, if an organic complexation model is
used (as in the example of Fig. 2.8.4) the table will also distinguish between the concentration
bound to dissolved organic matter (DOM) and as different inorganic species. As for the main
Output table, all concentrations are listed in molal (usually the same as mol / l), irrespectively of
the unit used for the input.

The table is useful particularly for adsorption or organic complexation problems. When only
speciation in the dissolved phase is considered, naturally 100 % of every component will be
dissolved. Even so, however, the table may be useful under many different circumstances as it is
the only one presenting the total dissolved concentration of each component.

2.8.5. The selected sweep results table

When a multi-problem or sweep file, consisting usually of more than one problem, has been
run the main Output table will contain a button that leads to Selected sweep results (Fig. 2.8.5).
The contents of this table is defined by the user in the Multi-problem input menu (section 2.6.5).
For concentrations, the unit is always molal (≈ mol/l) as for the other tables. The rightmost
column in the table (not shown in Fig. 2.8.5) indicates whether the run was successful or not. If
an error occurred during execution, a brief statement regarding the nature of the error will be
shown. In addition, all results for this problem will be shown in red.

29
Fig. 2.8.5. The selected sweep results table

30
3. Common menu options

3.1 Alkalinity

3.1.1 Definition of alkalinity. I. Alkalinity according to Dickson (1981)


For water samples, total alkalinity (TA) is normally determined by acid titration to a value
close to or below the CO2 equivalence point. The measurement will include carbonate species as
well as minor species that protonate or dissociate during the titration. In Visual MINTEQ,
measured alkalinity values can be converted to concentrations of individual carbonate species;
when doing so, MINTEQ will also consider the influence of the other minor species. It is in
principle possible for the user to define what species to consider and what “reference” species to
use, although limitations in the numerical method employed by Visual MINTEQ impose certain
restrictions (see below). Visual MINTEQ implements alkalinity in two different ways.
In the default or standard way, Visual MINTEQ implements the alkalinity definition of
Dickson (1981), except that Al(OH)4-, which may be of importance at alkaline pH, is also
considered with an alkalinity factor of 1. If the water sample to model is alkaline and contains
carbonate, phosphate, silicate, borate and aluminate, Visual MINTEQ defines total alkalinity in
the following way (note that some minor species such as CaHCO3+, CaCO3(aq) etc. are
neglected):

TA = [HCO3-] + 2[CO32-] + [OH-] + [HPO42-] + 2[PO43-] + [H3SiO4-] + 2[H2SiO42-] +


+ [H2BO3-] + [Al(OH)4-] – ([H+] + [H3PO4]) (3.1)

The factors for each species (e.g. 2 for [PO43-] and –1 for [H+]) are termed alkalinity factors
and are defined as the [H+] concentration required to convert the species to the reference species
(which is the dominant species at pH 4.5-5). Note that for Al it was assumed that Al(OH)3(s) was
the dominant species (rather than Al3+). The last two terms, [H+] and [H3PO4], both have
alkalinity factors of -1, i.e. they possess a negative alkalinity. However, negative alkalinity factors
cannot be handled by Visual MINTEQ as they interfere with the numerical method to solve the
equilibrium problem (which is why these terms are greyed in equation 3.1). These terms are
automatically set to 0 in the calculations. This may cause a minor error in the calculations at very
low pH when the negative terms are important; at higher pH the error is negligible.

3.1.2 Definition of alkalinity. II Alkalinity using fractional alkalinity factors for carbonate species
In many methods for total alkalinity (TA) determination, sulphuric acid is added until a
titration endpoint of pH 4.5 is reached, which is lower than the pKa value for carbonic acid
(around pH 6.35 at 25oC), but still not sufficiently low to completely transform all HCO3- to
H2CO3. To remove any remaining carbonate species from solution, CO2(g) purging by use of
N2(g) is used in some methods. However, in many methods this is not done. The actual alkalinity

31
factor of HCO3- under these circumstances will in fact be lower than 1. The precise value will be
dependent on factors such as temperature and ionic strength.

To correct for this error, the user can choose to define alkalinity in an alternative way, by
choosing the option Adjust CO3 AF to pH 4.5. If this option is chosen, precise fractional
alkalinity factors are estimated for HCO3- and CO32-, valid for situations in which pH 4.5 was
used as the endpoint. These estimates are based on multiple regression equations in which the
alkalinity factor of [HCO3-] is determined from the temperature and the ionic strength. Note that
this will not affect the alkalinity factors of non-carbonate species in the calculations; for those the
method of Dickson (1981) will be employed (section 3.1.1) unless the user changes the alkalinity
factors manually.

In many cases, the differences between the two alkalinity options are small, although the
Adjust CO3 AF to pH 4.5 option tends to produce slightly larger values of [HCO3-] for the same
alkalinity value.

3.1.3 Procedure for including alkalinity in a Visual MINTEQ problem


To calculate carbonate species from measured values of alkalinity, follow this procedure:

1. On the main menu, choose Parameters - Specify alkalinity or CTRL+A; this will
take you to the Alkalinity menu (see Fig. 3.1.1).

Fig. 3.1.1. The alkalinity menu in Visual MINTEQ

32
2. Choose the concentration unit in which alkalinity is given (four different options). If
the alkalinity is given in another unit, it can usually be easily converted to one of the
four in the list. Remember that any solids should not be specified when using this
option. The reason for this is that many solids act as buffers during the alkalinity
titration; Visual MINTEQ does not consider this effect, which leads to erroneous
results. If the problem being modeled involves solids, use the alkalinity value in a
preliminary run with no solid phases present or allowed. Then, in subsequent runs with
solid phases, use the computed total dissolved carbonate concentration from that
preliminary run rather than the measured alkalinity.

3. Choose one of the two options for alkalinity calculation, as described more fully in the
above sections. The options use two different choices of alkalinity factors for the
carbonate species:

Normal means that [HCO3-] is given an alkalinity factor of 1, whereas [CO32-] has a
fixed alkalinity factor of 2. This option will simulate the results of an alkalinity
titration in methods that involve N2 purging to remove produced CO2 since this will
lead to almost complete removal of [HCO3-].

Adjust CO3 AF to pH 4.5. This alternative aims to simulate the results of an


alkalinity titration that uses an endpoint of 4.5 and no N2 purging.

4. Click OK to save the alkalinity value to the problem.

Fig. 3.1.2. The list of components after the inclusion of alkalinity in a problem.

When alkalinity has been specified, a special version of the CO3-2 component, CO3-2****,
will be added to the component list, see Fig. 3.1.2. It is important not to confuse this component
with the ordinary CO3-2 component, as the alkalinity usually considers non-carbonate as well as
carbonate species. Moreover, the value in the total concentration box does not in fact represent
the total concentration in molal, it is only a form of corrected concentration that Visual MINTEQ
uses for its own book-keeping. Therefore, to change the alkalinity value, the recommended
method is to enter the alkalinity value and supply a new value.

33
3.1.4 Editing the alkalinity factors
The user may want to modify the alkalinity factors; for example, this is necessary if another
reference species is selected, or if only the carbonate alkalinity is to be considered (this means
setting all alkalinity factors to 0, except those for the carbonate, H+, and OH- species).
For species that are not components (e.g., HCO3-, H3SiO4-), the alkalinity factors can be edited
in the following way:
1. Make sure that all relevant component in the component list have been included (CO32-
, H4SiO4). If not, add them.
2. Choose Database management – Aqueous species from the main menu, and locate
the relevant species in the species list.
3. The alkalinity factor is given in a separate box (total alkalinity factor). If changed,
remember to Save changes to the database before exiting the menu. If the Adjust
CO3 AF to pH 4.5 option is used, it is of no relevance to change the alkalinity factor
for HCO3-, since it will be determined at runtime.
For components, the alkalinity factors are stored in a separate ASCII text file that can only be
edited from a text editor such as WordPad. Follow this procedure:
1. Open the file alk.vdb from WordPad. This file is normally found in the folder of user-
editable Visual MINTEQ files (to find out which folder this is, click Parameters –
Various default settings from the main menu and check the text box Path for user-
editable files)
2. The file consists of a number of rows, where every row represents an entry for a
component. Every entry consists of three pieces of information that are separated by a
comma: the component ID number (should be the same as in the component file
comp_2008.vdb), the name of the component (should also be the same as in
comp_2008.vdb), and the alkalinity factor.
3. You may change alkalinity factors and you may also include new entries. If so, it is
important that you write the entry in exactly the way as described in point 2 above.
4. Save and exit.
For one component, CO32-, the alkalinity factor cannot be edited at all!

34
3.2 Oxidation and reduction reactions

3.2.1 General
To simulate the equilibrium partitioning of two different members of a redox couple, Visual
MINTEQ uses a method in which the activity ratio between the two members of a redox couple is
fixed. A mock species, which is unique for each redox couple, is used to represent this ratio
during the calculations. As an example, consider the following redox reaction:

SO42- + 9H+ + 8e- ↔ HS- + 4H2O ; log K = 33.66 (3.2)

The equilibrium constant K of this reaction is defined as an activity ratio:

{HS − }
K= 2−
= 1033.66 (3.3)
{SO 4 }{H + }9 {e − }8

Here the activity of water is set to 1. By fixing this relationship in line with the Nernst
equation, Visual MINTEQ can calculate the activity of HS- from that of SO42- or vice versa,
provided that the equilibrium pe (i.e., the negative logarithm of the electron activity) of the water
sample is known. In addition, the Nernst equation provides a direct link between the pe value and
the redox potential Eh (in V) through the following relationship:

RT
Eh = ⋅ ln K (3.4)
νF

where ν is the number of electrons in the reaction. Hence the user can choose between the pe
value and the redox potential Eh for providing the redox state of the water sample.

3.2.2 Entering redox reactions into Visual MINTEQ

In contrast to some other geochemical codes, Visual MINTEQ does not consider redox reactions
automatically when both members of a redox couple are added as components. Instead the user
needs to a) specify a redox couple (Redox – Specify redox couples from the main menu) and
then to b) choose an option for the pe or Eh value (Parameters – Specify pe and Eh). The exact
procedure depends on what kind of simulation that is being performed. Broadly, we can
distinguish between two different kinds of simulations:

• The redox potential (Eh) or electron activity (pe) is known. Calculate the distribution
between different members of a redox couple.
1. Choose Redox – Specify redox couples from the main menu.
2. The Specify redox couples menu will open. Locate your redox couple from the combo
box on the left. You will obtain the log K value and the reaction enthalpy defined on

35
the basis of the stoichiometry, which is also displayed for each redox couple. If you
change these constants the changes will only be made to this particular problem. If the
components of the redox couple had not previously been added, they will be added to
the component list with a total concentration of 0. The specify redox couples menu
will now appear as in Fig. 3.2.1.
3. Click Add to include the redox couple into the problem. This will cause the whole
redox couple to be included in the list of fixed species; this is to ensure that the activity
ratio of the redox couple, as described in section 3.1.1, is kept constant during the
calculations. A message box will appear which tells you that Visual MINTEQ
assumes, to begin with, that you have oxidizing conditions with a fixed pe value
corresponding to pe = 15 - pH. The redox couple can be removed by deleting it from
the list of fixed species. Then click Back to the main menu.

Fig. 3.2.1. The specify redox couples menu when a redox couple has been selected.

4. At this stage you can specify the total concentration of both redox couples by writing
the value to either of the relevant redox components on the list of components. It
doesn’t matter which one you choose - Visual MINTEQ will take the sum of the
concentrations of both components to represent the total concentration of both redox
couples.

36
Fig. 3.2.2. Entering a pe value into the Specify electron activity menu.
5. Click Parameters – specify pe and Eh (or press CTRL-E) to get to the Specify
electron activity menu. Depending on whether you know pe or Eh, choose Fixed pe or
Fixed Eh (mV) and enter the appropriate value. See example in Fig. 3.2.2.
6. Click Save and back to main menu.

• The total concentrations of both redox components are known. Calculate the pe or Eh
value that matches the known distribution of redox components.
1. Follow points 1 to 3 in the above section.
2. Add the total concentration of each component of the redox couple on the main menu
or on the list of components.
3. Click Parameters – specify pe and Eh (or press CTRL-E) to get to the Specify
electron activity menu. Choose pe / Eh computed ; supply a guess for pe or Choose
pe / Eh computed ; supply a guess for Eh, and enter a value in the text box. Usually,
convergence is more likely if you choose a value close to the equilibrium value which
is to be calculated.
4. Click Save and back to main menu.

37
3.3 Gases

3.3.1 General
In the equilibrium calculations, gases are handled much in the same way as dissolved species.
A typical example of a gas (and the one most frequently specified in Visual MINTEQ
calculations) is CO2(g). The relevant equilibrium reaction is expressed as:

CO32- + 2H+ ↔ CO2(g) + H2O log K = 18.149 at 25oC (3.5)

When defining the mass-action equation for this reaction, it should be remembered that the
activity of a gas is usually equal to its partial pressure (assuming it is an ideal gas). Different units
can be used for partial pressures, the most commonly used are Pa, bar and atm. In Visual
MINTEQ and many other geochemical codes, the atm unit is used. This is, however, very similar
in magnitude as bar (1 atm = 1.013 bar) and these units are used interchangeably by many
geochemists. However, use of the Pa unit requires all equilibrium constants to be rescaled. The
mass action equation for reaction 3.5 is thus:

pCO 2
K= 2- + 2
= 1018.149 (3.6)
{CO3 }{H }

where pCO2 is the partial pressure of CO2(g) in atm. Other gases are treated in the same way.
Note, however, that some gases, e.g. O2(g) and CH4(g), involve electrons in their equilibrium
reactions, and to include them in the calculations relevant redox couples need to be specified (c.f.
section 3.2).

3.3.2 Entering reactions with gases into Visual MINTEQ

The partial pressures of all gases will always be calculated, provided that all components of
their formation reactions have been included in the component list. These will be shown on the
main output page (also see section 2.8.1).
However, in some instances it may be of interest to fix the partial pressure of a gas. Consider,
for example, an experiment when the CO2 pressure of a system is kept fixed at the atmospheric
pressure. In such situations the Gases menu, which is accessible from the main menu, should be
used. To enter a certain CO2 pressure into a Visual MINTEQ problem, follow this procedure:
1. Click Gases – Specify from the main menu.
2. On the Gases menu, there are two text boxes, where the first one is the atmospheric
CO2 pressure (given as 3.8 × 10-4 atm) and the other is for the partial CO2 pressure as a
“multiple” of the atmospheric CO2 pressure. This means that if you, for example, have
a fixed CO2 pressure of 3.8 × 10-3 atm, you can enter the value 10 into this box (Fig.
3.3.1). However, alternatively, you can enter 0.0038 in the atmospheric CO2 box, and
keep a value of 1 in the second box. In other words, the partial CO2 pressure is
calculated as the product of the values in the two text boxes.

38
3. Click Add. The partial CO2 pressure that you provided will then appear in the List of
fixed species.
4. At a later stage you may want to go back to the Gases menu and edit or view your
entry. You may be confused to see that the values in the two text boxes may have
changed. This is because Visual MINTEQ only remembers the partial CO2 pressure,
not the values you put into the two different text boxes. As stressed above, what
matters is the product of the values in the two text boxes.

Fig. 3.3.1. The Gases


menu after entering a
partial pressure of 3.8 ×
10-3 atm.

For other gases (which are available from the lower part of the menu) you follow essentially
the same procedure; however for these you only provide one value for the partial pressure.
Finally there is one special option available in the check box of the upper part of the menu.
You may specify the gas as a “possibly fixed species”. This option is analogous to the possible
solids option (c.f. chapter 3.4). This means that the partial pressure of the gas will not be fixed in
the initial phase of the calculations. If, however, the software finds that the partial pressure is
higher than the pressure given on the Gases menu, the calculations will recommence by fixing the
partial pressure of the gas to the one in the text box.

3.4 Solid phases and excluded species

3.4.1 Infinite, finite and possible solids – concepts


The menu options Specify infinite solids, specify finite solids and specify possible solids
represent three different ways to force the chemical composition of a water sample to an
equilibrium state with respect to one or more mineral phases. The three types of solids can be
defined as follows:
- An infinite solid is a solid that is present in sufficient amounts not to be completely
dissolved during the simulation. In other words, by choosing this option the user assumes

39
that the water sample is always in equilibrium with this solid. Consequently, the ion
activity product (IAP) is always equal to the solubility constant.
- A finite solid is a solid that is present initially but which may be completely dissolved
during the simulation. When specifying a finite solid, the user needs to supply a value for
the initial amount present, in mol/l. During the calculations, if Visual MINTEQ finds that
the solution is supersaturated with respect to the solid, the calculations will be repeated
under the assumption that the solution is in equilibrium with respect to the solid, and the
amount of remaining solid present at equilibrium will be reported.
- A possible solid is a solid that is not present initially but may be precipitated during the
simulation, if Visual MINTEQ finds that the solution is supersaturated with respect to
this solid. If so, the calculations will be repeated under the assumption that the solution is
in equilibrium with respect to the solid, and the amount of remaining solid present at
equilibrium will be reported.

3.4.2 Precipitation/dissolution of solids in Visual MINTEQ

In aquatic chemistry, mineral-phase equilibria are usually written as dissolution reactions, i.e.
with the solid on the left-hand side of the reaction. As an example, take the dissolution of calcite:

CaCO3(s) ↔ Ca2+ + CO32- ; log Ks = -8.48 (3.5)

The solubility constant Ks is defined by:

Ks = {Ca2+}{CO32-} (3.6)

where the activity of CaCO3(s) is assumed to be 1 (“ideal solid”)”. This is, however, not the
way Visual MINTEQ (and many other geochemical codes) deals with solids. The first developers
of the MINTEQ codes discovered that it was much easier to define the reactions as formation
reactions, i.e. with solids on the right-hand side. Hence the solubility constant will take the
inverse value. This is, however, counter-intuitive for most aquatic chemists. The present situation
in Visual MINTEQ is that the interface (i.e. the Windows forms where you enter all data and
view the output) uses dissolution reactions, whereas the core of the program treats them as
formation reactions. This explains why, if you open the databases or input files in WordPad or
NotePad, the reactions are written the other way round, and all log Ks values have the wrong sign.
When dealing with solids it is important to remember that Visual MINTEQ always assumes
equilibrium. This means that when you include solids in the calculations and the software finds
them to be stable, the activities of the constituents (i.e. Ca2+ and CO32- in the calcite example
above) will be adjusted until they agree with the solubility constant. If they are not stable (which
may be the case if you use the finite or possible solids options), the solid will dissolve completely
and cease to exist.

40
If you don’t define any solids on the solids menu, no solids will ever be precipitated
(exception: if you allow oversaturated solids to precipitate on the Various default settings menu,
but this is generally not recommended). You will, however, be informed on the saturation state of
various mineral phases in the output (on the Display saturation indices menu, c.f. section 2.8.3).

3.4.3 Examples of calculations involving solids

Again we use the calcite reaction in equation 3.5 as an example for all three solids options

Example 3a. To a solution containing 1 mM NaCl we add sufficient CaCO3(s) powder to


saturate the solution. What will the pH, total dissolved Ca2+ and carbonate alkalinity be, if
equilibrium with atmospheric CO2 is assumed? The temperature is 20oC.

First we should realise that this is a typical problem where the infinite solids option is to be
used, because the amount of solids was ‘sufficient to saturate’, i.e. we know that we have
equilibrium with respect to calcite.

1. Start Visual MINTEQ. The main menu will appear.


2. Ensure that the pH option is Calculated from mass balance.
3. The ionic strength option should be To be calculated.
4. The concentration unit can be changed to Millimolal.
5. Change the temperature to 20oC.
6. Add components. Supply Na+ and Cl-, both with a concentration of 1 mM. Remember to
click Add to list to add them to the problem. The other components present (Ca2+, CO32-)
do not need to be added here, they will be added automatically to the component list
when we define the solid.
7. Enter the Gases menu. As atmospheric CO2 is the default alternative, all you need to do
here is to click Add. Go back to the main menu.
8. Now click Solid phases and excluded species – specify infinite solid phases. Locate
calcite from the long dropdown list of solids, and then click Add. We are now nearly
finished, but first let us go to the List of fixed species, which should look like the one
below:

41
Figure 3.4.1. The list of fixed species in example 3a.

9. Click Run MINTEQ and inspect the results on the output pages. First, you can see that
the pH at equilibrium is 8.24. The carbonate alkalinity under these conditions will be
almost equal to the HCO3- concentration, which is 1.13 mM (species list on main output
page). To get the total dissolved Ca, go to the Equilibrated mass distribution page.
According to the table, total dissolved Ca is 0.58 mM.

Example 3b. To a solution consisting of 50 mL 0.002 M CaCl2, we add 0.001 M Na2CO3 in


0.1-ml increments. How many mL do we need to add before we get precipitation with CaCO3(s),
and how will total dissolved CO3 develop as a function of the Na2CO3 addition? The experiment
was carried out in a sealed container with no gas exchange with the atmosphere, at 20oC. The
initial concentration of CO3 can be considered negligible.
In this case, the use of the possible solids option is most relevant, because at some point calcite
will start to precipitate, and the model needs to be able to handle both undersaturation and
saturation. We will also use the titration option, since two different solutions are mixed.
1. Start Visual MINTEQ. The main menu will appear.
2. Ensure that the pH option is Calculated from mass balance.
3. The ionic strength option should be To be calculated.
4. The concentration unit should be Molal.
5. Change the temperature to 20oC.
6. Add components. Supply Ca+ and Cl-, with concentrations of 0.002 and 0.004 M,
respectively.
7. Click Solid phases and excluded species – specify possible solid phases. Locate calcite
from the long dropdown list of solids, and then click Add.
8. Click Multi-Problem / Sweep and check the box for Titration/mixing. Then click on
the Titration manager button.

42
9. Enter the volumes of the solution and the titrant (50 mL and 0.1 mL, respectively). Then
enter the concentrations of Na+ and CO32- on the lower part of the menu (these are 0.002
and 0.001 mol/l, respectively).
10. Save and go back to the Multi-Problem/Sweep menu.
11. Provide a sufficient number of titration steps (e.g., 50) to make sure that we will saturate
the solution at some point.
12. Define total dissolved CO3 as a sweep output parameter.
13. Go back to the main menu and Run MINTEQ.
14. Go to the Selected Sweep results and export the results to Excel. You should be able to
get a graph similar to Fig. 3.4.2 below.

35
30
Fig. 3.4.2. Total dissolved
Total dissolved CO3 / µM

25 CO3 as a function of the


20 number of titration steps in
15 example 3b.
10
5
0
0 10 20 30 40 50 60
Number of titration steps

As long as the solution is undersaturated with respect to calcite, total dissolved CO3 increases.
Equilibrium occurs after 17 titration steps, and after that the added CO3 will largely be
precipitated, leading to only a very small further increase of total dissolved CO3.
Example 3c. To a solution of 100 mL 2 mM NaH2PO4 you add 1 g calcite powder. Will the
calcite be completely dissolved or will some of it remain precipitated? What is the total dissolved
Ca concentration at equilibrium? Assume a temperature of 20oC and that the system is
equilibrated with atmospheric CO2.
This is a typical example of the use of the finite solids option, as we have a known amount of
the solid to start with.

1. Start Visual MINTEQ. The main menu will appear.


2. Ensure that the pH option is Calculated from mass balance.
3. The ionic strength option should be To be calculated.
4. The concentration unit should be Millimolal.

43
5. Change the temperature to 20oC.
6. Add components. Supply Na+ and PO43-, with concentrations of 2 mM for both. Since this
is a problem in which the H+ activity is not fixed, we also need to provide the H+
concentration (4 mM). This can be done either by adding H+ as a component, or by
entering the component list (where H+ is already defined) and manually edit the
concentration.
7. Enter the Gases menu. As atmospheric CO2 is the default alternative, all you need to do
here is to click Add. Go back to the main menu.
8. Click Solid phases and excluded species – specify finite solid phases. Locate calcite
from the long dropdown list of solids. You then need to supply a suspension
concentration of the added calcite. 30 mg calcite in 100 ml solution is roughly equal to 3
mM (using a molar weight of 100 g/mol for calcite). Adjust the concentration unit to
Millimolal and then enter 3 in to the Amount box. Then click Add and go back to the
main menu.
9. Run MINTEQ and inspect the results. You will note the appearance of a box Amount of
finite solids. This means that 30 mg calcite was more than enough to saturate the
solution. By clicking this button you can see that the equilibrium amount of calcite is
around 1.5 mM – in other words only about half of the added calcite had been dissolved.
The same result – 1.5 mM – is obtained for total dissolved Ca from the Equilibrated
mass distribution menu.

3.4.4 Excluded species

Visual MINTEQ contains an option to exclude certain species from calculations. To exemplify
the use of this option, we may go back to example 3c in the preceding section. Suppose, for
example, that we doubt the existence of the dissolved CaPO4- complex, which is predicted to be
of some significance. We can then exclude it from the calculations by the following procedure
(note: both Ca2+ and PO43- need to be present in the component list before doing this):

1. From the main menu, click Solid phases and excluded species – specify finite solid
phases. .
2. Locate the CaPO4- species from the dropdown list in the central part of the menu. The
menu will now look as in Fig. 3.4.3.
3. Click Add. The species will now appear in the List of excluded species.
4. If you change your mind and want to include the species again, just delete it from the List
of excluded species.

44
Fig. 3.4.3. The Specify excluded
species list after selecting CaPO4- as
the species to exclude.

45
4. Adsorption

4.1 Introduction to adsorption reactions

Adsorption occurs when a solute is bound to a particle surface. It is a process that includes several
mechanisms. In Visual MINTEQ adsorption can be considered in three fundamentally different
ways:
- Through so-called adsorption isotherms, which in reality are empirical equations that
describe adsorption in a way that does not address individual mechanisms. Visual
MINTEQ contains various common isotherm equations. However, most adsorption
isotherms are rather easy to set up in spreadsheet programs such as Microsoft Excel.
Therefore the functionality and choice of isotherms in Visual MINTEQ is rather limited.
In section 4.6 the different options for isotherm calculations are described in more detail.
- Ion-exchange reactions are driven by electrostatic (physical) attraction between a charged
ion and a particle surface with an opposite charge. Visual MINTEQ can consider ion
exchange by use of the Gaines-Thomas equation; this is described more closely in section
4.4.
- Surface complexation models, which are described below, address adsorption reactions
for inorganic constituents in which there is a significant chemical contribution to the
adsorption process (“surface complexation reactions”). This is done in a
thermodynamically more correct way compared to the isotherms, usually taking into
account both chemical and electrostatic contributions to adsorption.

4.2 Surface complexation models – mathematical basis

Surface complexation models (SCM:s) differ principally in the way they describe the
electrostatic contribution to surface complexation. The part of an SCM that deal with this and that
is the “backbone” of the model is often referred to as the interface model. Visual MINTEQ
contains six different interface models. Below the most important elements of each model will be
provided in sections 4.2.1 to 4.2.6. Section 4.2.7 addresses the way bi- and multidentate surface
complexes are addressed in Visual MINTEQ, while sections 4.2.8 and 4.2.9 contain some
additional information regarding how Dzombak and Morel’s DLM model (Dzombak and Morel,
1990) and how the CD-MUSIC model are implemented. Please note, however, that more detailed
information on the background of different models is available elsewhere (e.g., Goldberg, 1992;
Goldberg et al., 2007)

4.2.1. The Non-electrostatic model (NEM)


The simplest of all interface models is the NEM, which does not consider electrostatic
interactions at all. In other words the NEM simulates surface complexation reactions in a very

46
similar way as the corresponding solution complexation reactions. As an example, we may
consider the protonation of a singly coordinated ≡FeOH group belonging to an iron oxide surface:

≡FeOH + H+ ↔ ≡FeOH2+ ; log K = 8.9 (4.1)

The equlibrium constant K is defined as:

[≡ FeOH 2 + ]
K= +
= 108.9 (4.2)
[≡ FeOH]{H }

The only difference to corresponding solution complexation reactions is that the there is no
agreed method to calculate activities of surface complexes. By convention, the activity coefficient
of such species is often set to 1. This is the reason why the surface species ≡FeOH and ≡FeOH2+
occur within concentration brackets in equation 4.2.

4.2.2. The Diffuse Layer Model (DLM)


The DLM is sometimes referred to also as the Diffuse Double-Layer Model (DDLM) or the
Generalized Two-Layer Model (GTLM). This is the simplest model in which both chemical and
electrostatic contributions to surface complexation are considered. This model was used by
Dzombak and Morel (1990) in their highly influential book Surface Complexation Modeling, and
since then the DLM has been the most widely used SCM.
The starting point of the DLM and all the other more complex SCM:s is the assumption that
the free energy of adsorption consists of both chemical and electrostatic contributions such that:

∆Gtot = ∆Gint + ∆Gcoul (4.3)

where ∆Gtot is the total free energy of adsorption, ∆Gint is the chemical contribution (or
intrinsic part), whereas the ∆Gcoul is the electrostatic contribution. The consequence of Equation
4.3 is that mass action equations such as the one in equation 4.2 will need to be supplemented by
extra terms, so-called Boltzmann factors, which consider the electrostatic contribution (which in
turn will be determined by the change in surface charge that occurs because of the reaction).
More specifically, with the DLM the equilibrium constant K of equation 4.1 would be defined as:

[≡ FeOH 2 + ]  ∆ZFψ o 
K= +
⋅ exp   =10
8.9
(4.4)
[≡ FeOH]{H }  RT 

where ΔZ is the change of equivalent charge taking place in the reaction (+1 in this case), F is
the Faraday constant, R is the common gas constant, T is the temperature (K), and ψo is the
surface potential (V) in the surface plane (o-plane) with which the ion (in this case H+) is thought
to interact. In Visual MINTEQ, the whole Boltzmann term (the exponential term) is represented
by the component PSIo.

47
Fig. 4.2.1. The solid-solution interface and its potential gradient with increasing distance (x) from
the surface in four different interface models described in the text (from Goldberg et al., 2007).

Near a charged surface there will be a potential gradient. As Fig. 4.2.1 shows, this potential
gradient is described differently in different SCM:s. In the DLM, all surface complexes are
assumed to reside in the surface o-plane. The DLM only considers one layer that extends
outwards from the surface, the diffuse layer, in which the potential drops according to Fig.
4.2.1B. Hence the o-plane surface charge is completely neutralized by accumulated counter-ions
in the diffuse layer. This can be expressed as:

σo = -σdl (4.5)

where σo and σdl is the charge in the o-plane and diffuse layer, respectively (unit C m-2). The
value of σo is calculated from the sum of equivalent charge on the surface. For example, in the
simple case when the net charge is determined solely by the species ≡FeOH2+, the following
equation will hold:

F
σo = ⋅[FeOH 2 + ] (4.6)
Sa

where F is the Faraday constant, S is the surface area (m2 g-1), and a is the suspension density
(g L-1). Finally a charge-potential relationship is needed. For the diffuse layer, where only
counter-ions are accumulated, the Gouy-Chapman equation is used, which describes the
relationship between the diffuse-layer charge and the potential at the head-end of the diffuse
layer. There are two versions of this equation (both are available in Visual MINTEQ). The first
one is valid strictly only for 1:1 electrolytes:

 Fψ o 
σdl = − ( 8000εε 0 RTI )
1/2
sinh   (4.7)
 2 RT 

where ε is the dielectric constant, ε0 is the permittivity of free space, I is the ionic strength
(mol L-1), whereas ψo is the surface potential in the head-end of the diffuse layer, i.e. the o-plane
in the case of the DLM. As already inidicated, equation 4.7 is not strictly valid in non-
symmetrical electrolytes (c.f. Sposito, 1984; Lützenkirchen et al. 2014). From version 3.1 of
Visual MINTEQ, it is therefore now also possible to use the general case of the Gouy-Chapman
equation:

48
1/2
   − z Fψ   
σdl = − Sgn (ψ o )( 2000εε 0 RT ) ⋅  ∑ ci ⋅  exp  i o  − 1 
1/2
(4.8)
 i   RT   

where the sum is over all ionic concentrations in solution. Although more precise, the use of
equation 4.8 leads to slightly less stable optimizations, which may lead to convergence problems
in certain complex matrices (such as in soils with different types of surfaces). Moreover, tests
with different typical solution compositions show that the simplification made in equation 4.7
does usually not affect concentrations of surface complexes with more than a few percent except
in extreme cases when trivalent ions make up a substantial proportion of the dissolved ion charge.
Therefore, the default alternative in Visual MINTEQ remains the use of equation 4.7, but it is
easy for the user to switch to equation 4.8.
The DLM is normally used with the so-called 2-pK formalism, which means that the surface
acid-base behaviour is described with two reactions. As an example Dzombak and Morel (1990)
described the surface charging of ferrihydrite with the following two reactions:

≡FeOH + H+ ↔ ≡FeOH2+ ; log K = 7.29 (4.9)

≡FeOH ↔ ≡FeO- + H+ ; log K = -8.93 (4.10)

where the equilibrium constants are defined with Boltzmann factors as in equation 4.4.

4.2.3. The constant capacitance model (CCM)

The DLM is the simplest interface model because it neglects the existence of the Stern layer,
i.e. a layer very close to the surface where surface complexes are formed. Here, the potential
gradient is more accurately determined by considering that a charged oxide surface can be viewed
as a plate condenser. In other more complex SCM:s both the Stern layer(s) and the diffuse layer
are considered; however the CCM only contains one Stern layer in which the potential drops
linearly to zero. This leads to the potential gradient as seen in Fig. 4.2.1B. Again, as for the DLM,
all surface complexes are assumed to reside in the surface o-plane. The following charge-
potential relationship is used:

σo = C ∙ ψo (4.11)

where C is the capacitance (unit F m-2). The CCM is commonly used with a 2-pK formalism
and may contain the same type of reactions as shown in equations 4.9 and 4.10.

49
4.2.4. The Basic Stern Model (BSM)

Fig. 4.2.2. The solid-solution interface and its


potential gradient with increasing distance (x)
from the surface in the Basic Stern model
(from Goldberg, 1992).

The Basic Stern Model (BSM) can be considered as a combination of the DLM and the CCM.
It contains one Stern layer close to the surface where the potential drops from ψo to ψd and then
one diffuse layer that extends outwards from the Stern layer (Fig. 4.2.2). This leads to the
existence of two planes o and d. Surface complexes can be positioned in either of these planes, or
between them (as is possible in the CD-MUSIC model, c.f. section 4.2.7). The charge balance
becomes:

σo + σd = -σdl (4.12)

The following two charge-potential relationships are used:

σo = C ∙ (ψo - ψd) (4.13)

 Fψ d 
σdl = − ( 8000εε 0 RTI )
1/2
sinh   (4.14)
 2 RT 

where equation 4.14 is valid for 1:1 electrolytes; this equation can be exchanged for a modified
version of equation 4.8 (replacing ψo for ψd) to become more generally valid.
The BSM has been used with both 1-pK and 2-pK formalisms. In the 1-pK formalism only one
reaction is used to describe acid-base reactions of charged surfaces. By using fractional charges a
structurally more correct description of acid-base behaviour can be obtained (Bolt and van
Riemsdijk, 1982). For example, the goethite acid-base reaction will then be written as:

≡FeOH½- + H+ ↔ ≡FeOH2½+ ; log K = 9.2 (4.15)

The equilibrium constant is defined using a Boltzmann factor as described in equation 4.4.

4.2.5. The triple-layer model (TLM)

In the TLM the Stern layer in split in two, enabling a more refined description of the interface.
This creates an extra plane, the β plane (in Visual MINTEQ this is referred to as “b”) and requires

50
separation of an inner-layer and an outer-layer capacitance. The potential gradient is shown in
Fig. 4.2.1C. The charge balance for the TLM is:

σo + σβ = -σd (4.16)

where σd contains the charge of the d-plane and in the diffuse layer (compare to the TPM,
section 4.2.6). The following charge-potential relationships apply:

σo = C1 ∙ (ψo - ψβ) (4.17)

σd = C2 ∙ (ψd - ψβ) (4.18)

 Fψ d 
σd = − ( 8000εε 0 RTI )
1/2
sinh   (4.19)
 2 RT 

The TLM has mostly been used with 2-pK formalism to describe (hydr)oxide charging.

4.2.6. The three-plane model (TPM)

The TPM is very similar to the TLM, indeed it is better described as a variant of TLM rather
than as an own interface model. The difference to the TLM is that σd, as defined in the “normal”
TLM, is split up in two parts, the ‘true’ d-plane charge σd and the diffuse-layer charge σdl. This,
however, does not affect the potential gradient as such (Fig. 4.2.1D) and indeed the TLM and
TPM will generate the same results for surface complex concentrations when the same
parameters are used. The charge balance constraint is:

σo + σβ + σd = -σdl (4.20)

The charge-potential relationships of equation 4.17 and 4.18 also apply for the TPM. The
Gouy-Chapman equation for the diffuse-layer charge is the same as for the BSM (equation 4.14).
The TPM is used mostly with the 1-pK formalism for (hydr)oxide charging, and it is the most
commonly used interface model for the CD-MUSIC model (c.f. section 4.2.7).

4.2.7. Bi- and multidentate surface complexes

Spectroscopic methods have shown that many ions form bi- or tridentate complexes with
surface groups. The handling of such complexes in chemical equilibrium models presents a
special problem, as was recently reviewed by Wang and Giammar (2013). This is because the
surface site concentrations in mass action equations cannot be expressed on a molar concentration
basis, but need to be reformulated using mole fractions. To avoid errors when using surface
complexation models in geochemical codes, it is important to be aware of how the software
tackles this problem; otherwise grave errors may result (see, e.g. Gustafsson and Lumsdon, 2014;
Lützenkirchen et al. 2014).

51
An example is when phosphate forms a bidentate surface complex on ferrihydrite according to
the following reaction (from Tiberg et al. 2013):

2≡FeOH½- + PO43- + 2H+ ↔ ≡Fe2O2PO22- + 2H2O ; log Kint = 27.59 (4.21)

Here Kint is the intrinsic surface complexation constant based on mole fractions, which is
generally valid. However, the numerical schemes of Visual MINTEQ require Kint to be
recalculated to a molar concentration basis, and this is done automatically in the software, i.e. no
extra action is expected from the user. The resulting constant, used by Visual MINTEQ for a
specific problem, is referred to as Kdiss in the following equations. Visual MINTEQ uses a
numerical recipe given by Venema et al. (1996) for making this conversion. Two scenarios are
allowed, one in which n surface groups of the same site type are involved, and one in which n
surface groups of two surface types form the complex. Complexes involving three or more
different site types cannot yet be considered in Visual MINTEQ. When one site type is involved,
the equation of Venema et al. (1996) can be written as:

K int
Kdiss = (4.22)
[≡ SOH]t ( n −1)

where [≡SOH]t is the total site concentration of the adsorbing group (in mol L-1). When the
surface complex binds to different site types, the corresponding equation is:

K int ⋅ ([≡ S1OH]t + [≡ S2 OH]t )


Kdiss = (4.23)
[≡ S1OH]t n1 [≡ S2 OH]t n2

where [≡S1OH]t and [≡S2OH]t are the total site concentrations of the two different site types,
and n1 and n2 is the number of site 1 and 2 groups involved, respectively.
In the case of the phosphate adsorption reaction in the example of equation 4.21, Visual
MINTEQ will use equation 4.22, and as n = 2, we will get Kdiss = Kint / [≡SOH]t.

4.2.8. The Dzombak and Morel model for ferrihydrite

Dzombak and Morel (1990) presented a DLM-based model for ferrihydrite (or “hydrous ferric
oxide”) and an associated database with complexation reactions. Later on similar exercises (using
the same type of model) have been made for Mn oxide (Tonkin et al., 2004), goethite (Mathur
and Dzombak, 2006) and gibbsite (Karamalidis and Dzombak, 2010).
Based on the observed strong binding heterogeneity for metals, the authors divided the
ferrihydrite surface groups into two categories, referred to as high- and low-affinity sites, where
the former makes up 2.5 % of the total number of sites (and the latter consequently 97.5 %).
Moreover, Dzombak and Morel (1990) used a surface area of 600 m2 g-1, and a total site density
of 2.31 sites nm-2. For an example of how this model is implemented in Visual MINTEQ, we
consider a simple system with a ferrihydrite suspension to which zinc has been added, together

52
with a background electrolyte of NaNO3. In the DLM, Na+ and NO3- are assumed not to interact
directly with the surface other than as counter-ions, so the only reactions to consider are the acid-
base reactions and the zinc complexation reactions. In Table 4.1 the system is presented in
Tableau format (excluding H2O and solution complexes such as OH- and ZnNO3+).

Table 4.1. Table of species for zinc adsorption to ferrihydrite using the model of Dzombak and
Morel (1990).
Species log K H+ Zn2+ ≡FeOH ≡FehOH e(Fψo/RT)
≡FeOH2+ 7.29 1 0 1 0 1
≡FehOH2+ 7.29 1 0 0 0 1
≡FeO- -8.93 -1 0 1 0 -1
≡FehO- -8.93 -1 0 0 1 -1
≡FeOZn+ -1.99 -1 1 1 0 1
≡FehOZn+ 0.99 -1 1 0 1 1

where the inclusion of a small ‘h’ shows the involvement of a high-affinity site (this is the
designation also in Visual MINTEQ). Note that the stoichiometry of the Boltzmann factor
(e(Fψo/RT)) is equal to the change in surface charge of the reaction.
As Table 4.1 shows, Zn is assumed to form a monodentate complex. This is typical for DLM-
based models; all surface complexes are usually described as monodentate complexes.
In their model, Dzombak and Morel (1990) also suggested surface precipitation to be an
important process for certain metal cations (particularly for Zn) and also suggested a submodel to
deal with this by including a dummy component (called Ts). Although this option is enabled in
the software (see the help file), this model has not been widely used, and the use of this submodel
is no longer supported in Visual MINTEQ.

4.2.9. The CD-MUSIC model

The CD-MUSIC model was originally presented by Hiemstra and van Riemsdijk (1996), and it
is discussed in detail elsewhere (see e.g. Hiemstra, 2010). It has been used with both the BSM
and TPM interface models, although nowadays it is used mostly with the TPM. A unique feature
with the CD-MUSIC model is that surface complexes can be positioned between the different
planes, most commonly between the o and β planes. This is done in the model by combining
Boltzmann factors from the two planes (for more details, please see the given references).
As an example, in Table 4.2 the surface complexation reactions for phosphate adsorption onto
ferrihydrite are shown (according to Tiberg et al. 2013).

53
Table 4.2. Table of species for phosphate adsorption to ferrihydrite according to the CD-MUSIC
model.
Species log K H+ Na+ NO3- PO43- ≡FeOH½- ≡Fe3O½- e(Fψo/RT) e(Fψβ/RT) e(Fψd/RT)
≡FeOH2½+ 8.1 1 0 0 0 1 0 1 0 0
≡Fe3O ½+
8.1 1 0 0 0 0 1 1 0 0
≡FeOHNa ½+
-0.6 0 1 0 0 1 0 0 1 0
≡Fe3ONa ½+
-0.6 0 1 0 0 0 1 0 1 0
≡FeOH2NO3½- 7.42 1 0 1 0 1 0 1 -1 0
≡Fe3OHNO3 ½-
7.42 1 0 1 0 0 1 1 -1 0
≡Fe2O2PO2 2-
27.59 2 0 0 1 1 0 0.46 -1.46 0
≡Fe2O2POOH -
32.89 3 0 0 1 2 0 0.63 -0.63 0
≡FeOPO3H2½- 30.23 3 0 0 1 2 0 0.5 -0.5 0

In the model of Tiberg et al. (2013), which is broadly similar to the model of Hiemstra and van
Riemsdijk (2009), the reactive ferrihydrite surface groups contain both singly (≡FeOH½-) and
triply (≡Fe3O½-) coordinated surface groups, but only the former are reactive to surface
complexes. However the ≡Fe3O½ groups contribute to surface charging (with the same log K as
for the (≡FeOH½ groups) and they are also are able to bind electrolyte ions such as Na+ and NO3-
as “ion pairs”. The latter species are placed in the β plane.

4.3 Using surface complexation models in Visual MINTEQ

4.3.1. Predefined databases

The easiest option is to use any of the predefined databases that accompany the program. These
contain, apart from database values of equilibrium constants, also fixed values of a number of
model parameters, such as surface area, site density and capacitance values. This means that
simulations can be made with a minimum of effort from the user. As of 2014, the predefined
databases include the following:

- The Dzombak and Morel (1990) database for ferrihydrite, referred to in Visual MINTEQ
as HFO – Dzombak & Morel. This classical database is still the most complete of all
databases. Compared to the original 1990 database, updates have been made for some
anions (arsenate, phosphate, molybdate, tungstate) based on work by Gustafsson (2003)
and Gustafsson and Bhattacharya (2007).
- The Tonkin et al. (2004) database for hydrous manganese oxide, referred to as HMO –
Tonkin et al. This is also a DLM-based model and contains entries for divalent metal
cations.
- The Karamalidis and Dzombak (2010) database for gibbsite (Gibbsite-DLM
(Karamalidis & Dzombak 2010)), again a DLM-based model, contains entries for a
large number of anions and metal cations.

54
- The Weng et al. (2001) database for goethite using the TPM-CD-MUSIC model
(Goethite (Weng et al.)) contains entries for divalent metal cations and a selection of
anions.
- The Tiberg et al. (2013) model for ferrihydrite, Ferrih-CDM (Tiberg et al.), also using
the TPM-CD-MUSIC model, contains values for divalent metal cations as well as for a
range of different anions.
- There are also two new databases for calcite. One is the model of Wolthers et al. (2008),
which only contains acid-base reactions, and the other by Sö et al. (2012) contains
surface complexation reactions for arsenate and phosphate. Hopefully the calcite
database(s) can be extended in the future.

4.3.2. Example of simulation with a predefined database

In the following example we illustrate surface complexation modelling with the use of a
predefined database. To keep things relatively simple, we use the sweep option with a constant
pH step in the calculations. In many real-world applications, one may be more interested e.g. in
simulating adsorption for a range of measured pH values, in which case the Excel import options
would be used (c.f. sections 2.6 and 2.7). Here we use the ferrihydrite model of Tiberg et al.
(2013), but the procedure is the same for other predefined databases.
Example 4. 0.089 g/L ferrihydrite (i.e. about 1 mM) is suspended in an electrolyte consisting of
0.01 M CaCl2. To this system, additions have been made also of 30 µM SO42-, 30 µM AsO43-, and
30 µM H4SiO4. This system is titrated from pH 4 to 10 in a system open to the atmosphere. At
high pH calcite may be formed (due to entry of carbonate from the atmosphere), and for our
model purposes we assume that equilibrium conditions are valid. Any sorption to the precipitated
calcite is neglected and the temperature is 25oC. What is the pH-dependent sorption percentage of
sulphate, arsenate and silicic acid under these conditions? Use the general case of the Gouy-
Chapman equation in the calculations (c.f. chapter 4.2).

1. Start Visual MINTEQ. The main menu will appear.


2. Ensure that the pH option is Fixed at... We will not need to change the pH in the box at
this stage
3. The ionic strength option should be To be calculated.
4. Use the concentration unit Molal.
5. Add components. Supply Ca2+ and Cl-, with concentrations of 0.01 and 0.02 M
respectively. Then add 30 µM SO42-, 30 µM AsO43-, and 30 µM H4SiO4 (can be entered
as “30E-6” if the Molal concentration unit is used).
6. Enter the Gases menu. Click Add to fix atmospheric CO2 Go back to the main menu.
7. Click Solid phases and excluded species – Specify possible solid phases and add
calcite. Go back to the main menu.

55
8. Click Adsorption – Surface complexation reactions.
9. For the combo box next to Select adsorption model, find the predefined database (Ferrih-
CDM (Tiberg et al.) and select it.
10. Note that all text boxes except for one are locked because the fixed values of parameters
used in this model. The only text box that can be edited is the Solid concentration (g/l).
Enter the value of 0.089.
11. In the lower part of the menu, there is a check box next to GC, General case. Check it.
12. Now everything has been entered and the menu page should look like Fig. 4.3.1. Click
Save and back to main menu

Fig. 4.3.1. The final surface complexation menu for example 4.

13. At last we should provide the sweep parameters. Enter the Multi-Problem/Sweep menu
and tick the check box Sweep – one parameter is varied.

56
14. Give the start pH value (4) in the appropriate text box, and the increment between values
(0.1 pH values). The number of problems can then be calculated to 61, so write this value
into the State the number of problems box.
15. In the lower part of menu, where sweep output parameters are specified, it is sufficient to
add the total sorbed concentrations of AsO4, SO4 and H4SiO4. From these values sorbed
percentages may be calculated in Excel later.
16. Save and go back to the main menu. Run MINTEQ and click Selected sweep results.
Export all these results to Excel and prepare a graph of % adsorbed vs. pH. The result
will hopefully look similar to Fig. 4.3.2.
100
90
80
70 Fig. 4.3.2. Simulated pH dependences
60 for the adsorption of arsenate,
% adsorbed

50 sulphate, and silicic acid in example 4.


AsO4
40 SO4

30 H4SiO4

20
10
0
4 5 6 7 8 9 10
pH

4.3.3. Specify your own surface complexation model

A lot more work is required when you start “from scratch” to build your own surface
complexation model. However, all the tools are there. Surface complexation reactions may be
added and/or edited in a database editor. You provide other necessary parameters (capacitances,
site concentrations etc) in the text boxes. You can lock the site densities at preferred values to
more easily provide your site concentrations. And so forth. In this section we will provide a
simple example of how set up a model for gallium sorption to silica. We will try to replicate the
model published by Pokrovsky et al. (2004). This will hopefully illustrate some of the issues
encountered when using Visual MINTEQ to set up new SCM:s.

Example 5. 5 g L-1 amorphous silica is suspended in an electrolyte consisting of 0.01 M


NaNO3. To this system, 0.14 µM Ga3+ ions were added and the adsorption of Ga was studied as a
function of pH between 2 and 7. Predict the pH-dependent Ga sorption with the 2-pK CCM at
25oC using the following model parameters: Capacitance C1 = 1 F m-2, surface area = 462 m2 g-1,
site density (6.02 sites nm-2, recalculated from the density 10 µmol m-2 given in the paper).
Reactions and constants are shown in Table 4.3.

57
Table 4.3. Table of species for gallium adsorption to silica according to the 2-pK constant
capacitance model of Pokrovsky et al. (2004).
Species log K H+ Ga3+ ≡SiOH e(Fψo/RT)
≡SiOH2+ -3.0 1 0 1 1
≡SiO- -7.0 -1 0 1 -1
≡SiOGa(OH)3- -7.7 -4 1 1 -1

1. Start Visual MINTEQ. The main menu will appear.


2. Ensure that the pH option is Fixed at... We will not need to change the pH in the box at
this stage
3. The ionic strength option should be To be calculated.
4. Use the concentration unit Molal.
5. Add components. Supply 0.01 M Na+ and NO3-. Then add 0.14 µM Ga3- (can be entered
as “1.4E-7” if the Molal concentration unit is used).
6. Click Adsorption – Surface complexation reactions.
7. For the combo box next to Select adsorption model, find the option 2-pK CCM and
select it.
8. In the box Solid concentration (g/l). enter 5 (as written above). Then enter 462 in the
box for the specific surface area and 1 in the Inner capacitance box. To enter the site
density, you need to tick the box Show site densities instead of site concentrations,
which you find in the lower left corner of the menu. After this you can enter the site
density value 6.02 in the box Site density (nm-2).
9. The next step is to create a database for the surface complexation reactions. We can use
the template database ccm_std.vdb for this. To open the Sorption / complexation
database editor, click on the button with the name of the template database
(ccm_sted.vdb) next to the label Complexation database.
10. To start with, save a copy of the template database in the name you would like to have.
To do this, start by selecting one of the “present database species” in the combo box on
the left. Next, click Save changes to new database and provide the name. The name of
this database in the example file is “example5_Si.vdb”.
11. In the editor, there are already two reactions with the same stoichiometry as for ≡SiOH2+
and ≡SiO- in Table 4.3. The only thing you need to do is to change the value of log K,
according to the values given in Table 4.3. After each change, remember to click Save
changes to current database.

12. Now you need to add one new species, i.e. ≡SiOGa(OH)3- of Table 4.3. Click Add new
species. This will open new fields in the lower part of the editor. First, provide the
Species name. Next, add the stoichiometry and components in the reaction. You should
always start with the surface component (that’s why the component type Surface comp.

58
is preselected). When you are done click Next component and continue with the main
cation/anion, then other ions, and last of all you enter the electrostatic components. After
the last entry, click Add to list. This will move your species to the main species list in the
upper part of the menu. You will now need to enter values into the remaining empty
boxes, log K and dHr. The reaction enthalpy is not known, therefore add the value of 0
into the latter box. When you are done click Save changes to current database and then
click Quit to exit the editor.

Fig. 4.3.3. The surface complexation menu in example 5.

13. You are now back on the Surface complexation menu, which should be similar to
Figure 4.3.3 (if you don’t see it, the window is probably minimized and you need to click
the icon for it in the task bar below). Click Save and back to main menu.

14. We can then run a sweep from pH 2 to pH 7, see section 2.6.1. Choose “Ga+3” as the
sweep component, with the type “Total sorbed”.

59
15. Run MINTEQ. You will probably find that there are convergence problems in the higher
end of the pH range. This is because the Ga3+ activity becomes so small that the initial
activity guess becomes too poor. It turns out that in this case it is better to use an initial
activity guess of 10-16 than to use the default settings (which implies an activity guess that
is equal to the total concentration). To make this change, click View / edit list from the
main menu and untick the box Act guess? for the Ga+3 component.

16. Run MINTEQ again, it should now converge. Go to the Selected sweep results and
export them to Excel. By use of the results you can make a plot of % adsorbed Ga vs. pH,
which would be similar to Figure 4.3.4. As shown in the graph, the adsorption edge of Ga
is steep, it goes from 1 % adsorbed Ga at pH 2 to more than 99 % at pH 3.

100
90
80
70
Fig. 4.3.4. Percent adsorbed Ga as a
% adosrbed Ga

60 function of pH, according to the


50 model of Pokrovsky et al. (2004)
40
30 (example 5).
20
10
0
1 2 3 4 5 6 7
pH

4.4 Ion-exchange reactions

4.4.1. The Gaines-Thomas equation


Ion exchange implies a weak electrostatic interaction between the adsorbing ion and the
surface. The adsorbing ion usually keeps its inner shell of water molecules and accumulates in the
diffuse layer around the particle surface, i.e. it does not enter the Stern layer (c.f. section 4.2). A
typical ion-exchange reaction is:

2(≡X- … Na+) + Ca2+ ↔ (2≡X-)… Ca2+ + 2Na+ (4.23)


where ≡X- is a negatively charged surface. The standard method for incorporating ion
exchange in Visual MINTEQ is by use of the Gaines-Thomas equation, which in the general case
can be written as:

E B1/ m {A}1/ n
K GT = (4.24)
E A1/ n {B}1/ m

where KGT is the Gaines-Thomas selectively coefficient, m and n are the charges of ion B and
A, respectively, and EA and EB are the charge equivalent fractions of the CEC that consist of

60
sorbed ion A and B (eq / eq). If the value of KGT is equal to 1 then there is no selectivity. For the
reaction in equation 4.23 we would get:

E Ca 0.5 {Na + }
K GT = (4.25)
E Na {Ca 2+ }0.5

To incorporate the Gaines-Thomas equation in Visual MINTEQ, the equation has been broken
down into half-reactions to allow the partitioning of several different ions. The reactions defining
a diffuse-layer species include a reference diffuse-layer component. There are two diffuse-layer
components, namely H+D and OH-D. They represent accumulated H+ and OH- in the diffuse
layer. The reference component H+D is used when the surface charge is predominantly negative.
The concentrations of all other cationic counter-ions are described with reference to H+D. For
example, the concentration of Na+ in the diffuse layer, [Na+]D, is in principle calculated by using
an equation derived from equation 4.23, in which [H+]D is the other member of the exchange
couple. This means that the KGT selectivity coefficient for a diffuse-layer species in the database
is based on the selectivity of the cation over H+. In Visual MINTEQ, the ion-exchange reaction is
defined in the same way as “normal” equilibrium reactions. For example, for the half-reaction
determining the Ca2+ sorption relative to that of the reference component H+, the following
reaction is used:

Ca2+ + 2H+D ↔ Ca2+D + 2H+ ; K (4.26)


The equilibrium constant K is not a simple activity quotient but contains a correction function
to incorporate both exchangeable fractions and the Gaines-Thomas selectivity coefficient.
It is important to note that there are two ways of writing the Gaines-Thomas equation. Both are
equally valid, but they result in slightly different selectivity coefficients, which often need to be
considered when implementing other Gaines-Thomas-based models in Visual MINTEQ. In the
alternative convention, the equation can be written as:

E B n {A}m
K GT,alt = (4.27)
E A m {B}n

with symbols as in equation 4.23. To recalculate a selectivity coefficient based on the


convention in 4.27 to the convention used by Visual MINTEQ (equation 4.23), use the following
relationship:

KGT = KGT,alt1/z (4.28)


where z is the charge of the main component in the half-reaction (i.e., not the reference
component H+), see also example 6 below.

4.4.2. When is the Gaines-Thomas equation used?


Below the different situations in which Visual MINTEQ can or will use the Gaines-Thomas
equation are briefly described:

61
- Ion exchange on a permanently charged surface (such as the planar surfaces of
phyllosilicate clays). The charge of permanently charged surfaces is typically negative,
which is also what Visual MINTEQ expects. If the permanently charged surface is
spatially separated from any variable-charge groups (which is normally assumed) then
follow this procedure to add ion exchange to the problem:
1. Click Adsorption – Surface complexation reactions. Add a new surface.
2. In the combo box Select adsorption model, click Fixed-charge site.
3. Supply the site concentration of the fixed charge site (which often corresponds to
the CEC) in mmol L-1.
4. By default, the box Counter-ion accumulation is ticked. This means that ion-
exchange reactions will be enabled (if left unticked there will only be a charged
surface without any reactions).
5. The counter-ion database is the default database “gtcon_std.cdb” in which all
selectivity coefficients are set to 1. See Fig. 4.4.1 for an example of the entry for
ion-exchanged Ca2+ in this database. To edit or change the database, click the
button with the database name. See example 5 for general instructions of how to
edit the database. Remember that databases that contain ion-exchange reactions
should end with .CDB.
6. Go back to the surface complexation menu and click Save and Back to main
menu.

Fig. 4.4.1. The database


entry for Ca+2D, see text.

- Ion exchange onto a variable-charge surface with a defined diffuse layer. This option
allows the user to fill the diffuse layer with counterions when a surface complexation
model is used; the proportion of different counterions is determined using the Gaines-
Thomas equation. First a surface complexation model should have been chosen
(described in sections 4.2 and 4.3). Ion-exchange reactions are activated by ticking the
box Counter-ion accumulation for the surface in question.

62
- Ion exchange to permanent and variable-charge groups on the same surface. This
option can be of interest when the two types of groups are not spatially separated, i.e.
they are both present at the same surface. The theory has been described by Kraepiel et
al. (1998); however, so far there are few other examples in the literature in which this
method has been used. To use this option, follow this procedure:
1. Define a surface complexation model according to section 4.2 and 4.3.
2. Click Add fixed-charge site to open a text box, in which you enter the
concentration of this site (mmol L-1).
3. Tick the box Counter-ion accumulation to activate ion-exchange reactions to
both the fixed-charge site and to the diffuse layer of the variable charge surface.

- Electrostatic attraction to humic surfaces. Finally, the Gaines-Thomas equation is


used also for calculating the distribution between different electrostatically bound ions
in the Stockholm Humic Model. For more information on this, see chapter 5.

4.4.3. Example problem: nickel sorption to illite


In the following example, the 2SPNE SC/CE model of Bradbury and Baeyens (1997, 2009) is
set up and used for a data set consisting of nickel sorption to Na-illite (Bradbury and Baeyens,
2009). In the process, we will encounter some of the most common problems when implementing
cation-exchange reactions as well as equilibrium models from the literature.

Table 4.4. Table of species for nickel adsorption to Na-illite using the 2SPNE SC/CE model
Species log K H+ Na+ Ni2+ ≡SOH ≡W1OH ≡W2OH H+1D
≡SOH2 +
4.0 1 0 0 1 0 0 0
≡SO- -6.2 -1 0 0 1 0 0 0
≡W1OH2 +
4.0 1 0 0 0 1 0 0
≡W1O -
-6.2 -1 0 0 0 1 0 0
≡W2OH2 +
8.5 1 0 0 0 0 1 0
≡W2O- -10.5 -1 0 0 0 0 1 0
≡SONi +
0.7 -1 0 1 1 0 0 0
≡SONiOH -8.2 -2 0 1 1 0 0 0
≡SONi(OH)2 -17.3 -3
-
0 1 1 0 0 0
Na+D 1a -1 1 0 0 0 0 1
a
Ni+2D 3.55 -2 0 1 0 0 0 2
a
Shown here is KGT, i.e. the selectivity coefficient (not logged).

Example 6. 2 g L- Na-illite is suspended in an electrolyte consisting of 0.1 M NaClO4. To this


system 2 × 10-9 M Ni2+ ions are added, as well as acid and base to produce equilibrium pH values
ranging from 3 to 11. The resulting distribution coefficients for Ni are shown in Fig. 3b of

63
Bradbury and Baeyens (2009). Simulate pH-dependent distribution coefficients with the 2SPNE
SC/CE model. In this model, the NEM is used for surface complexation of Ni2+ onto the edge
sites, whereas the Gaines-Thomas equation is used for the planar sites. Three different sites
≡SOH, ≡W1OH and ≡W2OH (where ≡SOH are “strong” sites and the two others are “weak”) are
used in the NEM, with site concentrations of 0.004, 0.08 and 0.08 mmol L-1 respectively. The
planar sites (for which ion exchange occur) contain 0.45 mmol L-1 sites and are spatially
separated from the edge sites. Reactions and constants are shown in Table 4.4. It is important to
note that Bradbury and Baeyens (2009) used the Gaines-Thomas formalism of equation 4.27,
therefore equation 4.28 had to be used to recalculate the given coefficient for Ni2+. Briefly, the
following steps are followed to implement this model into Visual MINTEQ:

1. Follow points 1-4 from example 5.


2. Add components. Supply 0.1 M Na+ and ClO4-. Then add 2 × 10-9 M Ni2+ (can be entered
as “2E-9” if the Molal concentration unit is used).
3. Click Adsorption – Surface complexation reactions. Choose two surfaces.
4. For the combo box next to Select adsorption model, find the option Fixed-charge site
for the first surface and select it. Then select NEM for the second surface
5. In the Fixed charge site column, enter 0.45 into the empty textbox for the site
concentration (as written above).
6. In the NEM column, add two more sites so that there are three empty textboxes. Enter the
site concentrations as given above, i.e. 0.004, 0.08 and 0.08.
7. Now create a database for the ion-exchange reactions. Click the template database
gtcon_std.cdb. In the editor, save it in another name (see example 5 for details) and then
edit the entry for Ni+2D according to Table 4.4. Save and quit to the surface
complexation menu.
8. Next create a database for the surface complexation reactions by modifying the template
database nem_std.vdb. Follow instructions given in example 5. Save and quit to the
surface complexation menu.
9. Click Save and Back to main menu.
10. Enter the Multi-Problem / Sweep menu to set up a sweep with pH values ranging from 3
to 11. Define total dissolved and total sorbed Ni2+ in the sweep output table.
11. Run the problem and export the sweep output table to Excel. In Excel, calculate the
distribution coefficient Rd as defined by Bradbury and Baeyens (2009) and plot log Rd as
a function of pH. The result should be similar to the blue line in Fig. 4.4.2.
12. When comparing with the plot of Bradbury and Baeyens (2009) it can be seen that the
results look the same until pH 8.4, but at higher pH the results diverge considerably. The
reason for this can be tracked down to the use of a different set of Ni hydrolysis constants
for the species NiOH+, Ni(OH)2(aq) and Ni(OH)3-. To produce a model fit consistent with

64
Bradbury and Baeyens (2009) we need to modify these in the main thermodynamic
database.
13. To do this, use your file-handling tools to copy the database file “thermo.vdb” in your
user folder to a new file with a different name

6
Fig. 4.4.2. Simulated Ni distribution
5
coefficient Rd as a function of pH in
log Rd Ni(II) / L kg-1

4 example 6. The blue line is produced


when using the default values of the Ni
3 hydrolysis constants in Visual
MINTEQ, whereas the red line results
2 when these constants were modified to
Ni(OH)n constants in MINTEQ those used by Bradbury and Baeyens
1 (2009).
Ni(OH)n constants used by BB

0
3 4 5 6 7 8 9 10 11
pH

14. Click Database management – Database selection from the main menu and select this
database as the main thermodynamic database instead of “thermo.vdb”.
15. Click Database management – Aqueous species, locate the Ni hydrolysis constants in
question and modify them according to the values used by Bradbury and Baeyens (2009).
Remember to save the change after each edited complex.
16. Then run MINTEQ again, and you will get new results (the red line in Fig. 4.4.2), which
agree excellently with the model fit shown by Bradbury and Baeyens (2009).

4.5. Optimization of surface complexation constants by use of PEST

4.5.1 Background
From version 3.1, Visual MINTEQ also contains an option to optimize surface complexation
constants by use of PEST (Doherty, 2010, also see: http://www.pesthomepage.org). Traditionally,
FITEQL (Herbelin and Westall, 1999) has been the perhaps most widely used software for
calculating surface complexation constants. More recently, Bachmaf and Merkel (2011) evaluated
the use of PEST and concluded that it is a much more powerful tool for this purpose. There are
many reasons for this, for example: (i) PEST can be used to optimise almost any parameter, not
just surface complexation constants; (ii) FITEQL can only consider a small number of
components and species, PEST has no such limitation; (iii) in FITEQL the surface complexation

65
models are hard-coded, which means that extensions or new options can only be made after
modifying the FITEQL code, whereas PEST is only an optimization tool, which relies on the
calculations made by the software connected to it (in this case Visual MINTEQ).
For a detailed account of the principles and functionality of PEST, the reader is referred to
Doherty (2010) and, as regards its application to surface complexation models, to Bachmaf and
Merkel (2011). Here we only provide a few very basic features of the program. PEST uses a
Gauss-Marquardt-Levenberg algorithm for parameter estimation. Basically, PEST minimises the
weighted sum of squared differences between model-generated observation values and those
measured in the laboratory or field; this sum of weighted, squared, model-to-measurement
discrepancies is referred to as the “objective function”. In the proecess, the contribution of
different subgroups to the objective function is calculated.
A set of initial parameter values must be supplied to PEST before each run. During the
optimization, PEST modifies the values of the parameters that are to be optimized, passes them to
Visual MINTEQ, which provides a new set of model-generated values, PEST modifies the
parameter values again etc. until the objective function is minimized.
Apart from the value of the objective function, PEST also reports another goodness-of-fit-
parameter, the correlation coefficient R, which is independent of the number of observations in
the parameter estimation process, and it is also independent of the absolute levels of uncertainty
of the observations (unlike the objective function). R is defined as:

R=
∑ ( wi ci − m ) ( wi coi − mo ) (4.29)
 ∑ ( wi ci − m )( wi ci − m ) ∑ ( wi coi − mo )( wi coi − mo ) 
1/2

where ci is the ith observation value, coi is the model-generated counterpart to the ith observation
value, m is the mean value of the weighted observations, mo is the mean of model-generated
counterparts to observations, and wi is the weight associated with the ith observation. Generally, R
should be > 0.9 for an acceptable fit (Doherty, 2010).
When setting up a calculation of PEST, three text files need to be created from which PEST
reads in all essential information for the run. These are:
- a template file (file ending *.tpl). This is a modified input file into which PEST inserts
trial values of parameters. When surface complexation constants are optimized, the
Visual MINTEQ database file that contains the constants will serve as the seed for the
template file.
- a PEST control file (*.pst). This file contains detailed information on how PEST
should optimize the parameter set in question, including e.g. acceptable ranges of the
optimized constants.
- An instruction file (*.ins), which tells PEST where to read the output from each model
simulation.

66
When Visual MINTEQ is used to call PEST, the three above files are generated automatically
with “standard” values of parameter settings, in most cases taken from Bachmaf and Merkel
(2011). Also, the file name of these files will always start with “pestopt”.
When the optimization is complete, the optimized constants, the R value, and the calculated 95
% confidence interval will be reported directly back to the Visual MINTEQ interface.
At present, the Visual MINTEQ interface can only be used to call PEST to optimize surface
complexation constants. However, in principle it should be possible to access much more of the
functionality of PEST by manually editing the above mentioned text files. Readers interested in
this are advised to scrutinize the PEST manual (Doherty, 2010) and the paper by Bachmaf and
Merkel (2011).

4.5.2 How to use PEST in Visual MINTEQ


The general procedure for optimizing surface complexation constants in Visual MINTEQ is the
following:
1. Create a Visual MINTEQ input file using the Multi-problem generator option, in which
the surface complexation model is defined and every problem describes the conditions of
one observation. The pH needs to be fixed (= equal to the measured pH value of the
observation).
2. Save the file when finished. Make sure that the main menu shows the settings of problem
1.
3. Go back to the Surface complexation menu. There should now be a button named PEST
optimizations. Click it.
4. On the PEST optimizations menu, start by choosing the adsorbing ion, for which you
would like to optimize surface complexation constants.
5. Different surface complexation reactions will now be listed, they are taken from the
surface complexation database you have connected to the file. For each complex, you
have three choices: a) do not include it in the optimization process (untick the box
Include in optimization); b) include it in the optimization, but do not tie the constant to
that of another complex (tick the box Include in optimization, but leave the box Tie the
log K of this complex to… unticked; c) Tie the log K of the complex to that of another
complex, i.e. both check boxes should be ticked.
6. For each complex you can also edit the log K and the stoichiometry of the components.
However, you cannot edit the reaction itself on this menu, for this you have to go back to
the Surface complexation menu and edit the database. For any log K value that is to be
optimized, the value entered is the start guess. It is important that the start guess is good
in order to get convergence during the optimization process.
7. The box Number of observation groups allows you to calculate the contribution of the
objective function for different groups of data. The default setting is 1 (i.e. one group).

67
8. Select data type in the check box. The option Percent sorbed is the one most often used.
9. The next step is to import observed values with which PEST will compare the model-
generated values. The type of values should be the same as defined in the Select data
type box. Data are imported by selecting a range of cells from an Excel worksheet and
then clicking X!. In the lower part of the menu you will see how many values that have
been imported. The values should be imported in the same order as they are arranged in
the file. It is also very important that the number of imported values is equal to the
number of values in the file before proceeding to the next step.
10. Click Create PEST files. This will create the pestopt.tpl, pestopt.pst and pestopt.ins files.
11. Click Quit and then click Save and back to main menu. Next run MINTEQ.
12. During the run, a window with the PEST program will be opened. Usually it takes
between 10 and 50 model calls for PEST to converge.
13. When completed, a new menu, Summary of PEST optimizations, will be opened, with
the optimized constants, the R value, and the calculated 95 % confidence intervals.
Remember that PEST will not change anything in your database, so to bring about these
changes you will need to note the values and edit the database from the Surface
complexation menu. To get additional stastics, open the file “pestopt.rec” in WordPad.
At the present time the optimization settings cannot be saved to the Visual MINTEQ input file,
so the PEST optimization settings have to be entered again every time a new file is opened.
However, by clicking the box Do not unload form on the PEST optimizations menu, you will
be able to go back and edit the settings after each run.

pH % MoO4 sorbed Fh in susp (g/L) pH % MoO4 sorbed Fh in susp (g/L)


3.13 100 0.267 7.09 69.1 0.089
3.64 100 0.267 7.23 59.18 0.089
5.2 100 0.267 7.29 48.66 0.089
5.94 100 0.267 7.44 35.92 0.089
6.3 99.7 0.267 7.71 23.56 0.089
6.59 98.74 0.267 7.89 19.32 0.089
6.87 93.7 0.267 8.39 11.28 0.089
7.07 84.6 0.267 3.09 97.9 0.0267
7.2 73.2 0.267 3.65 98.56 0.0267
7.21 61 0.267 6.06 61.04 0.0267
7.71 47.58 0.267 6.66 45.04 0.0267
7.85 36.7 0.267 6.83 33.5 0.0267
8.3 27.9 0.267 7.01 29.58 0.0267
8.46 22.4 0.267 7.13 21.1 0.0267
8.81 15 0.267 7.2 19.1 0.0267
9.76 5 0.267 7.28 10.88 0.0267
3.11 99.8 0.089 7.55 8.76 0.0267
3.64 100 0.089 8.53 2.28 0.0267
6.39 97.1 0.089 9.08 3.72 0.0267
6.91 81.48 0.089

Fig. 4.5.1. Measured pH values, percent MoO4 adsorbed, and suspension concentrations of
ferrihydrite for the data of Gustafsson (2003) used in example 7.

68
4.5.3 Example problem: optimizing molybdate surface complexation constants
In this example, the CD-MUSIC model is used to describe molybdate adsorption to
ferrihydrite. The experimental data are from Gustafsson (2003), but the model we use here is the
ferrihydrite model of Tiberg et al. (2013) (i.e. the same as was used in example 5). For the
purpose of this example, it was assumed that molybdate mainly forms a bidentate complex on
ferrihydrite, but at high pH an outer-sphere complex may also become important.

Example 7. In three different subseries, three different concentrations of ferrihydrite (0.0267,


0.089 and 0.267 g L-1) were suspended in 0.01 M NaNO3, with 50 µM molybdate (as Na2MoO4)
also present. The suspensions were shaken at 22oC for 24 h before solid-solution separation. The
data needed for Visual MINTEQ input and data evaluation are shown in Fig. 4.5.1. In Table 4.5,
the table of species for this problem is shown. In this problem, we do not use the general case of
the Gouy-Chapman equation for the charge-potential relationship.

Table 4.5. Table of species for molybdate adsorption to ferrihydrite according to the CD-MUSIC
model.
Species log K H+ Na+ NO3- MoO42- ≡FeOH½- ≡Fe3O½- e(Fψo/RT) e(Fψβ/RT) e(Fψd/RT)
≡FeOH2½+ 8.1 1 0 0 0 1 0 1 0 0
≡Fe3O½+ 8.1 1 0 0 0 0 1 1 0 0
≡FeOHNa ½+
-0.6 0 1 0 0 1 0 0 1 0
≡Fe3ONa ½+
-0.6 0 1 0 0 0 1 0 1 0
≡FeOH2NO3 ½-
7.42 1 0 1 0 1 0 1 -1 0
≡Fe3OHNO3½- 7.42 1 0 1 0 0 1 1 -1 0
≡Fe2O2MoO2 -
18 a
2 0 0 1 2 0 0.5 -0.5 0
≡FeOH2 MoO4
… 1.5-
11 a
1 0 0 1 1 0 0.8 -1.8 0
a
Not known, this is a start guess for log K

1. Start Visual MINTEQ. The main menu will appear.


2. Ensure that the pH option is Fixed at... We will not need to change the pH in the box at
this stage
3. The ionic strength option should be To be calculated.
4. Use the concentration unit Molal.
5. Add components. Supply Na+ and NO3-, with concentrations of 0.01 M. Then add 50 µM
MoO42- (can be entered as “30E-6” if the Molal concentration unit is used).
6. Click Adsorption – Surface complexation reactions.
7. For the combo box next to Select adsorption model, find the predefined database (Ferrih-
CDM (Tiberg et al.) and select it.

69
8. In the Solid concentration (g/l) box, enter the ferrihydrite concentration in the first
problem, which is 0.267 (Fig. 4.5.1). Click Save and back to main menu.
9. Go to the Multi-problem / Sweep menu, select Multi-problem generator, and enter the
number of problems (39). The Import data from Excel button should appear. Click it
and use the Excel import menu to import pH values and ferrihydrite suspension
concentrations from an Excel file (see instructions in chapter 2.7). Click Import and wait
until you get the message Finished!, then click Quit.
10. On the lower part of the Multi-problem / Sweep menu you can define, for example, the
total dissolved and sorbed concentrations of MoO42-, which will later on allow you to
draw a graph of pH vs. sorbed percentages in the output. Then click Save and Back.
11. Choose Adsorption – Surface complexation reactions again. You should now see the
button PEST optimizations. Click it.
12. Choose MoO4-2 as the adsorbing ion. Review the surface complexation reactions that
appear in the fields below. Because the ferrihydrite model of Tiberg et al. (2013) allows
the surface to be divided into three subsites with different log K but with otherwise
similar reactions, there are in fact three reactions defined for each of the complexes in
Table 4.5. However, as MoO4 is not known to bind with a heterogeneous site-binding
affinity on ferrihydrite, we will not need to optimize all three complexes. It is sufficient
to optimize just one of them, letting the other two get the same value as the first. This is
done by 1) include all complexes in the optimization (i.e. the box Include in
optimization should be ticked), and 2) let the log K of the two minor complexes be tied
to the major one (i.e. tick the box Tie the log K of this complex to… and select the
major complex in the box that appears. Repeat this for both surface complexes.
13. For each complex, change the log K (start guess) to the values shown in Table 4.5.

Fig. 4.5.2. The PEST optimization menu in Example 7 when the input is completed.

70
14. There are 3 subseries with different ferrihydrite concentrations in this data set. It might be
of interest to see the contribution of each to the objective function. Therefore enter the
value 3 in the box Number of observation groups.
15. In the Select data type box, choose Percent sorbed and tick the box Do not unload
form to allow you to get back to the menu and make changes at a later stage, without
having to input everything again.
16. Now read in the data for percent sorbed MoO4 from your Excel file. Start with the data
pertaining to the first observation group (i.e. the data with 0.267 g L-1 ferrihydrite). Select
this range in the Excel file, copy, and then click X! If everything went well, Visual
MINTEQ reports that you have read 16 values. Repeat the same procedure for the two
remaining observation groups. When you are done the PEST optimizations menu should
look as in Fig. 4.5.2.
17. Click Create PEST files, then Quit and click Save and back to main menu
18. Run the problem. You will now notice that PEST is initiated and calls MINTEQ a
number of times until convergence has been obtained.

Fig. 4.5.3. Visual MINTEQ-generated report of the PEST optimization results


19. If the optimization is completed without error messages, Visual MINTEQ will report the
main results according to Fig. 4.5.3. For each complex, the calculated log K is shown.
For optimized complexes (i.e. that are not tied) the 95 % confidence interval is also
shown – this value is the same for all tied complexes. The results can be exported to
Excel. Moreover, you can close and get on to the detailed output.

71
20. The ASCII text file “pestopt.rec”, which is found in the folder of user-editable Visual
MINTEQ files (if you don’t know where it is, click Parameters – Various default
settings to find out) contain a lot more information concerning statistics etc. Open it in
WordPad. In the lower half of the file under Objective function you see the lines
Contribution to phi from observation group… The lowest value is found for group 3,
which was the data set for 0.0267 g L-1 ferrihydrite. Thus the model provided the best fit
to this observation group, whereas the poorest fit was for the data set with 0.267 g L-1
ferrihydrite

4.6 Adsorption isotherms

Text to be added later

References

Bachmaf, S., Merkel, B.J. 2011. Estimating water chemistry parameters from experimental data
using PEST with PHREEQC. Freiberg Online Geology, vol. 28. Web: http://tu-
freiberg.de/fakult3/geo/fog/FOG_Vol_28.pdf.
Ball, J.W., Jenne, E.A., Cantrell, M.W. 1981. WATEQ3: a geochemical model with uranium
added. Open File Report 81-1183. U.S. Geological Survey, Washington DC.
Bolt, G.H., van Riemsdijk, W.H. 1982. Ion adsorption on inorganic variable charge constituents.
In “Soil Chemistry. Part B: Physico-chemical methods” (ed. G.H. Bolt), pp. 459-503. Elsevier,
Amsterdam.
Bradbury, M.H., Baeyens, B. 1997. A mechanistic description of Ni and Zn sorption on Na-
montmorillonite. Part II. Modelling. J. Contam. Hydrol. 27, 223-248.
Bradbury, M.H., Baeyens, B. 2009. Sorption modelling on illite Part I. Titration measurements
and the sorption of Ni, Co, Eu and Sn. Geochim. Cosmochim, Acta 73, 990-1003.
Dickson, A.G. 1981. An exact definition of total alkalinity, and a procedure for the estimation of
alkalinity and total inorganic carbon from titration data. Deep Sea Res. 28, 609-623.
Doherty, J. 2010. PEST. Model-independent parameter estimation. User Manual, 5th edition.
Watermark Numerical Computing. Web: http://www.pesthomepage.org.
Dzombak, D.A., Morel, F.M.M. 1990. Surface complexation modeling. Wiley, New York.
Felmy, A.R., Girvin, D.C., Jenne, E.A. 1984. MINTEQ – a computer program for calculating
aqueous geochemical equilibria. EPA-600/3-84-031. U.S. Environmental Protection Agency,
Athens, GA.
Goldberg, S. 1992. Use of surface complexation models in soil chemical systems. Adv. Agron.
47, 233-329.
Goldberg, S., Criscenti, L.J., Turner, D.L., Davis, J.A., Cantrell, K.J. 2007. Adsorption-
desorption processes in subsurface reactive transport modeling. Vadose Zone J. 6, 407-435.
Gustafsson, J.P. 2003. Modelling molybdate and tungstate adsorption to ferrihydrite. Chem. Geol.
200, 105-115.

72
Gustafsson, J.P., Lumsdon, D.G. 2014. Comment on "Citrate adsorption can decrease soluble
phosphate concentration in soils: Results of theoretical modelling" by Marek Duputel, Michel
Brossard, Benoit Jaillard, Davey L. Jones, Philippe Hinsinger and Frédéric Gerard (2013).
Appl. Geochem. 46, 85-89.
Herbelin, A., Westall, J.C. 1999. FITEQL 4.0: A computer program for determination of
chemical equilibrium constants from experimental data. Report 99-01, Department of
Chemistry, Oregon State University.
Hiemstra, T. 2010. Surface complexation at mineral interfaces: multisite and charge distribution
approach. PhD thesis, Wageningen University.
Hiemstra, T., van Riemsdijk, W.H. 1996. A surface structural approach to ion adsorption: the
charge distribution (CD) model. J. Colloid Interface Sci. 179, 488-508.
Hiemstra, T., van Riemsdijk, W.H. 2009. A surface structural model for ferrihydrite. I: sites
related to primary charge, molar mass and mass density. Geochim. Cosmochim. Acta 73, 4423-
4436.
Karamalidis, A.K., Dzombak, D.A. 2010. Surface complexation modeling: Gibbsite.Wiley, New
York.
Kraepiel, A.M.L., Keller, K., Morel, F.M.M. 1998. On the acid-base chemistry of permanently
charged minerals. Environ. Sci. Technol. 32, 2829-2838.
Lützenkirchen, J., Marsac, R., Kulik, D.A., Payne, T.E:, Xue, Z., Orsetti, S., Haderlein, S.B.
2014. Treatment of multidentate surface complexes and diffuse layer implementation in
various speciation codes. Appl. Geochem., in press.
Mathur, S.S., Dzombak, D.A. 2006. Surface complexation modeling: Goethite. In “Surface
complexation modelling” (ed. J. Lützenkirchen), pp. 443-468. Academic Press, London.
Pokrovsky, O.S., Pokrovski, G.S., Schott, J. 2004. Gallium(III) adsorption on carbonates and
oxides: X-ray fine structure spectroscopy study and surface complexation modeling. J. Colloid
Interface Sci. 279, 314-325.
Sposito, G. 1984. The surface chemistry of soils. Oxford University Press, Oxford, UK.
Tiberg, C., Sjöstedt, C., Persson, I., Gustafsson, J.P. 2013. Phosphate effects on copper(II) and
lead(II) sorption to ferrihydrite. Geochim. Cosmochim. Acta 120, 140-157.
Tonkin, J.W., Balistrieri, L.S., Murray, J.W. 2004. Modeling sorption of divalent metal cations on
hydrous manganese oxide using the diffuse double layer model. Appl. Geochem. 19, 29-53.
Venema, P., Hiemstra, T., van Riemsdijk, W.H. 1996. Multisite cadmium adsorption on goethite.
J. Colloid Interface Sci. 183, 515-527.
Wang, Z., Giammar, D.E. 2013. Mass action expressions for bidentate adsorption in surface
complexation modeling: Theory and practice. Environ. Sci. Technol. 47, 3982-3996.
Westall, J.C., Zachary, J.L., Morel, F.M.M. 1976. MINEQL. A computer program for the
calculation of chemical equilibrium composition of aqueous systems. Tech. Note 18. Dept. of
Civil Engineering, Massachusetts Institute of Technology, Cambridge, MA.

73

Vous aimerez peut-être aussi