Land surface model
This page is part of the Land Surface Model (LSM) documentation.
It describes the physical and numerical realization of the LSM.
Please also see the namelist parameters.
Overview
Since r1551 a full land surface model (LSM) is available in PALM (see land_surface_model_mod.f90). It consists of a multi layer soil model, predicting soil temperature and moisture content, and a solver for the energy balance, predicting the temperature of the surface or the skin layer (depending on land use classification). Moreover, a liquid water reservoir accounts for the presence of liquid water on plants, pavement, and bare soil due to precipitation. The implementation is based on the ECMWF-IFS land surface parametrization (H-TESSEL) and its adaptation in the DALES model (Heus et al. 2010).
Note that the use of the LSM requires using some kind of radiation model to provide radiative fluxes at the surface.
Energy balance solver
The energy balance of the Earth's surface reads

where C0 and T0 are the heat capacity and radiative temperature of the surface skin layer, respectively. Note that C0 is usually zero as it is assumed that the skin layer does not have a heat capacity (see also below). Rn, H, LE, and G are the net radiation, sensible heat flux, latent heat flux, and ground (soil) heat flux at the surface, respectively.
Parameterization of H
H is calculated as

where ρ is the density of the air, cp = 1005 J kg-1 K-1 is the specific heat at constant pressure, ra is the aerodynamic resistance, and θ0 and θ1 are the potential temperature at the surface and at the first grid level above the surface, respectively. ra is calculated via Monin-Obukhov similarity theory, based on roughness lengths for heat and momentum and the assumption of a constant flux layer between the surface and the first grid level:

where u* and θ* are the friction velocity and the characteristic temperature scale according to Monin-Obukhov similarity scaling (these are calculated in surface_layer_fluxes_mod.f90).
Parameterization of G
G is parametrized as (see Duynkerke 1999)

with Λ being the total thermal conductivity between skin layer and the uppermost soil layer, and Tsoil,1 being the temperature of the uppermost soil layer. Λ is calculated as a combination of the conductivity between the canopy and the soil-top (constant value) and the conductivity of the top half of the uppermost soil layer:

When no skin layer is used (i.e. in case of bare soil and pavements), Λ reduces to the heat conductivity of the uppermost soil layer (divided by the layer depth). In that case, it is assumed that the soil temperature is constant within the uppermost 1/4 of the top soil layer and equals the radiative temperature. C0 is then set to a non-zero value according to the material properties.
Parameterization of LE
The latent heat flux is calculated as

Here, lv = 2.5 * 106 J kg-1 is the latent heat of vaporisation, rs is the surface resistance, qv,1 is the water vapor mixing ratio at first grid level, and qv,sat is the water vapor mixing ratio at temperature T0.
All equations above are solved locally for each surface element of the LES grid. Each element for the surface type 'vegetation' can consist of patches of bare soil, vegetation, and a liquid water reservoir, which is the interception water stored on plants and soil from precipitation. Therefore, an additional equation is solved for the liquid water reservoir. A liquid water reservoir is also available when the surface type is set to 'pavement'. LE is then calculated for each of the three components (bare soil, vegetation, liquid water). The resistances are calculated separately for bare soil and vegetation following Jarvis (1976). The canopy resistance is calculated as

with

The correction functions read

which accounts for the reaction of plants to shortwave radiation (opening/closing stomata),

where gD is a correction factor (for high vegetation only, otherwise zero). Moreover, the reaction of plants to water availability in the soil is considered:

where

and

where

and N is the number of soil layers.
The bare soil resistance is given by

with

The total evapotranspiration is then calculated as

where cveg, and cliq is the surface fraction covered with vegetation and liquid water, respectively.
Prognostic equation for the liquid water reservoir
The prognostic equation for the liquid water stored on plants and bare soil mliq reads

The maximum amount of water that can be stored on plants is calculated via

where m,liq,ref, = 0.2 mm is the reference liquid water column on a single leaf or bare soil. Exceeding liquid water is directly removed from the surface and infiltrated in the underlying soil. For positive values of LEliq, liquid water is evaporating from the surface, while negative values indicate precipitation (rain, dew). The values of c,liq, are calculated either as the ratio

for vegetation (following the HTESSEL scheme, Viterbo & Beljaars, 1995) and

following Masson (2000).
Soil model
The soil model consists of prognostic equations for the soil temperature and the volumetric soil moisture which are solved for multiple layers. The soil model only takes into account vertical transport within the soil and no ice phase is considered. By default, the soil model consists of eight layers (see Fig. 12 below), in which the vertical heat and water transport is modelled using the Fourier law of diffusion and Richards' equation, respectively. Also, root fractions can be assigned to each soil layer to account for the explicit water withdrawal of plants used for transpiration from the respective soil layer.
Figure 12: Default layer distribution in the soil model.
Soil heat transport
The prognostic equation for soil temperature reads

with

The heat conductivity is calculated as

with

The heat conductivity of saturated soil is given by

with

The Kersten number is calculated as
![\begin{equation*}
Ke = \log_{10} \left[max\left(0.1, \dfrac{m_\mathrm{soil}}{m_\mathrm{sat}}\right) \right] + 1
\end{equation*}](/trac/tracmath/e77050c1b4636f38bc44df22df92578fe40c737a.png)
Soil moisture transport
The prognostic equation for volumetric soil moisture reads

with

The hydraulic diffusion coefficient is calculated after Clapp and Hornberger (1978) as

with

The hydraulic conductivity is calculated either after Van Genuchten (1980) (as in H-TESSEL):
![\begin{equation*}
\gamma = \gamma_\mathrm{sat} \dfrac{\left[(1 + (\alpha h)^n)^{1 - 1/n} - (\alpha h)^{n-1}\right]^2}{(1+ (\alpha h)^n)^{(1 - 1/n)(l + 2)}}
\end{equation*}](/trac/tracmath/5b600b1408ec0ddcff47d3193cf9bc73e809981f.png)
where

and
TracMath macro processor has detected an error. Please fix the problem before continuing.
The command:
'/usr/bin/pdflatex -interaction=nonstopmode eed2247ad78d615fafec8b6990e4937296f32fff.tex'
failed with the following output:
"This is pdfTeX, Version 3.1415926-2.5-1.40.14 (TeX Live 2013)\n restricted \\write18 enabled.\nentering extended mode\n(./eed2247ad78d615fafec8b6990e4937296f32fff.tex\nLaTeX2e <2011/06/27>\nBabel <3.9h> and hyphenation patterns for 78 languages loaded.\n(/localdata/software/texlive/2013/texmf-dist/tex/latex/base/article.cls\nDocument Class: article 2007/10/19 v1.4h Standard LaTeX document class\n(/localdata/software/texlive/2013/texmf-dist/tex/latex/base/size10.clo))\n(/localdata/software/texlive/2013/texmf-dist/tex/latex/base/inputenc.sty\n(/localdata/software/texlive/2013/texmf-dist/tex/latex/base/utf8.def\n(/localdata/software/texlive/2013/texmf-dist/tex/latex/base/t1enc.dfu)\n(/localdata/software/texlive/2013/texmf-dist/tex/latex/base/ot1enc.dfu)\n(/localdata/software/texlive/2013/texmf-dist/tex/latex/base/omsenc.dfu)))\n(/localdata/software/texlive/2013/texmf-dist/tex/latex/cmap/cmap.sty)\n(/localdata/software/texlive/2013/texmf-dist/tex/latex/cm-super/type1ec.sty\n(/localdata/software/texlive/2013/texmf-dist/tex/latex/base/t1cmr.fd))\n(/localdata/software/texlive/2013/texmf-dist/tex/latex/base/fontenc.sty\n(/localdata/software/texlive/2013/texmf-dist/tex/latex/base/t1enc.def)<<t1.cmap\n>>) (/localdata/software/texlive/2013/texmf-dist/tex/latex/amsmath/amsmath.sty\nFor additional information on amsmath, use the `?' option.\n(/localdata/software/texlive/2013/texmf-dist/tex/latex/amsmath/amstext.sty\n(/localdata/software/texlive/2013/texmf-dist/tex/latex/amsmath/amsgen.sty))\n(/localdata/software/texlive/2013/texmf-dist/tex/latex/amsmath/amsbsy.sty)\n(/localdata/software/texlive/2013/texmf-dist/tex/latex/amsmath/amsopn.sty))\n(/localdata/software/texlive/2013/texmf-dist/tex/latex/amscls/amsthm.sty)\n(/localdata/software/texlive/2013/texmf-dist/tex/latex/amsfonts/amssymb.sty\n(/localdata/software/texlive/2013/texmf-dist/tex/latex/amsfonts/amsfonts.sty))\n(/localdata/software/texlive/2013/texmf-dist/tex/latex/tools/bm.sty)\n(/localdata/software/texlive/2013/texmf-dist/tex/latex/preview/preview.sty\n(/localdata/software/texlive/2013/texmf-dist/tex/latex/preview/prtightpage.def)\n)\nNo file eed2247ad78d615fafec8b6990e4937296f32fff.aux.\nPreview: Fontsize 10pt\nPreview: PDFoutput 1\n<<ot1.cmap>><<oml.cmap>><<oms.cmap>><<omx.cmap>>\n(/localdata/software/texlive/2013/texmf-dist/tex/latex/amsfonts/umsa.fd)\n(/localdata/software/texlive/2013/texmf-dist/tex/latex/amsfonts/umsb.fd)\n! You can't use `macro parameter character #' in horizontal mode.\nl.21 #\n !Latex\n! You can't use `macro parameter character #' in horizontal mode.\nl.28 #\n !Latex\n! You can't use `macro parameter character #' in horizontal mode.\nl.35 #\n !Latex\n! You can't use `macro parameter character #' in horizontal mode.\nl.47 For more details, see also [#\n viterbo Viterbo et al. (1995)] and [#balsa...\n\n! You can't use `macro parameter character #' in horizontal mode.\nl.47 ...so [#viterbo Viterbo et al. (1995)] and [#\n balsamo Balsamo et al. (20...\n\n! Missing $ inserted.\n<inserted text> \n $\nl.50 ...oints with water surface (i.e. {{{surface_\n type = 'water'}}}), the en...\n\n! Extra }, or forgotten $.\n<recently read> }\n \nl.50 ...r surface (i.e. {{{surface_type = 'water'}\n }}), the energy balance is...\n\n! Extra }, or forgotten $.\nl.50 ... surface (i.e. {{{surface_type = 'water'}}\n }), the energy balance is ...\n\n! Extra }, or forgotten $.\nl.50 ...surface (i.e. {{{surface_type = 'water'}}}\n ), the energy balance is s...\n\n! Missing $ inserted.\n<inserted text> \n $\nl.51 \n \n\nUnderfull \\hbox (badness 10000) in paragraph at lines 49--51\n[]\\T1/cmr/m/n/10 == Ex-cep-tion: wa-ter sur-faces == When pre-scrib-\n\nUnderfull \\hbox (badness 10000) in paragraph at lines 49--51\n\\T1/cmr/m/n/10 ing grid points with wa-ter sur-face (i.e. surface$[]\\OML/cmm/m/\nit/10 ype \\OT1/cmr/m/n/10 =[]\n\nOverfull \\hbox (1079.15839pt too wide) in paragraph at lines 49--51\n\\OML/cmm/m/it/10 water[]\\OT1/cmr/m/n/10 )\\OML/cmm/m/it/10 ; theenergybalanceiss\nolvedasforlandsurfacewithoutevaporationfromvegetationcanopyandbaresoil:Moreover\n; thewatertemperatureisconstantandtimeandisderivedfromthevalueof[]atmodelstart:\nInordertoobtainrealisticresults; itisrequiredtosetazeroheatcapacityfortheoceans\nkinlayer\\OT1/cmr/m/n/10 (\\OML/cmm/m/it/10 e:g:[]\\OT1/cmr/m/n/10 )\\OML/cmm/m/it/\n10 :$ \n! You can't use `macro parameter character #' in horizontal mode.\nl.52 ...espectively) are hence calculated after [#\n beljaars Beljaars (1994)] ...\n\n! You can't use `macro parameter character #' in horizontal mode.\nl.54 #\n !Latex\n\n! Package inputenc Error: Unicode char \\u8:\xce\xbd not set up for use with LaTeX.\n\nSee the inputenc package documentation for explanation.\nType H <return> for immediate help.\n ... \n \nl.61 Here, ''\xce\xbd\n '' is the molecular viscosity, and ''\xce\xb1'',,Ch,, = 0.018 is th...\n\n\n! Package inputenc Error: Unicode char \\u8:\xce\xb1 not set up for use with LaTeX.\n\nSee the inputenc package documentation for explanation.\nType H <return> for immediate help.\n ... \n \nl.61 ...'\xce\xbd'' is the molecular viscosity, and ''\xce\xb1\n '',,Ch,, = 0.018 is the Ch...\n\n! Missing $ inserted.\n<inserted text> \n $\nl.66 ...lized by setting the parameter {{{surface_\n type = 'pavement'}}}. The ...\n\n! Extra }, or forgotten $.\n<recently read> }\n \nl.66 ...he parameter {{{surface_type = 'pavement'}\n }}. The pavement is steere...\n\n! Extra }, or forgotten $.\nl.66 ...e parameter {{{surface_type = 'pavement'}}\n }. The pavement is steered...\n\n! Extra }, or forgotten $.\nl.66 ... parameter {{{surface_type = 'pavement'}}}\n . The pavement is steered ...\n\n! You can't use `macro parameter character #' in math mode.\nl.66 ...steered via a depth ([wiki:doc/app/lsmpar#\n pave_depth pave_depth]), a...\n\n! You can't use `macro parameter character #' in math mode.\nl.66 ...]), a heat capacity ([wiki:doc/app/lsmpar#\n pave_heat_capacity pave_he...\n\n! You can't use `macro parameter character #' in math mode.\nl.66 ...a heat conductivity ([wiki:doc/app/lsmpar#\n pave_heat_conductivity pav...\n\n! Missing $ inserted.\n<inserted text> \n $\nl.67 \n \n\nUnderfull \\hbox (badness 6995) in paragraph at lines 65--67\n[]\\T1/cmr/m/n/10 == Ex-cep-tion: pave-ment == It is pos-si-ble to ac-count for \nur-\n\nUnderfull \\hbox (badness 10000) in paragraph at lines 65--67\n\\T1/cmr/m/n/10 ban land sur-faces such as roads by adding a pave-ment layer\n\nUnderfull \\hbox (badness 7981) in paragraph at lines 65--67\n\\T1/cmr/m/n/10 to the soil model. This is re-al-ized by set-ting the pa-ram-e-t\ner\n\nUnderfull \\hbox (badness 10000) in paragraph at lines 65--67\n\\T1/cmr/m/n/10 surface$[]\\OML/cmm/m/it/10 ype \\OT1/cmr/m/n/10 =[] \\OML/cmm/m/it\n/10 pavement[]:Thepavementissteeredviaadepth\\OT1/cmr/m/n/10 ([\\OML/cmm/m/it/10 \nwiki \\OT1/cmr/m/n/10 :\n\nUnderfull \\hbox (badness 10000) in paragraph at lines 65--67\n\\OML/cmm/m/it/10 doc=app=lsmparpave[]epthpave[]epth\\OT1/cmr/m/n/10 ])\\OML/cmm/m\n/it/10 ; aheatcapacity\\OT1/cmr/m/n/10 ([\\OML/cmm/m/it/10 wiki \\OT1/cmr/m/n/10 :\n\n\nOverfull \\hbox (16.23671pt too wide) in paragraph at lines 65--67\n\\OML/cmm/m/it/10 doc=app=lsmparpave[]eat[]apacitypave[]eat[]apacity\\OT1/cmr/m/n\n/10 ])\\OML/cmm/m/it/10 ; andaheatconductivity\\OT1/cmr/m/n/10 ([\\OML/cmm/m/it/10\n wiki \\OT1/cmr/m/n/10 :\n\nOverfull \\hbox (1047.82759pt too wide) in paragraph at lines 65--67\n\\OML/cmm/m/it/10 doc=app=lsmparpave[]eat[]onductivitypave[]eat[]onductivity\\OT1\n/cmr/m/n/10 ])\\OML/cmm/m/it/10 :Thepavementthenreplacestheuppersoillayersuptoad\nepthof[]:Incasethat[]isbetweentwosoillayers; therespectiveheatconductivityandhe\natcapacitiesarelinearlyinterpolatedbetweenthesoilvalueandthepavementvaluetother\nespectivegridpoint:$ \n! You can't use `macro parameter character #' in horizontal mode.\nl.76 #\n !Latex\n! You can't use `macro parameter character #' in horizontal mode.\nl.83 #\n !Latex\n! You can't use `macro parameter character #' in horizontal mode.\nl.90 #\n !Latex\n! You can't use `macro parameter character #' in horizontal mode.\nl.97 #\n !Latex\n! You can't use `macro parameter character #' in horizontal mode.\nl.117 #\n !Latex\n! Misplaced alignment tab character &.\nl.125 The lsm is activated by specifying a {{{&\n land_surface_parameters}}} na...\n\n! Missing $ inserted.\n<inserted text> \n $\nl.125 ...sm is activated by specifying a {{{&land_\n surface_parameters}}} name...\n\n! Extra }, or forgotten $.\nl.125 ...specifying a {{{&land_surface_parameters}\n }} namelist in the _p3d fi...\n\n! Extra }, or forgotten $.\nl.125 ...pecifying a {{{&land_surface_parameters}}\n } namelist in the _p3d fil...\n\n! Extra }, or forgotten $.\nl.125 ...ecifying a {{{&land_surface_parameters}}}\n namelist in the _p3d file...\n\n! Misplaced alignment tab character &.\nl.127 &\n land_surface_parameters\n! You can't use `macro parameter character #' in math mode.\nl.139 ...ce types (parameter [wiki:doc/app/lsmpar#\n vegetation_type vegetation...\n\n! You can't use `macro parameter character #' in math mode.\nl.139 ...e chosen (parameter [wiki:doc/app/lsmpar#\n soil_type soil_type]). You...\n\n! Missing $ inserted.\n<inserted text> \n $\nl.140 \n \n\nUnderfull \\hbox (badness 10000) in paragraph at lines 124--140\n[]\\T1/cmr/m/n/10 == Job prepa-ra-tion == The lsm is ac-ti-vated by spec-\n\nUnderfull \\hbox (badness 10000) in paragraph at lines 124--140\n\\T1/cmr/m/n/10 i-fy-ing a land$[]\\OML/cmm/m/it/10 urface[]arametersnamelistinth\ne[]\\OT1/cmr/m/n/10 3\\OML/cmm/m/it/10 dfile; e:g: \\OT1/cmr/m/n/10 :\n\nOverfull \\hbox (1465.41942pt too wide) in paragraph at lines 124--140\n[]\\OML/cmm/m/it/10 Inparticular; PALMprovidesasetofpredefinedlandsurfacetypes\\O\nT1/cmr/m/n/10 (\\OML/cmm/m/it/10 parameter\\OT1/cmr/m/n/10 [\\OML/cmm/m/it/10 wiki\n \\OT1/cmr/m/n/10 :\n\nOverfull \\hbox (412.49176pt too wide) in paragraph at lines 124--140\n\\OML/cmm/m/it/10 doc=app=lsmparvegetation[]ypevegetation[]ype\\OT1/cmr/m/n/10 ])\n\\OML/cmm/m/it/10 forwhichtypicalparametersareusedtointializethemodel:Moreover; \nasetofpredefinedsoiltypescanbechosen\\OT1/cmr/m/n/10 (\\OML/cmm/m/it/10 parameter\n\\OT1/cmr/m/n/10 [\\OML/cmm/m/it/10 wiki \\OT1/cmr/m/n/10 :\n\nOverfull \\hbox (172.39046pt too wide) in paragraph at lines 124--140\n\\OML/cmm/m/it/10 doc=app=lsmparsoil[]ypesoil[]ype\\OT1/cmr/m/n/10 ])\\OML/cmm/m/i\nt/10 :Youcanoverwritethedefaultparametersbyexplicitlyprescribingtheminthenameli\nst:$ \n! You can't use `macro parameter character #' in horizontal mode.\nl.141 ...d via the parameter [wiki:doc/app/radpar#\n albedo_type albedo_type].\n! Missing $ inserted.\n<inserted text> \n $\nl.141 ...he parameter [wiki:doc/app/radpar#albedo_\n type albedo_type].\n! Missing $ inserted.\n<inserted text> \n $\nl.142 \n \n! You can't use `macro parameter character #' in horizontal mode.\nl.146 * [=#\n beljaars]'''Beljaars, ACM''' 1994. The parametrization of surface...\n\n! You can't use `macro parameter character #' in horizontal mode.\nl.148 * [=#\n balsamo]'''Balsamo G, Vitebo P, Beljaars A, van den Hurk B, Hirsc...\n\n! You can't use `macro parameter character #' in horizontal mode.\nl.150 * [=#\n clapp]'''Clapp RB, Hornberger GM.''' 1978. Empirical Equations fo...\n\n! You can't use `macro parameter character #' in horizontal mode.\nl.152 * [=#\n duynkerke]'''Duynkerke PG.''' 1999. Turbulence, radiation and fog...\n\n! You can't use `macro parameter character #' in horizontal mode.\nl.154 * [=#\n heus]'''Heus T, Van Heerwaarden CC, Jonker HJJ, Siebesma AP, Axel...\n\n! You can't use `macro parameter character #' in horizontal mode.\nl.156 * [=#\n jarvis]'''Jarvis PG.''' 1976. The interpretation of the variation...\n\n! You can't use `macro parameter character #' in horizontal mode.\nl.158 * [=#\n vangenuchten]'''van Genuchten M.''' 1980. A closed form equation ...\n\n! You can't use `macro parameter character #' in horizontal mode.\nl.160 * [=#\n viterbo]'''Viterbo P, Beljaars ACM.''' 1995. An Improved Land Sur...\n\n! You can't use `macro parameter character #' in horizontal mode.\nl.162 * [=#\n masson]'''Masson, V.''' 2000. A physically-based scheme for the u...\n\n! Missing } inserted.\n<inserted text> \n }\nl.163 \\end{preview}\n \n! Missing } inserted.\n<inserted text> \n }\nl.163 \\end{preview}\n \n! Missing } inserted.\n<inserted text> \n }\nl.163 \\end{preview}\n \n! Missing } inserted.\n<inserted text> \n }\nl.163 \\end{preview}\n \n! Missing } inserted.\n<inserted text> \n }\nl.163 \\end{preview}\n \n! Missing } inserted.\n<inserted text> \n }\nl.163 \\end{preview}\n \n! Missing } inserted.\n<inserted text> \n }\nl.163 \\end{preview}\n \n! Missing } inserted.\n<inserted text> \n }\nl.163 \\end{preview}\n \n! Missing } inserted.\n<inserted text> \n }\nl.163 \\end{preview}\n \nPreview: Tightpage -32891 -32891 32891 32891\n[1{/localdata/software/texlive/2013/texmf-var/fonts/map/pdftex/updmap/pdftex.ma\np}] (./eed2247ad78d615fafec8b6990e4937296f32fff.aux) )\n(see the transcript file for additional information){/localdata/software/texliv\ne/2013/texmf-dist/fonts/enc/dvips/cm-super/cm-super-t1.enc}</localdata/software\n/texlive/2013/texmf-dist/fonts/type1/public/amsfonts/cm/cmex10.pfb></localdata/\nsoftware/texlive/2013/texmf-dist/fonts/type1/public/amsfonts/cm/cmmi10.pfb></lo\ncaldata/software/texlive/2013/texmf-dist/fonts/type1/public/amsfonts/cm/cmmi7.p\nfb></localdata/software/texlive/2013/texmf-dist/fonts/type1/public/amsfonts/cm/\ncmr10.pfb></localdata/software/texlive/2013/texmf-dist/fonts/type1/public/amsfo\nnts/cm/cmr7.pfb></localdata/software/texlive/2013/texmf-dist/fonts/type1/public\n/amsfonts/cm/cmsy10.pfb></localdata/software/texlive/2013/texmf-dist/fonts/type\n1/public/amsfonts/cm/cmsy7.pfb></localdata/software/texlive/2013/texmf-dist/fon\nts/type1/public/cm-super/sfrm1000.pfb>\nOutput written on eed2247ad78d615fafec8b6990e4937296f32fff.pdf (1 page, 113057 \nbytes).\nTranscript written on eed2247ad78d615fafec8b6990e4937296f32fff.log.\n"