GEOS-DEV / GEOS-DEV/GEOS

Thermal poromechanics with stabilizationType="Global" does not propagate temperature (pressure-only stabilized flux)

Open
#3,991 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

type: bug type: new
Dominant language
C++
Stars
287
Forks
109
Avg merge
4d 41m
Merged PRs (30d)
5

Description

Describe the bug
In thermal single-phase poromechanics, when stabilizationType="Global" is enabled in SinglePhasePoromechanics, pressure propagates but temperature does not propagate correctly.
The stabilized flux path uses a pressure-only kernel (NUM_EQN = 1, NUM_DOF = 1) and does not assemble thermal/energy flux terms.

Relevant code locations:

  • src/coreComponents/physicsSolvers/fluidFlow/SinglePhaseFVM.cpp
    • SinglePhaseFVM< SinglePhaseBase >::assembleStabilizedFluxTerms(...)
    • Contains comment: // No thermal support yet
  • src/coreComponents/physicsSolvers/fluidFlow/kernels/singlePhase/StabilizedFluxComputeKernel.hpp
    • NUM_EQN = 1, NUM_DOF = 1

Expected behavior
With isThermal="1", both pressure and temperature should propagate consistently in the coupled poromechanics case, including when stabilization is enabled.

Platform (please complete the following information):

  • Machine [e.g. LLNL/Quartz]
    • Local Linux workstation
  • GEOS Version [e.g. 0.2]
    • develop branch, commit bd9ff57015

Additional context

  • The same thermal box forcing setup works in the no-stress flow-only case.
  • Coupled run logs show thermal equation residual (Renergy) is present, but stabilized flux assembly path appears pressure-only.
  • This suggests missing thermal support in stabilized single-phase flux assembly rather than an input field-spec issue.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start in src/coreComponents/physicsSolvers/fluidFlow/SinglePhaseFVM.cpp at assembleStabilizedFluxTerms(...) and inspect the pressure-only path and its “No thermal support yet” comment. Then read kernels/singlePhase/StabilizedFluxComputeKernel.hpp, including its NUM_EQN and NUM_DOF settings. Done means thermal single-phase poromechanics with stabilizationType="Global" propagates both pressure and temperature consistently when isThermal="1".

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
hpc
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.