Processes > Dissolution and precipitation
Tiny representative volume of cells
Mohamadreza:
Hi Dear David.
I want to simulate solubility of CO2 in brine (nacl 2 molal).
The water volume in each cell is approximately 1e-15 m3, based on porosity, saturation, and representative volume.
I must be run phreeqcRM in this range of RV.
Are any special settings required in this specific case to ensure the simulation converges without problems?
dlparkhurst:
No, the chemistry RV does not need to be the same as your transport-model cells. Use a larger RV.
You should start by simulating conservative transport with no gas phase. The representative volume should not make any difference because SetConcentrations or SetSpeciesConcentrations (and the Getters) do not depend on the RV. Once RV is set at the beginning of the simulation, the volume of water in the chemistry model depends only on Porosity and Saturation (which do not depend on the RV). For conservative transport, you should be able to use any reasonable value of RV.
Once you have conservative transport working, you can add the gas phase. I don't know how you are implementing the gas phase. If you use SetGasCompMoles, the method does set the moles of the gas phase, so you must scale it from the transport RV to the chemistry RV and back again after GetGasCompMoles. If you set pressures, then you may not need to scale.
I reiterate that I really cannot help you with your transport model. I will be glad to examine a PHREEQC, PHAST, or Python script if you can reproduce your errors. However, if you persist in RV of 1E-15, I cannot help you.
Mohamadreza:
Thanks for your explanations, and yes, I understood RV. But there is still one thing I don't quite get.
Let me explain more and also include the phreeqcRM error.
I have a geometry with dimensions
(1e-5, 1e-5, 1e-5).
The actual volume of my geometry is therefore
1e-15 m3.
Porosity is 0.4 and saturation is 1.
So, amount of water, and number of moles are roughly on the order of 1e-15.
Does phreeqcRM work properly with values in this order of magnitude or not?
If yes, what settings are required to make it converge?
In this range of values, phreeqcRM et error:
--- Code: ---WARNING: Maximum iterations exceeded, 100
WARNING: Numerical method failed with this set of convergence parameters.
WARNING: Trying smaller step size, pe step size 10, 5 ...
WARNING: Maximum iterations exceeded, 200
WARNING: Numerical method failed with this set of convergence parameters.
WARNING: Trying reduced tolerance 1e-16 ...
WARNING: Maximum iterations exceeded, 200
WARNING: Numerical method failed with this set of convergence parameters.
WARNING: Trying increased tolerance 1e-14 ...
WARNING: Maximum iterations exceeded, 200
WARNING: Numerical method failed with this set of convergence parameters.
WARNING: Trying diagonal scaling ...
WARNING: Maximum iterations exceeded, 200
WARNING: Numerical method failed with this set of convergence parameters.
WARNING: Trying diagonal scaling and reduced tolerance 1e-16 ...
WARNING: Maximum iterations exceeded, 200
WARNING: Numerical method failed with this set of convergence parameters.
WARNING: Trying scaling pure_phase columns 1e-10 ...
WARNING: Maximum iterations exceeded, 200
WARNING: Numerical method failed with this set of convergence parameters.
WARNING: Trying scaling pure_phase columns and diagonal scale 1e-10 ...
WARNING: Maximum iterations exceeded, 200
WARNING: Numerical method failed with this set of convergence parameters.
WARNING: Trying increased scaling 1e-09 ...
WARNING: Maximum iterations exceeded, 200
WARNING: Numerical method failed with this set of convergence parameters.
WARNING: Skipping optimize equations for first 5 iterations ...
WARNING: Maximum iterations exceeded, 100
WARNING: Numerical method failed with this set of convergence parameters.
WARNING: Adding inequality to make concentrations greater than zero.
WARNING: Maximum iterations exceeded, 100
WARNING: Numerical method failed with this set of convergence parameters.
WARNING: Trying reduced tolerance 1e-17 ...
WARNING: Maximum iterations exceeded, 200
WARNING: Numerical method failed with this set of convergence parameters.
WARNING: Trying reduced tolerance 1e-18 ...
WARNING: Maximum iterations exceeded, 200
WARNING: Numerical method failed with this set of convergence parameters.
WARNING: The program has failed to converge to a numerical solution.
The following equations were not satisfied:
ERROR: A(H2O) Activity of water has not converged. Residual: 7.160930e-06
ERROR: Numerical method failed on all combinations of convergence parameters, cell/soln/mix 40
Stopping.
WARNING: Maximum iterations exceeded, 100
WARNING: Numerical method failed with this set of convergence parameters.
WARNING: Trying smaller step size, pe step size 10, 5 ...
WARNING: Maximum iterations exceeded, 200
WARNING: Numerical method failed with this set of convergence parameters.
WARNING: Trying reduced tolerance 1e-16 ...
WARNING: Maximum iterations exceeded, 200
WARNING: Numerical method failed with this set of convergence parameters.
WARNING: Trying increased tolerance 1e-14 ...
WARNING: Maximum iterations exceeded, 200
WARNING: Numerical method failed with this set of convergence parameters.
WARNING: Trying diagonal scaling ...
WARNING: Maximum iterations exceeded, 200
WARNING: Numerical method failed with this set of convergence parameters.
WARNING: Trying diagonal scaling and reduced tolerance 1e-16 ...
WARNING: Maximum iterations exceeded, 200
WARNING: Numerical method failed with this set of convergence parameters.
WARNING: Trying scaling pure_phase columns 1e-10 ...
WARNING: Maximum iterations exceeded, 200
WARNING: Numerical method failed with this set of convergence parameters.
WARNING: Trying scaling pure_phase columns and diagonal scale 1e-10 ...
WARNING: Maximum iterations exceeded, 200
WARNING: Numerical method failed with this set of convergence parameters.
WARNING: Trying increased scaling 1e-09 ...
WARNING: Maximum iterations exceeded, 200
WARNING: Numerical method failed with this set of convergence parameters.
WARNING: Skipping optimize equations for first 5 iterations ...
WARNING: Maximum iterations exceeded, 100
WARNING: Numerical method failed with this set of convergence parameters.
WARNING: Adding inequality to make concentrations greater than zero.
WARNING: Maximum iterations exceeded, 100
WARNING: Numerical method failed with this set of convergence parameters.
WARNING: Trying reduced tolerance 1e-17 ...
WARNING: Maximum iterations exceeded, 200
WARNING: Numerical method failed with this set of convergence parameters.
WARNING: Trying reduced tolerance 1e-18 ...
WARNING: Maximum iterations exceeded, 200
WARNING: Numerical method failed with this set of convergence parameters.
WARNING: The program has failed to converge to a numerical solution.
The following equations were not satisfied:
ERROR: A(H2O) Activity of water has not converged. Residual: 7.160930e-06
ERROR: Numerical method failed on all combinations of convergence parameters, cell/soln/mix 40
Stopping.
ERROR: ERROR: A(H2O) Activity of water has not converged. Residual: 7.160930e-06
ERROR: Numerical method failed on all combinations of convergence parameters, cell/soln/mix 40
ERROR: A(H2O) Activity of water has not converged. Residual: 7.160930e-06
ERROR: Numerical method failed on all combinations of convergence parameters, cell/soln/mix 40
ERROR: PhreeqcRM failed.
ERROR: PhreeqcRM::RunCells
--- End code ---
dlparkhurst:
.No, I would not be surprised if PhreeqcRM failed with that small a volume.
Humor me. Set the RV to 1.0 and run a conservative transport without gases.
Mohamadreza:
Thanks. How do I set RV to 1 in PhreeqcRM for this geometry?
Navigation
[0] Message Index
[#] Next page
Go to full version