Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
71 commits
Select commit Hold shift + click to select a range
d01636b
changed ConstantPermeability to PressurePermeability in PorousSolid
frankfeifan Jul 16, 2024
a5be599
Merge remote-tracking branch 'origin/develop' into THM_PresPerm
frankfeifan Jul 25, 2024
ff78867
changed the default to exponential and updated xml
frankfeifan Jul 26, 2024
dd51266
to allow initialization and update of fields in the fracture for HF s…
frankfeifan Aug 20, 2024
8bb93a1
only use the matrix perm for the FaceElementToCellStencil
frankfeifan Aug 20, 2024
bca0320
turned on restart check for kgdToughnessDominated smoke test
frankfeifan Aug 23, 2024
8cf7d2a
Merge branch 'develop' into fix/frankfei/debugRestartHF
rrsettgast Aug 24, 2024
41d2071
add write/read of ObjectManagerBase::m_localMaxGlobalIndex and Object…
rrsettgast Aug 25, 2024
abce932
Merge remote-tracking branch 'origin/fix/frankfei/debugRestartHF' int…
frankfeifan Aug 25, 2024
ffc1e1b
Merge remote-tracking branch 'origin/develop' into frankfei/forge-HF
frankfeifan Aug 26, 2024
28849b0
make the toughness scalable with the fracture size
frankfeifan Aug 27, 2024
d5049c3
allow to plot K_IC
frankfeifan Aug 28, 2024
952b9d1
fixed xmls
frankfeifan Aug 28, 2024
e831ab9
Merge branch 'feat/frankfei/scalingToughness' into frankfei/forge-HF
frankfeifan Aug 28, 2024
4e174f1
Merge remote-tracking branch 'origin/develop' into feat/frankfei/scal…
frankfeifan Aug 28, 2024
760eac2
Merge remote-tracking branch 'origin/develop' into frankfei/forge-HF
frankfeifan Sep 11, 2024
97da9c9
Merge remote-tracking branch 'origin/develop' into THM_PresPerm
frankfeifan Sep 11, 2024
2281f88
Merge remote-tracking branch 'origin/develop' into feat/frankfei/scal…
frankfeifan Sep 16, 2024
75a2330
changed baseRockToughness to initialRockToughness and removed unneces…
frankfeifan Sep 17, 2024
af20655
added an example for anisotropic toughness
frankfeifan Sep 17, 2024
f7268d5
Merge branch 'feat/frankfei/scalingToughness' into frankfei/forge-HF
frankfeifan Sep 17, 2024
a94f642
removed unused var.
frankfeifan Oct 3, 2024
bc27316
Merge remote-tracking branch 'origin/develop' into frankfei/forge-HF
frankfeifan Oct 6, 2024
200450d
Merge remote-tracking branch 'origin/develop' into frankfei/forge-HF
frankfeifan Oct 7, 2024
d57010d
added wellbore volume
frankfeifan Oct 7, 2024
cd10e23
made the referencePressure a field array
frankfeifan Oct 7, 2024
83128b5
Merge branch 'THM_PresPerm' into frankfei/forge-HF
frankfeifan Oct 15, 2024
8dd89aa
make anisotropic toughness also size dependent
frankfeifan Jan 10, 2025
52316c8
add explicit update to the pressure permeability
frankfeifan Jan 10, 2025
7a0c78a
Merge remote-tracking branch 'origin/develop' into frankfei/forge-HF
frankfeifan Jan 10, 2025
f0a14b5
Merge remote-tracking branch 'origin/develop' into frankfei/forge-HF
frankfeifan Jan 15, 2025
dca2053
add a static catalog name for BartonBandis model
jhuang2601 Feb 18, 2025
a00051f
fix compilation error
jhuang2601 Feb 18, 2025
4f9d113
add catalog registration.
CusiniM Feb 18, 2025
4fb97dc
add a smoke test
jhuang2601 Feb 19, 2025
a0f92f9
check the fracture state for aperture update
jhuang2601 Feb 20, 2025
3236cc5
update cpp files with fracture state
jhuang2601 Feb 20, 2025
3323a64
more changes with fracture state
jhuang2601 Feb 20, 2025
1ee2026
fix compilation error
jhuang2601 Feb 20, 2025
8ac2fd1
ensure consistent sign convention
jhuang2601 Feb 20, 2025
8ccb202
update testing cases
jhuang2601 Feb 20, 2025
c2cd64e
address review comments
jhuang2601 Feb 20, 2025
32c4ae7
fix compilation errors
jhuang2601 Feb 21, 2025
8c11aec
scope fields::contact::FractureState
jhuang2601 Feb 21, 2025
e9257db
Fix all compilation erros.
CusiniM Feb 21, 2025
9d92e55
one more fix in hydrofracture solver.
CusiniM Feb 21, 2025
d6d720a
use integer to solve compilation error.
CusiniM Feb 21, 2025
7057be2
Merge branch 'develop' into feature/jhuang/enableBartonBandis
jhuang2601 Feb 26, 2025
5880bfd
Merge branch 'develop' into feature/jhuang/enableBartonBandis
jhuang2601 Mar 1, 2025
51e99dc
Merge branch 'develop' into feature/jhuang/enableBartonBandis
jhuang2601 Mar 7, 2025
dcb5852
Merge branch 'develop' into feature/jhuang/enableBartonBandis
jhuang2601 Mar 14, 2025
3ba0457
Merge branch 'develop' into feature/jhuang/enableBartonBandis
jhuang2601 Apr 1, 2025
731d36e
Merge branch 'develop' into feature/jhuang/enableBartonBandis
jhuang2601 Apr 15, 2025
fd4547c
Merge remote-tracking branch 'origin/develop' into frankfei/forge-HF
frankfeifan May 9, 2025
0755429
Merge branch 'develop' into feature/jhuang/enableBartonBandis
jhuang2601 May 23, 2025
caf96e7
Merge branch 'develop' into feature/jhuang/enableBartonBandis
jhuang2601 Jun 5, 2025
af9f0ad
Merge remote-tracking branch 'origin/develop' into frankfei/forge-HF
frankfeifan Jun 24, 2025
0266e39
Merge remote-tracking branch 'origin/develop' into feature/jhuang/ena…
frankfeifan Jun 30, 2025
d786721
Merge branch 'feature/jhuang/enableBartonBandis' into frankfei/forge-HF
frankfeifan Jun 30, 2025
a640dfb
to enable barton bandis for hydroFrac
frankfeifan Jul 1, 2025
c804443
Merge remote-tracking branch 'origin/develop' into frankfei/forge-HF
frankfeifan Oct 13, 2025
17ac8bd
Merge remote-tracking branch 'origin/develop' into frankfei/forge-HF
frankfeifan Nov 11, 2025
77c7845
enable pressure permeability in porous solid
frankfeifan Nov 18, 2025
a722a30
enable thermal in hydroFrac and fix
frankfeifan Nov 18, 2025
50a604b
Merge remote-tracking branch 'origin/develop' into frankfei/forge-HF
frankfeifan Nov 18, 2025
e0e3c00
enable thermal stress in HF propagation
frankfeifan Nov 19, 2025
5bf7a40
add FORGE examples
frankfeifan Nov 19, 2025
a4734bf
temporarily commented just for DFIT
frankfeifan Dec 5, 2025
48b4694
Merge remote-tracking branch 'origin/develop' into frankfei/forge-HF
frankfeifan Dec 5, 2025
d01bfbb
added poroelastic cases
frankfeifan Dec 5, 2025
b986d05
temporarily turn off thermal stress in surface generation kernel
frankfeifan Dec 22, 2025
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
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
<?xml version="1.0" ?>

<Problem>

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

<ElementRegions>
<CellElementRegion
name="Domain"
cellBlocks="{ cb1 }"
materialList="{ porousRock, rock, water }"/>

<SurfaceElementRegion
name="Fracture"
defaultAperture="1e-4"
materialList="{ water, rock, fractureFilling, fractureContact, hApertureModel }"/>
</ElementRegions>

<Constitutive>
<CompressibleSinglePhaseFluid
name="water"
defaultDensity="1000"
defaultViscosity="1e-3"
referencePressure="0.0"
referenceDensity="1000"
compressibility="5e-10"
referenceViscosity="1e-3"
viscosibility="0.0"/>

<CompressibleSolidPressurePermeability
name="porousRock"
solidModelName="nullSolid"
porosityModelName="rockPorosity"
permeabilityModelName="rockPerm"/>

<PressurePermeability
name="rockPerm"
referencePermeabilityComponents="{ 1.0e-16, 1.0e-16, 1.0e-16 }"
pressureDependenceConstants="{ 1.3e-6, 1.3e-6, 1.3e-6 }"
defaultReferencePressure="2.30675e7"
maxPermeability="2e-16"
pressureModelType="Exponential"/>

<PressurePorosity
name="rockPorosity"
defaultReferencePorosity="0.01"
referencePressure="0.0"
compressibility="1e-10"/>

<ElasticIsotropic
name="rock"
defaultDensity="2700"
defaultBulkModulus="51.7e9"
defaultShearModulus="20.0e9"/>

<CompressibleSolidParallelPlatesPermeability
name="fractureFilling"
solidModelName="nullSolid"
porosityModelName="fracturePorosity"
permeabilityModelName="fracturePerm"/>

<NullModel
name="nullSolid"/>

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

<ParallelPlatesPermeability
name="fracturePerm"/>

<FrictionlessContact
name="fractureContact"/>

<BartonBandis
name="hApertureModel"
referenceAperture="1e-4"
referenceNormalStress="5e6"/>
</Constitutive>

<Geometry>
<Box
name="core"
xMin="{ -0.01, -2000.1, -0.51 }"
xMax="{ 0.01, 2000.1, 0.51 }"/>
</Geometry>


</Problem>

Original file line number Diff line number Diff line change
@@ -0,0 +1,264 @@
<?xml version="1.0" ?>

<Problem>

<Included>
<File name="dfit_16B_MF2Cyc1_base.xml"/>
</Included>

<Solvers
gravityVector="{ 0.0, 0.0, 0.0 }">
<Hydrofracture
name="hydrofracture"
solidSolverName="lagsolve"
flowSolverName="SinglePhaseFlow"
surfaceGeneratorName="SurfaceGen"
logLevel="1"
targetRegions="{ Fracture }"
isLaggingFractureStencilWeightsUpdate="1"
maxNumResolves="10"
useQuasiNewton="1">
<NonlinearSolverParameters
newtonTol="1e-3"
lineSearchAction="None"
newtonMaxIter="20"
maxTimeStepCuts="10"
maxSubSteps="50"
maxAllowedResidualNorm="1e40"/>
<LinearSolverParameters
solverType="gmres"
preconditionerType="mgr"
krylovAdaptiveTol="1"
logLevel="1"/>
</Hydrofracture>

<SolidMechanicsLagrangianFEM
name="lagsolve"
timeIntegrationOption="QuasiStatic"
logLevel="1"
discretization="FE1"
targetRegions="{ Domain, Fracture }"
contactRelationName="fractureContact"
contactPenaltyStiffness="1.0e12">
<NonlinearSolverParameters
newtonTol="1.0e-3"/>
<LinearSolverParameters
solverType="gmres"
logLevel="1"/>
</SolidMechanicsLagrangianFEM>

<SinglePhaseFVM
name="SinglePhaseFlow"
logLevel="1"
discretization="fluidTPFA"
targetRegions="{ Domain, Fracture }">
<NonlinearSolverParameters
newtonTol="1.0e-3"/>
<LinearSolverParameters
solverType="gmres"
logLevel="1"/>
</SinglePhaseFVM>

<SurfaceGenerator
name="SurfaceGen"
targetRegions="{ Domain }"
nodeBasedSIF="1"
initialRockToughness="1e30"
mpiCommOrder="1"/>
</Solvers>

<Mesh>
<InternalMesh
name="mesh1"
elementTypes="{ C3D8 }"
xCoords="{ -100, -5, 5, 100 }"
yCoords="{ -100, -10, 10, 100 }"
zCoords="{ -100, -5, -1, 1, 5, 100 }"
nx="{ 19, 50, 19 }"
ny="{ 30, 200, 30 }"
nz="{ 19, 20, 20, 20, 19 }"
cellBlockNames="{ cb1 }"/>
</Mesh>

<Events
minTime="0.0"
maxTime="2900.0">
<SoloEvent
name="preFracture"
target="/Solvers/SurfaceGen"/>

<PeriodicEvent
name="outputs0"
cycleFrequency="5"
beginTime="0.0"
endTime="499.9"
target="/Outputs/vtkOutput"/>

<PeriodicEvent
name="outputs1"
cycleFrequency="1"
beginTime="499.9"
endTime="510.0"
target="/Outputs/vtkOutput"/>

<PeriodicEvent
name="outputs2"
cycleFrequency="10"
beginTime="510.0"
target="/Outputs/vtkOutput"/>

<PeriodicEvent
name="solverApplicationsEquilibration"
beginTime="0"
endTime="499.9"
forceDt="10"
target="/Solvers/hydrofracture"/>

<PeriodicEvent
name="solverApplications0"
beginTime="499.9"
endTime="501.0"
maxEventDt="0.1"
target="/Solvers/hydrofracture"/>

<PeriodicEvent
name="solverApplications1"
beginTime="501.0"
endTime="540.0"
maxEventDt="0.5"
target="/Solvers/hydrofracture"/>

<PeriodicEvent
name="solverApplications2"
beginTime="540.0"
endTime="600.0"
maxEventDt="1.0"
target="/Solvers/hydrofracture"/>

<PeriodicEvent
name="solverApplications3"
beginTime="600.0"
endTime="700.0"
maxEventDt="2.0"
target="/Solvers/hydrofracture"/>

<PeriodicEvent
name="solverApplications4"
beginTime="700.0"
maxEventDt="4.0"
target="/Solvers/hydrofracture"/>

<PeriodicEvent
name="restarts"
cycleFrequency="100"
target="/Outputs/restartOutput"/>

</Events>

<FieldSpecifications>
<FieldSpecification
name="Sh"
initialCondition="1"
setNames="{ all }"
objectPath="ElementRegions/Domain/cb1"
fieldName="rock_stress"
component="0"
scale="-2.061e7"/>

<FieldSpecification
name="SH"
initialCondition="1"
setNames="{ all }"
objectPath="ElementRegions/Domain/cb1"
fieldName="rock_stress"
component="1"
scale="-3.1e7"/>

<FieldSpecification
name="Sv"
initialCondition="1"
setNames="{ all }"
objectPath="ElementRegions/Domain/cb1"
fieldName="rock_stress"
component="2"
scale="-4.0e7"/>

<FieldSpecification
name="initialPressure"
initialCondition="1"
setNames="{ all }"
objectPath="ElementRegions/Domain/cb1"
fieldName="pressure"
scale="1.903e7"/>

<FieldSpecification
name="fracturePressure"
objectPath="ElementRegions/Fracture"
fieldName="pressure"
setNames="{all}"
scale="2.30675e7"
beginTime="-1e10"
endTime="500.0"/>

<FieldSpecification
name="separableFace"
initialCondition="1"
setNames="{ core }"
objectPath="faceManager"
fieldName="isFaceSeparable"
scale="1"/>

<FieldSpecification
name="frac"
initialCondition="1"
setNames="{ core }"
objectPath="faceManager"
fieldName="ruptureState"
functionName="ruptureFunction"
scale="1"/>

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

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

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

<Functions>
<TableFunction
name="ruptureFunction"
inputVarNames="{ faceCenter }"
coordinateFiles="{ ../ruptureTable/xlin.geos, ../ruptureTable/ylin.geos, ../ruptureTable/zlin.geos }"
voxelFile="../ruptureTable/rupture.geos"
interpolation="nearest"/>
</Functions>

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

<Restart
name="restartOutput"/>

</Outputs>

</Problem>
Loading
Loading