Processes > Surface Complexation

How to solve "Elements in species have not been tabulated"?

(1/2) > >>

Jeonghwan Hwang:
Hi, this is Jeonghwan, Hwang.

I studied about surface complexation, and I want to modify the tutorial 8 to other material.
My reference paper is Bradury and Baeyens (1997) which used Montmomorillonite.

c://phreeqc/database/MINTEQCS.dat # database set

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

SOH_sOH = SOH_sO- + H+
log_k   -7.9
SOH_sOH + H+  = SOH_sOH2+
log_k   4.5
SOH_awOH = SOH_awO- + H+
log_k   -7.9
SOH_awOH + H+  = SOH_awOH2+
log_k   4.5
SOH_bwOH = SOH_bwO- + H+
log_k   -10.5
SOH_bwOH + H+  = SOH_bwOH2+
log_k   6

SURFACE 1 # automatically calculate the surface charge
SOH_sOH        5e-6 # moles
SOH_awOH        2e-4 # moles
SOH_bwOH        2e-4 # moles

-no_edl # no electrostatic force
END

SOLUTION 1
-units  mol/kgw # mmolality
pH      8.0
Zn      1.000e-04
Na      1.000e-01    charge
N(5)    1.000e-01
SELECTED_OUTPUT
-file Zn1e_8
-reset false
USER_PUNCH
10 FOR i = 5 to 9 STEP 0.25
20 a\$ = EOL\$ + "USE solution 1" + CHR\$(59) + " USE surface 1" + EOL\$
30 a\$ = a\$ + "EQUILIBRIUM_PHASES 1" + EOL\$
40 a\$ = a\$ + "   Fix_Zn+2 " + STR\$(-i) + " NaOH 10.0" + EOL\$
50 a\$ = a\$ + "END" + EOL\$
60 PUNCH a\$
70 NEXT i
END

#
# Model definitions
#
PHASES
Fix_H+
H+ = H+
log_k  0.0

Fix_Zn+2
Zn+2 = Zn+2
log_k  0.0
END

#
#   Zn = 1e-4
SELECTED_OUTPUT
-file ex8.sel
-reset true
-molalities     Zn+2    Hfo_wOZn+      Hfo_sOZn+
USER_PUNCH
10
USER_GRAPH 1 Example 8
-headings Zn_solute Zn_weak_sites Zn_strong_sites total_sorbed Charge_balance
-chart_title "Total Zn = 1e-7 molal"
-axis_titles mole "Moles per kilogram water" "Charge balance, in milliequivalents"
-axis_scale x_axis 1e-9 1e-5 1 1 log
-axis_scale y_axis 1e-9 1e-2 1 1 log
-axis_scale sy_axis -0.15 1
-start
10 GRAPH_X  MOL("Zn+2")
20 GRAPH_Y  MOL("SOH_awOZn+"), MOL("SOH_sOZn+"), MOL("SOH_sOZn+")+MOL("SOH_awOZn+")
30 GRAPH_SY CHARGE_BALANCE * 1e3
-end
INCLUDE\$ Zn1e_8
END

And I modified MINTEQ to make MINTEQCS.dat
I added the following code to the surface_master_species and surface_species.

SURFACE_MASTER_SPECIES
Soh_s  Soh_sOH
Soh_aw  Soh_awOH
Soh_bw  Soh_bwOH

SURFACE_SPECIES
Soh_sOH = Soh_sOH
log_k 0.0
Soh_awOH = Soh_awOH
log_k 0.0
Soh_bwOH = Soh_bwOH
log_k 0.0
Soh_sOH = Soh_sO- + H+
log_k   -7.9
Soh_sOH + H+  = Soh_sOH2+
log_k   4.5
Soh_awOH = Soh_awO- + H+
log_k   -7.9
Soh_awOH + H+  = Soh_awOH2+
log_k   4.5
Soh_bwOH = Soh_bwO- + H+
log_k   -10.5
Soh_bwOH + H+  = Soh_bwOH2+
log_k   6
Soh_sOH  + Zn+2 = Soh_sOZn+ + H+
log_k   1.6
Soh_awOH  + Zn+2 = Soh_awOZn+ + H+
log_k   -2.7

Unfortunately, I can find only this words below:
ERROR: Elements in species have not been tabulated, SOH_awOH.
ERROR: Reaction for species has not been defined, SOH_awOH.
ERROR: Elements in species have not been tabulated, SOH_bwOH.
ERROR: Reaction for species has not been defined, SOH_bwOH.
ERROR: Elements in species have not been tabulated, SOH_sOH.
ERROR: Reaction for species has not been defined, SOH_sOH.
ERROR: Calculations terminating due to input errors.

How can I solve "Elements in species have not been tabulated"?
I will study harder.

Respectfully,
Jeonghwan Hwang

dlparkhurst:
Looks like you still have the data block with SOH_aw, which would be interpreted as one S, one O, and one H_aw.
.
Case is important in chemical formulas. I think if you replace the first SURFACE_SPECIES data block with the correct SURFACE_MASTER_SPECIES and SURFACE_SPECIES data blocks at the end of your post AND change your SURFACE definition, it should work.

Jeonghwan Hwang:
Thank you for kindly help.
I change the SOH to Il, and my model worked.

If you don't excuse, I want to know two more question.

1. Although i run the model, it doesn't converged at high concentration of Zn.
Is there a technical solution to this problem?
The warning sign is followed as;

================================================
WARNING: Maximum iterations exceeded, 100

WARNING: Numerical method failed with this set of convergence parameters.

WARNING: Trying smaller step size, pe step size 10, 5 ...

WARNING: Maximum iterations exceeded, 200

WARNING: Numerical method failed with this set of convergence parameters.

WARNING: Trying reduced tolerance 1e-14 ...

WARNING: Fix_Zn+2, Pure phase with add formula has not converged.
================================================

2. I want to make fixed equilibrium H+ conc. at all of the experiment. Because the sorption process was affected by pH.
How can I change the PUNCH code to make the fixed H+ concentration of all equilibrium batch?

I attached my database and model.
Thank you.

Respectfully,

Jeonghwan Hwang

dlparkhurst:
You are trying to fix the activity of Zn+2 ion by adding NaOH. At the higher activities this is simply not possible. At lower activities, it is possible to make the pH high enough so that the Zn-OH complexes dominate and activity of Zn+2 is small.

At activity -3.25, the Zn concentration and activity coefficient for the ionic strength simply do not allow a solution with this activity.

As for fixing the pH, you can use a fix_H+ phase, but it is not going to be possible to fix Zn+2 activity with NaOH and also fix the pH.

Hi,

I am having similar issues with mine with the errors
ERROR: Elements in species have not been tabulated, DFOB3-.
ERROR: Reaction for species has not been defined, DFOB3-.

SOLUTION_MASTER_SPECIES
DFOB      DFOB-3          1.0     560.684 560.684

SOLUTION_SPECIES

DFOB-3 = DFOB-3
log_k 0

SOLUTION_SPECIES

DFOB-3 + H+ = H(DFOB)-2
log_k   11.45
delta_h   0    kJ
-gamma   0   0
#                  Id:   3309171
#        log K source:   NIST46.2
#      Delta H source:   NIST46.2
#T and ionic strength:
DFOB-3 + 2H+ = H2(DFOB)-
log_k   21.44
delta_h   0    kJ
-gamma   0   0
#                  Id:   3309171
#        log K source:   NIST46.2
#      Delta H source:   NIST46.2
#T and ionic strength:
DFOB-3 + 3H+ = H3(DFOB)
log_k   21.44
delta_h   0    kJ
-gamma   0   0
#                  Id:   3309171
#        log K source:   NIST46.2
#      Delta H source:   NIST46.2
#T and ionic strength:
Zn+2 + DFOB3- = Zn(DFOB)-
log_k   12.027
delta_h   0   kJ
-gamma   0   0
#                  Id:   4109973
#        log K source:   NIST46.3
#      Delta H source:   NIST46.3
#T and ionic strength:
Zn+2 + H+ + DFOB3- = ZnH(DFOB)
log_k   22.105
delta_h   0   kJ
-gamma   0   0
#                  Id:   4109975
#        log K source:   NIST46.3
#      Delta H source:   NIST46.3
#T and ionic strength:
Zn+2 + 2H+ + DFOB3- = ZnH2(DFOB)+
log_k   27.25
delta_h   0   kJ
-gamma   0   0
#                  Id:   4109977
#        log K source:   NIST46.3
#      Delta H source:   NIST46.3
#T and ionic strength:
Fe+3 + DFOB3- = Fe(DFOB)
log_k   33.07
delta_h   0   kJ
-gamma   0   0
#                  Id:   4109973
#        log K source:   NIST46.3
#      Delta H source:   NIST46.3
#T and ionic strength:
Fe+3 + H+ + DFOB3-  = FeH(DFOB)+
log_k   43.47
delta_h   0   kJ
-gamma   0   0
#                  Id:   4109975
#        log K source:   NIST46.3
#      Delta H source:   NIST46.3
#T and ionic strength:
Fe+3 + 2H+ + DFOB3- = FeH2(DFOB)+2
log_k   44.15
delta_h   0   kJ
-gamma   0   0
#                  Id:   4109977
#        log K source:   NIST46.3
#      Delta H source:   NIST46.3
#T and ionic strength:
Fe+2 + H+ + DFOB3- = FeH(DFOB)
log_k   22.54
delta_h   0   kJ
-gamma   0   0
#                  Id:   4109977
#        log K source:   NIST46.3
#      Delta H source:   NIST46.3
#T and ionic strength:
Fe+2 + 2H+ + DFOB3- = FeH2(DFOB)+
log_k   29.41
delta_h   0   kJ
-gamma   0   0
#                  Id:   4109977
#        log K source:   NIST46.3
#      Delta H source:   NIST46.3
#T and ionic strength:
Fe+2 + 3H+ + DFOB3- = FeH3(DFOB)+2
log_k   34.99
delta_h   0   kJ
-gamma   0   0
#                  Id:   4109977
#        log K source:   NIST46.3
#      Delta H source:   N