Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
89 commits
Select commit Hold shift + click to select a range
52439ee
implement mfd for mixed method and update unit tests
chauj96 Mar 12, 2026
f7d1850
apply uncrustify
chauj96 Mar 12, 2026
e483d46
merge from develop
chauj96 Mar 12, 2026
817ed6a
Added helper functions
castelletto1 Mar 14, 2026
5560168
unify geometry variable naming
chauj96 Mar 16, 2026
8c65d2a
Merge branch 'develop' into feature/inner_products_for_mixed_method
chauj96 Mar 16, 2026
3caf737
apply uncrustify formatting
chauj96 Mar 16, 2026
5665929
add doxygen documentation for computeM functions
chauj96 Mar 17, 2026
41f75ee
apply uncrustify formatting
chauj96 Mar 17, 2026
5bdf752
Merge branch 'develop' into feature/inner_products_for_mixed_method
OmarDuran Mar 27, 2026
18d1ad0
Merge branch 'develop' into feature/inner_products_for_mixed_method
OmarDuran Apr 10, 2026
c0963df
Merge branch 'develop' into feature/inner_products_for_mixed_method
OmarDuran Jul 31, 2026
4913d31
wip: mixed-MFD inner prodcuts
OmarDuran Jul 31, 2026
06cbf15
wip: drafting the GA implementation.
OmarDuran Jul 31, 2026
75c12a2
wip: including adaptive inner product
OmarDuran Jul 31, 2026
33a55f3
wip:testing classification with 4 partitions
OmarDuran Jul 31, 2026
e0c3c6c
wip
OmarDuran Jul 31, 2026
31a0398
wip: adding MRG strategy for saddle point problems
OmarDuran Jul 31, 2026
111b1d4
wip: testing MRG on saddle point problems
OmarDuran Jul 31, 2026
85ccb1f
wip: stencilFlag-guided three-level MGR strategy
OmarDuran Aug 1, 2026
625ac54
wip: locally condensable TPFA facet-dof
OmarDuran Aug 1, 2026
584958b
wip: leaner MGR
OmarDuran Aug 3, 2026
410f7b3
Merge branch 'develop' into feature/inner_products_for_mixed_method
OmarDuran Aug 3, 2026
d3c5c1c
wip: fix qTPFA and BdVLM
OmarDuran Aug 4, 2026
5b450de
fix: centroid computation exact for planar polygons in R3
OmarDuran Aug 4, 2026
b5a7c8f
wip
OmarDuran Aug 4, 2026
ea4fb83
Merge branch 'feature/inner_products_for_mixed_method' into feature/m…
OmarDuran Aug 4, 2026
e3c8592
Bug fix on LC dane
victorapm Aug 5, 2026
df516a6
Add hypredrive bridge for singlePhaseMixedMFD
victorapm Aug 5, 2026
e1a8e6c
wip: some work on robustness
OmarDuran Aug 6, 2026
c35061a
wip: fix compilation with cuda
OmarDuran Aug 7, 2026
bba2833
fix: condensation of truly TPFA dofs
OmarDuran Aug 10, 2026
41c01a0
wip: update from develop
OmarDuran Sep 4, 2026
05d834d
wip: include RT product which is the exact Raviart–Thomas on simplexes
OmarDuran Sep 4, 2026
6f72288
wip: improve testing for RT product
OmarDuran Sep 5, 2026
df29f56
wip: include a riesz preconditioner
OmarDuran Sep 5, 2026
dcf55bf
wip: include volume degeneracy Tolerance
OmarDuran Sep 6, 2026
1b2d76f
wip: apply same fix from the FV-TPFA
OmarDuran Sep 6, 2026
c771972
wip: correct parallel runs and remove riesz map concept
OmarDuran Sep 6, 2026
c798a74
wip: support for user defined mfdFlag
OmarDuran Sep 6, 2026
f3ba8f7
wip: testing adaptive consistency
OmarDuran Sep 6, 2026
b22f3b2
wip: minor improvements on prescribed mfdFlag
OmarDuran Sep 7, 2026
5a60bf0
Merge branch 'develop' into feature/mixed_mimetic_discretization
OmarDuran Sep 8, 2026
7382c9a
wip: merge from develop
OmarDuran Sep 15, 2026
151a3d1
wip: resolve conflict
OmarDuran Sep 15, 2026
f726042
wip: minor fixes
OmarDuran Sep 15, 2026
d0b0b5d
wip: add input deck for robustness
OmarDuran Sep 15, 2026
f4040da
wip: add input deck for robustness
OmarDuran Sep 15, 2026
ae2208a
fix: shadow declaration of ‘prescribed’
OmarDuran Sep 15, 2026
431ad02
wip: improve input deck for robustness.
OmarDuran Sep 15, 2026
f2a24f5
Merge branch 'develop' into feature/mixed_mimetic_discretization
OmarDuran Sep 16, 2026
a0ffe64
wip: srun --overlap
OmarDuran Sep 17, 2026
d98775b
wip: reporting wall time on srun --overlap
OmarDuran Sep 17, 2026
54b9f9a
wip: srun improved output
OmarDuran Sep 17, 2026
ee395f6
Trigger CI
OmarDuran Sep 17, 2026
bb67aef
wip: make submodules up to date
OmarDuran Sep 17, 2026
5f4c621
wip: make code compliant with code rules
OmarDuran Sep 17, 2026
7361c99
wip: clean example input files and fix validation checks
OmarDuran Sep 17, 2026
66a651a
wip: undo changes on src/coreComponents/schema/schema.xsd.other
OmarDuran Sep 17, 2026
88624c4
wip: mixed-MFD for thermal single phase flow
OmarDuran Sep 19, 2026
f072400
Merge branch 'develop' into feature/mixed_mimetic_discretization
OmarDuran Sep 19, 2026
b8f3dc6
Merge branch 'develop' into feature_thermal_mixed_mimetic
OmarDuran Sep 19, 2026
10dbec3
wip: minor improvement for MGR
OmarDuran Sep 19, 2026
62c3b94
Merge branch 'develop' into feature/mixed_mimetic_discretization
OmarDuran Sep 21, 2026
2875cfe
fix: make computeResidualWeights public for the CUDA builds
OmarDuran Sep 22, 2026
b16fc3e
Merge branch 'develop' into feature/mixed_mimetic_discretization
OmarDuran Sep 23, 2026
c508185
Merge branch 'develop' into feature/mixed_mimetic_discretization
OmarDuran Sep 25, 2026
90cb457
Merge branch 'develop' into feature/mixed_mimetic_discretization
OmarDuran Oct 22, 2026
5f43997
Update src/coreComponents/mixedMimetic/MixedMimeticDiscretization.cpp
OmarDuran Oct 30, 2026
9e8dfd8
Update src/coreComponents/finiteVolume/mimeticInnerProducts/unitTests…
OmarDuran Oct 30, 2026
c8ecb06
Merge branch 'develop' into feature/mixed_mimetic_discretization
OmarDuran Oct 30, 2026
b2fe048
wip: apply review comments
OmarDuran Oct 31, 2026
0f9a68b
wip: merge from develop
OmarDuran Oct 31, 2026
45dc4cb
Update src/coreComponents/mixedMimetic/MixedMimeticDiscretization.cpp
OmarDuran Oct 31, 2026
0adc539
wip: apply review comments II
OmarDuran Oct 31, 2026
3c1cab0
Merge branch 'feature/mixed_mimetic_discretization' of https://github…
OmarDuran Oct 31, 2026
7b10fc7
wip: make member public for the nvcc device lambda; move the PR #4139…
OmarDuran Oct 31, 2026
0f6d03e
Merge branch 'develop' into feature/mixed_mimetic_discretization
OmarDuran Oct 31, 2026
1f6031e
wip: update the integrated test baseline for PR #4139
OmarDuran Oct 31, 2026
2200e03
Merge branch 'feature/mixed_mimetic_discretization' of https://github…
OmarDuran Oct 31, 2026
623283c
Fixed GPU
Nov 3, 2026
54b35ba
Retrigger CI
OmarDuran Nov 4, 2026
1013f25
wip: merge from origing
OmarDuran Nov 4, 2026
e2837ee
wip: merge from mixed MFD branch
OmarDuran Nov 4, 2026
d1e6ea4
wip: further fixes after mixed-MFD merge
OmarDuran Nov 4, 2026
7614919
wip: drop the local cmake patches
OmarDuran Nov 4, 2026
8538e8f
wip: Lapwood decks
OmarDuran Nov 4, 2026
5c4e218
Retrigger CI
OmarDuran Nov 4, 2026
8a92d10
wip: insert the thermal boundary keys instead of iterating over temp…
OmarDuran Nov 4, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .integrated_tests.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
baselines:
bucket: geosx
baseline: integratedTests/baseline_integratedTests-pr4169-17867-5d0c7de
baseline: integratedTests/baseline_integratedTests-pr4139-17884-0f6d03e
allow_fail:
all: ''
streak: ''
4 changes: 4 additions & 0 deletions BASELINE_NOTES.md
Original file line number Diff line number Diff line change
Expand Up @@ -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 #4139 (2026-10-31) <https://storage.googleapis.com/geosx/integratedTests/baseline_integratedTests-pr4139-17884-0f6d03e.tar.gz>
=====================
Add the mixed mimetic discretization: new `NumericalMethods/MixedMimetic` group in every restart file and new mixed MFD tests.

PR #4169 (2026-10-30) <https://storage.googleapis.com/geosx/integratedTests/baseline_integratedTests-pr4169-17867-5d0c7de.tar.gz>
=====================
Fix surface generator splitting for contact mechanics case with wells
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
<?xml version="1.0" ?>

<!-- Ra = 30, below the threshold 4.5 pi^2 of the seeded mode: the disturbance decays, n = -8.01e-10 1/s -->

<Problem>
<Included>
<File name="./lapwoodConvectionFVM_base.xml"/>
</Included>

<!-- k = Ra / 7.848e12 -->
<FieldSpecifications>
<FieldSpecification
name="permX"
initialCondition="1"
component="0"
setNames="{ all }"
objectPath="ElementRegions"
fieldName="rockPerm_permeability"
scale="3.82263e-12"/>

<FieldSpecification
name="permY"
initialCondition="1"
component="1"
setNames="{ all }"
objectPath="ElementRegions"
fieldName="rockPerm_permeability"
scale="3.82263e-12"/>

<FieldSpecification
name="permZ"
initialCondition="1"
component="2"
setNames="{ all }"
objectPath="ElementRegions"
fieldName="rockPerm_permeability"
scale="3.82263e-12"/>
</FieldSpecifications>

<!-- 2.0e10 s is the diffusion time h^2 / kappa -->
<Events
maxTime="2.0e10">
<PeriodicEvent
name="solverApplications"
forceDt="1.0e8"
target="/Solvers/flow"/>

<PeriodicEvent
name="probeCollection"
timeFrequency="1.0e8"
target="/Tasks/probeTemperature"/>

<PeriodicEvent
name="probeOutput"
timeFrequency="1.0e9"
targetExactTimestep="0"
target="/Outputs/timeHistoryOutput"/>

<PeriodicEvent
name="outputs"
timeFrequency="1.0e9"
target="/Outputs/vtkOutput"/>
</Events>
</Problem>
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
<?xml version="1.0" ?>

<!-- Ra = 50, above the threshold 4.5 pi^2 of the seeded mode: the disturbance grows, n = 3.10e-10 1/s -->

<Problem>
<Included>
<File name="./lapwoodConvectionFVM_base.xml"/>
</Included>

<!-- k = Ra / 7.848e12 -->
<FieldSpecifications>
<FieldSpecification
name="permX"
initialCondition="1"
component="0"
setNames="{ all }"
objectPath="ElementRegions"
fieldName="rockPerm_permeability"
scale="6.37105e-12"/>

<FieldSpecification
name="permY"
initialCondition="1"
component="1"
setNames="{ all }"
objectPath="ElementRegions"
fieldName="rockPerm_permeability"
scale="6.37105e-12"/>

<FieldSpecification
name="permZ"
initialCondition="1"
component="2"
setNames="{ all }"
objectPath="ElementRegions"
fieldName="rockPerm_permeability"
scale="6.37105e-12"/>
</FieldSpecifications>

<!-- 2.0e10 s is the diffusion time h^2 / kappa -->
<Events
maxTime="2.0e10">
<PeriodicEvent
name="solverApplications"
forceDt="1.0e8"
target="/Solvers/flow"/>

<PeriodicEvent
name="probeCollection"
timeFrequency="1.0e8"
target="/Tasks/probeTemperature"/>

<PeriodicEvent
name="probeOutput"
timeFrequency="1.0e9"
targetExactTimestep="0"
target="/Outputs/timeHistoryOutput"/>

<PeriodicEvent
name="outputs"
timeFrequency="1.0e9"
target="/Outputs/vtkOutput"/>
</Events>
</Problem>
208 changes: 208 additions & 0 deletions inputFiles/singlePhaseFlow/polyhedral/lapwoodConvectionFVM_base.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,208 @@
<?xml version="1.0" ?>

<!-- The problem of lapwoodConvection_base.xml with the cell-centred finite volume solver and the two-point flux
approximation: same domain, medium, fluid, initial state and events.

Difference in the thermal boundary condition. In SinglePhaseFVM a face Dirichlet condition prescribes the pressure
and the temperature together, so an impervious face of given temperature is not available. The conductive
temperature 320 - 0.2 z is imposed instead in the cells of the bottom and top layers, at their centres
z = dz_b / 2 and h - dz_b / 2: a condition of first order in the thickness dz_b of those layers.

The mesh is therefore graded towards z = 0 and z = h: dz = 10/3 m in [5, 95] as in the mixed deck, 5/6 m in the
next 10/3 m and dz_b = 5/24 m in the last 5/3 m. With dz_b = h / 480, n = 3.10e-10 1/s at Ra = 50 and
-7.86e-10 1/s at Ra = 30 (theory 3.10e-10 and -8.01e-10). With uniform layers dz_b = h / 30 the rates were
2.52e-10 and -8.39e-10. -->

<Problem>

<Solvers
gravityVector="{ 0.0, 0.0, -9.81 }">
<SinglePhaseFVM
name="flow"
logLevel="1"
isThermal="1"
discretization="tpfa"
temperature="310.0"
targetRegions="{ domain }">
<NonlinearSolverParameters
newtonTol="1.0e-5"
newtonMaxIter="10"/>
<LinearSolverParameters
solverType="gmres"
preconditionerType="amg"
krylovTol="1.0e-7"
logLevel="1"/>
</SinglePhaseFVM>
</Solvers>

<NumericalMethods>
<FiniteVolume>
<TwoPointFluxApproximation
name="tpfa"/>
</FiniteVolume>
</NumericalMethods>

<Mesh>
<InternalMesh
name="mesh"
elementTypes="{ C3D4 }"
xCoords="{ 0, 200 }"
yCoords="{ 0, 200 }"
zCoords="{ 0, 1.6666666667, 5, 95, 98.3333333333, 100 }"
nx="{ 60 }"
ny="{ 30 }"
nz="{ 8, 4, 27, 4, 8 }"
cellBlockNames="{ block }"/>
</Mesh>

<Geometry>
<!-- cells of the bottom and top layers, dz = 5/24 m -->
<Box
name="bottomCells"
xMin="{ -0.01, -0.01, -0.01 }"
xMax="{ 200.01, 200.01, 0.21 }"/>

<Box
name="topCells"
xMin="{ -0.01, -0.01, 99.79 }"
xMax="{ 200.01, 200.01, 100.01 }"/>

<!-- cell at mid-height ( z = 50 ), at the maximum of the initial perturbation -->
<Box
name="probe"
xMin="{ -0.01, -0.01, 48.32 }"
xMax="{ 3.34, 6.68, 51.68 }"/>
</Geometry>

<ElementRegions>
<CellElementRegion
name="domain"
cellBlocks="{ * }"
materialList="{ rock, fluid, thermalCond }"/>
</ElementRegions>

<Constitutive>
<CompressibleSolidConstantPermeability
name="rock"
solidModelName="nullSolid"
porosityModelName="rockPorosity"
permeabilityModelName="rockPerm"
solidInternalEnergyModelName="rockInternalEnergy"/>

<NullModel
name="nullSolid"/>

<PressurePorosity
name="rockPorosity"
defaultReferencePorosity="0.2"
referencePressure="1.0e7"
compressibility="0.0"/>

<SolidInternalEnergy
name="rockInternalEnergy"
referenceVolumetricHeatCapacity="2.0e6"
referenceTemperature="310.0"
referenceInternalEnergy="0.0"/>

<!-- k at Ra = 4 pi^2; the variants overwrite it -->
<ConstantPermeability
name="rockPerm"
permeabilityComponents="{ 5.03038e-12, 5.03038e-12, 5.03038e-12 }"/>

<ThermalCompressibleSinglePhaseFluid
name="fluid"
defaultDensity="1000"
defaultViscosity="0.001"
referencePressure="1.0e7"
referenceTemperature="310.0"
compressibility="4.5e-10"
thermalExpansionCoeff="2.0e-4"
viscosibility="0.0"
temperatureViscosityCoefficient="0.0"
specificHeatCapacity="4000"
referenceInternalEnergy="1.0e6"/>

<SinglePhaseThermalConductivity
name="thermalCond"
defaultThermalConductivityComponents="{ 2.0, 2.0, 2.0 }"
thermalConductivityGradientComponents="{ 0, 0, 0 }"
referenceTemperature="310.0"/>
</Constitutive>

<!-- tabulated over the whole domain, independent of the mesh -->
<Functions>
<!-- 1.0e7 + rho g ( h - z ) -->
<TableFunction
name="hydrostaticPressure"
inputVarNames="{ elementCenter }"
coordinateFiles="{ lapwoodConvection_tables/xMid.geos, lapwoodConvection_tables/y.geos, lapwoodConvection_tables/z.geos }"
voxelFile="lapwoodConvection_tables/pressure.geos"/>

<!-- 320 - 0.2 z + 0.01 sin( pi z / h ) cos( pi x / h ) cos( pi y / h ), tabulated every 5 m -->
<TableFunction
name="disturbedTemperature"
inputVarNames="{ elementCenter }"
coordinateFiles="{ lapwoodConvection_tables/x3D.geos, lapwoodConvection_tables/y3D.geos, lapwoodConvection_tables/z3D.geos }"
voxelFile="lapwoodConvection_tables/temperature3D.geos"/>

<!-- 320 - 0.2 z -->
<TableFunction
name="conductiveTemperature"
inputVarNames="{ elementCenter }"
coordinateFiles="{ lapwoodConvection_tables/xMid.geos, lapwoodConvection_tables/y.geos, lapwoodConvection_tables/z.geos }"
voxelFile="lapwoodConvection_tables/conduction.geos"/>
</Functions>

<FieldSpecifications>
<FieldSpecification
name="initialPressure"
initialCondition="1"
setNames="{ all }"
objectPath="ElementRegions"
fieldName="pressure"
functionName="hydrostaticPressure"
scale="1.0"/>

<FieldSpecification
name="initialTemperature"
initialCondition="1"
setNames="{ all }"
objectPath="ElementRegions"
fieldName="temperature"
functionName="disturbedTemperature"
scale="1.0"/>

<!-- conductive temperature in the bottom and top cell layers; no flow condition: every boundary is impervious -->
<FieldSpecification
name="boundaryTemperature"
setNames="{ bottomCells, topCells }"
objectPath="ElementRegions"
fieldName="temperature"
functionName="conductiveTemperature"
scale="1.0"/>
</FieldSpecifications>

<!-- the disturbance is temperature - ( 320 - 0.2 z ) in the probe cell, z stored with the history -->
<Tasks>
<PackCollection
name="probeTemperature"
objectPath="ElementRegions/domain/block"
fieldName="temperature"
setNames="{ probe }"/>
</Tasks>

<Outputs>
<VTK
name="vtkOutput"
fieldNames="{ pressure, temperature }"/>

<TimeHistory
name="timeHistoryOutput"
sources="{ /Tasks/probeTemperature }"
filename="lapwoodProbe"/>

<Restart
name="restartOutput"/>
</Outputs>

</Problem>
Loading
Loading