This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
solvers:glads [2017/06/22 11:13] gag [SIF contents] |
solvers:glads [2019/09/06 13:17] (current) gagliar [Known bugs] |
||
---|---|---|---|
Line 3: | Line 3: | ||
==== General Informations ==== | ==== General Informations ==== | ||
- | * **Solver Fortran | + | * **Solver Fortran |
- | * **Solver | + | * **Solver |
* **Required Output Variable(s): | * **Required Output Variable(s): | ||
* **Required Input Variable(s): | * **Required Input Variable(s): | ||
- | * **Optional Output Variable(s): | + | * **Optional Output Variable(s): |
* **Optional Input Variable(s): | * **Optional Input Variable(s): | ||
+ | |||
+ | ==== Known bugs ==== | ||
+ | If in parallel a moulin belongs to two partitions, the flux from the moulin is taken into account twice. This is may be not a bug, but the partitioning should avoid to have moulins at the boundary of partitions. The python tool '' | ||
+ | |||
+ | If running the solver on a 3d internally extruded mesh, one should specify '' | ||
+ | |||
+ | If running on a " | ||
+ | |||
Line 19: | Line 27: | ||
* '' | * '' | ||
* '' | * '' | ||
- | * '' | + | * '' |
- | Currently | + | Since version Version 8.3 (Rev: b213b0c8), '' |
==== SIF contents ==== | ==== SIF contents ==== | ||
- | The GlaDS solvers depend on a lot of physical parameters. | + | The SIF examples |
+ | < | ||
+ | Constants | ||
+ | Latent Heat = Real $Lw | ||
+ | Gravity Norm = Real $gravity | ||
+ | Water Density = Real $rhow | ||
+ | Ice Density = Real $rhoi | ||
+ | Sheet Thickness Variable Name = String "Sheet Thickness" | ||
+ | Hydraulic Potential Variable Name = String " | ||
+ | Channel Area Variable Name = String " | ||
+ | Bedrock Variable Name = String " | ||
+ | End | ||
+ | </ | ||
+ | |||
+ | The GlaDS solvers depend on a lot of physical parameters. | ||
< | < | ||
! For the sheet | ! For the sheet | ||
Line 54: | Line 76: | ||
< | < | ||
Body Force 1 | Body Force 1 | ||
- | Hydraulic Potential Volume Source = REal $Source | + | Hydraulic Potential Volume Source = Real $Source |
End | End | ||
</ | </ | ||
+ | |||
+ | '' | ||
+ | < | ||
+ | Solver 1 | ||
+ | Equation = "GlaDS Coupled sheet" | ||
+ | Procedure = " | ||
+ | Variable = -dofs 1 " | ||
+ | |||
+ | ! activate or not the development of channels | ||
+ | Activate Channels = Logical True | ||
+ | | ||
+ | ! activate or not the growth of channels by melt | ||
+ | Activate Melt from Channels = Logical True | ||
+ | | ||
+ | ! compute the hydraulic potential at the top of the water sheet ('' | ||
+ | Neglect sheet Thickness in Potential = Logical True | ||
+ | |||
+ | ! choices are EXPLICT, CRANK-NICOLSON, | ||
+ | Channels Integration method = String " | ||
+ | Sheet Integration method = String " | ||
+ | |||
+ | ! define exported variables for visualization | ||
+ | Exported Variable 1 = -dofs 1 " | ||
+ | Exported Variable 2 = -dofs 1 " | ||
+ | Exported Variable 3 = -dofs 1 "Water Pressure" | ||
+ | Exported Variable 4 = -dofs 1 " | ||
+ | Exported Variable 5 = -dofs 2 "Sheet Discharge" | ||
+ | Exported Variable 6 = -dofs 1 "Sheet Storage" | ||
+ | Exported Variable 8 = -dofs 1 " | ||
+ | Exported Variable 9 = -dofs 1 " | ||
+ | Exported Variable 10 = -dofs 1 "Flux from Moulins" | ||
+ | |||
+ | Linear System Solver = Direct | ||
+ | Linear System Direct Method = umfpack | ||
+ | |||
+ | Nonlinear System Max Iterations = 30 | ||
+ | Nonlinear System Convergence Tolerance | ||
+ | Nonlinear System Relaxation Factor = 1.00 | ||
+ | |||
+ | Coupled Max Iterations = Integer 10 | ||
+ | Coupled Convergence Tolerance = Real 1.0e-3 | ||
+ | |||
+ | Steady State Convergence Tolerance = 1.0e-03 | ||
+ | End | ||
+ | </ | ||
+ | |||
+ | '' | ||
+ | < | ||
+ | Solver 2 | ||
+ | Equation = "GlaDS Thickness sheet" | ||
+ | Procedure = " | ||
+ | Variable = -dofs 1 "Sheet Thickness" | ||
+ | End | ||
+ | </ | ||
+ | |||
+ | '' | ||
+ | < | ||
+ | Solver 3 | ||
+ | Exec Solver = After Saving | ||
+ | Equation = "GlaDS Channel OutPut" | ||
+ | Procedure = " | ||
+ | Variable = -dofs 1 " | ||
+ | ! the variable is define on the edges only | ||
+ | Element = "n:0 e:1" | ||
+ | |||
+ | Exported Variable 1 = -dofs 1 " | ||
+ | |||
+ | VTU OutPutFile = Logical False ! set to TRUE to have VTU output | ||
+ | VTU BinaryFile = Logical False | ||
+ | |||
+ | Channels OutPut Directory Name = String " | ||
+ | Channels OutPut File Name = String " | ||
+ | End | ||
+ | </ | ||
+ | |||
+ | The possible boundary conditions are: \\ | ||
+ | * channels not allowed to growth (recommanded on all the domain boundary) | ||
+ | < | ||
+ | Boundary Condition 1 | ||
+ | Target Boundaries(2) = 1 3 | ||
+ | No Channel BC = Logical True | ||
+ | End | ||
+ | </ | ||
+ | * fixed value of the '' | ||
+ | < | ||
+ | Boundary Condition 2 | ||
+ | Name = "point front" | ||
+ | Target Coordinates(1, | ||
+ | Hydraulic Potential = Variable Zb | ||
+ | Real MATC " | ||
+ | End | ||
+ | </ | ||
+ | * the possibility to impose water flux at some nodes in the domain (moulins type inflow). The nodes have to be declared as node element (101) in the mesh ('' | ||
+ | < | ||
+ | Boundary Condition 4 | ||
+ | Name = " | ||
+ | Target Boundaries(20) = 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | ||
+ | Moulin Storage = Logical True | ||
+ | Moulin Area = Real $Am | ||
+ | Moulin Flux = Real $4.5*yearinsec | ||
+ | End | ||
+ | </ | ||
+ | |||
+ | |||
+ | ==== Making a mesh with Moulins ==== | ||
+ | Moulins are 101 boundary elements. ElmerGrid does not export correctly 101 boundary elements from gmsh or when partitioning a mesh. To add 101 boundary elements to an existing mesh, thanks to Mondher Chekki (IGE), one can use the python tool '' | ||
+ | |||
+ | Usage: | ||
+ | < | ||
+ | python makemoulin.py --meshdir mesh_dir --moulin moulin_file --partition number_of_partition | ||
+ | </ | ||
+ | where '' | ||
==== Examples ==== | ==== Examples ==== | ||
- | An example | + | Examples |
- | ==== Reference | + | ==== References |
The description of the GlaDS model is in:\\ | The description of the GlaDS model is in:\\ | ||
- | Werder M.A., I.J. Hewitt, C.G. Schoof and G.E. Flowers, 2013. Modeling channelized and distributed subglacial drainage in two dimensions. Journal of Geophysical Research: Earth Surface, 118(4), 2140-2158. | + | * Werder M.A., I.J. Hewitt, C.G. Schoof and G.E. Flowers, 2013. Modeling channelized and distributed subglacial drainage in two dimensions. Journal of Geophysical Research: Earth Surface, 118(4), 2140-2158.\\ |
+ | The implementation of the GlaDS model in Elmer/Ice is described here:\\ | ||
+ | * Gagliardini O. and M. Werder, 2018. Influence of increasing surface melt over decadal timescales on land-terminating Greenland-type outlet glaciers, Journal of Glaciology, 64(247), 700-710, doi: | ||
+ | Results of the SHMIP experiments using Elmer/Ice are discussed in the SHMIP paper:\\ | ||
+ | * De Fleurian, B., M. Werder, S. Beyer, D. Brinkerhoff, | ||