Niedl.ppi

# fit some Ni sorption to goethite data

SPECIATION
  calculationType                      fit
  calculationMethod                    1

FIT
  dataFile                             "Nisolnfresh.dat"                       # fit data file - fit the final Ni concn not the amount sorbed
  dependentVariableColumnObs           2                                       # final Ni concn is in column 2 of fit data file
                                                                               #   NB this is often a good way of fitting sorption data where possible
  dependentVariableColumnCalc          2                                       # calcd final Ni concn in column 2 of selected output
  fitFiniteDiffStepSize                1.0E-02                                 # size of initial adjustment of parameters when fitting
  fitConvergenceCriterion              1.0E-12
  fitMaxStepSize                       1.0
  fitWeightingMethod                   0                                       # 0 = unit weighting for all points
  numberOfFitParameters                2
  fitParameterNames                    "log_k1" "log_k2"
  fitLogParameters                     0 0                                     # 0 = linear parameters
  fitAdjustableParameters              1 1                                     # 1 = adjustable
  fitParameterValues                   8.   0                                  # initial values of log_k1 and log_k2
PLOT
  plotTitle                            "Ni sorption by goethite (edl)"
  xoffset                              60
  xtitle                               pH
  ytitle                               "soln Ni (mol/L)"
  pxmin                                4.0                                     # p or plot limits
  pxmax                                9.0
  pymin                                0
  pymax                                5.E-04
  pydec                                4                                       # number of decimal places
  lineColor                            blue
  lineWidth                            0.4
  lines                                calculated                              # calculated column from out file
  points                               observed                                # observed column from out file
  legendTextSize                       1.9                                     # key size
  pointSize                            3.0
  labelSize                            0                                       # suppress labelling
  customXcolumn                        6                                       # column 6 of out file
  extraText                            "extratextfitNi.dat"

CHEMISTRY

TITLE Goethite surface 1pK model, Ni sorption 1 site.
PHASES
Fix_H+
  H+ = H+
  log_k 0.

SURFACE_MASTER_SPECIES
        Fes_   Fes_OH-0.5
SURFACE_SPECIES
        Fes_OH-0.5  = Fes_OH-0.5                                               # surface charging
        log_k  0.0

        Fes_OH-0.5  + H+ = Fes_OH2+0.5
        log_k 8.50

        2Fes_OH-0.5 + Ni+2 = (Fes_OH)2Ni+                                      # bidentate model
        log_k  <log_k1>

        2Fes_OH-0.5 + Ni+2 + H2O = (Fes_OH)2NiOH + H+
        log_k <log_k2>

SELECTED_OUTPUT
  high_precision true
  reset false
USER_PUNCH
headings pH Ni
-start
10 punch -la("H+"), TOT("Ni")                                                  # pH and total dissolved Ni (calcd)
-end                                                                           #  fitting compares TOT("Ni") with obsd total, eg by ICP-AES

SURFACE 1
# -diffuse_layer
# -no_edl
  Fes_OH-0.5    1.09e-3  32.7    3.33                                          # goethite parameters

SOLUTION 1
  units mol/kgw
  Ni     0.4258e-3                                                             # NiT
  Na     0.1                                                                   # background electrolyte
  N(5)   0.1 charge

EQUILIBRIUM_PHASES
  O2(g)  -0.67   0.1
  Fix_H+ -<pHobs> NaOH
    -force_equality true
  Ni(OH)2 0 0
END