PhreeqcUsers Discussion Forum
Click here to donate to keep PhreeqcUsers open

Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
 

  • Forum Home
  • Login
  • Register

  • PhreeqcUsers Discussion Forum »
  • Beginners »
  • PHREEQC basics »
  • Can a REACTION_PRESSURE be applied to a whole SOLUTION_SPREAD?
« previous next »
  • Print
Pages: [1]   Go Down

Author Topic: Can a REACTION_PRESSURE be applied to a whole SOLUTION_SPREAD?  (Read 434 times)

geomorgski

  • Contributor
  • Posts: 2
Can a REACTION_PRESSURE be applied to a whole SOLUTION_SPREAD?
« on: September 13, 2021, 08:55:05 AM »
Hey!

I'm trying to get up to speed on phreeqc after a 13 years hiatus and I'm a bit rusty. I want to apply a REACTION_PRESSURE recalculation to a SOLUTION_SPREAD table but at the moment it is only running the first solution of the table. Is there any way to apply it to the whole table?

The samples are sea water to pore waters at several km depth, so if there is any code for increasing submarine pore water pressures with depth, that would also be really handy!

Many thanks :)
Logged

dlparkhurst

  • Top Contributor
  • Posts: 2736
Re: Can a REACTION_PRESSURE be applied to a whole SOLUTION_SPREAD?
« Reply #1 on: September 13, 2021, 03:31:40 PM »
You can define a column with the heading "pressure" to set the pressure of the solutions in SOLUTION_SPREAD. This will set the pressure for the "initial solution" calculations of species distribution and saturation indices. It will also be the pressures used in any subsequent reaction calculations with the solutions, provided REACTION_PRESSURE is not defined (and you are not using a fixed_volume GAS_PHASE).

If you do not define a column with the heading "number", the solutions in SOLUTION_SPREAD will be numbered 1 through n. REACTION_PRESSURE n data blocks apply to "reaction" calculations, where, for example you react one of the solutions with a set of minerals (EQUILIBRIUM_PHASES). So  the following would set the pressure for reactions with the first solution.

Code: [Select]
USE solution 1
REACTION_PRESSURE 1
 100 # atm
EQUILIBRIUM_PHASES
 Calcite 0 10
END

If you want to equilibrate all of the solutions with calcite at 100 atm, you could do the following:

Code: [Select]
SOLUTION_SPREAD
1
...
n
END
EQUILIBRIUM_PHASES 1-n
Calcite 0 10
END
REACTION_PRESSURE 1-n
100
END
RUN_CELLS
-cells 1-n
END

where n is replaced by the actual number of solutions defined. RUN_CELLS; -cells 1-n will take all reaction entities with the user number 1 (SOLUTION 1, EQUILIBRIUM_PHASES 1, REACTION_PRESSURE 1, SURFACE 1, etc) an put them together in a reaction, followed by a reaction with everything numbered 2, and so on.

From your description, I think you probably want to assign a pressure to each solution with a "pressure" column in SOLUTION_SPREAD. The pressure would correspond to the depth of the sample. In this case, unless you need to bury the solution to a different depth, you would not need to use REACTION_PRESSURE.


Logged

geomorgski

  • Contributor
  • Posts: 2
Re: Can a REACTION_PRESSURE be applied to a whole SOLUTION_SPREAD?
« Reply #2 on: September 22, 2021, 03:55:49 AM »
Many thanks! This was super useful.

I now have the code running properly, but it is currently predicting negative pe values for the entire sequence, including the bottom water sample (that should be oxidized). I currently have H2O(g) and calcite as the EQUILIBRIUM_PHASES, it is worth expanding that collection to give a better estimate of pe-pH conditions?
Thanks again
Logged

dlparkhurst

  • Top Contributor
  • Posts: 2736
Re: Can a REACTION_PRESSURE be applied to a whole SOLUTION_SPREAD?
« Reply #3 on: September 22, 2021, 04:50:42 PM »
I don't think you want H2O(g) in EQUILIBRIUM_PHASES. You are trying to force the activity of water to a specific value to be in equilibrium with a specified partial pressure of water vapor.

H2O(g) makes the most sense when you are using a GAS_PHASE, where H2O(g) is a minor component of the gas phase.

Logged

  • Print
Pages: [1]   Go Up
« previous next »
  • PhreeqcUsers Discussion Forum »
  • Beginners »
  • PHREEQC basics »
  • Can a REACTION_PRESSURE be applied to a whole SOLUTION_SPREAD?
 

  • SMF 2.0.17 | SMF © 2019, Simple Machines | Terms and Policies
  • XHTML
  • RSS
  • WAP2