Dear PFLOTRAN developers and users,
I am a graduate student using the development version of PFLOTRAN for supercritical CO₂ (SCO2) flow with reactive transport, and I am encountering a persistent boundary-condition error that I cannot resolve from the documentation.
My setup:
SIMULATION_TYPE SUBSURFACE
SUBSURFACE_FLOW: MODE SCO2 with ISOTHERMAL_TEMPERATURE
SUBSURFACE_TRANSPORT: MODE GIRT with aqueous chemistry and mineral kinetics
Simple 1D structured grid (100 × 1 × 1), fully active cells
Two boundaries: west (injection) and east (production)
What I am trying to do:
Implement rate-controlled injection and production in SCO2 mode using
FLOW_CONDITION with TYPE ... RATE MASS_RATE (as described in the FLOW_CONDITION / SCO2 documentation).
I have tried both:
Full “aqueous state” plus rate, and
Minimal rate-only and rate+pressure combinations.
Examples of FLOW_CONDITIONs I tried (and which all trigger the same error):
Full aqueous state + rate:
Minimal, rate-only:
I pair these with:
and similarly for a production boundary with a negative rate.
The error:
The input parses, grid is reported correctly, and then the run stops with:
This happens for any SCO2 FLOW_CONDITION that contains RATE MASS_RATE and is used in a BOUNDARY_CONDITION, even when it is the only TYPE entry. When I remove RATE and use only Dirichlet pressure/composition (pure “aqueous state”), the simulation runs fine.
What I have checked:
I have carefully followed the SCO2 FLOW_CONDITION TYPE specification, including the “Initial thermodynamic states for combinations of Dirichlet-based conditions” for Aqueous/Gas/Gas–Aqueous/Trapped Gas.
I have tested combinations that match exactly:
LIQUID_PRESSURE + CO2_MASS_FRACTION (MASS_FRACTION) + SALT_MASS_FRACTION + TEMPERATURE for the aqueous state, without RATE.
Those Dirichlet-only SCO2 boundaries work, but any use of RATE MASS_RATE in SCO2 mode immediately triggers the “Missing dof” error.
My questions:
Is RATE MASS_RATE actually supported in SCO2 mode in the development version I am using, or is it documented but not yet implemented/fully enabled for SCO2?
If it is supported, could you please provide a small working example input snippet (FLOW_CONDITION + BOUNDARY_CONDITION) showing a valid SCO2 rate-controlled boundary?
If it is not currently supported, is the recommended workaround to:
Use only Dirichlet pressure-based SCO2 boundaries and tune the pressure difference to approximate a constant rate?
Or is there another preferred way to impose rate control for SCO2 wells?
I can provide my minimal 1D input file if helpful, but the key behavior is that any FLOW_CONDITION with TYPE ... RATE MASS_RATE used in a BOUNDARY_CONDITION in SCO2 mode yields Error with SCO2_MODE phase boundary condition: Missing dof, while the same problem with pure pressure-based SCO2 BCs runs without issues.
Thank you very much for your time and for maintaining PFLOTRAN. Any guidance or a small working SCO2 example with RATE MASS_RATE would be greatly appreciated.
Best regards,
Hassan
--
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/a721d7cc-7c91-436f-8f1f-d73ccdf98f64n%40googlegroups.com.
You received this message because you are subscribed to a topic in the Google Groups "pflotran-users" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/pflotran-users/1lrpRsJIBg8/unsubscribe.
To unsubscribe from this group and all its topics, send an email to pflotran-user...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/pflotran-users/82A33636-9919-4986-8BD6-D7DB6AB72DFF%40gmail.com.
To view this discussion visit https://groups.google.com/d/msgid/pflotran-users/CAEn-Fx3Khe1931nnZAjoW-hpPV%3DyCOfRf0%2B7c2F64cWj78WC8g%40mail.gmail.com.
<E.in>
Dear Michael,
Thank you again for your guidance earlier.
I was able to get the model running, but currently the wells are being controlled by pressure rather than by a fixed injection/production rate. My goal is to inject and produce using a fixed mass rate.
I tried implementing the RATE MASS_RATE option with SOURCE_SINK, but I kept encountering the same “missing DOF” error and couldn’t resolve it. I believe I may still be missing something in the flow condition setup.
Would you be able to help modify the input file so the injector and producer operate at fixed rates instead of pressure control? I’ve been stuck on this for a while and would really appreciate your help.
Thank you very much for your time.
Best regards,
Hassan
To view this discussion visit https://groups.google.com/d/msgid/pflotran-users/E4615E7E-E783-491F-AD9B-68E8E2086A3D%40gmail.com.