\hypertarget{group__radiation__surface__mod}{}\doxysubsection{Radiation Surface Module}
\label{group__radiation__surface__mod}\index{Radiation Surface Module@{Radiation Surface Module}}


This module sets up surface albedo for SW radiation and surface emissivity for LW radiation.  


\doxysubsubsection*{Modules}
\begin{DoxyCompactItemize}
\item 
module \mbox{\hyperlink{namespacemodule__radiation__surface}{module\+\_\+radiation\+\_\+surface}}
\begin{DoxyCompactList}\small\item\em This module sets up surface albedo for SW radiation and surface emissivity for LW radiation. ~\newline
 \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsection*{Functions/\+Subroutines}
\begin{DoxyCompactItemize}
\item 
subroutine, public \mbox{\hyperlink{group__radiation__surface__mod_ga426f71b67e0f724e9ee0987f5592d9a1_ga426f71b67e0f724e9ee0987f5592d9a1}{module\+\_\+radiation\+\_\+surface\+::sfc\+\_\+init}} (me, ialbflg, iemsflg, semis\+\_\+file, con\+\_\+pi, errmsg, errflg)
\begin{DoxyCompactList}\small\item\em This subroutine is the initialization program for surface radiation related quantities (albedo, emissivity, etc.) \end{DoxyCompactList}\item 
subroutine, public \mbox{\hyperlink{group__radiation__surface__mod_gaa89a74135f630a75a4fd6bc9d94d4381_gaa89a74135f630a75a4fd6bc9d94d4381}{module\+\_\+radiation\+\_\+surface\+::setalb}} (slmsk, lsm, lsm\+\_\+noahmp, lsm\+\_\+ruc, use\+\_\+cice\+\_\+alb, snodi, sncovr, sncovr\+\_\+ice, snoalb, zorlf, coszf, tsknf, tairf, hprif, frac\+\_\+grid, lakefrac, alvsf, alnsf, alvwf, alnwf, facsf, facwf, fice, tisfc, lsmalbdvis, lsmalbdnir, lsmalbivis, lsmalbinir, icealbdvis, icealbdnir, icealbivis, icealbinir, IMAX, NF\+\_\+\+ALBD, alb\+Ppert, pertalb, fracl, fraco, fraci, icy, ialbflg, con\+\_\+ttp, sfcalb)
\begin{DoxyCompactList}\small\item\em This subroutine computes four components of surface albedos (i.\+e., vis-\/nir, direct-\/diffused) according to control flag ialbflg. ~\newline
 1) climatological surface albedo scheme (\cite{briegleb_1992}) ~\newline
 2) MODIS retrieval based scheme from Boston univ. \end{DoxyCompactList}\item 
subroutine, public \mbox{\hyperlink{group__radiation__surface__mod_ga05fb983d8a6a2e1a7799a904e605e7a8_ga05fb983d8a6a2e1a7799a904e605e7a8}{module\+\_\+radiation\+\_\+surface\+::setemis}} (lsm, lsm\+\_\+noahmp, lsm\+\_\+ruc, frac\+\_\+grid, cplice, use\+\_\+lake\+\_\+model, lakefrac, xlon, xlat, slmsk, snodl, snodi, sncovr, sncovr\+\_\+ice, zorlf, tsknf, tairf, hprif, semis\+\_\+lnd, semis\+\_\+ice, semis\+\_\+wat, IMAX, fracl, fraco, fraci, icy, semisbase, sfcemis)
\begin{DoxyCompactList}\small\item\em This subroutine computes surface emissivity for LW radiation. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsection*{Variables}
\begin{DoxyCompactItemize}
\item 
integer, parameter, public \mbox{\hyperlink{group__radiation__surface__mod_gaab4b9853c71ff40f8db2aa78b7cab265_gaab4b9853c71ff40f8db2aa78b7cab265}{module\+\_\+radiation\+\_\+surface\+::imxems}} = 360
\item 
integer, parameter, public \mbox{\hyperlink{group__radiation__surface__mod_ga3922674f1c727d517ba5b0f7f5093970_ga3922674f1c727d517ba5b0f7f5093970}{module\+\_\+radiation\+\_\+surface\+::jmxems}} = 180
\item 
real(kind=kind\+\_\+phys), parameter, public \mbox{\hyperlink{group__radiation__surface__mod_ga24bdfd029cdd7b17991298fa8693ed5b_ga24bdfd029cdd7b17991298fa8693ed5b}{module\+\_\+radiation\+\_\+surface\+::f\+\_\+zero}} = 0.\+0
\item 
real(kind=kind\+\_\+phys), parameter, public \mbox{\hyperlink{group__radiation__surface__mod_ga2ec5311522bcb4d3839efcac47c83d39_ga2ec5311522bcb4d3839efcac47c83d39}{module\+\_\+radiation\+\_\+surface\+::f\+\_\+one}} = 1.\+0
\item 
real(kind=kind\+\_\+phys), parameter, public \mbox{\hyperlink{group__radiation__surface__mod_gaf86249177fba52727e4f97a18c5d7ae7_gaf86249177fba52727e4f97a18c5d7ae7}{module\+\_\+radiation\+\_\+surface\+::epsln}} = 1.\+0e-\/6
\item 
real(kind=kind\+\_\+phys) \mbox{\hyperlink{group__radiation__surface__mod_gae6b1db618c233e70ae99e11a638cb662_gae6b1db618c233e70ae99e11a638cb662}{module\+\_\+radiation\+\_\+surface\+::rad2dg}}
\item 
integer, dimension(\+:,\+:), allocatable \mbox{\hyperlink{group__radiation__surface__mod_gac33f1f3441f8336d7eb7e15cba26caf7_gac33f1f3441f8336d7eb7e15cba26caf7}{module\+\_\+radiation\+\_\+surface\+::idxems}}
\item 
integer \mbox{\hyperlink{group__radiation__surface__mod_ga3ceebb99dbffcb70a14cfcaa7b029abc_ga3ceebb99dbffcb70a14cfcaa7b029abc}{module\+\_\+radiation\+\_\+surface\+::iemslw}} = 1
\end{DoxyCompactItemize}


\doxysubsubsection{Detailed Description}
In the module, the externally callable subroutines are \+:
\begin{DoxyItemize}
\item \mbox{\hyperlink{group__radiation__surface__mod_ga426f71b67e0f724e9ee0987f5592d9a1_ga426f71b67e0f724e9ee0987f5592d9a1}{sfc\+\_\+init()}}\+: initialization radiation surface data
\item \mbox{\hyperlink{group__radiation__surface__mod_gaa89a74135f630a75a4fd6bc9d94d4381_gaa89a74135f630a75a4fd6bc9d94d4381}{setalb()}}\+: set up four-\/component surface albedoes
\item \mbox{\hyperlink{group__radiation__surface__mod_ga05fb983d8a6a2e1a7799a904e605e7a8_ga05fb983d8a6a2e1a7799a904e605e7a8}{setemis()}}\+: set up surface emissivity for lw radiation
\end{DoxyItemize}

SW surface albedo (namelist control parameter -\/ {\bfseries{IALB=1}}) ~\newline
 IALB=1\+: MODIS retrievals based monthly mean climatology ~\newline
 IALB=2\+: use surface albedo from land model

LW surface emissivity (namelist control parameter -\/ {\bfseries{IEMS=1}}) ~\newline
 IEMS=1\+: surface type based climatology in $1^o$ horizontal resolution ~\newline
 IEMS=2\+: use surface emissivity from land model

\begin{DoxyVersion}{Version}
NCEP-\/\+Radiation\+\_\+surface v5.\+1 Nov 2012 
\end{DoxyVersion}


\doxysubsubsection{Function/\+Subroutine Documentation}
\mbox{\Hypertarget{group__radiation__surface__mod_ga426f71b67e0f724e9ee0987f5592d9a1_ga426f71b67e0f724e9ee0987f5592d9a1}\label{group__radiation__surface__mod_ga426f71b67e0f724e9ee0987f5592d9a1_ga426f71b67e0f724e9ee0987f5592d9a1}} 
\index{Radiation Surface Module@{Radiation Surface Module}!sfc\_init@{sfc\_init}}
\index{sfc\_init@{sfc\_init}!Radiation Surface Module@{Radiation Surface Module}}
\doxyparagraph{\texorpdfstring{sfc\_init()}{sfc\_init()}}
{\footnotesize\ttfamily subroutine, public module\+\_\+radiation\+\_\+surface\+::sfc\+\_\+init (\begin{DoxyParamCaption}\item[{integer, intent(in)}]{me,  }\item[{integer, intent(in)}]{ialbflg,  }\item[{integer, intent(in)}]{iemsflg,  }\item[{character(len=26), intent(in)}]{semis\+\_\+file,  }\item[{real(kind=kind\+\_\+phys), intent(in)}]{con\+\_\+pi,  }\item[{character(len=$\ast$), intent(out)}]{errmsg,  }\item[{integer, intent(out)}]{errflg }\end{DoxyParamCaption})}

\hypertarget{group__radiation__surface__mod_ga426f71b67e0f724e9ee0987f5592d9a1_gen_sfc_init}{}\doxysubsubsection{sfc\+\_\+init General Algorithm}\label{group__radiation__surface__mod_ga426f71b67e0f724e9ee0987f5592d9a1_gen_sfc_init}

\begin{DoxyItemize}
\item Initialization of surface albedo section ~\newline
 GFS\+\_\+typedefs\+::ialbflg
\begin{DoxyItemize}
\item = 1\+: using MODIS based land surface albedo for SW
\item = 2\+: using albedo from land model
\end{DoxyItemize}
\item Initialization of surface emissivity section ~\newline
 GFS\+\_\+typedefs\+::iemsflg
\begin{DoxyItemize}
\item = 1\+: input SFC emissivity type map from \char`\"{}semis\+\_\+file\char`\"{}
\item = 2\+: input SFC emissivity from land model
\end{DoxyItemize}
\end{DoxyItemize}

References \mbox{\hyperlink{group__radiation__surface__mod_gac33f1f3441f8336d7eb7e15cba26caf7_gac33f1f3441f8336d7eb7e15cba26caf7}{module\+\_\+radiation\+\_\+surface\+::idxems}}, \mbox{\hyperlink{group__radiation__surface__mod_ga3ceebb99dbffcb70a14cfcaa7b029abc_ga3ceebb99dbffcb70a14cfcaa7b029abc}{module\+\_\+radiation\+\_\+surface\+::iemslw}}, \mbox{\hyperlink{group__radiation__surface__mod_gaab4b9853c71ff40f8db2aa78b7cab265_gaab4b9853c71ff40f8db2aa78b7cab265}{module\+\_\+radiation\+\_\+surface\+::imxems}}, \mbox{\hyperlink{group__radiation__surface__mod_ga3922674f1c727d517ba5b0f7f5093970_ga3922674f1c727d517ba5b0f7f5093970}{module\+\_\+radiation\+\_\+surface\+::jmxems}}, and \mbox{\hyperlink{group__radiation__surface__mod_gae6b1db618c233e70ae99e11a638cb662_gae6b1db618c233e70ae99e11a638cb662}{module\+\_\+radiation\+\_\+surface\+::rad2dg}}.



Referenced by \mbox{\hyperlink{group___g_f_s__radiation__surface__mod_ga7931dcc879eb821b3a58ddf893bb2081_ga7931dcc879eb821b3a58ddf893bb2081}{gfs\+\_\+radiation\+\_\+surface\+::gfs\+\_\+radiation\+\_\+surface\+\_\+init()}}.

Here is the caller graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{group__radiation__surface__mod_ga426f71b67e0f724e9ee0987f5592d9a1_ga426f71b67e0f724e9ee0987f5592d9a1_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{group__radiation__surface__mod_gaa89a74135f630a75a4fd6bc9d94d4381_gaa89a74135f630a75a4fd6bc9d94d4381}\label{group__radiation__surface__mod_gaa89a74135f630a75a4fd6bc9d94d4381_gaa89a74135f630a75a4fd6bc9d94d4381}} 
\index{Radiation Surface Module@{Radiation Surface Module}!setalb@{setalb}}
\index{setalb@{setalb}!Radiation Surface Module@{Radiation Surface Module}}
\doxyparagraph{\texorpdfstring{setalb()}{setalb()}}
{\footnotesize\ttfamily subroutine, public module\+\_\+radiation\+\_\+surface\+::setalb (\begin{DoxyParamCaption}\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{slmsk,  }\item[{integer, intent(in)}]{lsm,  }\item[{integer, intent(in)}]{lsm\+\_\+noahmp,  }\item[{integer, intent(in)}]{lsm\+\_\+ruc,  }\item[{logical, intent(in)}]{use\+\_\+cice\+\_\+alb,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{snodi,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{sncovr,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{sncovr\+\_\+ice,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{snoalb,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{zorlf,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{coszf,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{tsknf,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{tairf,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{hprif,  }\item[{logical, intent(in)}]{frac\+\_\+grid,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{lakefrac,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{alvsf,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{alnsf,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{alvwf,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{alnwf,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{facsf,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{facwf,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{fice,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{tisfc,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(inout)}]{lsmalbdvis,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(inout)}]{lsmalbdnir,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(inout)}]{lsmalbivis,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(inout)}]{lsmalbinir,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{icealbdvis,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{icealbdnir,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{icealbivis,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{icealbinir,  }\item[{integer, intent(in)}]{IMAX,  }\item[{integer, intent(in)}]{NF\+\_\+\+ALBD,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{alb\+Ppert,  }\item[{real (kind=kind\+\_\+phys), intent(in)}]{pertalb,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{fracl,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{fraco,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{fraci,  }\item[{logical, dimension(\+:), intent(in)}]{icy,  }\item[{integer, intent(in)}]{ialbflg,  }\item[{real (kind=kind\+\_\+phys), intent(in)}]{con\+\_\+ttp,  }\item[{real (kind=kind\+\_\+phys), dimension(imax,nf\+\_\+albd), intent(out)}]{sfcalb }\end{DoxyParamCaption})}


\begin{DoxyParams}{Parameters}
{\em slmsk} & sea(0),land(1),ice(2) mask on fcst model grid \\
\hline
{\em lsm} & flag for land surface model \\
\hline
{\em lsm\+\_\+noahmp} & flag for NOAH MP land surface model \\
\hline
{\em \mbox{\hyperlink{namespacelsm__ruc}{lsm\+\_\+ruc}}} & flag for RUC land surface model \\
\hline
{\em use\+\_\+cice\+\_\+alb} & flag for using uce albedos from CICE when coupled \\
\hline
{\em snodi} & snow depth water equivalent in mm over ice \\
\hline
{\em sncovr} & snow cover over land \\
\hline
{\em snoalb} & maximum snow albedo over land (for deep snow) \\
\hline
{\em zorlf} & surface roughness in cm \\
\hline
{\em coszf} & cosin of solar zenith angle \\
\hline
{\em tsknf} & ground surface temperature in K \\
\hline
{\em tairf} & lowest model layer air temperature in K \\
\hline
{\em hprif} & topographic sdv in m \\
\hline
{\em frac\+\_\+grid} & flag for fractional landmask \\
\hline
{\em lakefrac} & fraction of horizontal grid area occupied by lake \\
\hline
{\em alvsf} & visible black sky albedo at zenith 60 degree \\
\hline
{\em alnsf} & near-\/ir black sky albedo at zenith 60 degree \\
\hline
{\em alvwf} & visible white sky albedo \\
\hline
{\em alnwf} & near-\/ir white sky albedo \\
\hline
{\em facsf} & fractional coverage with strong cosz dependency \\
\hline
{\em facwf} & fractional coverage with weak cosz dependency \\
\hline
{\em fice} & sea-\/ice fraction \\
\hline
{\em tisfc} & sea-\/ice surface temperature \\
\hline
{\em lsmalbdvis} & direct surface albedo visible band over land \\
\hline
{\em lsmalbdnir} & direct surface albedo NIR band over land \\
\hline
{\em lsmalbivis} & diffuse surface albedo visible band over land \\
\hline
{\em lsmalbinir} & diffuse surface albedo NIR band over land \\
\hline
{\em icealbdvis} & direct surface albedo visible band over ice \\
\hline
{\em icealbdnir} & direct surface albedo NIR band over ice \\
\hline
{\em icealbivis} & diffuse surface albedo visible band over ice \\
\hline
{\em icealbinir} & diffuse surface albedo NIR band over ice \\
\hline
{\em IMAX} & array horizontal dimension \\
\hline
{\em albppert} & a probability value in the interval \mbox{[}0,1\mbox{]} \\
\hline
{\em pertalb} & (5), magnitude of perturbation of surface albedo \\
\hline
{\em fracl} & land fraction for emissivity and albedo calculation \\
\hline
{\em fraco} & ocean fraction for emissivity of albedo calculation \\
\hline
{\em fraci} & ice fraction for emissivity of albedo calculation \\
\hline
{\em icy} & flag for ice surfce \\
\hline
{\em sfcalb} & mean sfc albedo ~\newline
 ( \+:, 1) -\/ near ir direct beam albedo ~\newline
 ( \+:, 2) -\/ near ir diffused albedo ~\newline
 ( \+:, 3) -\/ uv+vis direct beam albedo ~\newline
 ( \+:, 4) -\/ uv+vis diffused albedo \\
\hline
\end{DoxyParams}
\hypertarget{group__radiation__surface__mod_gaa89a74135f630a75a4fd6bc9d94d4381_general_setalb}{}\doxysubsubsection{setalb General Algorithm}\label{group__radiation__surface__mod_gaa89a74135f630a75a4fd6bc9d94d4381_general_setalb}

\begin{DoxyItemize}
\item if ialbflg = 1, use MODIS based albedo for land area\+:
\item Use snow cover input directly for land model, no conversion needed.
\item if ialbflg = 2, use land model output for land area\+: Noah MP, RUC (land and ice).
\item Call ppebet () to perturb all 4 elements of surface albedo sfcalb(\+:,1\+:4).
\end{DoxyItemize}

References \mbox{\hyperlink{group___noah___l_s_m_ga028fc448a3afe77726222a337008ffa4_ga028fc448a3afe77726222a337008ffa4}{csnow()}}, \mbox{\hyperlink{group__radiation__surface__mod_gaf86249177fba52727e4f97a18c5d7ae7_gaf86249177fba52727e4f97a18c5d7ae7}{module\+\_\+radiation\+\_\+surface\+::epsln}}, \mbox{\hyperlink{group__radiation__surface__mod_ga2ec5311522bcb4d3839efcac47c83d39_ga2ec5311522bcb4d3839efcac47c83d39}{module\+\_\+radiation\+\_\+surface\+::f\+\_\+one}}, \mbox{\hyperlink{group__radiation__surface__mod_ga24bdfd029cdd7b17991298fa8693ed5b_ga24bdfd029cdd7b17991298fa8693ed5b}{module\+\_\+radiation\+\_\+surface\+::f\+\_\+zero}}, and \mbox{\hyperlink{group__gfs__sfcpert_ga6fcfce740aade0680404536c8c36cb7b_ga6fcfce740aade0680404536c8c36cb7b}{surface\+\_\+perturbation\+::ppfbet()}}.



Referenced by \mbox{\hyperlink{namespacegfs__radiation__surface_adf74c669fa67ec92d00a4ecb3156c7ca_adf74c669fa67ec92d00a4ecb3156c7ca}{gfs\+\_\+radiation\+\_\+surface\+::gfs\+\_\+radiation\+\_\+surface\+\_\+run()}}.

Here is the call graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{group__radiation__surface__mod_gaa89a74135f630a75a4fd6bc9d94d4381_gaa89a74135f630a75a4fd6bc9d94d4381_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{group__radiation__surface__mod_gaa89a74135f630a75a4fd6bc9d94d4381_gaa89a74135f630a75a4fd6bc9d94d4381_icgraph}
\end{center}
\end{figure}
\mbox{\Hypertarget{group__radiation__surface__mod_ga05fb983d8a6a2e1a7799a904e605e7a8_ga05fb983d8a6a2e1a7799a904e605e7a8}\label{group__radiation__surface__mod_ga05fb983d8a6a2e1a7799a904e605e7a8_ga05fb983d8a6a2e1a7799a904e605e7a8}} 
\index{Radiation Surface Module@{Radiation Surface Module}!setemis@{setemis}}
\index{setemis@{setemis}!Radiation Surface Module@{Radiation Surface Module}}
\doxyparagraph{\texorpdfstring{setemis()}{setemis()}}
{\footnotesize\ttfamily subroutine, public module\+\_\+radiation\+\_\+surface\+::setemis (\begin{DoxyParamCaption}\item[{integer, intent(in)}]{lsm,  }\item[{integer, intent(in)}]{lsm\+\_\+noahmp,  }\item[{integer, intent(in)}]{lsm\+\_\+ruc,  }\item[{logical, intent(in)}]{frac\+\_\+grid,  }\item[{logical, intent(in)}]{cplice,  }\item[{integer, dimension(\+:), intent(in)}]{use\+\_\+lake\+\_\+model,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{lakefrac,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{xlon,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{xlat,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{slmsk,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{snodl,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{snodi,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{sncovr,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{sncovr\+\_\+ice,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{zorlf,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{tsknf,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{tairf,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{hprif,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(inout)}]{semis\+\_\+lnd,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(inout)}]{semis\+\_\+ice,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(inout)}]{semis\+\_\+wat,  }\item[{integer, intent(in)}]{IMAX,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{fracl,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{fraco,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(in)}]{fraci,  }\item[{logical, dimension(\+:), intent(in)}]{icy,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(out)}]{semisbase,  }\item[{real (kind=kind\+\_\+phys), dimension(\+:), intent(out)}]{sfcemis }\end{DoxyParamCaption})}


\begin{DoxyParams}{Parameters}
{\em lsm} & flag for land surface model \\
\hline
{\em lsm\+\_\+noahmp} & flag for NOAH MP land surface model \\
\hline
{\em \mbox{\hyperlink{namespacelsm__ruc}{lsm\+\_\+ruc}}} & flag for RUC land surface model \\
\hline
{\em frac\+\_\+grid} & flag for fractional grid \\
\hline
{\em cplice} & flag for controlling cplice collection \\
\hline
{\em use\+\_\+flake} & flag for indicating lake points using flake model \\
\hline
{\em lakefrac} & fraction of horizontal grid area occupied by lake \\
\hline
{\em xlon} & longitude in radiance, ok for both 0-\/\texorpdfstring{$>$}{>}2pi or -\/pi -\/\texorpdfstring{$>$}{>} +pi ranges \\
\hline
{\em xlat} & latitude in radiance, default to pi/2 -\/\texorpdfstring{$>$}{>} -\/pi/2 range, otherwise see in-\/line comment \\
\hline
{\em slmsk} & landmask\+: sea/land/ice =0/1/2 \\
\hline
{\em snodl} & snow depth water equivalent in mm land \\
\hline
{\em snodi} & snow depth water equivalent in mm ice \\
\hline
{\em sncovr} & snow cover over land \\
\hline
{\em sncovr\+\_\+ice} & surface snow area fraction over ice \\
\hline
{\em zorlf} & surface roughness in cm \\
\hline
{\em tsknf} & ground surface temperature in K \\
\hline
{\em tairf} & lowest model layer air temperature in K \\
\hline
{\em hprif} & topographic standard deviation in m \\
\hline
{\em semis\+\_\+lnd} & surface LW emissivity in fraction over land \\
\hline
{\em semis\+\_\+ice} & surface LW emissivity in fraction over ice \\
\hline
{\em semis\+\_\+wat} & surface LW emissivity in fraction over water \\
\hline
{\em IMAX} & array horizontal dimension \\
\hline
{\em fracl} & land fraction for emissivity and albedo calculation \\
\hline
{\em fraco} & ocean fraction for emissivity of albedo calculation \\
\hline
{\em fraci} & ice fraction for emissivity of albedo calculation \\
\hline
{\em icy} & flag for ice surfce \\
\hline
{\em semisbase} & baseline surface LW emissivity in fraction \\
\hline
{\em sfcemis} & (IMAX), surface emissivity \\
\hline
\end{DoxyParams}
\hypertarget{group__radiation__surface__mod_ga05fb983d8a6a2e1a7799a904e605e7a8_general_setemis}{}\doxysubsubsection{setemis General Algorithm}\label{group__radiation__surface__mod_ga05fb983d8a6a2e1a7799a904e605e7a8_general_setemis}

\begin{DoxyEnumerate}
\item Set emissivity by surface type and conditions
\end{DoxyEnumerate}
\begin{DoxyItemize}
\item Check for snow covered area. it is assume here that \char`\"{}sncovr\char`\"{} is the fraction of land covered by snow and \char`\"{}sncovr\+\_\+ice\char`\"{} is the fraction of ice coverd by snow
\end{DoxyItemize}

References \mbox{\hyperlink{group__radiation__surface__mod_gaf86249177fba52727e4f97a18c5d7ae7_gaf86249177fba52727e4f97a18c5d7ae7}{module\+\_\+radiation\+\_\+surface\+::epsln}}, \mbox{\hyperlink{group__radiation__surface__mod_ga2ec5311522bcb4d3839efcac47c83d39_ga2ec5311522bcb4d3839efcac47c83d39}{module\+\_\+radiation\+\_\+surface\+::f\+\_\+one}}, \mbox{\hyperlink{group__radiation__surface__mod_ga24bdfd029cdd7b17991298fa8693ed5b_ga24bdfd029cdd7b17991298fa8693ed5b}{module\+\_\+radiation\+\_\+surface\+::f\+\_\+zero}}, \mbox{\hyperlink{group__radiation__surface__mod_gac33f1f3441f8336d7eb7e15cba26caf7_gac33f1f3441f8336d7eb7e15cba26caf7}{module\+\_\+radiation\+\_\+surface\+::idxems}}, \mbox{\hyperlink{group__radiation__surface__mod_ga3ceebb99dbffcb70a14cfcaa7b029abc_ga3ceebb99dbffcb70a14cfcaa7b029abc}{module\+\_\+radiation\+\_\+surface\+::iemslw}}, \mbox{\hyperlink{group__radiation__surface__mod_gaab4b9853c71ff40f8db2aa78b7cab265_gaab4b9853c71ff40f8db2aa78b7cab265}{module\+\_\+radiation\+\_\+surface\+::imxems}}, \mbox{\hyperlink{group__radiation__surface__mod_ga3922674f1c727d517ba5b0f7f5093970_ga3922674f1c727d517ba5b0f7f5093970}{module\+\_\+radiation\+\_\+surface\+::jmxems}}, \mbox{\hyperlink{group__radiation__surface__mod_gae6b1db618c233e70ae99e11a638cb662_gae6b1db618c233e70ae99e11a638cb662}{module\+\_\+radiation\+\_\+surface\+::rad2dg}}, and \mbox{\hyperlink{group__lsm__ruc__group_gaeffc92b793d4d67ee72b20d7757f5add_gaeffc92b793d4d67ee72b20d7757f5add}{set\+\_\+soilveg\+\_\+ruc\+\_\+mod\+::set\+\_\+soilveg\+\_\+ruc()}}.



Referenced by \mbox{\hyperlink{namespacegfs__radiation__surface_adf74c669fa67ec92d00a4ecb3156c7ca_adf74c669fa67ec92d00a4ecb3156c7ca}{gfs\+\_\+radiation\+\_\+surface\+::gfs\+\_\+radiation\+\_\+surface\+\_\+run()}}.

Here is the call graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{group__radiation__surface__mod_ga05fb983d8a6a2e1a7799a904e605e7a8_ga05fb983d8a6a2e1a7799a904e605e7a8_cgraph}
\end{center}
\end{figure}
Here is the caller graph for this function\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{group__radiation__surface__mod_ga05fb983d8a6a2e1a7799a904e605e7a8_ga05fb983d8a6a2e1a7799a904e605e7a8_icgraph}
\end{center}
\end{figure}


\doxysubsubsection{Variable Documentation}
\mbox{\Hypertarget{group__radiation__surface__mod_gaab4b9853c71ff40f8db2aa78b7cab265_gaab4b9853c71ff40f8db2aa78b7cab265}\label{group__radiation__surface__mod_gaab4b9853c71ff40f8db2aa78b7cab265_gaab4b9853c71ff40f8db2aa78b7cab265}} 
\index{Radiation Surface Module@{Radiation Surface Module}!imxems@{imxems}}
\index{imxems@{imxems}!Radiation Surface Module@{Radiation Surface Module}}
\doxyparagraph{\texorpdfstring{imxems}{imxems}}
{\footnotesize\ttfamily integer, parameter, public module\+\_\+radiation\+\_\+surface\+::imxems = 360}



Referenced by \mbox{\hyperlink{group__radiation__surface__mod_ga05fb983d8a6a2e1a7799a904e605e7a8_ga05fb983d8a6a2e1a7799a904e605e7a8}{module\+\_\+radiation\+\_\+surface\+::setemis()}}, and \mbox{\hyperlink{group__radiation__surface__mod_ga426f71b67e0f724e9ee0987f5592d9a1_ga426f71b67e0f724e9ee0987f5592d9a1}{module\+\_\+radiation\+\_\+surface\+::sfc\+\_\+init()}}.

\mbox{\Hypertarget{group__radiation__surface__mod_ga3922674f1c727d517ba5b0f7f5093970_ga3922674f1c727d517ba5b0f7f5093970}\label{group__radiation__surface__mod_ga3922674f1c727d517ba5b0f7f5093970_ga3922674f1c727d517ba5b0f7f5093970}} 
\index{Radiation Surface Module@{Radiation Surface Module}!jmxems@{jmxems}}
\index{jmxems@{jmxems}!Radiation Surface Module@{Radiation Surface Module}}
\doxyparagraph{\texorpdfstring{jmxems}{jmxems}}
{\footnotesize\ttfamily integer, parameter, public module\+\_\+radiation\+\_\+surface\+::jmxems = 180}



Referenced by \mbox{\hyperlink{group__radiation__surface__mod_ga05fb983d8a6a2e1a7799a904e605e7a8_ga05fb983d8a6a2e1a7799a904e605e7a8}{module\+\_\+radiation\+\_\+surface\+::setemis()}}, and \mbox{\hyperlink{group__radiation__surface__mod_ga426f71b67e0f724e9ee0987f5592d9a1_ga426f71b67e0f724e9ee0987f5592d9a1}{module\+\_\+radiation\+\_\+surface\+::sfc\+\_\+init()}}.

\mbox{\Hypertarget{group__radiation__surface__mod_ga24bdfd029cdd7b17991298fa8693ed5b_ga24bdfd029cdd7b17991298fa8693ed5b}\label{group__radiation__surface__mod_ga24bdfd029cdd7b17991298fa8693ed5b_ga24bdfd029cdd7b17991298fa8693ed5b}} 
\index{Radiation Surface Module@{Radiation Surface Module}!f\_zero@{f\_zero}}
\index{f\_zero@{f\_zero}!Radiation Surface Module@{Radiation Surface Module}}
\doxyparagraph{\texorpdfstring{f\_zero}{f\_zero}}
{\footnotesize\ttfamily real (kind=kind\+\_\+phys), parameter, public module\+\_\+radiation\+\_\+surface\+::f\+\_\+zero = 0.\+0}



Referenced by \mbox{\hyperlink{namespacegfs__radiation__surface_adf74c669fa67ec92d00a4ecb3156c7ca_adf74c669fa67ec92d00a4ecb3156c7ca}{gfs\+\_\+radiation\+\_\+surface\+::gfs\+\_\+radiation\+\_\+surface\+\_\+run()}}, \mbox{\hyperlink{group__radiation__surface__mod_gaa89a74135f630a75a4fd6bc9d94d4381_gaa89a74135f630a75a4fd6bc9d94d4381}{module\+\_\+radiation\+\_\+surface\+::setalb()}}, and \mbox{\hyperlink{group__radiation__surface__mod_ga05fb983d8a6a2e1a7799a904e605e7a8_ga05fb983d8a6a2e1a7799a904e605e7a8}{module\+\_\+radiation\+\_\+surface\+::setemis()}}.

\mbox{\Hypertarget{group__radiation__surface__mod_ga2ec5311522bcb4d3839efcac47c83d39_ga2ec5311522bcb4d3839efcac47c83d39}\label{group__radiation__surface__mod_ga2ec5311522bcb4d3839efcac47c83d39_ga2ec5311522bcb4d3839efcac47c83d39}} 
\index{Radiation Surface Module@{Radiation Surface Module}!f\_one@{f\_one}}
\index{f\_one@{f\_one}!Radiation Surface Module@{Radiation Surface Module}}
\doxyparagraph{\texorpdfstring{f\_one}{f\_one}}
{\footnotesize\ttfamily real (kind=kind\+\_\+phys), parameter, public module\+\_\+radiation\+\_\+surface\+::f\+\_\+one = 1.\+0}



Referenced by \mbox{\hyperlink{namespacegfs__radiation__surface_adf74c669fa67ec92d00a4ecb3156c7ca_adf74c669fa67ec92d00a4ecb3156c7ca}{gfs\+\_\+radiation\+\_\+surface\+::gfs\+\_\+radiation\+\_\+surface\+\_\+run()}}, \mbox{\hyperlink{group__radiation__surface__mod_gaa89a74135f630a75a4fd6bc9d94d4381_gaa89a74135f630a75a4fd6bc9d94d4381}{module\+\_\+radiation\+\_\+surface\+::setalb()}}, and \mbox{\hyperlink{group__radiation__surface__mod_ga05fb983d8a6a2e1a7799a904e605e7a8_ga05fb983d8a6a2e1a7799a904e605e7a8}{module\+\_\+radiation\+\_\+surface\+::setemis()}}.

\mbox{\Hypertarget{group__radiation__surface__mod_gaf86249177fba52727e4f97a18c5d7ae7_gaf86249177fba52727e4f97a18c5d7ae7}\label{group__radiation__surface__mod_gaf86249177fba52727e4f97a18c5d7ae7_gaf86249177fba52727e4f97a18c5d7ae7}} 
\index{Radiation Surface Module@{Radiation Surface Module}!epsln@{epsln}}
\index{epsln@{epsln}!Radiation Surface Module@{Radiation Surface Module}}
\doxyparagraph{\texorpdfstring{epsln}{epsln}}
{\footnotesize\ttfamily real (kind=kind\+\_\+phys), parameter, public module\+\_\+radiation\+\_\+surface\+::epsln = 1.\+0e-\/6}



Referenced by \mbox{\hyperlink{namespacegfs__radiation__surface_adf74c669fa67ec92d00a4ecb3156c7ca_adf74c669fa67ec92d00a4ecb3156c7ca}{gfs\+\_\+radiation\+\_\+surface\+::gfs\+\_\+radiation\+\_\+surface\+\_\+run()}}, \mbox{\hyperlink{group__radiation__surface__mod_gaa89a74135f630a75a4fd6bc9d94d4381_gaa89a74135f630a75a4fd6bc9d94d4381}{module\+\_\+radiation\+\_\+surface\+::setalb()}}, and \mbox{\hyperlink{group__radiation__surface__mod_ga05fb983d8a6a2e1a7799a904e605e7a8_ga05fb983d8a6a2e1a7799a904e605e7a8}{module\+\_\+radiation\+\_\+surface\+::setemis()}}.

\mbox{\Hypertarget{group__radiation__surface__mod_gae6b1db618c233e70ae99e11a638cb662_gae6b1db618c233e70ae99e11a638cb662}\label{group__radiation__surface__mod_gae6b1db618c233e70ae99e11a638cb662_gae6b1db618c233e70ae99e11a638cb662}} 
\index{Radiation Surface Module@{Radiation Surface Module}!rad2dg@{rad2dg}}
\index{rad2dg@{rad2dg}!Radiation Surface Module@{Radiation Surface Module}}
\doxyparagraph{\texorpdfstring{rad2dg}{rad2dg}}
{\footnotesize\ttfamily real (kind=kind\+\_\+phys) module\+\_\+radiation\+\_\+surface\+::rad2dg\hspace{0.3cm}{\ttfamily [private]}}



Referenced by \mbox{\hyperlink{group__radiation__surface__mod_ga05fb983d8a6a2e1a7799a904e605e7a8_ga05fb983d8a6a2e1a7799a904e605e7a8}{module\+\_\+radiation\+\_\+surface\+::setemis()}}, and \mbox{\hyperlink{group__radiation__surface__mod_ga426f71b67e0f724e9ee0987f5592d9a1_ga426f71b67e0f724e9ee0987f5592d9a1}{module\+\_\+radiation\+\_\+surface\+::sfc\+\_\+init()}}.

\mbox{\Hypertarget{group__radiation__surface__mod_gac33f1f3441f8336d7eb7e15cba26caf7_gac33f1f3441f8336d7eb7e15cba26caf7}\label{group__radiation__surface__mod_gac33f1f3441f8336d7eb7e15cba26caf7_gac33f1f3441f8336d7eb7e15cba26caf7}} 
\index{Radiation Surface Module@{Radiation Surface Module}!idxems@{idxems}}
\index{idxems@{idxems}!Radiation Surface Module@{Radiation Surface Module}}
\doxyparagraph{\texorpdfstring{idxems}{idxems}}
{\footnotesize\ttfamily integer, dimension(\+:,\+:), allocatable module\+\_\+radiation\+\_\+surface\+::idxems\hspace{0.3cm}{\ttfamily [private]}}



Referenced by \mbox{\hyperlink{group__radiation__surface__mod_ga05fb983d8a6a2e1a7799a904e605e7a8_ga05fb983d8a6a2e1a7799a904e605e7a8}{module\+\_\+radiation\+\_\+surface\+::setemis()}}, and \mbox{\hyperlink{group__radiation__surface__mod_ga426f71b67e0f724e9ee0987f5592d9a1_ga426f71b67e0f724e9ee0987f5592d9a1}{module\+\_\+radiation\+\_\+surface\+::sfc\+\_\+init()}}.

\mbox{\Hypertarget{group__radiation__surface__mod_ga3ceebb99dbffcb70a14cfcaa7b029abc_ga3ceebb99dbffcb70a14cfcaa7b029abc}\label{group__radiation__surface__mod_ga3ceebb99dbffcb70a14cfcaa7b029abc_ga3ceebb99dbffcb70a14cfcaa7b029abc}} 
\index{Radiation Surface Module@{Radiation Surface Module}!iemslw@{iemslw}}
\index{iemslw@{iemslw}!Radiation Surface Module@{Radiation Surface Module}}
\doxyparagraph{\texorpdfstring{iemslw}{iemslw}}
{\footnotesize\ttfamily integer module\+\_\+radiation\+\_\+surface\+::iemslw = 1\hspace{0.3cm}{\ttfamily [private]}}



Referenced by \mbox{\hyperlink{group__radiation__surface__mod_ga05fb983d8a6a2e1a7799a904e605e7a8_ga05fb983d8a6a2e1a7799a904e605e7a8}{module\+\_\+radiation\+\_\+surface\+::setemis()}}, and \mbox{\hyperlink{group__radiation__surface__mod_ga426f71b67e0f724e9ee0987f5592d9a1_ga426f71b67e0f724e9ee0987f5592d9a1}{module\+\_\+radiation\+\_\+surface\+::sfc\+\_\+init()}}.

