Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
c21797c
Submitting the latest version of the code that gives the expected res…
LilianeRA Oct 15, 2025
8628eef
Removing unnecessary files for this branch
LilianeRA Oct 15, 2025
6e52118
Adding unit test for the oedometric conditions. It still does not wor…
LilianeRA Oct 22, 2025
fe4fdbf
Implementing the Barton-Bandis law version that computes the oedometr…
LilianeRA Oct 22, 2025
173a76c
Setting the stress computation as a private function; Exclusive Updat…
LilianeRA Oct 29, 2025
6fb5174
Fracture aperture update implemented in the FlowSolverBase; Not compi…
LilianeRA Nov 4, 2025
4675797
Creating input files
LilianeRA Nov 5, 2025
26209ab
Last commit before the pull request
LilianeRA Nov 7, 2025
985e76e
Adding simulation tests for comparisson with the analytical solution
LilianeRA Dec 7, 2025
c6e4d7c
Adding sample file for testing and first version of the RST documenti…
LilianeRA Feb 23, 2026
27d116a
Changing the name of the two optional flags from the FlowSolverBase. …
LilianeRA Feb 25, 2026
148b5dc
Deleting unnecessary directory for compiling latex equation format in…
LilianeRA Mar 12, 2026
f1322ea
Testing the constitutive law that relates permeability to pressure. T…
LilianeRA Mar 19, 2026
ae317f2
Constitutive contact law for stress-path driven Barton-Bandis deleted…
LilianeRA Mar 26, 2026
9e92917
Reverting unused modifications
LilianeRA Apr 19, 2026
58d1409
Modifications suggested by Jacques Franc
LilianeRA Apr 24, 2026
824efd8
Merge branch 'develop' into feature/prescribedStressPath_constitutive
LilianeRA Apr 24, 2026
5670a9d
Update src/coreComponents/physicsSolvers/fluidFlow/FlowSolverBase.hpp
LilianeRA May 22, 2026
de37a51
Update src/coreComponents/constitutive/permeability/BartonBandisPerme…
LilianeRA May 22, 2026
6a74bee
Update src/coreComponents/constitutive/permeability/ParallelPlatesPer…
LilianeRA May 22, 2026
35174e6
Updating variable names of biot coefficient and poisson ratio; Deleti…
LilianeRA May 22, 2026
1af1519
Updating variable names of biot coefficient and poisson ratio; Deleti…
LilianeRA May 23, 2026
5b6e77b
Removing debug/dead code
LilianeRA May 28, 2026
8e42534
Submitting the latest version of the code that gives the expected res…
LilianeRA Oct 15, 2025
052d72f
Setting the stress computation as a private function; Exclusive Updat…
LilianeRA Oct 29, 2025
db2e3fd
Fracture aperture update implemented in the FlowSolverBase; Not compi…
LilianeRA Nov 4, 2025
edb87da
Testing the constitutive law that relates permeability to pressure. T…
LilianeRA Mar 19, 2026
27a7328
Constitutive contact law for stress-path driven Barton-Bandis deleted…
LilianeRA Mar 26, 2026
62c6990
Fixing errors during compilation, and merge mistakes after rebase.
LilianeRA Jun 17, 2026
c7518bc
Updating the base code and adding BartonBandisPemeability class. Resu…
LilianeRA Jun 17, 2026
b5ff08a
Adding documentation
LilianeRA Jun 17, 2026
73f754e
Merge branch 'develop' into feature/prescribedStressPath_constitutive
LilianeRA Jul 2, 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
32 changes: 32 additions & 0 deletions host-configs/ubuntu.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
set( CONFIG_NAME "ubuntu" )

# Set compilers path
set(CMAKE_C_COMPILER "/usr/bin/gcc" CACHE PATH "") # This is typically something like /usr/bin/gcc ... or clang
set(CMAKE_CXX_COMPILER "/usr/bin/g++" CACHE PATH "") # This is typically something like /usr/bin/g++ ... or clang++
set(ENABLE_FORTRAN OFF CACHE BOOL "" FORCE)

# Set paths to mpi
set(ENABLE_MPI ON CACHE PATH "")
set(MPI_C_COMPILER "/usr/bin/mpicc" CACHE PATH "") # This is typically something like /usr/bin/mpicc
set(MPI_CXX_COMPILER "/usr/bin/mpicxx" CACHE PATH "") # This is typically something like /usr/bin/mpicxx
set(MPIEXEC "/usr/bin/mpirun" CACHE PATH "") # This is typically something like /usr/bin/mpirun

# Set paths to blas and lapack
set( BLAS_LIBRARIES "/usr/lib/x86_64-linux-gnu/libblas.so" CACHE PATH "" FORCE ) # This is typically something like /usr/lib64/libblas.so
set( LAPACK_LIBRARIES "/usr/lib/x86_64-linux-gnu/liblapack.so" CACHE PATH "" FORCE ) # This is typically something like /usr/lib64/liblapack.so

# Cuda and openMP
set( ENABLE_CUDA OFF CACHE PATH "" FORCE )
set( ENABLE_OPENMP OFF CACHE PATH "" FORCE )

# TPLs
set( ENABLE_TRILINOS OFF CACHE PATH "" FORCE )
set( ENABLE_CALIPER OFF CACHE PATH "" FORCE )
set( ENABLE_DOXYGEN OFF CACHE BOOL "" FORCE)
set( ENABLE_MATHPRESSO OFF CACHE BOOL "" FORCE )

if(NOT ( EXISTS "${GEOS_TPL_DIR}" AND IS_DIRECTORY "${GEOS_TPL_DIR}" ) )
set(GEOS_TPL_DIR "${CMAKE_SOURCE_DIR}/../../../thirdPartyLibs/install-${CONFIG_NAME}-release" CACHE PATH "" FORCE )
endif()

include(${CMAKE_CURRENT_LIST_DIR}/tpls.cmake)
Original file line number Diff line number Diff line change
@@ -0,0 +1,158 @@
<?xml version="1.0" ?>

<Problem>
<!-- SPHINX_TUT_STRESS_PATH_DRIVEN -->
<Solvers
gravityVector="{ 0.0, 0.0, -9.81 }">
<SinglePhaseFVM
name="SinglePhaseFlow"
logLevel="1"
discretization="singlePhaseTPFA"
targetRegions="{ RockMatrix, Fracture }">
<NonlinearSolverParameters
newtonTol="1.0e-6"
newtonMaxIter="30"/>
<LinearSolverParameters
directParallel="0"/>
</SinglePhaseFVM>
<!-- SPHINX_TUT_STRESS_PATH_DRIVEN_END -->

<EmbeddedSurfaceGenerator
name="SurfaceGenerator"
logLevel="1"
discretization="FE1"
targetRegions="{ RockMatrix, Fracture }"
targetObjects="{ FracturePlane }"
fractureRegion="Fracture"
mpiCommOrder="1"/>
</Solvers>

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

<ElementRegions>
<CellElementRegion
name="RockMatrix"
cellBlocks="{ * }"
materialList="{ water, rock }"/>

<SurfaceElementRegion
name="Fracture"
faceBlock="embeddedSurfaceSubRegion"
defaultAperture="1.0e-4"
materialList="{ water, fractureFilling }"
subRegionType="embeddedElement"/>
</ElementRegions>

<Constitutive>
<CompressibleSinglePhaseFluid
name="water"
defaultDensity="2000"
defaultViscosity="0.001"
referencePressure="0.0"
compressibility="5e-12"
viscosibility="0.0"/>

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

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

<NullModel
name="nullSolid"/>

<PressurePorosity
name="rockPorosity"
defaultReferencePorosity="0.1"
referencePressure="0.0"
compressibility="0.0"/>

<ConstantPermeability
name="rockPerm"
permeabilityComponents="{ 1.0e-15, 1.0e-15, 1.0e-15 }"/>

<PressurePorosity
name="fracturePorosity"
defaultReferencePorosity="1.00"
referencePressure="0.0"
compressibility="0.0"/>
<!-- SPHINX_TUT_STRESS_PATH_DRIVEN_LAW -->
<BartonBandisPermeability
name="fracturePerm"
biotCoefficient="1.0"
poissonRatio="0.3"
normalStiffness="10.0e9"
referenceAperture="1.0e-4"
referencePressure="1e7"
referenceTotalStress="{ 10.0e6, 10.0e6, 30.0e6 }"/>
<!-- SPHINX_TUT_STRESS_PATH_DRIVEN_LAW_END -->

</Constitutive>


<FieldSpecifications>

<FieldSpecification
name="Porosity"
initialCondition="1"
setNames="{ all }"
objectPath="ElementRegions/RockMatrix/cb1"
fieldName="rockPorosity_referencePorosity"
scale="0.1"/>

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

<FieldSpecification
name="initialFracturePressure"
initialCondition="1"
setNames="{ all }"
objectPath="ElementRegions/Fracture/embeddedSurfaceSubRegion"
fieldName="pressure"
scale="1.0e7"/>

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

<FieldSpecification
name="sourceTerm"
objectPath="ElementRegions/Fracture"
fieldName="pressure"
scale="1.0e7"
setNames="{ source }"/>

<FieldSpecification
name="sinkTerm"
objectPath="ElementRegions/Fracture"
fieldName="pressure"
scale="1.904100e7"
setNames="{ sink }"/>

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

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

<Mesh>
<InternalMesh
name="mesh1"
elementTypes="{ C3D8 }"
xCoords="{ -0.5, 0.5 }"
yCoords="{ 0, 11 }"
zCoords="{ 0, 1 }"
nx="{ 1 }"
ny="{ 11 }"
nz="{ 1 }"
cellBlockNames="{ cb1 }"/>
</Mesh>

<Geometry>
<Box
name="source"
xMin="{ -1.01, -0.01, -0.01 }"
xMax="{ 1.01, 1.1, 1.01 }"/>

<Box
name="sink"
xMin="{ -1.01, 9.9, -0.01 }"
xMax="{ 1.01, 11.01, 1.01 }"/>

<Rectangle
name="FracturePlane"
normal="{ 0, 0, 1 }"
origin="{ 0.0, 0.5, 0.5 }"
lengthVector="{ 0, 1, 0 }"
widthVector="{ 1, 0, 0 }"
dimensions="{ 30, 1 }"/>
</Geometry>

<Tasks>
<PackCollection
name="pressureCollection"
objectPath="ElementRegions/Fracture/embeddedSurfaceSubRegion"
fieldName="pressure"/>
<PackCollection
name="apertureCollection"
objectPath="ElementRegions/Fracture/embeddedSurfaceSubRegion"
fieldName="hydraulicAperture"/>
<PackCollection
name="permeabilityCollection"
objectPath="ElementRegions/Fracture/embeddedSurfaceSubRegion"
fieldName="fracturePerm_permeability"/>
</Tasks>

<Events
maxTime="50"
logLevel="3">
<SoloEvent
name="preFracture"
target="/Solvers/SurfaceGenerator"/>

<PeriodicEvent
name="solverApplications"
forceDt="1"
target="/Solvers/SinglePhaseFlow"/>

<PeriodicEvent
name="outputs"
target="/Outputs/vtkOutput"/>

<PeriodicEvent
name="pressureHistoryCollection"
target="/Tasks/pressureCollection" />
<PeriodicEvent
name="pressureHistoryOutput"
targetExactTimestep="0"
target="/Outputs/pressureHistoryOutput"/>

<PeriodicEvent
name="apertureHistoryCollection"
target="/Tasks/apertureCollection" />
<PeriodicEvent
name="apertureHistoryOutput"
targetExactTimestep="0"
target="/Outputs/apertureHistoryOutput"/>

<PeriodicEvent
name="permeabilityHistoryCollection"
target="/Tasks/permeabilityCollection" />
<PeriodicEvent
name="permeabilityHistoryOutput"
targetExactTimestep="0"
target="/Outputs/permeabilityHistoryOutput"/>
</Events>


<Outputs>
<VTK
name="vtkOutput"
plotFileRoot="stressPathDriven"
plotLevel="2"
format="ascii"/>

<Restart
name="sidreRestart"/>
<!-- SPHINX_TUT_STRESS_PATH_DRIVEN_TIMEHISTORY -->
<TimeHistory
name="pressureHistoryOutput"
sources="{/Tasks/pressureCollection}"
filename="fracPressure_history" />
<TimeHistory
name="apertureHistoryOutput"
sources="{/Tasks/apertureCollection}"
filename="fracAperture_history" />
<TimeHistory
name="permeabilityHistoryOutput"
sources="{/Tasks/permeabilityCollection}"
filename="fracPermeability_history" />
<!-- SPHINX_TUT_STRESS_PATH_DRIVEN_TIMEHISTORY_END -->
</Outputs>
</Problem>
2 changes: 2 additions & 0 deletions src/coreComponents/constitutive/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -151,6 +151,7 @@ set( constitutive_headers
permeability/DamagePermeability.hpp
permeability/ExponentialDecayPermeability.hpp
permeability/ParallelPlatesPermeability.hpp
permeability/BartonBandisPermeability.hpp
permeability/PermeabilityBase.hpp
permeability/PermeabilityFields.hpp
permeability/PressurePermeability.hpp
Expand Down Expand Up @@ -303,6 +304,7 @@ set( constitutive_sources
permeability/DamagePermeability.cpp
permeability/ExponentialDecayPermeability.cpp
permeability/ParallelPlatesPermeability.cpp
permeability/BartonBandisPermeability.cpp
permeability/PermeabilityBase.cpp
permeability/PressurePermeability.cpp
permeability/ProppantPermeability.cpp
Expand Down
5 changes: 5 additions & 0 deletions src/coreComponents/constitutive/ConstitutivePassThru.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@
#include "permeability/CarmanKozenyPermeability.hpp"
#include "permeability/ExponentialDecayPermeability.hpp"
#include "permeability/ParallelPlatesPermeability.hpp"
#include "permeability/BartonBandisPermeability.hpp"
#include "permeability/PressurePermeability.hpp"
#include "permeability/ProppantPermeability.hpp"
#include "permeability/SlipDependentPermeability.hpp"
Expand Down Expand Up @@ -375,6 +376,7 @@ struct ConstitutivePassThru< CompressibleSolidBase >
CompressibleSolid< PressurePorosity, CarmanKozenyPermeability >,
CompressibleSolid< PressurePorosity, ExponentialDecayPermeability >,
CompressibleSolid< PressurePorosity, ParallelPlatesPermeability >,
CompressibleSolid< PressurePorosity, BartonBandisPermeability >,
CompressibleSolid< PressurePorosity, PressurePermeability >,
CompressibleSolid< PressurePorosity, SlipDependentPermeability >,
CompressibleSolid< PressurePorosity, WillisRichardsPermeability >
Expand All @@ -389,6 +391,7 @@ struct ConstitutivePassThru< CompressibleSolidBase >
CompressibleSolid< PressurePorosity, CarmanKozenyPermeability >,
CompressibleSolid< PressurePorosity, ExponentialDecayPermeability >,
CompressibleSolid< PressurePorosity, ParallelPlatesPermeability >,
CompressibleSolid< PressurePorosity, BartonBandisPermeability >,
CompressibleSolid< PressurePorosity, PressurePermeability >,
CompressibleSolid< PressurePorosity, SlipDependentPermeability >,
CompressibleSolid< PressurePorosity, WillisRichardsPermeability >
Expand Down Expand Up @@ -462,6 +465,7 @@ struct ConstitutivePassThru< CoupledSolidBase >
CompressibleSolid< PressurePorosity, CarmanKozenyPermeability >,
CompressibleSolid< PressurePorosity, ExponentialDecayPermeability >,
CompressibleSolid< PressurePorosity, ParallelPlatesPermeability >,
CompressibleSolid< PressurePorosity, BartonBandisPermeability >,
CompressibleSolid< PressurePorosity, PressurePermeability >,
CompressibleSolid< PressurePorosity, SlipDependentPermeability >,
CompressibleSolid< PressurePorosity, WillisRichardsPermeability >,
Expand Down Expand Up @@ -503,6 +507,7 @@ struct ConstitutivePassThru< CoupledSolidBase >
CompressibleSolid< PressurePorosity, CarmanKozenyPermeability >,
CompressibleSolid< PressurePorosity, ExponentialDecayPermeability >,
CompressibleSolid< PressurePorosity, ParallelPlatesPermeability >,
CompressibleSolid< PressurePorosity, BartonBandisPermeability >,
CompressibleSolid< PressurePorosity, PressurePermeability >,
CompressibleSolid< PressurePorosity, SlipDependentPermeability >,
CompressibleSolid< PressurePorosity, WillisRichardsPermeability >,
Expand Down
Loading
Loading