Infinite Concentration Error while making a Pyrite Precipitation Model

9 views
Skip to first unread message

Isaac Prud'homme

unread,
Feb 16, 2026, 11:02:19 AM (10 days ago) Feb 16
to pflotran-users
Hi Everyone,

I'm very new to working in PFLOTRAN and I'm trying to create a Pyrite precipitation model similar to the 1-D Calcite flow and transport model found in exercises. I was able to create a list of Primary and Secondary species using the python script but I keep getting an infinite concentration error from my secondary species.

Error:
================================
PFLOTRAN Development Version
================================

"grid_structured_type" set to default value.
pflotran card:: NUMERICAL_METHODS
pflotran card:: NUMERICAL_METHODS
pflotran card:: CHEMISTRY
"Pyrite RATE_CONSTANT UNITS" set to default value.
pflotran card:: GRID
pflotran card:: FLUID_PROPERTY
"FLUID_PROPERTY,diffusion_coefficient units" set to default value.
pflotran card:: MATERIAL_PROPERTY
Name :: soil1
pflotran card:: CHARACTERISTIC_CURVES
Name :: default
WARNING: A default Saturation Function has been chosen in CHARACTERISTIC_CURVES(default),.
WARNING: A default Relative Permeability Function has been chosen in CHARACTERISTIC_CURVES(default),.
WARNING: A default Relative Permeability Function has been chosen in CHARACTERISTIC_CURVES(default),.
pflotran card:: OUTPUT
"OUTPUT,FORMAT,HDF5,# FILES" set to default value.
pflotran card:: TIME
pflotran card:: REGION
all
pflotran card:: REGION
west
pflotran card:: REGION
east
pflotran card:: FLOW_CONDITION
initial_pressure
pflotran card:: FLOW_CONDITION
inlet_flux
pflotran card:: TRANSPORT_CONDITION
background_conc
pflotran card:: TRANSPORT_CONDITION
inlet_conc
pflotran card:: CONSTRAINT
initial_constraint
Constraint Species: H+
Constraint Species: SO4--
Constraint Species: Fe++
Constraint Species: H2O
Constraint Species: O2(aq)
Constraint Minerals: Pyrite
pflotran card:: CONSTRAINT
inlet_constraint
Constraint Species: H+
Constraint Species: SO4--
Constraint Species: Fe++
Constraint Species: H2O
Constraint Species: O2(aq)
pflotran card:: INITIAL_CONDITION
"Initial Condition name" set to default value.
pflotran card:: BOUNDARY_CONDITION
pflotran card:: BOUNDARY_CONDITION
pflotran card:: STRATA
pflotran card:: END_SUBSURFACE

Extent of Gridded Domain
X: 0.000000E+00 - 1.000000E+02
Y: 0.000000E+00 - 1.000000E+00
Z: 0.000000E+00 - 1.000000E+00

Size of Gridded Domain
Number of grid cells: 100

Min/Max Cell Volumes [m^3]
Maximum: 1.000000E+00
Minimum: 1.000000E+00

Number of active grid cells: 100
Number of inactive grid cells: 0

Setting up TRAN Realization
(0): ERROR: Infinite concentrations found in constraint "initial_constraint".
(0): Species "H2S(aq)" has an infinite (or near infinite) concentration (Infinity).

ERROR(0): Secondary aqueous concentrations RESULTING from constraint concentrations must be reasonable.

Stopping!
WARNING! There are options you set that were not used!
WARNING! could be spelling mistake, etc!
There is one unused database option. It is:
Option left: name:-input_prefix value: pyrite_flow_and_tran source: command line
--------------------------------------------------------------------------
Primary job terminated normally, but 1 process returned
a non-zero exit code. Per user-direction, the job has been aborted.
--------------------------------------------------------------------------
--------------------------------------------------------------------------
mpirun detected that one or more processes exited with non-zero status, thus causing
the job to be terminated. The first process to do so was:

Process name: [[11959,1],0]
Exit code: 87
-------------------------------------------------------------------------- Input File:
  #Description: 1D Pyrite dissolution problem SIMULATION SIMULATION_TYPE SUBSURFACE PROCESS_MODELS SUBSURFACE_FLOW flow MODE RICHARDS / SUBSURFACE_TRANSPORT transport MODE GIRT / / END SUBSURFACE #=========================== numerical methods ================================ NUMERICAL_METHODS FLOW LINEAR_SOLVER SOLVER DIRECT / END NUMERICAL_METHODS TRANSPORT LINEAR_SOLVER SOLVER DIRECT / END #=========================== chemistry ======================================== CHEMISTRY PRIMARY_SPECIES Fe++ H+ ! HS- SO4-- O2(aq) H2O / SECONDARY_SPECIES HS- ! S2O3-- ! Fe+++ ! H2(aq) ! HSO5- ! SO3-- ! Fe(OH)2(aq) ! Fe(OH)3- ! Fe(OH)4-- ! FeOH+ ! FeSO4(aq) ! H2SO4(aq) ! HO2- ! HS2O3- ! HSO4- ! OH- ! S5O6-- ! Fe(OH)2+ ! Fe(OH)3(aq) ! Fe(OH)4- ! Fe(SO4)2- ! Fe2(OH)2++++ ! Fe3(OH)4(5+) ! FeOH++ ! FeSO4+ H2S(aq) ! H2SO3(aq) ! HSO3- ! S-- ! SO2(aq) / PASSIVE_GAS_SPECIES H2(g) H2O(g) H2S(g) O2(g) / !DECOUPLED_EQUILIBRIUM_REACTIONS ! HS- ! H2S(aq) !/ MINERALS ! Fe ! Fe(OH)2 ! Fe(OH)3 ! Fe2(SO4)3 ! FeO ! FeSO4 ! Ferrihydrite ! Goethite ! Hematite ! Magnetite ! Melanterite Pyrite ! Pyrrhotite ! Schwertmannite ! Sulfur ! Troilite ! Wustite / MINERAL_KINETICS ! Fe ! RATE_CONSTANT 1.d-20 mol/m^2-sec ! / ! Fe(OH)2 ! RATE_CONSTANT 1.d-18 mol/m^2-sec ! / ! Fe(OH)3 ! RATE_CONSTANT 1.d-18 ! / Pyrite RATE_CONSTANT 1.d-5 / / DATABASE hanford.dat LOG_FORMULATION ACTIVITY_COEFFICIENTS TIMESTEP OUTPUT PH TOTAL ALL / END #=========================== solver options =================================== #=========================== discretization =================================== GRID TYPE STRUCTURED NXYZ 100 1 1 BOUNDS 0.d0 0.d0 0.d0 100.d0 1.d0 1.d0 / END #=========================== fluid properties ================================= FLUID_PROPERTY DIFFUSION_COEFFICIENT 1.d-9 END #=========================== material properties ============================== MATERIAL_PROPERTY soil1 ID 1 POROSITY 0.25d0 TORTUOSITY 1.d0 PERMEABILITY PERM_ISO 1.d-12 / CHARACTERISTIC_CURVES default END #=========================== characteristic curves ============================ CHARACTERISTIC_CURVES default DEFAULT END #=========================== output options =================================== OUTPUT TIMES y 5. 10. 15. 20. FORMAT HDF5 VELOCITY_AT_CENTER END #=========================== times ============================================ TIME FINAL_TIME 25.d0 y INITIAL_TIMESTEP_SIZE 1.d0 h MAXIMUM_TIMESTEP_SIZE 2.5d-1 y END #=========================== regions ========================================== REGION all COORDINATES 0.d0 0.d0 0.d0 100.d0 1.d0 1.d0 / END REGION west FACE WEST COORDINATES 0.d0 0.d0 0.d0 0.d0 1.d0 1.d0 / END REGION east FACE EAST COORDINATES 100.d0 0.d0 0.d0 100.d0 1.d0 1.d0 / END #=========================== flow conditions ================================== FLOW_CONDITION initial_pressure TYPE LIQUID_PRESSURE DIRICHLET / LIQUID_PRESSURE 201325.d0 END FLOW_CONDITION inlet_flux TYPE LIQUID_FLUX NEUMANN / LIQUID_FLUX 1.d0 m/y END #=========================== transport conditions ============================= TRANSPORT_CONDITION background_conc TYPE DIRICHLET CONSTRAINT_LIST 0.d0 initial_constraint / END TRANSPORT_CONDITION inlet_conc TYPE DIRICHLET CONSTRAINT_LIST 0.d0 inlet_constraint / END #=========================== constraints ====================================== # All numbers taken from Calcite example CONSTRAINT initial_constraint CONCENTRATIONS H+ 1.00E-8 P SO4-- 1.00E-3 T ! HS- 1.00E-5 Fe++ 5.00E-4 M Pyrite H2O 1.00E-3 T O2(aq) 1.00E-3 T / MINERALS ! Fe 0. 0. m^2/m^3 ! Fe(OH)2 0. 0. m^2/m^3 ! Fe(OH)3 0. 0. m^2/m^3 Pyrite 1.d-5 1.d0 m^2/m^3 / END CONSTRAINT inlet_constraint CONCENTRATIONS H+ 1.00E-3 P SO4-- 1.00E-3 T Fe++ 1.00E-6 Z H2O 1.00E-3 T O2(aq) 1.00E-3 T / END #=========================== condition couplers =============================== # initial condition INITIAL_CONDITION FLOW_CONDITION initial_pressure TRANSPORT_CONDITION background_conc REGION all END BOUNDARY_CONDITION outlet FLOW_CONDITION initial_pressure TRANSPORT_CONDITION background_conc REGION east END BOUNDARY_CONDITION inlet FLOW_CONDITION inlet_flux TRANSPORT_CONDITION inlet_conc REGION west END #=========================== stratigraphy couplers ============================ STRATA REGION all MATERIAL soil1 END END_SUBSURFACE  

Peter Lichtner

unread,
Feb 16, 2026, 11:49:01 AM (10 days ago) Feb 16
to pflotran-users
Could you please send your input file.

Peter

--
You received this message because you are subscribed to the Google Groups "pflotran-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to pflotran-user...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/pflotran-users/bb15cf77-b4b0-4a53-8bfb-bdc21a3639e4n%40googlegroups.com.

Isaac Prud'homme

unread,
Feb 16, 2026, 2:26:03 PM (10 days ago) Feb 16
to pflotran-users
pyrite_flow_and_tran.in

Peter Lichtner

unread,
Feb 16, 2026, 3:08:40 PM (10 days ago) Feb 16
to pflotran-users
Try this. You can do a diff with your original file to see what changes were made. You will eventually need to add back the various complexes you commented out.
Peter

pyrite_flow_and_tran.in

Isaac Prud'homme

unread,
Feb 16, 2026, 3:31:53 PM (10 days ago) Feb 16
to pflotran-users
That worked! Thank you very much!

Isaac Prud'homme

unread,
Feb 23, 2026, 2:51:35 PM (3 days ago) Feb 23
to pflotran-users
Could you explain what originally caused the infinite concentration error? I'm interested in adding the H2O species back in in the future.
Reply all
Reply to author
Forward
0 new messages