PhreeqcUsers Discussion Forum

Registrations currently disabled due to excessive spam. Please email phreeqcusers at gmail.com to request an account.
Welcome Guest
 

  • Forum Home
  • Login
  • Register

  • PhreeqcUsers Discussion Forum »
  • Processes »
  • Reactive transport modelling »
  • Ion exchange only in stagnant zones
« previous next »
  • Print
Pages: [1]   Go Down

Author Topic: Ion exchange only in stagnant zones  (Read 4190 times)

maxim.yutkin

  • Frequent Contributor
  • Posts: 11
Ion exchange only in stagnant zones
« on: 03/12/23 06:56 »
Hello,

I run a simple ion exchange transport model with dual porosity. The exchange happens only in immobile cells. I expect that in the extreme cases (i.e. volume of immobile cells is very large or very small or exchange rate is very fast/slow) the resulting concentration profiles should reduce to those dictated by ion exchange without dual porosity. This however happens only partially. Slow exchange does result in a tracer like flow pattern, which is expected. However, fast exchange with small immobile volume does not yield expected dip in ion concentration. What am I missing?

Thank you,
Logged

dlparkhurst

  • Global Moderator
  • *****
  • Posts: 4211
Re: Ion exchange only in stagnant zones
« Reply #1 on: 03/12/23 14:46 »
I don't have enough information. Perhaps a small immobile volume will have a small effect on the mobile zone. The initial condition of the immobile zone may be a factor.

If you can make a simple version, I will take a look. Please be explain carefully what you expected compared to the results of the calculation.
Logged

maxim.yutkin

  • Frequent Contributor
  • Posts: 11
Re: Ion exchange only in stagnant zones
« Reply #2 on: 05/12/23 10:55 »
Here is an example of the input. The idea is to model mass transfer limitation through a boundary layer defined by immobile cells.
If you run this calculation without stagnant cells (and adjust the cell indexes accordingly) and plot calcium concentration profile (i.e. from 0 to L), you should get the reference case.

Code: [Select]
EXCHANGE_MASTER_SPECIES
   Z Z-
   EXCHANGE_SPECIES
   Z- = Z- ; log_k 0
   Z- + Na+ = NaZ
    log_k 0
    2Z- + Ca+2 = CaZ2
    log_k 1.4

SOLUTION 10000 initial solution in the core
pH 7
-water 0.5
units mol/L
Na 0.5
Ca 0.1
Cl 0.5 charge
EQUILIBRIUM_PHASES 10000
Calcite 0 1
SAVE SOLUTION 10000
COPY SOLUTION 10000 1-201
END
USE SOLUTION 10000
EXCHANGE 10000
  -equilibrate 10000
  Z  0.002

SAVE EXCHANGE 10000
COPY EXCHANGE 10000 101-201
END
SOLUTION 0 Injected solution
pH        7
-water 1
units mmol/L
Na 0.5
Ca .125
Cl 0.5 charge
SAVE SOLUTION 0
END
            EXCHANGE 102-201
            Z  0.002
          -equil 1
           TRANSPORT
            -initial_time 1e5
            -time_step 288
            -boundary_conditions   flux   flux #
            -dispersivities     100*0
            -correct_disp       false
            -diffusion_coefficient 0
            -cells 100
            -shifts 100
            -length 100*0.00076
            -punch_cells 1-100
            -punch_frequency    1
            -print_cells 1-100
            -stag 1 1 0.2 0.001
            PRINT
            -reset true
            SELECTED_OUTPUT 1
            -file Ion-Exchange_KIN.pco
            -high_precision       true
            -reset                false
            -distance             true
            -step                 true
            -pH                   true
            -totals               Na  Ca Cl
            -equilibrium_phases   Calcite
            -charge_balance       true
            -percent_error        true
            -saturation_indices   Calcite
            -activities          Na+ Cl- Ca+2 CO3-2 HCO3- CaZ2 NaZ
            END
Logged

dlparkhurst

  • Global Moderator
  • *****
  • Posts: 4211
Re: Ion exchange only in stagnant zones
« Reply #3 on: 05/12/23 16:25 »
Here is a simplified version of exchange in stagnant zones. Na is present initially and Ca invades the column. The concentrations in the mobile and stagnant zones are plotted. The script has a exchange factor of 1, and you can see Ca appearing in the stagnant zone. If you change the exchange factor to a small number, say 1e-6, then there will be negligible appearance of Ca in the stagnant zone.

Note that the mobile and immobile zones mix, so you should define the same volume of water in each. If you have a smaller volume of water in the immobile zone, through mixing, it will eventually have the same volume as the infilling solution.

Code: [Select]
EXCHANGE_MASTER_SPECIES
    Z             Z-           
EXCHANGE_SPECIES
Z- = Z-
    log_k     0
Na+ + Z- = NaZ
    log_k     0
Ca+2 + 2Z- = CaZ2
    log_k     1.4
END
SOLUTION 1-21 initial solution in the core
pH 7
-water 1
units mmol/L
Na 1
Cl 1 charge
END
EXCHANGE 12-21
  -equilibrate 1
  Z  0.002
END
SOLUTION 0 Injected solution
    temp      25
    pH        7
    pe        4
    units     mmol/l
    Ca        0.5
    Cl        1 charge
    -water    1 # kg
END
TRANSPORT
            -time_step 288
            -boundary_conditions   flux   flux #
            -dispersivities     10*0
            -correct_disp       false
            -diffusion_coefficient 0
-shifts 10
            -cells 10
-shifts 5
            -length 10*0.00076
            -punch_cells 1-10 12-21
            -punch_frequency  5
-print_frequency 5
            -stag 1 1 0.9 0.1
USER_GRAPH 1
    -headings               dist Ca Na CaZ2 NaZ
    -axis_titles            "" "Molality" ""
    -chart_title            "Mobile zone"
    -initial_solutions      false
    -connect_simulations    true
    -plot_concentration_vs  x
5 if (cell_no > 10) then goto 100
10 GRAPH_X dist
20 GRAPH_Y TOT("Ca"), TOT("Na"), MOL("CaZ2"), MOL("NaZ")
100 END
USER_GRAPH 2
    -headings               dist Ca Na CaZ2 NaZ
    -axis_titles            "" "Molality" ""
    -chart_title            "Stagnant zone"
    -initial_solutions      false
    -connect_simulations    true
    -plot_concentration_vs  x
  -start
  5 if (cell_no < 12) then goto 100
 10 GRAPH_X dist
 20 GRAPH_Y TOT("Ca"), TOT("Na"), MOL("CaZ2"), MOL("NaZ")
100 END
  -end
    -active                 true
END

Logged

maxim.yutkin

  • Frequent Contributor
  • Posts: 11
Re: Ion exchange only in stagnant zones
« Reply #4 on: 05/12/23 21:24 »
I understand the argument about the negligible amount of calcium. What I say below assumes no dispersion. Because ion exchange is instantaneous calcium must be consumed by the exchanger as fast as is defined by the zone exchange factor. In the limit of fast zone exchange and small stagnant zone volume, we should simply observe ion exchange. If the stagnant zone volume is large, then we will see significant calcium wash out/in from/into the stagnant zone into/from mobile zone.

The impression I got from the results was that ion exchange was happening, but either at much lower or much larger CEC. So, hence these questions. Does concentration or absolute amount of exchanger is important? Does time step depend on zone volume?

I will be checking these guesses along with your code and revert back with the results.

Thank you!

Logged

  • Print
Pages: [1]   Go Up
« previous next »
  • PhreeqcUsers Discussion Forum »
  • Processes »
  • Reactive transport modelling »
  • Ion exchange only in stagnant zones
 

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