-
Notifications
You must be signed in to change notification settings - Fork 242
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #5970 from gassmoeller/adiabatic_pressure_plasticity
Add option to use adiabatic pressure to determine yield stress in visco plastic rheology
- Loading branch information
Showing
6 changed files
with
870 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
108 changes: 108 additions & 0 deletions
108
tests/visco_plastic_adiabatic_pressure_in_plasticity.prm
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,108 @@ | ||
# A test for using the adiabatic pressure in plastic | ||
# viscosity calculation for the visco_plastic | ||
# material model. In this example, the adiabatic pressure is 3.3e9 Pa | ||
# (= rho * g * depth = 3300 * 10 * 100e3) at the bottom. So, the | ||
# predicted yield stress can be calculated by the | ||
# following equation: | ||
# | ||
# eta_yield = cos(phi) * coh + sin(phi) * pressure | ||
# | ||
# eta_yield # yield stress (Pa) | ||
# phi = 10 # angle of internal friction (degrees) | ||
# coh = 1e6 # cohesion (Pa) | ||
# p = 3.3e9 # pressure (Pa) | ||
|
||
# Using these parameter we expect a yield stress of 5.7402e8 Pa at y=0 (P=3.3e9) | ||
# which is confirmed in the output. Note that the pressure in this model is | ||
# close to 0 (because there is no gravity), and we prescribe the adiabatic | ||
# pressure to the value above. So the fact that we match the correct yield | ||
# stress shows we are using the adiabatic pressure instead of actual pressure | ||
# to compute the yield stress. | ||
|
||
set Dimension = 2 | ||
set End time = 0 | ||
set Use years in output instead of seconds = true | ||
set Nonlinear solver scheme = single Advection, single Stokes | ||
set Max nonlinear iterations = 1 | ||
|
||
subsection Adiabatic conditions model | ||
set Model name = function | ||
|
||
subsection Function | ||
set Variable names = x | ||
set Function expression = 1; 3.3e4*x; 3300 | ||
end | ||
end | ||
|
||
# Model geometry (100x100 km, 10 km spacing) | ||
subsection Geometry model | ||
set Model name = box | ||
|
||
subsection Box | ||
set X repetitions = 10 | ||
set Y repetitions = 10 | ||
set X extent = 100e3 | ||
set Y extent = 100e3 | ||
end | ||
end | ||
|
||
subsection Mesh refinement | ||
set Initial adaptive refinement = 0 | ||
set Initial global refinement = 0 | ||
set Time steps between mesh refinement = 0 | ||
end | ||
|
||
subsection Boundary temperature model | ||
set Fixed temperature boundary indicators = bottom, top, left, right | ||
set List of model names = box | ||
|
||
subsection Box | ||
set Bottom temperature = 1573 | ||
set Left temperature = 1573 | ||
set Right temperature = 1573 | ||
set Top temperature = 1573 | ||
end | ||
end | ||
|
||
subsection Boundary velocity model | ||
set Tangential velocity boundary indicators = bottom, top, left, right | ||
end | ||
|
||
subsection Initial temperature model | ||
set Model name = function | ||
|
||
subsection Function | ||
set Function expression = 1573 | ||
end | ||
end | ||
|
||
subsection Material model | ||
set Model name = visco plastic | ||
|
||
subsection Visco Plastic | ||
set Reference strain rate = 1.e-16 | ||
set Viscous flow law = composite | ||
|
||
set Use adiabatic pressure in plasticity = true | ||
set Angles of internal friction = 10 | ||
set Cohesions = 1e6 | ||
end | ||
end | ||
|
||
subsection Gravity model | ||
set Model name = vertical | ||
|
||
subsection Vertical | ||
set Magnitude = 0.0 | ||
end | ||
end | ||
|
||
subsection Postprocess | ||
set List of postprocessors = visualization | ||
|
||
subsection Visualization | ||
set Interpolate output = false | ||
set List of output variables = viscosity, named additional outputs, adiabat | ||
set Output format = gnuplot | ||
end | ||
end |
15 changes: 15 additions & 0 deletions
15
tests/visco_plastic_adiabatic_pressure_in_plasticity/screen-output
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
|
||
Number of active cells: 100 (on 1 levels) | ||
Number of degrees of freedom: 1,444 (882+121+441) | ||
|
||
*** Timestep 0: t=0 years, dt=0 years | ||
Solving temperature system... 0 iterations. | ||
Solving Stokes system... 25+0 iterations. | ||
|
||
Postprocessing: | ||
Writing graphical output: output-visco_plastic_adiabatic_pressure_in_plasticity/solution/solution-00000 | ||
|
||
Termination requested by criterion: end time | ||
|
||
|
||
|
Oops, something went wrong.