PhreeqcUsers Discussion Forum

Please email phreeqcusers at gmail.com with your name and affiliation to request an account.
Welcome Guest
 

  • Forum Home
  • Login
  • Register

  • PhreeqcUsers Discussion Forum »
  • Processes »
  • Reactive transport modelling »
  • Consistency of ion output and ion exchange in transport models
« previous next »
  • Print
Pages: [1]   Go Down

Author Topic: Consistency of ion output and ion exchange in transport models  (Read 9279 times)

jinping

  • Contributor
  • Posts: 2
Consistency of ion output and ion exchange in transport models
« on: 10/07/23 09:24 »
I have conducted a column adsorption experiment and would like to describe the results using PHREEQC. Here are the basic details of the experiment:

Length: 8.00 cm
Diameter: 2.40 cm
Pore Volume: 20 cm3
Flow rate: 8.00 PV/d
Adsorbents: 5 g
ZnCl2 concentration: 2.00 mmol/L
NaCl concentration: 10.00 mmol/L
pH: 6
My goal is to develop a model step-by-step, starting with cation exchange only. Based on preliminary static experiments, I obtained the maximum cation exchange capacity (CEC) of the adsorbent as 0.502 mmol/g.

However, I seem to be facing some logical inconsistencies with my results, and I am not sure where I might have made a mistake. By measuring the effluent Zn concentration, I determined that the total Zn adsorbed by the column is 2.25 mmol. Considering the maximum contribution from cation exchange (CEC * mass of adsorbent / 2), it should be 1.255 mmol (the remaining portion is potentially induced precipitation, which is not yet included in the model).

When I output the concentrations of tot_Zn and ZnX2, I find that the amount of ZnX2 is 1.04 mmol, which seems reasonable. However, the data for tot_Zn does not align with my expectations. Firstly, the relationship between PV and the concentration of tot_Zn: considering that cation exchange retains 1.04 mmol of Zn in the solution, with a column pore volume of 20 cm3 and Zn concentration of 2 mmol/L, a simple calculation suggests that it would require at least 1.04 / (0.02 * 2) = 26 PV to reach an adsorption equilibrium state. However, the results from PHREEQC approach equilibrium after the first PV. Secondly, the cumulative Zn adsorption: by calculating the cumulative adsorption using PV and tot_Zn concentrations, the experimental cumulative adsorption is 2.25 mmol Zn, whereas PHREEQC provides a value of only 0.105 mmol.

I am truly puzzled by these discrepancies and have tried to resolve the issue myself. I have extensively searched the forum for related posts and followed the available tutorials, but I have been unable to find a solution. I would greatly appreciate any insights or guidance you can provide to help me address this problem.

Below is the code I have used:

Code: [Select]
EXCHANGE_MASTER_SPECIES
    X             X-           
EXCHANGE_SPECIES
X- = X-
    log_k     0
2X- + Zn+2 = ZnX2
    log_k     0.64
H+ + X- = HX
    log_k     0.97
Na+ + X- = NaX
    log_k     0.15
END
SOLUTION 1-10 #=cells
    temp      25
    pH        6
    pe        4
    redox     pe
    units     mmol/kgw
    density   1
    Cl        10
    Na        10
    -water    1 # kg
EXCHANGE 1-10
    X-       0.00251
    -pitzer_exchange_gammas true
SOLUTION 0
    temp      25
    pH        6
    pe        4
    redox     pe
    units     mmol/kgw
    density   1
    Cl        14
    Na        10
    Zn        2
    -water    1 # kg
END

SELECTED_OUTPUT 1
    -file                 selected_output_1.sel
    -reset                false
USER_PUNCH 1
    -headings PV Tot_Zn Zn+2 ZnX2
    -start
10 PUNCH (STEP_NO+0.5)/CELL_NO
20 PUNCH TOT("Zn")*1e3
30 PUNCH MOL("Zn+2")*1e3
40 PUNCH MOL("ZnX2")*1e3
    -end

TRANSPORT
    -cells                 4
    -shifts                100
    -lengths               4*0.02
    -dispersivities        4*0.002
    -print_cells           4
    -punch_cells           4
USER_GRAPH 1
    -headings               PV Na Zn Zn+2 ZnX2
    -axis_titles            "Pore Volumes" "mmol/L" ""
    -chart_title            "Chromatographic Displacement"
    -initial_solutions      false
    -connect_simulations    true
    -plot_concentration_vs  t
  -start
10 graph_x  (Step_no + 0.5)/cell_no
20 graph_y tot("Na")*1e3, tot("Zn")*1e3, moL("Zn+2")*1e3, Mol("ZnX2")*1E3
  -end
    -active                 true
END

Thank you in advance for your assistance. I look forward to hearing from you and learning from your expertise.

The picture can't be uploaded as an attachment, I put it inside this link. Thanks. https://imgur.com/a/WK12X5L
« Last Edit: 10/07/23 15:08 by jinping »
Logged

dlparkhurst

  • Global Moderator
  • *****
  • Posts: 4316
Re: Consistency of ion output and ion exchange in transport models
« Reply #1 on: 10/07/23 15:58 »
You need to define the correct sorbent:water ratio. You have 0.02 L of water in your column and 5*0.502/1000 = 0.00251 mol of sites. That gives 0.00251/0.02 = 0.1255 mol/L.

Your solution have ~1 L of water, so the correct number of sites for EXCHANGE is 0.1255. I suggest you do the calculations with a liter of water. PHREEQC works best with about a L of water in the solutions, and it will be simpler if you change the number of cells. If you want to be closer to the physical column with 4 cells, you will have 0.005 L of water in each cell (-water in SOLUTION), so you would need to define EXCHANGE with 0.005*0.1255 = 0.0006275 moles of sites. Concentrations will be the same for both approaches.

Now, you need to fix your EXCHANGE definition. If you define the exchanger as simply X-, the solution generated will be pH 2. The charge is ignored, so you effectively add X to solution, which results in these reactions:

Code: [Select]
X + Na+ + 0.5H2O = NaX + H+ + 0.25O2
X + 0.5H2O  = HX + 0.25O2

You should either define NaX in EXCHANGE, or define the exchanger to be in equilibrium with SOLUTION 1. This will avoid the unwanted acid/base and redox reactions.

Code: [Select]
EXCHANGE_MASTER_SPECIES
    X             X-           
EXCHANGE_SPECIES
X- = X-
    log_k     0
2X- + Zn+2 = ZnX2
    log_k     0.64
H+ + X- = HX
    log_k     0.97
Na+ + X- = NaX
    log_k     0.15
END
SOLUTION 1-10 #=cells
    temp      25
    pH        6
    pe        4
    redox     pe
    units     mmol/kgw
    density   1
    Cl        10
    Na        10
    #-water    0.005 1 # kg
END
EXCHANGE 1-10
    X       0.1255
    #X 0.0006275
    -eq 1
END
SOLUTION 0
    temp      25
    pH        6
    pe        4
    redox     pe
    units     mmol/kgw
    density   1
    Cl        14
    Na        10
    Zn        2
    #-water    0.005 # 1 # kg
END

TRANSPORT
    -cells                 4
    -shifts                200
    -lengths               4*0.02
    -dispersivities        4*0.002
    -print_cells           4
    -punch_cells           4
USER_GRAPH 1
    -headings               PV Na Zn Zn+2 ZnX2
    -axis_titles            "Pore Volumes" "mmol/L" ""
    -chart_title            "Chromatographic Displacement"
    -initial_solutions      false
    -connect_simulations    true
    -plot_concentration_vs  t
  -start
10 graph_x  (Step_no + 0.5)/cell_no
20 graph_y tot("Na")*1e3, tot("Zn")*1e3, moL("Zn+2")*1e3, Mol("ZnX2")*1E3
  -end
    -active                 true
END

Logged

jinping

  • Contributor
  • Posts: 2
Re: Consistency of ion output and ion exchange in transport models
« Reply #2 on: 10/07/23 17:52 »
Hi David.
Thank you very very very very much for your prompt help. I tried to donate, but I found that in both payment methods, there is no address in China, resulting in not being able to complete the payment step. Would you mind taking care of this when you are free? I will follow up in time and hope this forum can exist for a longer time to help more peers.
« Last Edit: 10/07/23 17:54 by jinping »
Logged

  • Print
Pages: [1]   Go Up
« previous next »
  • PhreeqcUsers Discussion Forum »
  • Processes »
  • Reactive transport modelling »
  • Consistency of ion output and ion exchange in transport models
 

  • SMF 2.0.19 | SMF © 2021, Simple Machines | Terms and Policies
  • XHTML
  • RSS
  • WAP2