PhreeqcUsers Discussion Forum

Welcome Guest
 

  • Forum Home
  • Login
  • Register

  • PhreeqcUsers Discussion Forum »
  • Processes »
  • Reactive transport modelling »
  • TRANSPORT About hydrological fluctuations
« previous next »
  • Print
Pages: [1]   Go Down

Author Topic: TRANSPORT About hydrological fluctuations  (Read 912 times)

sll

  • Contributor
  • Posts: 2
TRANSPORT About hydrological fluctuations
« on: 10/05/24 15:35 »
大家好!您好,帕克赫斯特先生!
我是一名学生,我希望通过PHREEQC研究水文波动对地下水中砷含量变化的影响,但在模拟中遇到了一些问题。我将一年分为两个时期,湿润期(含O2)和枯润期,并加入相应的水文地球化学过程,希望在不同时期得到不同的变化。仿真结果表明,湿润期有一定的预期效果,但枯水期之后基本没有变化,不知道为什么,以下是我的代码,欢迎任何改进建议。
Code: [Select]
PRINT
       -reset false

PHASES
Fe(OH)3As
Fe(OH)2.9982(AsO4)0.0006 + 2.9982H+ = Fe+3 + 2.9982H2O + 0.0006 AsO4-3
log_k 0.391    #4.891-4.5   SI = -4.5, #  As/Fe 0.6 mmol/mol
Siderite   
FeCO3 = Fe+2 + CO3-2
log_k -9.89  #SI = 1.  -10.89 + 1. = -9.89
delta_h   -2.480 kcal
Calcite
CaCO3 = Ca+2 + CO3-2
log_k -8.23     #-8.48 + 0.25   SI = 0.25
delta_h   -2.297 kcal

SURFACE
    Hfo_sOH    5e-06     600   0.09
    Hfo_wOH    0.0002
-donnan    1e-08

RATES
Calcite
-start
5 if (m <= 0.0) then goto 210
7 sr_CC = sr("Calcite")
10 if (sr_CC >= 1.0) then goto 210
40 moles =  m0*(7.5e-4/3.15e7) * (m/m0)^3.0 * time * (1-sr_CC)
70 if moles > m then moles = m
210 save moles
-end
Siderite
-start
7 sr_SS = sr("Siderite")
40 moles = (1e-4/3.15e7) * time * (1-sr_SS) 
210 save moles
-end
Fe(OH)3As
-start
5 if (m <= 0.0) then goto 210
7 sr_fe = sr("Fe(OH)3As")
10 if (sr_fe >= 1.0) then goto 210
40 moles =  (6e4/3.15e7) * (m/m0)^1.5 * time * (1-sr_fe) 
70 if moles > m then moles = m
210 save moles
-end
Organic 
              -start
5 if (m <= 0.0) then goto 20
10          moles = (6.4e3/3.15e7) * (m/m0)^2.5 
11 if moles > m then moles = m
20          save moles * time 
             -end
KINETICS
Calcite
-m0   10.
Siderite
-m0   0.0
Organic             
 -formula C
 -m0   1.36   # 0.27% org C
Fe(OH)3As
-m0    0.394 # 65 umol/g
-bad_step_max  4000
-cvode  true

SOLUTION 0  # river   
units    mol/L
temp    24.3
pH    8.46
Ca    1.42e-03
Mg    5.35e-04
Na    4.79e-04
K      1.02e-04
Alkalinity     4.28e-03
Cl    7.34e-04
S(6)    3.23e-04
O(0)    5.0e-04

SOLUTION 1  #groundwater
units    mol/L
temp    20.0
pH    7.25
Ca    3.31e-03
Mg    1.26e-03
Na    1.45e-03
K      5.71e-05
Alkalinity    1.24e-02
Cl    3.52e-04
S(6)    4.44e-05
As        5.72e-07
Fe(2)    1.94e-05
Mn        2.84e-05

SELECTED_OUTPUT
    -file                 test-mol.xls
    -temperature          true
    -totals            Ca  Fe(2)  S(6)  S(-2)  As  As(5)  As(3)
                          Mg  Na  K  Alkalinity  Cl  Mn  Fe(3)  O(0)
    -molalities   Hfo_wCO3-  Hfo_wH2AsO3  Hfo_wH2AsO4  Hfo_wHCO3         
                 Hfo_wHPO4-  Hfo_wHSiO4-2  Hfo_wOHAsO4-3  Hfo_wPO4-2
    -saturation_indices   CO2(g)  siderite  calcite
    -kinetic_reactants    Fe(OH)3As  Calcite  Organic  Siderite

TRANSPORT  #wet v=3.15m/yr
    -cells               1
    -shifts               106
    -time_step         98184.96
    -lengths               0.01
    -punch_frequency       1
    -punch_cells  1
    -flow_direction   forward
    -boundary_conditions      flux   flux
    -warnings              false
END

SAVE   SOLUTION 1
COPY  SOLUTION 1  0
 
TRANSPORT  #dry v=1.5m/yr
    -cells               1
    -shifts               100
    -time_step         205714.28
    -lengths               0.01
    -punch_frequency       1
    -punch_cells  1
    -flow_direction   forward
    -boundary_conditions      flux   flux
    -warnings              false
    END
最佳,
苏
Logged

dlparkhurst

  • Global Moderator
  • *****
  • Posts: 3996
Re: TRANSPORT About hydrological fluctuations
« Reply #1 on: 10/05/24 16:57 »
I think you are infiltrating river water into the ground for part of the year, and then modeling only a groundwater system for the rest of the year. I am not sure it makes sense to recycle the solution at the end of the wet period to be solution 0, but you can decide.

I have made the groundwater system 10 cells rather than just 1. I have also limited the transport to only 10 steps. These changes probably do not represent your system very well, but I think it gives a clearer picture of the effects of your reactions. You can rearrange time and space once you are convinced that your reaction network makes sense.

I don't know which database you like; I am using wateq4f.dat for these preliminary calculations.

Code: [Select]

PHASES
Fe(OH)3As
Fe(OH)2.9982(AsO4)0.0006 + 2.9982H+ = Fe+3 + 2.9982H2O + 0.0006 AsO4-3
log_k 0.391    #4.891-4.5   SI = -4.5, #  As/Fe 0.6 mmol/mol
Siderite   
FeCO3 = Fe+2 + CO3-2
log_k -9.89  #SI = 1.  -10.89 + 1. = -9.89
delta_h   -2.480 kcal
Calcite
CaCO3 = Ca+2 + CO3-2
log_k -8.23     #-8.48 + 0.25   SI = 0.25
delta_h   -2.297 kcal

SURFACE
    Hfo_sOH    5e-06     600   0.09
    Hfo_wOH    0.0002
-donnan    1e-08

RATES
Calcite
-start
5 if (m <= 0.0) then goto 210
7 sr_CC = sr("Calcite")
10 if (sr_CC >= 1.0) then goto 210
40 moles =  m0*(7.5e-4/3.15e7) * (m/m0)^3.0 * time * (1-sr_CC)
70 if moles > m then moles = m
210 save moles
-end
Siderite
-start
7 sr_SS = sr("Siderite")
40 moles = (1e-4/3.15e7) * time * (1-sr_SS)
210 save moles
-end
Fe(OH)3As
-start
5 if (m <= 0.0) then goto 210
7 sr_fe = sr("Fe(OH)3As")
10 if (sr_fe >= 1.0) then goto 210
40 moles =  (6e4/3.15e7) * (m/m0)^1.5 * time * (1-sr_fe)
70 if moles > m then moles = m
210 save moles
-end
Organic
              -start
5 if (m <= 0.0) then goto 20
10          moles = (6.4e3/3.15e7) * (m/m0)^2.5
11 if moles > m then moles = m
20          save moles * time
             -end
KINETICS 1
Calcite
-m0   10.
Siderite
-m0   0.0
Organic             
 -formula C
 -m0   1.36   # 0.27% org C
Fe(OH)3As
-m0    0.394 # 65 umol/g
-bad_step_max  4000
-cvode  true
END

SOLUTION 0  # river   
units    mol/L
temp    24.3
pH    8.46
Ca    1.42e-03
Mg    5.35e-04
Na    4.79e-04
K      1.02e-04
Alkalinity     4.28e-03
Cl    7.34e-04
S(6)    3.23e-04
O(0)    5.0e-04
END

SOLUTION 1-10  #groundwater
units    mol/L
temp    20.0
pH    7.25
Ca    3.31e-03
Mg    1.26e-03
Na    1.45e-03
K      5.71e-05
Alkalinity    1.24e-02
Cl    3.52e-04
S(6)    4.44e-05
As        5.72e-07
Fe(2)    1.94e-05
Mn        2.84e-05
END

USER_GRAPH 1
    -headings               dist O2 As(5) As(3) Fe
    -axis_titles            "Distance" "Molality" ""
    -axis_scale y_axis      auto auto auto auto log
    -initial_solutions      false
    -connect_simulations    false
    -plot_concentration_vs  x
  -start
10 GRAPH_X dist
20 GRAPH_Y MOL("O2"), TOT("As(5)"), TOT("As(3)"), TOT("Fe")
  -end
    -active                 true

TRANSPORT  #wet v=3.15m/yr
    -cells               10
    -shifts               10
    -time_step         98184.96
    -lengths               0.01
    -punch_frequency       10
    -punch_cells  1-10
    -flow_direction   forward
    -boundary_conditions      flux   flux
    -warnings              false
END

COPY  SOLUTION 10  0
 
TRANSPORT  #dry v=1.5m/yr
    -cells               10
    -shifts               10
    -time_step         205714.28

END
Logged

sll

  • Contributor
  • Posts: 2
Re: TRANSPORT About hydrological fluctuations
« Reply #2 on: 13/05/24 02:34 »
Thanks for your reply. Your advice is very helpful. I'll give it a try.
Logged

  • Print
Pages: [1]   Go Up
« previous next »
  • PhreeqcUsers Discussion Forum »
  • Processes »
  • Reactive transport modelling »
  • TRANSPORT About hydrological fluctuations
 

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