pcsorption.ppi

# %sorption vs pH for Zn on Hfo
# Modelled after 'Example 8' from the PHREEQC example set

SPECIATION
  calculationType                      custom
  calculationMethod                    1
  xmin                                 5.0                           # x-axis (pH) range
  xmax                                 8.0
  loopMin                              -6.0                          # z-loop (log ZnT), one curve for each ZnT
  loopMax                              -2.0                          # from -6 to -2 in steps of +1
  loopInt                              1.0
  loopLogVar                           1                             # 1 = value of loop variable is exponentiated (=10^<loop>) before use
  resolution                           100                           # number of calculations (PHREEQC simulations) for each curve

PLOT
  plotTitle                            "%sorbed vs pH curves<br>(split into two PHREEQC simulations)"
  xtitle                               pH
  ytitle                               "%sorbed"
  lines                                %sorbed                       # this variable in the 'out' file is plotted as a line (%sorbed is a valid column header)
  lineWidth                            0.4
  changeColor                          T
  labels                               1 2 3 4 5                     # used in order for label names on the plots
  labelSize                            2.0
  legendTextSize                       0.0
  customXcolumn                        pH
  extraText                            "extratextpcsorption.dat"     # adds customised legend text

CHEMISTRY

# simulation 1 - initial surface calculation is run but no selected output is produced or read
TITLE Example 8.--Sorption of zinc on hydrous iron oxides.
SURFACE_SPECIES
        Hfo_sOH  + H+ = Hfo_sOH2+
        log_k  7.18

        Hfo_sOH = Hfo_sO- + H+
        log_k  -8.82

        Hfo_sOH + Zn+2 = Hfo_sOZn+ + H+
        log_k  0.66

        Hfo_wOH  + H+ = Hfo_wOH2+
        log_k  7.18

        Hfo_wOH = Hfo_wO- + H+
        log_k  -8.82

        Hfo_wOH + Zn+2 = Hfo_wOZn+ + H+
        log_k  -2.32
SURFACE 1
        Hfo_sOH        5e-6    600.    0.09
        Hfo_wOH        2e-4

PHASES
Fix_H+
   H+ = H+
   log_k  0.0

# first simulation

USE solution none

SELECTED_OUTPUT
  -reset false
USER_PUNCH
  -heading  pH %sorbed sorbed                                        # determines column headers in the 'out' file
  10 sorbed = SURF("Zn","Hfo")
  20 totZn = SYS("Zn")
  30 pcsorbed = 100*sorbed/totZn
  40 punch -la("H+"), pcsorbed, sorbed
END



# simulation 2 - loops on this simulation to produce the output required for graphing

USE surface 1
SOLUTION 1
   -units mol/kgw
   pH     8.0
   Zn     <loop>                                                     # ZnT
   Na     0.1
   N(5)   0.1  charge
EQUILIBRIUM_PHASES 1
   Fix_H+   -<x_axis>   NaOH    10.0                                 # fixes the pH
     -force_equality true
END