Warning: Undefined array key 1 in /home/np29546/public_html/elmerice/wiki/inc/auth.php on line 78

Warning: Cannot modify header information - headers already sent by (output started at /home/np29546/public_html/elmerice/wiki/inc/auth.php:78) in /home/np29546/public_html/elmerice/wiki/inc/auth.php on line 431

Warning: Cannot modify header information - headers already sent by (output started at /home/np29546/public_html/elmerice/wiki/inc/auth.php:78) in /home/np29546/public_html/elmerice/wiki/inc/actions.php on line 38
solvers:surfaceboundaryenthalpy [Elmer/Ice Wiki]

This is an old revision of the document!


Surface Boundary Condition for steady state thermal regime

General Informations

  • Solver Fortran File: SurfaceBoundaryEnthalpy.f90
  • Solver Name: SurfBoundarySolver
  • Required Output Variable(s): Surf Enth, Mass Balance, Densi, Firn, Melting, Refreeze, Accu, Rad_Fact, Rain, PotRad
  • Required Input Variable(s): Depth and SurfGrad from the FlowDepth Solver
  • Input Data: Daily air temperature timeserie
  • Optional Input Data: Daily precipitation timeserie

For 3D mesh only. Works in serial and parallel.

General Description

SurfBoundarySolver is a pseudo-solver which compute surface mass balance and Dirichlet surface boundary condition for the Enthalpy solver. It takes into account firn heating processes by solving vertical melt-water percolation and refreezing.

The solver uses the provided air temperature (and precipitation) daily record to compute the associated mean surface characteristic of the glacier over the time period covered by the provided data time-serie. It outputs the following variables:

  1. Mass Balance (m w.eq./yr): Mean surface mass balance
  2. Surf Enth (J/kg) : Enthalpy value bellow active layer. Can be use as a Dirichlet condition in the Enthalpy Solver
  3. Densi (kg/m3): Density field in 3D
  4. Firn (m w. eq.) : Firn thickness
  5. Melting (m w.eq./yr) : Surface melting
  6. Refreeze (m w.eq./yr) : Amount of refreezing (superimposed ice)
  7. Accu (m w.eq./yr) : Snow accumulation
  8. Rad_fact (m w.eq./(W/m2)) : Melting factor for radiation
  9. Rain (m w.eq./yr) : Amount of rain
  10. PotRad (W/m2) : Potential solar radiation

The mass balance model is based on a degree day model that takes into account potential solar radiation. Mean Enthalpy at 10m-depth (bellow active layer), is computed by solving the heat equation on a 1D vertical profile forced by a mean annual cycle of air temperature and precipitation determined from the data. This is done for each surface nodes using a Crank-Nicholson scheme on a 6 cm resolution grid at daily time-step. It takes into account of seasonal change of the density profile and allow percolation of water only where density is lower than 800 kg/m3. More details about the model can be found in:

Gilbert, A., Sinisalo, A., Gurung, T. R., Fujita, K., Maharjan, S. B., Sherpa, T. C., & Fukuda, T. (2020). The influence of water percolation through crevasses on the thermal regime of a Himalayan mountain glacier. The Cryosphere, 14(4), 1273–1288. https://doi.org/10.5194/tc-14-1273-2020

SIF contents

The solver needs output from the FlowDepth Solver :

Solver 1

  Equation = "Flowdepth"
   Procedure = File "ElmerIceSolvers" "FlowDepthSolver"
   Variable = String "Depth"
   Variable DOFs = 1
   Linear System Solver = "Direct"
   ! this sets the direction
   ! -1 is negative z-direction (upside down)
   ! +1 is positive (downside up)
   Gradient = Real -1.0E00
   Calc Free Surface = Logical True
   Freesurf Name = String "Surf"
End

The solver is called with the following:

Solver 2

  Equation = SurfBoundary
  Variable = Mass Balance
  Variable DOFs = 1
  procedure =  "ElmerIceSolvers" "SurfBoundarySolver"

  Exported Variable 1 = String "Surf Enth"
  Exported Variable 1 DOFs = 1

  Exported Variable 2 = String "Densi"
  Exported Variable 2 DOFs = 1

  Exported Variable 3 = String "Firn"
  Exported Variable 3 DOFs = 1
  
  Exported Variable 4 = String "Melting"
  Exported Variable 4 DOFs = 1

  Exported Variable 5 = String "Refreeze"
  Exported Variable 5 DOFs = 1

  Exported Variable 6 = String "Accu"
  Exported Variable 6 DOFs = 1

  Exported Variable 7 = String "Rad_Fact"
  Exported Variable 7 DOFs = 1
  
  Exported Variable 8 = String "Rain"
  Exported Variable 8 DOFs = 1
  
  Exported Variable 9 = String "PotRad"
  Exported Variable 9 DOFs = 1

End

Boundary Condition to setup Dirichlet condition for the Enthalpy Solver:

! Upper Surface
Boundary Condition 2
  Target Boundaries = 2
   
  Depth = real 0.0
  Enthalpy_h = Equals Surf Enth 

End

Examples

An example solving for the enthalpy within the Rika Samba Glacier using the SurfBoundarySolver can be found in [ELMER_TRUNK]/elmerice/Tests/SurfaceBoundaryEnth.

Reference

Gilbert, A., Sinisalo, A., Gurung, T. R., Fujita, K., Maharjan, S. B., Sherpa, T. C., & Fukuda, T. (2020). The influence of water percolation through crevasses on the thermal regime of a Himalayan mountain glacier. The Cryosphere, 14(4), 1273–1288. https://doi.org/10.5194/tc-14-1273-2020

solvers/surfaceboundaryenthalpy.1589550253.txt.gz · Last modified: 2020/05/15 13:44 by adriengilbert
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