PhreeqcUsers Discussion Forum

Processes => Mixing => Topic started by: AnnaJulIQ on February 22, 2021, 09:39:39 PM

Title: Whey databases
Post by: AnnaJulIQ on February 22, 2021, 09:39:39 PM
Title: Re: Whey databases
Post by: dlparkhurst on February 23, 2021, 01:15:35 AM
Wow. What is the theory of using whey? The only thing I can think is that the organic compounds in whey act as ligands to help dissolve ore minerals. If that is the case, llnl.dat and minteq.v4.dat have some data for organic ligands. Still I'm not sure if these databases would be the answer. You might need a more complete model for organic binding, like WHAM or NICA, which is not available in PHREEQC.

Title: Re: Whey databases
Post by: dlparkhurst on March 01, 2021, 03:18:03 PM
Sorry, the minteq.v4.dat has a number of ligands, but not lactate or glucose.
Title: Re: Whey databases
Post by: dlparkhurst on March 01, 2021, 04:47:27 PM
Yes. Then you need to find thermodynamic constants for Glucose-ligand aqueous reactions if the glucose is to have any effect on mineral solubility. So, you need a constant for something like the following:

Code: [Select]
Glucose + Zn+2 = GlucoseZn+2
log_k ??
Title: Re: Whey databases
Post by: AnnaJulIQ on March 10, 2021, 08:44:18 PM
Title: Re: Whey databases
Post by: dlparkhurst on March 11, 2021, 02:29:11 AM
Here is one way to approach the problem. I have assumed that 1 mole of a Mn(4) mineral, pyrolusite, is intitially present. There is glucose in the solution that reacts through REACTION. As the REACTION proceeds, the amount of glucose decreases, and C6H12O6 is added to the solution. Glucose alone cannot react with anything, but the C added from C6H12O6 will react to equilibrium among carbon and all other redox elements--in this case manganese.

I have added C(-4), which is not defined in minteq.dat, because ultimately, at sufficient reaction amounts, methane is produced.

So, as the C6H12O6 is added to solution, Pyrolusite dissolves until it is gone, while the Mn(3) mineral manganite is formed; Mn(4) is reduced to Mn(3) and the C from glucose is oxidized to C(4).  With further addition of C6H12O6, Mn(3) is reduced to Mn(2); C is oxidized mostly to C(4), but some C(-4) is produced.

Smithsonite reacts to remain in equilibrium and is slightly less soluble as the pH increases.

I am sure this is not your situation, but perhaps it will get you started.

Code: [Select]
TITLE #zinc leaching with lactic acid (Lactate)
    Lactic        Lactic           0     C3H6O3          90
    Lactose       Lactose          0     C12H22O11       342
    Glucose       Glucose          0     C6H12O6         180
    C(-4) CH4      0     CH4
Lactic = Lactic
    log_k     0
Lactose = Lactose
    log_k     0
Glucose = Glucose
    log_k     0
Lactic + Zn+2 = LacticZn+2
   log_k 1.86
Lactic + Mn+2 = LacticMn+2
   log_k 0.92
CO3-2 + 10 H+ + 8 e- = CH4 + 3 H2O
-log_k 41.071
-delta_h -61.039 kcal
-dw   1.85e-9
-Vm   9.01  -1.11  0  -1.85  -1.50 # ref. 1 + Hnedkovsky et al., 1996, JCT 28, 125
    pH 5.5
    units mol/L
    Lactic 0.045    #mol/L
    Lactose  0.147  #mol/L
    Glucose  0.1
    Manganite 0 0
    Pyrocroite 0 0
    Pyrolusite 0 1
    Smithsonite 0 0.01
    Zincite   0 0
    C6H12O6    1
    Glucose    -1
    0.1 moles in 10 steps
USE solution 1
USE equilibrium_phases 1
USE reaction 1
    -headings               rxn Pyrocroite Pyrolusite Manganite CH4 Zincite Smithsonite
    -axis_titles            "Glucose reacted, moles" "Moles of Mn mineral" "Moles of Zn mineral"
    -initial_solutions      false
    -connect_simulations    true
    -plot_concentration_vs  x
20 GRAPH_Y EQUI("Pyrocroite")
30 GRAPH_Y EQUI("Pyrolusite")
40 GRAPH_Y EQUI("Manganite")
50 GRAPH_SY EQUI("Zincite")
60 GRAPH_SY EQUI("Smithsonite")
Title: Re: Whey databases
Post by: dlparkhurst on March 11, 2021, 07:30:56 PM
No, I don't think so. You generally need balanced chemical reactions, so for a SOLUTION_SPECIES, for example, Glucose should balance on both sides of the reaction.
Title: Re: Whey databases
Post by: dlparkhurst on March 12, 2021, 03:43:27 PM
Let's look at what is already defined in minteq.dat.

There are four redox states for Mn, 2, 3, 6, and 7. There is not an aqueous Mn(4) species, which only means that there is a different redox state in the solid than exists in solution. Ignoring the highly oxidized states, the definitions are as follows:

Code: [Select]
Mn              Mn+3 0.0     54.938          54.938
Mn(2)           Mn+2 0.0     54.938
Mn(3)           Mn+3 0.0     54.938

Mn+3 is defined as the "master" species, and all other Mn aqueous species can be written as

Mn+3 + ... = Mnspecies ...

Similarly, all phases can be written a dissolution to Mn+3. The reaction for Mn+2 in SOLUTION_SPECIES is

Code: [Select]
Mn+3 + e- = Mn+2
        log_k   25.507
        delta_h 25.76   kcal
        -gamma  6.0  0.0

And the reaction for MnO2 (in the form Pyrolusite) is

Code: [Select]
        MnO2 + 4H+ + e- = Mn+3 + 2H2O
        log_k   15.861
        delta_h -29.18  kcal

Combining the last two equations puts the reaction in the form that you have:

Code: [Select]
MnO2 +  4H+ + 2e- = Mn+2 + 2H2O
log_k       41.368

Your log K is similar, 41.561. For the most part, it does not matter which equations you use for the minerals, they will be rewritten to use the master species, in this case Mn+3, and the log Ks will be manipulated accordingly. Note that phreeqc.dat chooses Mn+2 as the master species, but it is also just a matter of algebraic manipulation. However, Mn+2 is the dominant form in solution under most conditions.

It is fine if you want to use different thermodynamic data than are in the database. Different forms, crystallinity, and hydration of MnO2 will have a range of solubilities. With your equation, MnO2 is slightly more soluble than the Pyrolusite in the database. If you want to use your log K, you would define the following in your input file:

Code: [Select]
MnO2 +  4H+ + 2e- = Mn+2 + 2H2O
log_k  41.561

Internally, using minteq.dat, it will be rewritten to MnO2 + 4H+ = Mn+3 + 2H2O for the numerical method, but you don't need to worry about that. At equilibrium, the saturation index for your equation and the internal equation will be 0.
Title: Re: Whey databases
Post by: dlparkhurst on March 16, 2021, 03:01:59 PM
You can fix the pH with a trick described in Example 8 in the manual. It uses two Ephases to add either base or acid to attain a specified activity of H+. In your case, you could add the following to maintain a pH of 4.5 as the REACTION proceeds.

If you are going to do calculations like pH scans that require a lot of repetitive coding, it is possible to get SELECTED_OUTPUT/USER_PUNCH to write the repetitive input data blocks. It is not that easy, but example 8 demonstrates the possibilities.

Code: [Select]
H+ = H+
log_k 0

NaCl = Na+ + Cl-
log_k -20
    Manganite 0 0   #MnOOH
    Pyrocroite 0 0  #Mn(OH)2
    Pyrolusite 0 1  #MnO2
    Smithsonite 0 0.01  #ZnCO3
    Zincite   0 0  #ZnO
    Fix_H+    -4.5 HCl 10
    NaCl      0    10