Skip to content

fix: correct the effective stress calculation for thermoporomechanics - #3884

Merged
victorapm merged 22 commits into
developfrom
fix/frankfei/thermoPorousSolidTotalStress
Aug 17, 2026
Merged

fix: correct the effective stress calculation for thermoporomechanics#3884
victorapm merged 22 commits into
developfrom
fix/frankfei/thermoPorousSolidTotalStress

Conversation

@frankfeifan

@frankfeifan frankfeifan commented Oct 27, 2025

Copy link
Copy Markdown
Contributor

This PR aims to correct the current GEOS effective stress calculation such that it is consistent with Terzaghi definition. Detailed explanations on the issue and this change can be seen in the file attached.
THMEffStress_GEOS.pdf

  • Correct the effective and total stress calculation as well as dTotalStress_dTemperature in PorousSolid for the thermal case
  • Add an integrated test to verify the implementation
  • Remove the thermal strain part from the avgPlasticStrain calculation. (assumed avgPlasticStrain to be purely mechanical deformation).
  • Revise the THM tutorial benchmark problem accordingly (PR#4110)

Another PR(s) needed to fix following items

  • Fix the porosity update for both full implicit case and fixed-stress case (see formulation in the last slide of the pdf above). It can be complex in terms of derivative calculations.
  • Prepare tutorial examples with these newly added tests

@frankfeifan
frankfeifan marked this pull request as ready for review October 27, 2025 03:07
@frankfeifan frankfeifan added flag: requires rebaseline Requires rebaseline branch in integratedTests ci: run integrated tests Allows to run the integrated tests in GEOS CI labels Oct 27, 2025
@frankfeifan frankfeifan self-assigned this Oct 27, 2025
@frankfeifan

Copy link
Copy Markdown
Contributor Author

An integrated test is added to verify the implementation: https://github.com/GEOS-DEV/GEOS/blob/deaa1bda781b98215e21a7671b55756f434a5604/inputFiles/thermoPoromechanics/ThermoDruckerPrager_1DCooling_smoke.xml

The previous GEOS total stress calculation cannot match the analytical solution:
displacementPlots.pdf
stressPlots.pdf

With this fix, the analytical solution can be matched:
displacementPlots.pdf
stressPlots.pdf

@frankfeifan frankfeifan added the ci: run CUDA builds Allows to triggers (costly) CUDA jobs label Oct 31, 2025

@jhuang2601 jhuang2601 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great update, thanks!

@victorapm
victorapm merged commit 03c3f44 into develop Aug 17, 2026
21 checks passed
@victorapm
victorapm deleted the fix/frankfei/thermoPorousSolidTotalStress branch August 17, 2026 01:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci: run CUDA builds Allows to triggers (costly) CUDA jobs ci: run integrated tests Allows to run the integrated tests in GEOS CI flag: ready for review flag: requires rebaseline Requires rebaseline branch in integratedTests

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants