Next revision
|
Previous revision
|
userfunctions:coulomb [2012/11/15 01:40] gag created |
userfunctions:coulomb [2015/12/02 12:24] gag [General Description] |
~~NOTOC~~ | ~~NOTOC~~ |
===== User Function Weertman Friction Law ===== | ===== User Function Coulomb Friction Law ===== |
| |
==== General Informations ==== | ==== General Informations ==== |
* **USF Fortran File:** //USF_Sliding.f90// | * **USF Fortran File:** ''USF_Sliding.f90'' |
* **USF Name:** //Sliding_Weertman// | * **USF Name:** ''Friction_Coulomb'' |
* **Required Input Variable(s):** A //Flow Solution// in //Flow Solution Name//, //Normal Vector// | * **Required Input Variable(s):** A ''Flow Solution'' in ''Flow Solution Name'', ''Normal Vector'', ''Stress'' or the ''Effective Pressure'' variable. |
| |
| |
==== General Description ==== | ==== General Description ==== |
The file //USF_Sliding.f90// contains two user functions to apply non-linear friction at the base of glacier. | The file ''USF_Sliding.f90'' contains three user functions to apply non-linear friction at the base of glacier. |
| |
The first user function (//Sliding_Weertman//) is a non-linear Weertman-type friction law and is described in this page. The second user function (//Friction_Coulomb//) is a non-linear water pressure dependant friction law, as proposed by Schoof (2005) and Gagliardini et al. (2007), and is presented [[:userfunctions:coulomb|here]]. | The first user function (''Sliding_Weertman'') is a non-linear Weertman-type friction law and is described [[:userfunctions:weertman|here]]. The second user function (''Friction_Coulomb'') is a non-linear water pressure dependant friction law, as proposed by Schoof (2005) and Gagliardini et al. (2007), and is presented in this page. The third user function (''Sliding_Budd'') is described [[:userfunctions:budd|here]] and is from Budd et al 1984 (Annals of Glaciology 5, page 29-36). |
| |
| |
| |
| The friction law in //Friction_Coulomb// is of the form:\\ |
| <m> tau_b = C.N {[{ {chi . {u_b}^{-n} }/ {(1 + a . chi^q)} }]}^{1/n} . u_b </m>\\ |
| where \\ |
| <m> a = {(q - 1)^{q-1}}/{q^q} </m>\\ |
| and\\ |
| <m> chi = {u_b}/{C^n N^n A_s} </m>\\ |
| |
| The //Slip Coefficient// in Elmer is then given as\\ |
| <m> C.N {[{ {chi . {u_b}^{-n} }/ {(1 + a . chi^q)} }]}^{1/n} </m>\\ |
| When <m>u_b < u_{t0}</m>, <m>u_b</m> in the previous equation is replaced by <m>u_{t0}</m>. |
| |
| |
| The parameters to be given are:\\ |
| * ''Friction Law Sliding Coefficient'' -> <m>A_s</m> |
| * ''Friction Law Post-Peak Exponent'' -> <m>q >= 1</m> |
| * ''Friction Law Maximum Value'' -> <m>C</m> ~ max bed slope |
| * ''Friction Law Exponent'' -> m = (n Glen's law) |
| * ''Friction Law Linear Velocity'' -> <m>u_{t0}</m> |
| |
| The effective pressure is defined as <m>N = -sigma_{nn} -p_w</m>, where <m>sigma_{nn}</m> is the normal Cauchy stress and <m>p_w</m> the water pressure. If a variable ''Effective Pressure'' exists, it is used to evaluate directly <m>N</m>. Else, the normal Cauchy stress is estimated from the stress computed at previous timestep. The water pressure is prescribed as an ''External Pressure'' (Negative - Compressive convention, and therefore 'External Pressure' should be equal to the opposite of the water pressure in the sif). |
| |
| |
| |
==== SIF contents ==== | ==== SIF contents ==== |
Normal-Tangential Velocity = Logical True | Normal-Tangential Velocity = Logical True |
Flow Force BC = Logical True | Flow Force BC = Logical True |
| |
| !! Water pressure given through the Stokes 'External Pressure' parameter |
| !! (Negative = Compressive) |
| External Pressure = Equals Water Pressure |
| |
Velocity 1 = Real 0.0 | Velocity 1 = Real 0.0 |
| |
Slip Coefficient 2 = Variable Coordinate 1 | Slip Coefficient 2 = Variable Coordinate 1 |
Real Procedure "./USF_Sliding" "Sliding_Weertman" | Real Procedure "ElmerIceUSF" "Friction_Coulomb" |
Slip Coefficient 3 = Variable Coordinate 1 | Slip Coefficient 3 = Variable Coordinate 1 |
Real Procedure "./USF_Sliding" "Sliding_Weertman" | Real Procedure "ElmerIceUSF" "Friction_Coulomb" |
| |
Weertman Friction Coefficient = Real 2.412579e-2 | !! Parameters needed for the Coulomb Friction Law |
Weertman Exponent = Real $1.0/3.0 | Friction Law Sliding Coefficient = Real 4.1613e5 |
Weertman Linear Velocity = Real 0.00001 | Friction Law Post-Peak Exponent = Real 1.0 !(q=1) |
| Friction Law Maximum Value = Real 1.0 !(C=1) |
| Friction Law PowerLaw Exponent = Real 3.0 !(m = n = 3 Glen's law) |
| Friction Law Linear Velocity = Real 0.01 |
End | End |
| |
</code> | </code> |
| |
| |
==== Examples ==== | ==== Examples ==== |
An example of the usage of the user function //Sliding_Weertman// TODO | The Coulomb friction law is tested in ''[ELMER_TRUNK]/elmerice/Tests/Friction_Coulomb'' with a direct input of the effective pressure and ''[ELMER_TRUNK]/elmerice/Tests/Friction_Coulomb_Pw'' with the effective pressure computed from the stress and a prescribed water pressure. |
| |
| |
| ==== Reference ==== |
| When this friction law is used, it can be cited using the following reference:\\ |
| Gagliardini O., D. Cohen, P. Råback and T. Zwinger, 2007. Finite-Element Modeling of Subglacial Cavities and Related Friction Law. J. of Geophys. Res., Earth Surface, 112, F02027. |