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 »
  • One-dimensional reactive solute transport in high fluoride groundwater
« previous next »
  • Print
Pages: [1]   Go Down

Author Topic: One-dimensional reactive solute transport in high fluoride groundwater  (Read 1524 times)

chaoyu

  • Contributor
  • Posts: 6
One-dimensional reactive solute transport in high fluoride groundwater
« on: 25/12/23 14:05 »
My topic is one-dimensional reactive solute transport:
My task is to simulate the one-dimensional reactive solute transport of fluoride in groundwater in an actual site research area, which involves two major aspects:
One is water rock interaction (with carbonate dissolution and precipitation, aluminum silicate dissolution), where fluorine dissolves from the surrounding rock medium. The concentration during the process involves dissolution and precipitation, cation exchange, mineral dissolution, and evaporation concentration
Teacher, should each part of the above process in simulating an actual site be considered as belonging to thermodynamics or kinetics
Logged

dlparkhurst

  • Global Moderator
  • *****
  • Posts: 4070
Re: One-dimensional reactive solute transport in high fluoride groundwater
« Reply #1 on: 26/12/23 17:24 »
Equiilbrium calculations are easier than KINETICS calculations, so if minerals react quickly, like carbonates, then try EQUILIBRIUM_PHASES first. Silicate reactions and fluoride dissolution are probably slower. Cation exchange is usually considered to be a fast (non-kinetic) reaction.

If you have analyses that show the evolution of the chemistry in your field study, you can consider inverse modeling. It does not rely on equilibrium or kinetics; it simply considers how much of potential reactants must react to account for the observed change in chemistry.
Logged

chaoyu

  • Contributor
  • Posts: 6
Re: One-dimensional reactive solute transport in high fluoride groundwater
« Reply #2 on: 28/12/23 03:30 »
my title is "one-dimensional reactive solute transport" This is to simulate the one-dimensional reactive solute transport of fluorine in groundwater in a site study area. I collected water samples earlier and judged the effects involved through hydrochemical analysis, including: water-rock interaction (carbonate dissolution and precipitation, aluminosilicate dissolution), cation exchange, shallow groundwater and evaporation concentration. I'm not sure if each action should be reaction kinetics or thermodynamics.(Is it possible that groundwater flows eastward in the rock stratum all the year round, and the water is constantly renewed? It is possible that the reaction between water and surrounding rock has not reached equilibrium, and new water will flow away?) Because I know through the calculation of saturation index of collected water samples that the saturation index of calcite and dolomite is greater than 0, which is in supersaturated state, I set calcite and dolomite as thermodynamic processes, using the "Equilibrium_Phases" module.Aluminosilicate belongs to rock-forming minerals and should be continuously dissolved. It is not clear how this is set.Then I set fluorite as a dynamic process and added the dynamic equation, but there was an iteration, and it couldn't run at all. After running all night, the interface below didn't move at all.
Logged

chaoyu

  • Contributor
  • Posts: 6
Re: One-dimensional reactive solute transport in high fluoride groundwater
« Reply #3 on: 28/12/23 03:43 »
Code: [Select]
天心:
SOLUTION 0
    temp      25
    pH        7.665
    pe        4
    redox     pe
    units     mg/l
    density   1
    Al        0 ug/l
    Alkalinity 265.35
    Br        38.10110678 ug/l
    Ca        57.725
    Cl        10.44166052
    F         0.553040929
    Fe        0.005
    K         3.5425
    Mg        27.435
    Mn        0.739321849 ug/l
    N(-3)     0.02
    N(3)      0.0095
    N(5)      24.0232916
    Na        21.56
    O(0)      6.76
    S(6)      33.87788981
    Si        6.378
    -isotope  18O     -9.975666
    -isotope  2H      -71.4895885
    -water    1 # kg
SOLUTION 1-40
    temp      25
    pH        7.665
    pe        4
    redox     pe
    units     mg/l
    density   1
    Al        0 ug/l
    Alkalinity 265.35
    Br        38.10110678 ug/l
    Ca        57.725
    Cl        10.44166052
    F         0.553040929
    Fe        0.005
    K         3.5425
    Mg        27.435
    Mn        0.739321849 ug/l
    N(-3)     0.02
    N(3)      0.0095
    N(5)      24.0232916
    Na        21.56
    O(0)      6.76
    S(6)      33.87788981
    Si        6.378
    -isotope  18O     -9.975666
    -isotope  2H      -71.4895885
    -water    1 # kg

EQUILIBRIUM_PHASES 1-40
    Calcite   0 0.1
    Dolomite  0 1.6
    Albite    0 10
EXCHANGE 1-40
    X       0.02
    -equilibrate with solution 1
    -pitzer_exchange_gammas true
REACTION 1-40
    H2O(g)     -1
    0.1 moles in 1 steps
RATES
    Fluorite
-start
10 k = 1.6686
20 Sa = 1

50 rate = -k*Sa*(1-SR("Fluorite"))
60 moles = rate * TIME
70 PUT(rate, 1)
80 SAVE moles
-end
KINETICS 1-40
Fluorite
    -m        1
    -m0       1
    -tol      1e-008
-steps       157788000 in 15 steps # seconds
-step_divide 1
-runge_kutta 3
-bad_step_max 500
INCREMENTAL_REACTIONS true
TRANSPORT
    -cells                 40
    -shifts                40
    -time_step             1000 # seconds
    -lengths               40*0.01
    -dispersivities        40*0.0004
   


天心:
SOLUTION 0
    temp      25
    pH        7.665
    pe        4
    redox     pe
    units     mg/l
    density   1
    Al        0 ug/l
    Alkalinity 265.35
    Br        38.10110678 ug/l
    Ca        57.725
    Cl        10.44166052
    F         0.553040929
    Fe        0.005
    K         3.5425
    Mg        27.435
    Mn        0.739321849 ug/l
    N(-3)     0.02
    N(3)      0.0095
    N(5)      24.0232916
    Na        21.56
    O(0)      6.76
    S(6)      33.87788981
    Si        6.378
    -isotope  18O     -9.975666
    -isotope  2H      -71.4895885
    -water    1 # kg
SOLUTION 1-40
    temp      25
    pH        7.665
    pe        4
    redox     pe
    units     mg/l
    density   1
    Al        0 ug/l
    Alkalinity 265.35
    Br        38.10110678 ug/l
    Ca        57.725
    Cl        10.44166052
    F         0.553040929
    Fe        0.005
    K         3.5425
    Mg        27.435
    Mn        0.739321849 ug/l
    N(-3)     0.02
    N(3)      0.0095
    N(5)      24.0232916
    Na        21.56
    O(0)      6.76
    S(6)      33.87788981
    Si        6.378
    -isotope  18O     -9.975666
    -isotope  2H      -71.4895885
    -water    1 # kg

EQUILIBRIUM_PHASES 1-40
    Calcite   0 0.1
    Dolomite  0 1.6
    Albite    0 10
EXCHANGE 1-40
    X       0.02
    -equilibrate with solution 1
    -pitzer_exchange_gammas true
REACTION 1-40
    H2O(g)     -1
    0.1 moles in 1 steps
RATES
    Fluorite
-start
10 k = 1.6686
20 Sa = 1

50 rate = -k*Sa*(1-SR("Fluorite"))
60 moles = rate * TIME
70 PUT(rate, 1)
80 SAVE moles
-end
KINETICS 1-40
Fluorite
    -m        1
    -m0       1
    -tol      1e-008
-steps       157788000 in 15 steps # seconds
-step_divide 1
-runge_kutta 3
-bad_step_max 500
INCREMENTAL_REACTIONS true
TRANSPORT
    -cells                 40
    -shifts                40
    -time_step             1000 # seconds
    -lengths               40*0.01
    -dispersivities        40*0.0004
   [/code]
 My study area is a basin, simulating the distance from the piedmont on both sides to the center of the basin, 50km from the piedmont to the center of the basin, and 100km laterally
Logged

dlparkhurst

  • Global Moderator
  • *****
  • Posts: 4070
Re: One-dimensional reactive solute transport in high fluoride groundwater
« Reply #4 on: 28/12/23 15:45 »
I think you have a mistake in the sign of moles in the RATES definition. It is a little confusing, so I have explicitly defined the default formula for the fluorite rate (-formula CaF2 1), and, I have changed the sign of moles (in RATES). Moles will be positive, when 1-SR is positive (SR < 1, or undersaturated). The coefficient in -formula is 1, so moles*1 is the amount of fluorite added, because the product is now positive. If the product were negative, fluorite would be removed by the calculated rate.

There are two integration methods available: default Runge-Kutta and CVODE. If one does not work, try the other. In general, CVODE should be more robust, but slower. I have used CVODE in the script below.

The other issue is that your rate is very fast. Fluorite equilibrates with pure water in less than a second.

Code: [Select]
RATES
    Fluorite
-start
10 k = 1.6686
20 Sa = 1
50 rate = k*Sa*(1-SR("Fluorite"))
60 moles = rate * TIME
70 PUT(rate, 1)
80 SAVE moles
-end
ENd
SOLUTION 1
END
USE solution 1
KINETICS 1
Fluorite
    -formula CaF2 1
    -m        1
    -m0       1
    -tol      1e-008
-steps       1 second
-cvode
END
Logged

  • Print
Pages: [1]   Go Up
« previous next »
  • PhreeqcUsers Discussion Forum »
  • Processes »
  • Reactive transport modelling »
  • One-dimensional reactive solute transport in high fluoride groundwater
 

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