Skip to content

Commit

Permalink
Merge branch 'develop' into pt/allocate-message
Browse files Browse the repository at this point in the history
  • Loading branch information
paveltomin authored Feb 6, 2025
2 parents c2f7917 + 3cddb9f commit 82c1f62
Show file tree
Hide file tree
Showing 55 changed files with 1,305 additions and 359 deletions.
4 changes: 2 additions & 2 deletions .integrated_tests.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
baselines:
bucket: geosx
baseline: integratedTests/baseline_integratedTests-pr3395-9832-31f145e
baseline: integratedTests/baseline_integratedTests-pr3227-10037-26bd879

allow_fail:
all: ''
streak: ''
10 changes: 9 additions & 1 deletion BASELINE_NOTES.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,14 @@ 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 #3227 (2024-02-01)
=====================
Add targetRegion for perforations (optional).

PR #3502 (2025-02-04)
=====================
Add array to store the source values in time inside wave solvers

PR #3395 (2024-01-22)
=====================
Add new fields and change the default input for some tests.
Expand Down Expand Up @@ -128,7 +136,7 @@ Add routine for automatic time steps in waveSolvers with new attributes

PR #3156 (2024-10-29)
====================
Restart check errors due to 1) schema node added to enable thermal option in well model and 2) arrays removed/added for option. Max difference errors due treatment of shutin wells. Previously non-zero rate value reported for shutin well, new code will set rate arrays to zero.
Restart check errors due to 1) schema node added to enable thermal option in well model and 2) arrays removed/added for option. Max difference errors due treatment of shutin wells. Previously non-zero rate value reported for shutin well, new code will set rate arrays to zero.

PR #2878 (2024-10-17)
=====================
Expand Down
2 changes: 1 addition & 1 deletion host-configs/apple/macOS_base.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ set(ENABLE_CALIPER "OFF" CACHE PATH "" FORCE )
set( BLAS_LIBRARIES ${HOMEBREW_DIR}/opt/lapack/lib/libblas.dylib CACHE PATH "" FORCE )
set( LAPACK_LIBRARIES ${HOMEBREW_DIR}/opt/lapack/lib/liblapack.dylib CACHE PATH "" FORCE )

set(ENABLE_DOXYGEN ON CACHE BOOL "" FORCE)
set(ENABLE_DOXYGEN OFF CACHE BOOL "" FORCE)
set(ENABLE_SPHINX ON CACHE BOOL "" FORCE)
set(ENABLE_MATHPRESSO ON CACHE BOOL "" FORCE )

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
<Problem>
<Included>
<File name="./singlePhasePoromechanics_FaultModel_well_new_base.xml"/>
</Included>

<Solvers
gravityVector="{ 0.0, 0.0, 0.0 }">

<SinglePhasePoromechanicsConformingFracturesReservoir
name="reservoirSolver"
targetRegions="{ Region, Fault, wellRegion1, wellRegion2 }"
initialDt="1e-3"
poromechanicsConformingFracturesSolverName="poroFractureSolver"
wellSolverName="singlePhaseWellSolver"
logLevel="1">
<NonlinearSolverParameters
lineSearchAction="None"
maxTimeStepCuts="10"
newtonTol="1e-3"
newtonMaxIter="20"
maxAllowedResidualNorm="1e+25"/>
<LinearSolverParameters
solverType="direct"/>
</SinglePhasePoromechanicsConformingFracturesReservoir>

<SinglePhasePoromechanicsConformingFractures
name="poroFractureSolver"
targetRegions="{ Region, Fault }"
flowSolverName="singlePhaseFlowSolver"
solidSolverName="fractureMechSolver"
logLevel="1">
</SinglePhasePoromechanicsConformingFractures>

<SolidMechanicsLagrangeContact
name="fractureMechSolver"
stabilizationName="singlePhaseTPFA_stab"
logLevel="1"
targetRegions="{ Region, Fault }"
timeIntegrationOption="QuasiStatic"
discretization="FE1"/>

<SinglePhaseFVM
name="singlePhaseFlowSolver"
logLevel="1"
allowNegativePressure="1"
discretization="singlePhaseTPFA"
targetRegions="{ Region, Fault}" />

<SinglePhaseWell
name="singlePhaseWellSolver"
logLevel="1"
targetRegions="{ wellRegion1, wellRegion2 }">
<WellControls
name="wellControls1"
logLevel="2"
type="producer"
control="BHP"
referenceElevation="-2500"
targetBHP="1e7"
targetTotalRate="1e10" />
<WellControls
name="wellControls2"
logLevel="2"
type="injector"
control="BHP"
referenceElevation="-2500"
targetBHP="10e7"
targetTotalRate="1e10" />
</SinglePhaseWell>
</Solvers>

<Tasks>
<SinglePhasePoromechanicsConformingFracturesInitialization
logLevel="1"
name="SinglePhasePoroelasticityPreEquilibrationStep"
poromechanicsSolverName="poroFractureSolver"/>
</Tasks>

<Events
minTime="-1e11"
maxTime="3.0e7">

<!-- Initialization -->
<SoloEvent
name="SinglePhasePoroelasticityPreEquilibrationStep"
targetTime="-1e11"
beginTime="-1e11"
target="/Tasks/SinglePhasePoroelasticityPreEquilibrationStep"
/>
<!-- Injection -->
<SoloEvent
name="outputPostEquilibrationStep1"
targetTime="0"
targetExactTimestep="1"
target="/Outputs/vtkOutput"/>

<PeriodicEvent
name="outputs"
beginTime="0.0"
endTime="3.0e7"
forceDt="3.0e7"
target="/Outputs/vtkOutput"/>

<PeriodicEvent
name="solverApplication"
endTime="3.0e7"
forceDt="3.0e7"
target="/Solvers/reservoirSolver"/>

<PeriodicEvent
name="restarts"
beginTime="0.0"
endTime="3.0e7"
target="/Outputs/restartOutput"/>
</Events>
</Problem>
Original file line number Diff line number Diff line change
@@ -0,0 +1,235 @@
<Problem>
<Constitutive>
<PorousElasticIsotropic
name="porousRock"
permeabilityModelName="rockPerm"
porosityModelName="rockPorosity"
solidModelName="rock" />

<ElasticIsotropic
name="rock"
defaultDensity="2927"
defaultPoissonRatio="0.15"
defaultYoungModulus="14950000000" />

<CompressibleSinglePhaseFluid
name="water"
compressibility="2.09028227021e-10"
defaultDensity="1325"
defaultViscosity="0.001"
referenceDensity="1325"
referencePressure="0e6"
referenceViscosity="0.001"
viscosibility="0.0" />

<BiotPorosity
name="rockPorosity"
defaultReferencePorosity="0.3"
defaultGrainBulkModulus="7.12e30" />

<ConstantPermeability
name="rockPerm"
permeabilityComponents="{ 1.0e-18, 1.0e-18, 1.0e-18 }" />
<!-- Material inside the fault -->
<CompressibleSolidParallelPlatesPermeability
name="faultFilling"
solidModelName="nullSolid"
porosityModelName="fracturePorosity"
permeabilityModelName="fracturePerm"/>

<PressurePorosity
name="fracturePorosity"
defaultReferencePorosity="1.00"
referencePressure="0e6"
compressibility="0.0"/>

<ParallelPlatesPermeability
name="fracturePerm"/>

<Coulomb
name="fractureContact"
cohesion="40.0e6"
frictionCoefficient="0.01"/>

<HydraulicApertureTable
name="hApertureModel"
apertureTableName="apertureTable"/>

<NullModel
name="nullSolid"/>

</Constitutive>

<FieldSpecifications>

<FieldSpecification
name="fracPorosity"
initialCondition="1"
setNames="{ all }"
objectPath="ElementRegions/Fault"
fieldName="fracturePorosity_porosity"
scale="1.00"/>

<FieldSpecification
name="xconstraint"
component="0"
fieldName="totalDisplacement"
objectPath="nodeManager"
scale="0.0"
setNames="{ xnegFace, xposFace }" />

<FieldSpecification
name="yconstraint"
component="1"
fieldName="totalDisplacement"
objectPath="nodeManager"
scale="0.0"
setNames="{ ynegFace, yposFace }" />

<FieldSpecification
name="zconstraint"
component="2"
fieldName="totalDisplacement"
objectPath="nodeManager"
scale="0.0"
setNames="{ znegFace }" />

<Traction
name="tractionTop"
objectPath="faceManager"
tractionType="normal"
scale="-4e7"
setNames="{ zposFace }"/>

<FieldSpecification
name="init_pressure"
initialCondition="1"
setNames="{ all }"
objectPath="ElementRegions"
fieldName="pressure"
scale="4e7"/>
</FieldSpecifications>

<ElementRegions>
<CellElementRegion
name="Region"
cellBlocks="{ 2_hexahedra, 1_hexahedra, 0_hexahedra }"
materialList="{ water, porousRock }"/>

<SurfaceElementRegion
name="Fault"
faceBlock="fracture"
materialList="{ water, faultFilling, fractureContact, hApertureModel }"
defaultAperture="1e-3"/>

<WellElementRegion
name="wellRegion1"
materialList="{ water }"/>

<WellElementRegion
name="wellRegion2"
materialList="{ water }"/>
</ElementRegions>

<NumericalMethods>
<FiniteElements>
<FiniteElementSpace
name="FE1"
order="1" />
</FiniteElements>

<FiniteVolume>
<TwoPointFluxApproximation
name="singlePhaseTPFA"/>
<TwoPointFluxApproximation
name="singlePhaseTPFA_stab"/>
</FiniteVolume>
</NumericalMethods>

<Outputs>
<VTK
name="vtkOutput" />

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

<Functions>
<TableFunction
name="apertureTable"
coordinates="{ -1.0e-3, 0.0 }"
values="{ 1.0e-3, 1.0e-3 }"
/>
</Functions>

<Mesh>
<VTKMesh
name="mesh1"
useGlobalIds="1"
faceBlocks="{ fracture }"
file="verticalFault_ExternalMesh.vtm">
<InternalWell
name="well_producer1"
logLevel="1"
wellRegionName="wellRegion1"
wellControlsName="wellControls1"
polylineNodeCoords="{ { 5400, 5400, 0 },
{ 5400, 5400, -2500 } }"
polylineSegmentConn="{ { 0, 1 } }"
radius="0.1"
numElementsPerSegment="1">
<Perforation
name="producer1_perf1"
targetRegion="Region"
distanceFromHead="2500"/>
</InternalWell>
<InternalWell
name="well_injector1"
logLevel="1"
wellRegionName="wellRegion2"
wellControlsName="wellControls2"
polylineNodeCoords="{ { -5400, -5400, 0 },
{ -5400, -5400, -2500 } }"
polylineSegmentConn="{ { 0, 1 } }"
radius="0.1"
numElementsPerSegment="1">
<Perforation
name="injector1_perf1"
distanceFromHead="2500"/>
</InternalWell>
</VTKMesh>
</Mesh>

<Geometry>
<Box
name="xposFace"
xMin="{ 5999.99, -6000.01, -4000.01 }"
xMax="{ 6000.01, 6000.01, 0.01 }"/>

<Box
name="xnegFace"
xMin="{-6000.01, -6000.01, -4000.01 }"
xMax="{-5999.99, 6000.01, 0.01 }"/>

<Box
name="yposFace"
xMin="{-6000.01, 5999.99, -4000.01 }"
xMax="{ 6000.01, 6000.01, 0.01 }"/>

<Box
name="ynegFace"
xMin="{-6000.01, -6000.01, -4000.01 }"
xMax="{ 6000.01, -5999.99, 0.01 }"/>

<Box
name="zposFace"
xMin="{-6000.01, -6000.01, -0.01 }"
xMax="{ 6000.01, 6000.01, 0.01 }"/>

<Box
name="znegFace"
xMin="{-6000.01, -6000.01, -4000.01 }"
xMax="{ 6000.01, 6000.01, -3999.99 }"/>
</Geometry>

</Problem>
Loading

0 comments on commit 82c1f62

Please sign in to comment.