Issue using OSRT for scCO2 reactive transport with v7.0

35 views
Skip to first unread message

chenyao su

unread,
Mar 23, 2026, 8:38:36 AMMar 23
to pflotran-users
Hello everyone,
  I would like to confirm whether the OSRT method is still supported in simulations of supercritical CO₂ (MODE SCO2) reactive transport.
When I modified the GIRT method to OSRT in the Simplified case5 ( Modeling supercritical co2 flow and mineralization in reactive host rocks with pflotran v7.0  ) of the code, an error occurred. I also tested other custom cases of my own, and all encountered the same error (see details below). My PETSc version is 3.21.5, and PFLOTRAN version is 7.0.
  However,  I found that when using pflotran version 6.0, simultaneously using sco2 and osrt still worked.
Is there any special configuration required for using the OSRT method changed? 

== OPER.-SPLIT REACTIVE TRANSPORT ============================================== [0]PETSC ERROR: ------------------------------------------------------------------------ [0]PETSC ERROR: Caught signal number 11 SEGV: Segmentation Violation, probably memory access out of range [0]PETSC ERROR: Try option -start_in_debugger or -on_error_attach_debugger [0]PETSC ERROR: or see https://petsc.org/release/faq/#valgrind and https://petsc.org/release/faq/ [0]PETSC ERROR: configure using --with-debugging=yes, recompile, link, and run [0]PETSC ERROR: to get more information on the crash. [0]PETSC ERROR: Run with -malloc_debug to check if memory corruption is causing the crash. [16]PETSC ERROR: ------------------------------------------------------------------------ [16]PETSC ERROR: Caught signal number 11 SEGV: Segmentation Violation, probably memory access out of range [16]PETSC ERROR: Try option -start_in_debugger or -on_error_attach_debugger [16]PETSC ERROR: or see https://petsc.org/release/faq/#valgrind and https://petsc.org/release/faq/ [16]PETSC ERROR: configure using --with-debugging=yes, recompile, link, and run [16]PETSC ERROR: to get more information on the crash. [16]PETSC ERROR: Run with -malloc_debug to check if memory corruption is causing the crash. --------------------------------------------------------------------------
co2_test5.in

Hammond, Glenn E

unread,
Mar 23, 2026, 11:50:47 AMMar 23
to pflotra...@googlegroups.com
Chenyao,

Please send your database: problem-5.dat

Glenn

From: pflotra...@googlegroups.com <pflotra...@googlegroups.com> on behalf of chenyao su <suche...@gmail.com>
Date: Monday, March 23, 2026 at 5:38 AM
To: pflotran-users <pflotra...@googlegroups.com>
Subject: [pflotran-users: 8727] Issue using OSRT for scCO2 reactive transport with v7.0

You don't often get email from suche...@gmail.com. Learn why this is important
Check twice before you click! This email originated from outside PNNL.
--
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/0cbfd62b-c761-45dd-9551-dc9c7542efebn%40googlegroups.com.

chenyao su

unread,
Mar 23, 2026, 10:22:47 PMMar 23
to pflotran-users
Dear   Glenn,

  This is all the input files.

chenyao
co2_sw.dat
problem-5.dat
co2_test5.in

Hammond, Glenn E

unread,
Mar 24, 2026, 1:24:08 AMMar 24
to pflotra...@googlegroups.com
Chenyao,

I've pushed an update that should resolve the issue. 
However, I remain uncertain about the thorough testing of operator split reactive transport for sCO2 coupling, so I would advise against using it. 

Glenn

chenyao su

unread,
Mar 30, 2026, 7:06:50 AMMar 30
to pflotran-users

Dear  Glenn,

  Yes, you are right. I have tested several cases and tuned many parameters, and I found that the SCO₂ + OSRT approach can lead to significant errors.

  I would like to understand this better: when I use OSRT in a simple Richards flow, reasonable parameters can produce good results, but this does not hold for two-phase flow. Is this due to the strong nonlinearity of SCO₂ flow, or because PFLOTRAN does not fully account for the coupling between the two modules?

Chenyao

Hammond, Glenn E

unread,
Apr 1, 2026, 10:37:22 AM (13 days ago) Apr 1
to pflotra...@googlegroups.com
Chenyao,

The main issue stems from the missing linkage between sCO2 and OSRT, whereas sCO2 combined with GIRT does have this connection.

Have you had a chance to update to the latest master branch? I pushed an update last week intended to address the missing linkage, though I have not yet had an opportunity to thoroughly test it. Additionally, keep in mind that the time step size needed to minimize numerical errors caused by decoupling transport and reaction may make OSRT far less practical compared to the fully coupled GIRT approach.

Glenn

chenyao su

unread,
Apr 10, 2026, 4:27:31 AM (5 days ago) Apr 10
to pflotran-users
Dear Glenn, 

  Yes, I have updated the latest master branch, and it is now operational. However, as you mentioned, when these two modules are combined together, there will be a significant error. I have tried to update the parameters or simplify the calculation example, but neither approach has been very effective.

  I want to use an external chemical calculation module, but the GIRT method might not be the most convenient way to do so. Since OSRT is decoupled by nature, it is a more suitable option.

  Do you have any good suggestions on this?

   Chenyao

Hammond, Glenn E

unread,
Apr 11, 2026, 3:50:48 PM (3 days ago) Apr 11
to pflotra...@googlegroups.com
Chenyao,

When using OSRT, reducing the time step size can help decrease the associated error. I suggest verifying whether the error diminishes as you lower the time step size. If this is the case, consider proceeding with OSRT using smaller time steps.

If the error persists, I recommend implementing the external chemical calculation module within a reaction sandbox, provided the rates are kinetically formulated. This approach will enable you to leverage the new expressions in GIRT.

Glenn

Reply all
Reply to author
Forward
0 new messages