Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
solvers:temperature [2012/11/14 23:05]
gag [General Informations]
solvers:temperature [2018/10/28 14:28] (current)
tzwinger [Examples]
Line 4: Line 4:
  
 ==== General Informations ==== ==== General Informations ====
-  * **Solver Fortran File:​** ​//TemperateIce.f90// +  * **Solver Fortran File:​** ​''​TemperateIce.f90''​ 
-  * **Solver Name:​** ​//TemperateIceSolver//  +  * **Solver Name:​** ​''​TemperateIceSolver''​ 
-  * **Required Output Variable(s):​** ​//Temp// (User defined) ​   +  * **Required Output Variable(s):​** ​''​Temp'' ​(user defined) ​   
-  * **Required Input Variable(s):​** A //Flow Solution// (in //Flow Solution Name//+  * **Required Input Variable(s):​** A ''​Flow Solution'' ​(in ''​Flow Solution Name''​
-  * **Optional Output Variable(s):​** ​//Temp Homologous////Temp Residual//   +  * **Optional Output Variable(s):​** ​''​Temp Homologous''​''​Temp Residual'' ​  
-  * **Optional Input Variable(s):​** Deformational Heat //W//+  * **Optional Input Variable(s):​** Deformational Heat ''​W''​
  
  
 ==== General Description ==== ==== General Description ====
-This solver treats the heat transfer problem with respect to an upper limit of the temperature (usually with ice the pressure-melting point, T< T_pm). Optionally, such a limit (and furthermore also a lower limit, e.g., T > 0 K) is introduced by solving the consequent ​''​variational inequality'' ​problem using an algorithm that - in comparison to the free surface problem - can be interpreted as a contact problem solver. In case of temperature,​ it basically introduces additional heat sinks/​sources in order to comply with the constraints.+This solver treats the heat transfer problem with respect to an upper limit of the temperature (usually with ice the pressure-melting point, T< T_pm). Optionally, such a limit (and furthermore also a lower limit, e.g., T > 0 K) is introduced by solving the consequent ​//variational inequality// problem using an algorithm that - in comparison to the free surface problem - can be interpreted as a contact problem solver. In case of temperature,​ it basically introduces additional heat sinks/​sources in order to comply with the constraints. 
 + 
 +The volumetric heat source term can be estimated from the ice flow deformational heat using the [[:​solvers:​deformationalheat|DeformationalHeat Solver]].  
 + 
 +**Looping option, added 6th June 2013 (version 6205)**: It is possible in some cases that the nonlinear convergence tolerance can be reached before all nodes have been properly constrained. ​ At this point the solver can exit with some nodes retaining temperatures above the upper limit. A new option was added to check for nodes with temperatures above the limit and to continue looping if such nodes exist. ​ Using this option may cause more iterations but should ensure the upper limit is properly applied at all nodes. ​ To use it add the following line to the temperate ice solver section in the sif file (default is False): 
 +<​code>​ 
 +Loop While Unconstrained Nodes = Logical True 
 +</​code>​
  
 ==== Known bugs ==== ==== Known bugs ====
Line 20: Line 27:
  
 ==== SIF contents ==== ==== SIF contents ====
-The required keywords in the SIF file for this solver are:+The required keywords in the SIF file for this solver are given below. The MATC functions used here are explain and given on this [[tips:thermoprop|page]]. ​
 <​code>​ <​code>​
-Some useful MATC functions +Units : MPa yr 
-!! conductivity +$yearinsec ​365.25*24*60*60
-$ function conductivity(T) ​ { _conductivity=9.828*exp(-5.7E-03*T)} +
-!! capacity +
-function capacity(T) { _capacity=146.3+(7.253*T)} +
- +
-!! pressuremeltingpoint +
-$ function pressuremeltingpoint(PIN) {\ +
-  P = PIN;\ +
-  if (P<0.0) P=0.0;\ +
-  beta=9.8E-08*1.0E06;\ +
-  _pressuremeltingpoint=273.15-(beta*P);\ +
-}+
  
 !Compute the heat generated by ice deformation !Compute the heat generated by ice deformation
Line 42: Line 38:
   Variable DOFs = 1   Variable DOFs = 1
  
-  procedure =  "./​DeformationalHeat" "​DeformationalHeatSolver"​+  procedure =  "ElmerIceSolvers" "​DeformationalHeatSolver"​
  
   Linear System Solver = direct   Linear System Solver = direct
Line 50: Line 46:
 Solver 4 Solver 4
   Equation = String "​Homologous Temperature Equation"​   Equation = String "​Homologous Temperature Equation"​
-  Procedure =  File "TemperateIce" "​TemperateIceSolver"​+  Procedure =  File "ElmerIceSolvers" "​TemperateIceSolver"​
   ! Comment next line in parallel, as EliminateDirichlet does   ! Comment next line in parallel, as EliminateDirichlet does
   ! not work in parallel   ! not work in parallel
Line 92: Line 88:
    ​!-----------------------------------------------------------    ​!-----------------------------------------------------------
    Temp Heat Capacity = Variable Temp    Temp Heat Capacity = Variable Temp
-    Real MATC "​capacity(tx)*1.0E06*(31556926.0)"+    Real MATC "​capacity(tx)*yearinsec^2"
    ! the heat conductivity as a MATC function of temperature itself    ! the heat conductivity as a MATC function of temperature itself
    ​!--------------------------------------------------------------    ​!--------------------------------------------------------------
    Temp Heat Conductivity = Variable Temp    Temp Heat Conductivity = Variable Temp
-    Real MATC "​conductivity(tx)"​+    Real MATC "​conductivity(tx)*yearinsec*1.0E-06"
    ! Upper limit - pressure melting point    ! Upper limit - pressure melting point
    ​! ​ as a MATC function of the pressure (what else?)    ​! ​ as a MATC function of the pressure (what else?)
Line 110: Line 106:
 Boundary Condition 1 Boundary Condition 1
    ...    ...
-  Temp = Real -10.0+  Temp = Real 263.15
 End End
  
Line 120: Line 116:
   !--------------------   !--------------------
   Temp Flux BC = Logical True   Temp Flux BC = Logical True
-  Temp Heat Flux = Real 56.05E-03+  Temp Heat Flux = Real $56.05E-03*yearinsec*1.0E-6 
 +  !------------------- 
 +  ! frictional heat 
 +  !-------------------- 
 +  Temp Load = Variable Velocity 1 
 +    Real Procedure ​ "​ElmerIceUSF"​ "​getFrictionLoads"​
 End End
 </​code>​ </​code>​
 +
 +See also [[:​tips:​thermoprop|Thermodynamic Properties]] for heat capacity and conductivity functions.
  
 ==== Examples ==== ==== Examples ====
-Download an example ​using the TemperateIce Solver. TODO+An example ​demonstrating ​the use of the thermal properties of ice can be found in ''​[ELMER_TRUNK]/​elmerice/​Tests/​TemperateIceTest''​
  
 ==== Reference ==== ==== Reference ====
 When used this solver can be cited using the following reference:​\\ When used this solver can be cited using the following reference:​\\
 Zwinger T. , R. Greve, O. Gagliardini , T. Shiraiwa and M. Lyly, 2007. A full Stokes-flow thermo-mechanical model for firn and ice applied to the Gorshkov crater glacier, Kamchatka. Annals of Glaciol., 45, p. 29-37. Zwinger T. , R. Greve, O. Gagliardini , T. Shiraiwa and M. Lyly, 2007. A full Stokes-flow thermo-mechanical model for firn and ice applied to the Gorshkov crater glacier, Kamchatka. Annals of Glaciol., 45, p. 29-37.
solvers/temperature.1352934351.txt.gz · Last modified: 2012/11/14 23:05 by gag
CC Attribution-Share Alike 4.0 International
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0