USER_PUNCH/USER_GRAPH > BASIC functions

Isotope defining in the SOLUTION-MASTER-SPECIES

(1/1)

Fatimah.if:
Hello,
I am trying to model the evolution of copper isotopes between malachite and solution in PHREEQC. I checked iso database to see if the copper isotopes are defined, but they are not. So, I defined them in the SOLUTION-MASTER-SPECIES.


--- Code: ---SOLUTION_MASTER_SPECIES

Cu       Cu+2           0.0     Cu              63.546
Cu(+2)   Cu+2           0.0     Cu
Cu(+2)   Cu2(OH)2CO3    0.0     Cu
[65Cu]        [65Cu]2(OH)2CO3       0       [65Cu]           65
[65Cu](2)     [65Cu]2(OH)2CO3       0       [65Cu]



S SO4-2          0.0     SO4             32.066
S(+6) SO4-2          0.0     SO4

C        CO3-2          1.0     CO3            12.0110
C(+4)    CO3-2          1.0     CO3

O        H2O            0.0     O               15.994
O(-2)    H2O            0.0     0.0

ISOTOPES
Cu     
     -isotope        [65Cu]   permil  0.447
PHASES
Malachite
Cu2(OH)2CO3 + 2H+ = 2Cu+2 + 2H2O + CO3-2
log_k -5.306
delta_h 76.38 kJ
--- End code ---
However, I get the errors:
ERROR: Elements in species have not been tabulated, Cu+2.
ERROR: Reaction for species has not been defined, Cu+2.
ERROR: Elements in species have not been tabulated, Cu2(OH)2CO3.
ERROR: Reaction for species has not been defined, Cu2(OH)2CO3.
ERROR: Elements in species have not been tabulated, H+.
ERROR: Reaction for species has not been defined, H+.
ERROR: Elements in species have not been tabulated, [65Cu]2(OH)2CO3.
ERROR: Reaction for species has not been defined, [65Cu]2(OH)2CO3.

I also tried to look at previous posts in the forum and I found https://phreeqcusers.org/index.php/topic,1072.msg3169.html#msg3169 where I tried to define Cu isotope similarly

--- Code: ---SOLUTION_MASTER_SPECIES

Cu       Cu+2           0.0     Cu              63.546
Cu(+2)   Cu+2           0.0     Cu
[65Cu]        [65Cu]+2       0       65Cu           65


S SO4-2          0.0     SO4             32.066
S(+6) SO4-2          0.0     SO4

C        CO3-2          1.0     CO3            12.0110
C(+4)    CO3-2          1.0     CO3

O        H2O            0.0     O               15.994
O(-2)    H2O            0.0     0.0

ISOTOPES
Cu     
     -isotope        [65Cu]   permil  0.447
PHASES
Malachite
Cu2(OH)2CO3 + 2H+ = 2Cu+2 + 2H2O + CO3-2
log_k -5.306
delta_h 76.38 kJ

--- End code ---

 but I get the following error: 

--- Code: ---ERROR: Elements in species have not been tabulated, Cu+2.
ERROR: Reaction for species has not been defined, Cu+2.
ERROR: Elements in species have not been tabulated, H+.
ERROR: Reaction for species has not been defined, H+.
ERROR: Elements in species have not been tabulated, [65Cu]+2.
ERROR: Reaction for species has not been defined, [65Cu]+2.
ERROR: Calculations terminating due to input errors.
--- End code ---

Could you please help me. Thanks so much

dlparkhurst:
I'm not sure if you want to use PHREEQC to make these calculations or not. PHREEQC uses a somewhat non-standard approach of treating each isotope as a separate hite would be considered as a SOLID_SOLUTION of the two isotopes.

With this approach, one needs to define a complete set of aqueous species for [65Cu] that correspond to the Cu (copper-63) aqueous species and solid phases for [65Cu] corresponding to Cu phases.

Most isotopes that have been used in this approach have minor isotopes that are a small fraction of the dominant isotope. Fractionation is simulated by slightly different equilibrium constants for the minor isotope relative to the major isotope. For Cu, the abundance of the two isotopes are similar. There will be quite a bit of "fractionation" (difference between solution and solid ratios) just because of the way solid solutions use mole fraction in the calculation of solid-solution component activities, so that additional fractionation may not be necessary.

You will have to decide whether you want to pursue this approach. Here is a script that could get you started. You will have to do some studying to understand the script. It has some added complication to rough in fractionation, even though the fractionation is set to zero.


--- Code: ---SOLUTION_MASTER_SPECIES
Cu       Cu+2           0.0     Cu              63.546
Cu(+2)   Cu+2           0.0     Cu
[65Cu]        [65Cu]+2 0       [65Cu]           65
[65Cu](2)     [65Cu]+2  0       [65Cu]

SOLUTION_SPECIES
[65Cu]+2 = [65Cu]+2
-gamma 6.0 0
-dw 0.733e-9
-Vm   -1.13  -10.5  7.29  -2.35  1.61  6  9.78e-2  0  3.42e-3  1 # ref. 2
[65Cu]+2 + CO3-2 = [65Cu]CO3
-log_k   6.73
[65Cu]+2 + 2CO3-2 = [65Cu](CO3)2-2
-log_k   9.83
[65Cu]+2 + HCO3- = [65Cu]HCO3+
-log_k   2.7
[65Cu]+2 + Cl- = [65Cu]Cl+
-log_k   0.43
-delta_h 8.65 kcal
-gamma  4.0  0
-Vm   -4.19  0  30.4  0  0  4  0  0  1.94e-2  1 # ref. 2
[65Cu]+2 + 2Cl- = [65Cu]Cl2
-log_k   0.16
-delta_h 10.56 kcal
-Vm   26.8  0  -136 # ref. 2
[65Cu]+2 + 3Cl- = [65Cu]Cl3-
-log_k   -2.29
-delta_h 13.69 kcal
-gamma  4.0  0
[65Cu]+2 + 4Cl- = [65Cu]Cl4-2
-log_k   -4.59
-delta_h 17.78 kcal
-gamma  5.0  0
[65Cu]+2 + F- = [65Cu]F+
-log_k   1.26
-delta_h 1.62 kcal
[65Cu]+2 + H2O = [65Cu]OH+ + H+
-log_k -8.0
-gamma 4.0 0
[65Cu]+2 + 2 H2O = [65Cu](OH)2 + 2 H+
-log_k -13.68
[65Cu]+2 + 3 H2O = [65Cu](OH)3- + 3 H+
-log_k -26.9
[65Cu]+2 + 4 H2O = [65Cu](OH)4-2 + 4 H+
-log_k -39.6
2[65Cu]+2 + 2H2O = [65Cu]2(OH)2+2 + 2H+
-log_k  -10.359
-delta_h 17.539 kcal
-analytical  2.497  0.0  -3833.0
[65Cu]+2 + SO4-2 = [65Cu]SO4
-log_k 2.31
-delta_h 1.220 kcal
-Vm   5.21  0  -14.6 # ref. 2
[65Cu]+2 + 3HS- = [65Cu](HS)3-
-log_k  25.9
END
ISOTOPES
Cu     
     -isotope        [65Cu]   permil  0.447
Cu(2)
     -isotope        [65Cu]   permil  0.447
ISOTOPE_RATIOS
        R(65Cu)                 [65Cu]
  R(65Cu)_Malachite       [65Cu]
NAMED_EXPRESSIONS
Log_alpha_65Cu_Malachite/Cu
     -ln_alpha1000   0
ISOTOPE_ALPHAS
        Alpha_65Cu_Malachite/Cu               Log_alpha_65Cu_Malachite/Cu
CALCULATE_VALUES
R(65Cu)
     -start
10 ratio = -9999.999
20 if (TOT("[65Cu]") <= 0) THEN GOTO 100
30 total_65Cu = TOT("[65Cu]")
40 total_Cu = TOT("Cu")
50 ratio = total_65Cu/total_Cu
100 save ratio
     -end
R(65Cu)_Malachite
     -start
10 ratio = -9999.999
20 if (TOT("[65Cu]") <= 0) THEN GOTO 1000
30 if (S_S("Malachite") <= 0) THEN GOTO 1000
40 total_65Cu = SUM_S_S("Carbonate", "[65Cu]")
50 total_Cu = SUM_S_S("Carbonate", "Cu")
60 if (total_Cu <= 0) THEN GOTO 1000
70 ratio = total_65Cu/total_Cu
1000 save ratio
     -end
Alpha_65Cu_Malachite/Cu
     -start
10 alpha = -9999.999
20 if (TOT("[65Cu]") <= 0) THEN GOTO 1000
30 if (S_S("Malachite") <= 0) THEN GOTO 1000
40 r1 = CALC_VALUE("R(65Cu)_Malachite")
50 r2 = CALC_VALUE("R(65Cu)")
60 if (r2 <= 0) THEN GOTO 1000
80 if (r1 <= -9999) THEN GOTO 1000
90 alpha = r1/r2
1000 save alpha
     -end
END
PHASES
Malachite
Cu2(OH)2CO3 + 2H+ = 2Cu+2 + 2H2O + CO3-2
log_k -5.306
delta_h 76.38 kJ
Malachite_65Cu
[65Cu]2(OH)2CO3 + 2H+ = 2[65Cu]+2 + 2H2O + CO3-2
log_k -5.306
-add_logk       Log_alpha_65Cu_Malachite/Cu    -1.0
delta_h 76.38 kJ
END
SOLUTION 1
Cu(2)   1e-1
Cl      2e-1
[65Cu]  0 permil
O(0)    0.25
REACTION 1
NaHCO3 1
0.1 moles
SOLID_SOLUTION 1
Carbonate
-comp Malachite      0
-comp Malachite_65Cu 0
END

--- End code ---

dlparkhurst:
As I said, I am not sure if the PHREEQC's thermodynamic approach to isotope equilibrium will suit your needs. Here is another script that simply accounts for mole balance for isotopes as -20 permil malachite precipitates. Perhaps it will be a useful example for your investigations.


--- Code: ---SOLUTION_MASTER_SPECIES
Cu       Cu+2           0.0     Cu              63.546
Cu(+2)   Cu+2           0.0     Cu
[65Cu]        [65Cu]+2 0       [65Cu]           65
[65Cu](2)     [65Cu]+2  0       [65Cu]

SOLUTION_SPECIES
[65Cu]+2 = [65Cu]+2
-gamma 6.0 0
-dw 0.733e-9
-Vm   -1.13  -10.5  7.29  -2.35  1.61  6  9.78e-2  0  3.42e-3  1 # ref. 2
[65Cu]+2 + CO3-2 = [65Cu]CO3
-log_k   6.73
[65Cu]+2 + 2CO3-2 = [65Cu](CO3)2-2
-log_k   9.83
[65Cu]+2 + HCO3- = [65Cu]HCO3+
-log_k   2.7
[65Cu]+2 + Cl- = [65Cu]Cl+
-log_k   0.43
-delta_h 8.65 kcal
-gamma  4.0  0
-Vm   -4.19  0  30.4  0  0  4  0  0  1.94e-2  1 # ref. 2
[65Cu]+2 + 2Cl- = [65Cu]Cl2
-log_k   0.16
-delta_h 10.56 kcal
-Vm   26.8  0  -136 # ref. 2
[65Cu]+2 + 3Cl- = [65Cu]Cl3-
-log_k   -2.29
-delta_h 13.69 kcal
-gamma  4.0  0
[65Cu]+2 + 4Cl- = [65Cu]Cl4-2
-log_k   -4.59
-delta_h 17.78 kcal
-gamma  5.0  0
[65Cu]+2 + F- = [65Cu]F+
-log_k   1.26
-delta_h 1.62 kcal
[65Cu]+2 + H2O = [65Cu]OH+ + H+
-log_k -8.0
-gamma 4.0 0
[65Cu]+2 + 2 H2O = [65Cu](OH)2 + 2 H+
-log_k -13.68
[65Cu]+2 + 3 H2O = [65Cu](OH)3- + 3 H+
-log_k -26.9
[65Cu]+2 + 4 H2O = [65Cu](OH)4-2 + 4 H+
-log_k -39.6
2[65Cu]+2 + 2H2O = [65Cu]2(OH)2+2 + 2H+
-log_k  -10.359
-delta_h 17.539 kcal
-analytical  2.497  0.0  -3833.0
[65Cu]+2 + SO4-2 = [65Cu]SO4
-log_k 2.31
-delta_h 1.220 kcal
-Vm   5.21  0  -14.6 # ref. 2
[65Cu]+2 + 3HS- = [65Cu](HS)3-
-log_k  25.9
END
ISOTOPES
Cu     
     -isotope        [65Cu]   permil  0.447
Cu(2)
     -isotope        [65Cu]   permil  0.447
ISOTOPE_RATIOS
        R(65Cu)                 [65Cu]
  R(65Cu)_Malachite       [65Cu]
CALCULATE_VALUES
R(65Cu)
     -start
10 ratio = -9999.999
20 if (TOT("[65Cu]") <= 0) THEN GOTO 100
30 total_65Cu = TOT("[65Cu]")
40 total_Cu = TOT("Cu")
50 ratio = total_65Cu/total_Cu
100 save ratio
     -end
R(65Cu)_Malachite
     -start
10 ratio = -9999.999
20 if (TOT("[65Cu]") <= 0) THEN GOTO 1000
30 if (S_S("Malachite") <= 0) THEN GOTO 1000
40 total_65Cu = SUM_S_S("Carbonate", "[65Cu]")
50 total_Cu = SUM_S_S("Carbonate", "Cu")
60 if (total_Cu <= 0) THEN GOTO 1000
70 ratio = total_65Cu/total_Cu
1000 save ratio
     -end
Alpha_65Cu_Malachite/Cu
     -start
10 alpha = -9999.999
20 if (TOT("[65Cu]") <= 0) THEN GOTO 1000
30 if (S_S("Malachite") <= 0) THEN GOTO 1000
40 r1 = CALC_VALUE("R(65Cu)_Malachite")
50 r2 = CALC_VALUE("R(65Cu)")
60 if (r2 <= 0) THEN GOTO 1000
80 if (r1 <= -9999) THEN GOTO 1000
90 alpha = r1/r2
1000 save alpha
     -end
END
PHASES
Malachite
Cu2(OH)2CO3 + 2H+ = 2Cu+2 + 2H2O + CO3-2
log_k -5.306
delta_h 76.38 kJ
Malachite_65Cu
[65Cu]2(OH)2CO3 + 2H+ = 2[65Cu]+2 + 2H2O + CO3-2
log_k -5.306
delta_h 76.38 kJ
Malachite_permil
# -20 permil 1.391144   0.608856
Cu1.390763[65Cu]0.609237(OH)2CO3 + 2H+ = 1.390763Cu+2 + 0.609237[65Cu]+2 + 2H2O + CO3-2
log_k -5.306
delta_h 76.38 kJ
END
SOLUTION 1
Cu(2)   1e-1
Cl      2e-1
[65Cu]  0 permil
O(0)    0.25
REACTION 1
NaHCO3 0.1
1 moles
SAVE solution 2
END
USER_PRINT
10 REM permil = (Rsamp/Rstd - 1)*1000
20 REM 1 = x + Rsamp*x = x*(1+Rsamp)
30 Rstd = 0.447
35 permil = -20
40 Rsamp = (permil/1000 + 1) * Rstd
50 cu63 = 2/(1 + Rsamp)
60 cu65 = Rsamp*cu63
70 PRINT "Ratios in malachite for ", permil, " permil"
80 PRINT "63Cu: ", STR_F$(cu63, 10, 6)
90 PRINT "65Cu: ", STR_F$(cu65, 10, 6)
USE solution 2
REACTION
Malachite_permil 1
-0.4e-4 in 10
USER_GRAPH 1
    -headings               rxn Cu,permil TOT(63Cu) TOT(65Cu)
    -axis_titles            "-20 permil Malachite precipitated" "Dissolved Cu, permil" ""
    -initial_solutions      false
    -connect_simulations    true
    -plot_concentration_vs  x
  -start
10 GRAPH_X -RXN
20 GRAPH_Y ISO("[65Cu]")
30 GRAPH_SY TOT("Cu"), TOT("[65Cu]")
  -end
    -active                 true
END
--- End code ---

Navigation

[0] Message Index

Go to full version