# New URL for NEMO forge! http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 14113 for NEMO/trunk/doc/latex/NEMO/subfiles/chap_SBC.tex – NEMO

# Changeset 14113 for NEMO/trunk/doc/latex/NEMO/subfiles/chap_SBC.tex

Ignore:
Timestamp:
2020-12-04T20:15:58+01:00 (2 years ago)
Message:

#2414 Reintegration to the trunk, LaTeX manuals are compiling ;-)

File:
1 edited

### Legend:

Unmodified
 r13916 \documentclass[../main/NEMO_manual]{subfiles} \usepackage{fontspec} \usepackage{fontawesome} \begin{document} See \autoref{subsec:SBC_ssr} for its specification. %% ================================================================================================= \pagebreak \newpage %% ================================================================================================= \section[Bulk formulation (\textit{sbcblk.F90})]{Bulk formulation (\protect\mdl{sbcblk})} \label{sec:SBC_blk} Note: all the NEMO Fortran routines involved in the present section have been initially developed (and are still developed in parallel) in the \href{https://brodeau.github.io/aerobulk/}{\texttt{AeroBulk}} open-source project \citep{brodeau.barnier.ea_JPO17}. initially developed (and are still developed in parallel) in the \href{https://brodeau.github.io/aerobulk}{\texttt{AeroBulk}} open-source project \citep{brodeau.barnier.ea_JPO16}. %%% Bulk formulae are this: \subsection{Bulk formulae}\label{subsec:SBC_blkform} % \subsection{Bulk formulae} \label{subsec:SBC_blkform} In NEMO, the set of equations that relate each component of the surface fluxes to the near-surface atmosphere and sea surface states writes % \begin{subequations}\label{eq_bulk} \begin{subequations} \label{eq:SBC_bulk} \label{eq:SBC_bulk_form} \begin{eqnarray} \mathbf{\tau} &=& \rho~ C_D ~ \mathbf{U}_z  ~ U_B \\ Q_H           &=& \rho~C_H~C_P~\big[ \theta_z - T_s \big] ~ U_B \\ E             &=& \rho~C_E    ~\big[    q_s   - q_z \big] ~ U_B \\ Q_L           &=& -L_v \, E \\ % Q_{sr}        &=& (1 - a) Q_{sw\downarrow} \\ Q_{ir}        &=& \delta (Q_{lw\downarrow} -\sigma T_s^4) \end{eqnarray} \begin{align} \mathbf{\tau} &= \rho~ C_D ~ \mathbf{U}_z  ~ U_B \\ Q_H           &= \rho~C_H~C_P~\big[ \theta_z - T_s \big] ~ U_B \\ E             &= \rho~C_E    ~\big[    q_s   - q_z \big] ~ U_B \\ Q_L           &= -L_v \, E \\ Q_{sr}        &= (1 - a) Q_{sw\downarrow} \\ Q_{ir}        &= \delta (Q_{lw\downarrow} -\sigma T_s^4) \end{align} \end{subequations} % with $\theta_z \simeq T_z+\gamma z$ $q_s \simeq 0.98\,q_{sat}(T_s,p_a )$ % from which, the the non-solar heat flux is $Q_{ns} = Q_L + Q_H + Q_{ir}$ % where $\mathbf{\tau}$ is the wind stress vector, $Q_H$ the sensible heat flux, $E$ the evaporation, $Q_L$ the latent heat flux, and $Q_{ir}$ the net longwave flux. % $Q_{sw\downarrow}$ and $Q_{lw\downarrow}$ are the surface downwelling shortwave and longwave radiative fluxes, respectively. % Note: a positive sign for $\mathbf{\tau}$, $Q_H$, $Q_L$, $Q_{sr}$ or $Q_{ir}$ implies a gain of the relevant quantity for the ocean, while a positive $E$ implies a freshwater loss for the ocean. % $\rho$ is the density of air. $C_D$, $C_H$ and $C_E$ are the bulk transfer coefficients for momentum, sensible heat, and moisture, respectively. % $C_P$ is the heat capacity of moist air, and $L_v$ is the latent heat of vaporization of water. % $\theta_z$, $T_z$ and $q_z$ are the potential temperature, absolute temperature, and specific humidity of air at height $z$ above the sea surface, respectively. $\gamma z$ is a temperature correction term which accounts for the adiabatic lapse rate and approximates the potential temperature at height $z$ \citep{josey.gulev.ea_2013}. % $z$ \citep{josey.gulev.ea_OCC13}. $\mathbf{U}_z$ is the wind speed vector at height $z$ above the sea surface (possibly referenced to the surface current $\mathbf{u_0}$, section \ref{s_res1}.\ref{ss_current}). % (possibly referenced to the surface current $\mathbf{u_0}$).%, %\autoref{s_res1}.\autoref{ss_current}). %% Undefined references The bulk scalar wind speed, namely $U_B$, is the scalar wind speed, $|\mathbf{U}_z|$, with the potential inclusion of a gustiness contribution. % $a$ and $\delta$ are the albedo and emissivity of the sea surface, respectively.\\ % %$p_a$ is the mean sea-level pressure (SLP). % $T_s$ is the sea surface temperature. $q_s$ is the saturation specific humidity of air at temperature $T_s$; it includes a 2\% reduction to account for the presence of salt in seawater \citep{sverdrup.johnson.ea_1942,kraus.businger_QJRMS96}. presence of salt in seawater \citep{sverdrup.johnson.ea_bk42,kraus.businger_QJRMS96}. Depending on the bulk parametrization used, $T_s$ can either be the temperature at the air-sea interface (skin temperature, hereafter SSST) or at typically a few tens of centimeters below the surface (bulk sea surface temperature, hereafter SST). % The SSST differs from the SST due to the contributions of two effects of opposite sign, the \emph{cool skin} and \emph{warm layer} (hereafter CS and WL, respectively, see section\,\ref{subsec:SBC_skin}). % respectively, see \autoref{subsec:SBC_skin}). Technically, when the ECMWF or COARE* bulk parametrizations are selected (\np[=.true.]{ln_ECMWF}{ln\_ECMWF} or \np[=.true.]{ln_COARE*}{ln\_COARE\*}), For more details on all these aspects the reader is invited to refer to \citet{brodeau.barnier.ea_JPO17}. \subsection{Bulk parametrizations}\label{subsec:SBC_blk_ocean} to \citet{brodeau.barnier.ea_JPO16}. \subsection{Bulk parametrizations} \label{subsec:SBC_blk_ocean} %%%\label{subsec:SBC_param} height (from \np{rn_zqt}{rn\_zqt} to \np{rn_zu}{rn\_zu}). For the open ocean, four bulk parametrization algorithms are available in NEMO: \begin{itemize} \item NCAR, formerly known as CORE, \citep{large.yeager_rpt04,large.yeager_CD09} \item NCAR, formerly known as CORE, \citep{large.yeager_trpt04,large.yeager_CD09} \item COARE 3.0 \citep{fairall.bradley.ea_JC03} \item COARE 3.6 \citep{edson.jampana.ea_JPO13} \end{itemize} With respect to version 3, the principal advances in version 3.6 of the COARE bulk parametrization are built around improvements in the representation of the effects of waves on fluxes \citep{edson.jampana.ea_JPO13,brodeau.barnier.ea_JPO17}. This includes fluxes \citep{edson.jampana.ea_JPO13,brodeau.barnier.ea_JPO16}. This includes improved relationships of surface roughness, and whitecap fraction on wave parameters. It is therefore recommended to chose version 3.6 over 3. \subsection{Cool-skin and warm-layer parametrizations}\label{subsec:SBC_skin} %\subsection[Cool-skin and warm-layer parameterizations %(\forcode{ln_skin_cs} \& \forcode{ln_skin_wl})]{Cool-skin and warm-layer parameterizations (\protect\np{ln_skin_cs}{ln\_skin\_cs} \& \np{ln_skin_wl}{ln\_skin\_wl})} %\label{subsec:SBC_skin} % \subsection{Cool-skin and warm-layer parametrizations} %\subsection[Cool-skin and warm-layer parameterizations (\forcode{ln_skin_cs} \& \forcode{ln_skin_wl})]{Cool-skin and warm-layer parameterizations (\protect\np{ln_skin_cs}{ln\_skin\_cs} \& \np{ln_skin_wl}{ln\_skin\_wl})} \label{subsec:SBC_skin} As opposed to the NCAR bulk parametrization, more advanced bulk parametrizations such as COARE3.x and ECMWF are meant to be used with the skin temperature $T_s$ rather than the bulk SST (which, in NEMO is the temperature at the first T-point level, see section\,\ref{subsec:SBC_blkform}). % the first T-point level, see \autoref{subsec:SBC_blkform}). As such, the relevant cool-skin and warm-layer parametrization must be activated through \np[=T]{ln_skin_cs}{ln\_skin\_cs} For the cool-skin scheme parametrization COARE and ECMWF algorithms share the same basis: \citet{fairall.bradley.ea_JGR96}. With some minor updates based basis: \citet{fairall.bradley.ea_JGRO96}. With some minor updates based on \citet{zeng.beljaars_GRL05} for ECMWF, and \citet{fairall.ea_19} for COARE 3.6. equation for the thickness of the warm-layer, while it is considered as constant in the ECWMF algorithm. \subsection{Appropriate use of each bulk parametrization} temperature is the bulk SST. Hence the following namelist parameters must be set: % \begin{verbatim} \begin{forlines} ... ln_NCAR    = .true. ... ln_humi_sph = .true. ! humidity "sn_humi" is specific humidity  [kg/kg] \end{verbatim} \end{forlines} \subsubsection{ECMWF} % With an atmospheric forcing based on a reanalysis of the ECMWF, such as the Drakkar Forcing Set \citep{brodeau.barnier.ea_OM10}, we strongly recommend to humidity are provided at the 2\,m height, and given that the humidity is distributed as the dew-point temperature, the namelist must be tuned as follows: % \begin{verbatim} \begin{forlines} ... ln_ECMWF   = .true. ln_humi_dpt = .true. !  humidity "sn_humi" is dew-point temperature [K] ... \end{verbatim} % \end{forlines} Note: when \np{ln_ECMWF}{ln\_ECMWF} is selected, the selection of \np{ln_skin_cs}{ln\_skin\_cs} and \np{ln_skin_wl}{ln\_skin\_wl} implicitly respectively (found in \textit{sbcblk\_skin\_ecmwf.F90}). \subsubsection{COARE 3.x} % Since the ECMWF parametrization is largely based on the COARE* parametrization, the two algorithms are very similar in terms of structure and closure approach. As such, the namelist tuning for COARE 3.x is identical to that of ECMWF: % \begin{verbatim} \begin{forlines} ... ln_COARE3p6 = .true. ln_skin_wl = .true. ! use the warm-layer parameterization ... \end{verbatim} \end{forlines} Note: when \np[=T]{ln_COARE3p0}{ln\_COARE3p0} is selected, the selection respectively (found in \textit{sbcblk\_skin\_coare.F90}). %lulu % In a typical bulk algorithm, the BTCs under neutral stability conditions are % and $q_z$. \subsection{Prescribed near-surface atmospheric state} different bulk formulae are used for the turbulent fluxes computation over the ocean and over sea-ice surface. % %The choice is made by setting to true one of the following namelist the namsbc\_blk namelist (see \autoref{subsec:SBC_fldread}). \subsubsection{Air humidity} [kg/kg], relative humidity [\%], or dew-point temperature [K] (LINK to namelist parameters)... ~\\ %% ================================================================================================= %their neutral transfer coefficients relationships with neutral wind. %\begin{itemize} %\item NCAR (\np[=.true.]{ln_NCAR}{ln\_NCAR}): The NCAR bulk formulae have been developed by \citet{large.yeager_rpt04}. %\item NCAR (\np[=.true.]{ln_NCAR}{ln\_NCAR}): The NCAR bulk formulae have been developed by \citet{large.yeager_trpt04}. %  They have been designed to handle the NCAR forcing, a mixture of NCEP reanalysis and satellite data. %  They use an inertial dissipative method to compute the turbulent transfer coefficients %  (momentum, sensible heat and evaporation) from the 10m wind speed, air temperature and specific humidity. %  This \citet{large.yeager_rpt04} dataset is available through %  This \citet{large.yeager_trpt04} dataset is available through %  the \href{http://nomads.gfdl.noaa.gov/nomads/forms/mom4/NCAR.html}{GFDL web site}. %  Note that substituting ERA40 to NCEP reanalysis fields does not require changes in the bulk formulea themself. \label{subsec:SBC_blk_ice} \texttt{\#out\_of\_place:} For sea-ice, three possibilities can be selected: a constant transfer coefficient (1.4e-3; default value), \citet{lupkes.gryanik.ea_JGR12} (\np{ln_Cd_L12}{ln\_Cd\_L12}), value), \citet{lupkes.gryanik.ea_JGRA12} (\np{ln_Cd_L12}{ln\_Cd\_L12}), and \citet{lupkes.gryanik_JGR15} (\np{ln_Cd_L15}{ln\_Cd\_L15}) parameterizations \texttt{\#out\_of\_place.} Surface turbulent fluxes between sea-ice and the atmosphere can be computed in three different ways: \begin{itemize} \item Constant value (\np[ Cd_ice=1.4e-3 ]{constant value}{constant\ value}): \item Constant value (\forcode{Cd_ice=1.4e-3}): default constant value used for momentum and heat neutral transfer coefficients \item \citet{lupkes.gryanik.ea_JGR12} (\np[=.true.]{ln_Cd_L12}{ln\_Cd\_L12}): \item \citet{lupkes.gryanik.ea_JGRA12} (\np[=.true.]{ln_Cd_L12}{ln\_Cd\_L12}): This scheme adds a dependency on edges at leads, melt ponds and flows of the constant neutral air-ice drag. After some approximations, \begin{description} \item [{\np[=1]{nn_isfblk}{nn\_isfblk}}]: The melt rate is based on a balance between the upward ocean heat flux and the latent heat flux at the ice shelf base. A complete description is available in \citet{hunter_rpt06}. the latent heat flux at the ice shelf base. A complete description is available in \citet{hunter_trpt06}. \item [{\np[=2]{nn_isfblk}{nn\_isfblk}}]: The melt rate and the heat flux are based on a 3 equations formulation (a heat flux budget at the ice base, a salt flux budget at the ice base and a linearised freezing point temperature equation). The fw addition due to the ice shelf melting is, at each relevant depth level, added to the horizontal divergence (\textit{hdivn}) in the subroutine \rou{sbc\_isf\_div}, called from \mdl{divhor}. See the runoff section \autoref{sec:SBC_rnf} for all the details about the divergence correction.\\ See \autoref{sec:SBC_rnf} for all the details about the divergence correction. \begin{figure}[!t] Then using the routine \rou{sbcblk\_algo\_ncar} and starting from the neutral drag coefficent provided, the drag coefficient is computed according to the stable/unstable conditions of the air-sea interface following \citet{large.yeager_rpt04}. air-sea interface following \citet{large.yeager_trpt04}. %% ================================================================================================= The surface stress felt by the ocean is the atmospheric stress minus the net stress going into the waves \citep{janssen.breivik.ea_rpt13}. Therefore, when waves are growing, momentum and energy is spent and is not into the waves \citep{janssen.breivik.ea_trpt13}. Therefore, when waves are growing, momentum and energy is spent and is not available for forcing the mean circulation, while in the opposite case of a decaying sea state, more momentum is available for forcing the ocean.