diff --git a/.integrated_tests.yaml b/.integrated_tests.yaml index 3de3368090d..ac30925c9e1 100644 --- a/.integrated_tests.yaml +++ b/.integrated_tests.yaml @@ -1,6 +1,6 @@ baselines: bucket: geosx - baseline: integratedTests/baseline_integratedTests-pr3836-17046-2e89f64 + baseline: integratedTests/baseline_integratedTests-pr4088-17146-5e1834c allow_fail: all: '' diff --git a/BASELINE_NOTES.md b/BASELINE_NOTES.md index 6f77c74b57b..27fb77739a7 100644 --- a/BASELINE_NOTES.md +++ b/BASELINE_NOTES.md @@ -5,6 +5,10 @@ This file is designed to track changes to the integrated test baselines. Any developer who updates the baseline ID in the .integrated_tests.yaml file is expected to create an entry in this file with the pull request number, date, and their justification for rebaselining. These notes should be in reverse-chronological order, and use the following time format: (YYYY-MM-DD). +PR #4088 (2026-07-27) +===================== +Fluid reset after convergence failure + PR #3836 (2026-05-20) ===================== Added statistics `Group` objects for each statistics `Task` instance diff --git a/src/coreComponents/physicsSolvers/fluidFlow/CompositionalMultiphaseBase.cpp b/src/coreComponents/physicsSolvers/fluidFlow/CompositionalMultiphaseBase.cpp index 93c17c765ec..03ec8ffe48a 100644 --- a/src/coreComponents/physicsSolvers/fluidFlow/CompositionalMultiphaseBase.cpp +++ b/src/coreComponents/physicsSolvers/fluidFlow/CompositionalMultiphaseBase.cpp @@ -2790,6 +2790,14 @@ void CompositionalMultiphaseBase::resetStateToBeginningOfStep( DomainPartition & // update porosity, permeability updatePorosityAndPermeability( subRegion ); + // discard any warm-started state held by the fluid model (e.g. K-values + // used to seed the flash) so the rolled-back step does not inherit + // iterate-dependent state from the failed Newton attempt. + { + string const & fluidName = subRegion.template getReference< string >( viewKeyStruct::fluidNamesString() ); + MultiFluidBase const & fluid = getConstitutiveModel< MultiFluidBase >( subRegion, fluidName ); + fluid.initializeState(); + } // update all fluid properties updateFluidState( subRegion ); // for thermal simulations, update solid internal energy