Skip to content

Commit

Permalink
feat: Augmented Lagrangian (slip and open modes) (#3217)
Browse files Browse the repository at this point in the history
* Implementation of slip and open modes for ALM

* Adding a new inputFile for ALM and bug (bubble functions) fixed

* Bug bubble functions gradient fixed

* Adding initial stress contribution for bubble functions - updating lambda functions

* Adding nested ALM

* Adding simultaneous and nested ALM 

* Moving the traction update into the friction model

* Moved contact constitutive behavior from ALM to the friction law
  • Loading branch information
matteofrigo5 authored and rrsettgast committed Sep 17, 2024
1 parent b95d7ba commit 1e6446b
Show file tree
Hide file tree
Showing 72 changed files with 3,740 additions and 1,390 deletions.
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-pr3318-7578-14f13e2
baseline: integratedTests/baseline_integratedTests-pr3217-7661-9b4a604

allow_fail:
all: ''
Expand Down
4 changes: 4 additions & 0 deletions BASELINE_NOTES.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,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 #3217 (2024-09-16)
======================
ALM slip and open modes with relative tests.

PR #3318 (2024-09-12)
======================
Modified SeismicityRate poroelastic case.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,5 +40,4 @@ set(LAPACK_LIBRARIES "${OPENBLAS_ROOT}/lib/libopenblas.so" CACHE STRING "")
set(ENABLE_VALGRIND OFF CACHE BOOL "")
set(ENABLE_CALIPER ON CACHE BOOL "")

set(GEOS_TPL_DIR "$ENV{GEOSX_TPL_DIR}" CACHE PATH "" FORCE)
include(${CMAKE_CURRENT_LIST_DIR}/../tpls.cmake)
115 changes: 0 additions & 115 deletions inputFiles/almContactMechanics/ALM_stickFault_base.xml

This file was deleted.

19 changes: 0 additions & 19 deletions inputFiles/almContactMechanics/alm.ats

This file was deleted.

55 changes: 55 additions & 0 deletions inputFiles/lagrangianContactMechanics/ALM_PassingCrack_smoke.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
<?xml version="1.0" ?>

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

<Solvers
gravityVector="{ 0.0, 0.0, 0.0 }">
<SolidMechanicsAugmentedLagrangianContact
name="AugmentedLagrangian"
logLevel="2"
timeIntegrationOption="QuasiStatic"
discretization="FE1"
targetRegions="{ Region, Fracture }">
<NonlinearSolverParameters
newtonTol="1.0e-6"
logLevel="2"
maxNumConfigurationAttempts="50"
newtonMaxIter="20"
lineSearchAction="None"
lineSearchMaxCuts="4"/>
<LinearSolverParameters
directParallel="0"/>
</SolidMechanicsAugmentedLagrangianContact>
</Solvers>

<Events
maxTime="1.0">
<SoloEvent
name="preFracture"
target="/Solvers/SurfaceGen"/>

<PeriodicEvent
name="solverApplications"
beginTime="0.0"
endTime="1.0"
forceDt="1.0"
target="/Solvers/AugmentedLagrangian"/>

<PeriodicEvent
name="restarts"
timeFrequency="1.0"
targetExactTimestep="0"
target="/Outputs/restartOutput"/>

<PeriodicEvent
name="outputs"
timeFrequency="1"
targetExactTimestep="0"
target="/Outputs/vtkOutput"/>
</Events>

</Problem>
58 changes: 58 additions & 0 deletions inputFiles/lagrangianContactMechanics/ALM_SimpleCubes_smoke.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
<?xml version="1.0" ?>

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

<Solvers
gravityVector="{ 0.0, 0.0, 0.0 }">
<SolidMechanicsAugmentedLagrangianContact
name="AugmentedLagrangian"
logLevel="2"
timeIntegrationOption="QuasiStatic"
discretization="FE1"
targetRegions="{ Region, Fracture }">
<NonlinearSolverParameters
newtonTol="1.0e-6"
logLevel="2"
maxNumConfigurationAttempts="50"
newtonMaxIter="20"
lineSearchAction="None"
lineSearchMaxCuts="4"/>
<LinearSolverParameters
directParallel="0"/>
</SolidMechanicsAugmentedLagrangianContact>
</Solvers>

<Events
maxTime="10.0">
<SoloEvent
name="initialPlot"
target="/Outputs/siloOutput"/>

<SoloEvent
name="preFracture"
target="/Solvers/SurfaceGen"/>

<PeriodicEvent
name="solverApplications"
beginTime="0.0"
forceDt="1.0"
target="/Solvers/AugmentedLagrangian"/>

<PeriodicEvent
name="restarts"
timeFrequency="5.0"
targetExactTimestep="0"
target="/Outputs/restartOutput"/>

<PeriodicEvent
name="outputs"
timeFrequency="1"
targetExactTimestep="0"
target="/Outputs/siloOutput"/>
</Events>

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

<Problem>

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

<Solvers
gravityVector="{ 0.0, 0.0, 0.0 }">
<SolidMechanicsAugmentedLagrangianContact
name="AugmentedLagrangian"
logLevel="2"
timeIntegrationOption="QuasiStatic"
discretization="FE1"
targetRegions="{ Region, Fracture }">
<NonlinearSolverParameters
newtonTol="1.0e-6"
logLevel="2"
maxNumConfigurationAttempts="50"
newtonMaxIter="20"
lineSearchAction="None"
lineSearchMaxCuts="4"/>
<LinearSolverParameters
directParallel="0"/>
</SolidMechanicsAugmentedLagrangianContact>
</Solvers>

<Events
maxTime="1.0">
<SoloEvent
name="preFracture"
target="/Solvers/SurfaceGen"/>

<PeriodicEvent
name="solverApplications"
beginTime="0.0"
forceDt="1.0"
target="/Solvers/AugmentedLagrangian"/>

<PeriodicEvent
name="outputs"
timeFrequency="1"
targetExactTimestep="0"
target="/Outputs/vtkOutput"/>

<PeriodicEvent
name="restarts"
timeFrequency="1.0"
targetExactTimestep="0"
target="/Outputs/restartOutput"/>

<PeriodicEvent
name="timeHistoryCollection"
timeFrequency="1"
targetExactTimestep="1"
target="/Tasks/tractionCollection" />

<PeriodicEvent
name="timeHistoryOutput"
timeFrequency="1"
targetExactTimestep="0"
target="/Outputs/timeHistoryOutput"/>

<PeriodicEvent
name="timeHistoryCollection1"
timeFrequency="1"
targetExactTimestep="1"
target="/Tasks/displacementJumpCollection" />

<PeriodicEvent
name="timeHistoryOutput1"
timeFrequency="1"
targetExactTimestep="0"
target="/Outputs/timeHistoryOutput1"/>
</Events>
</Problem>
Loading

0 comments on commit 1e6446b

Please sign in to comment.