\doxysubsection{GFDL Cloud Microphysics Scheme}
\hypertarget{_g_f_d_l_cloud}{}\label{_g_f_d_l_cloud}\index{GFDL Cloud Microphysics Scheme@{GFDL Cloud Microphysics Scheme}}
\hypertarget{_g_f_d_l_cloud_des_GFDL_cloud}{}\doxysubsubsection{\texorpdfstring{Description}{Description}}\label{_g_f_d_l_cloud_des_GFDL_cloud}
GFDL cloud microphysics (MP) scheme is a six-\/category MP scheme to replace Zhao-\/\+Carr MP scheme, and moves the GFS from a total cloud water variable to five predicted hydrometeors (cloud water, cloud ice, rain, snow and graupel). This scheme utilizes the \"{}bulk water\"{} microphysical parameterization technique in Lin et al. (1983) {\bfseries [lin\+\_\+et\+\_\+al\+\_\+1983]} and has been significantly improved over years at GFDL (Lord et al. (1984) {\bfseries [lord\+\_\+et\+\_\+al\+\_\+1984]}, Krueger et al. (1995) {\bfseries [krueger\+\_\+et\+\_\+al\+\_\+1995]}, Chen and Lin (2011) {\bfseries [chen\+\_\+and\+\_\+lin\+\_\+2011]}, Chen and Lin (2013) {\bfseries [chen\+\_\+and\+\_\+lin\+\_\+2013]}). Physics processes of GFDL cloud MP are described in Figure 1 (also see warm\+\_\+rain() and icloud()) and are feature with time-\/split between warm-\/rain (faster) and ice-\/phase (slower) processes (see \textquotesingle{}conversion time scale\textquotesingle{} in gfdl\+\_\+cloud\+\_\+microphys.\+F90 for default values).



Some unique attributes of GFDL cloud microphysics include\+:\hypertarget{_g_f_d_l_cloud_autotoc_md1}{}\doxysubsubsection{\texorpdfstring{Precipitation and Cloud Effects on Dynamics}{Precipitation and Cloud Effects on Dynamics}}\label{_g_f_d_l_cloud_autotoc_md1}
 The leftmost column of Figure 1 shows the external API calls used during a typical process-\/split model integration procedure. First, the solver is called, which advances the solver a full \"{}physics\"{} time step. This updated state is then passed to the physical parameterization package, which then computes the physics tendencies over the same time interval. Finally, the tendencies are then used to update the model state using a forward-\/in-\/time evaluation consistent with the dynamics. ~\newline
 There are two levels of time-\/stepping inside FV3. The first is the \"{}remapping\"{} loop, the green column in Figure 1. This loop has three steps\+:
\begin{DoxyEnumerate}
\item Perform the Lagrangian dynamics, the loop shown in the blue column of Figure 1.
\item Perform the subcycled tracer advection along Lagrangian surfaces, using accumulated mass fluxes from the Lagrangian dynamics. Subcycling is done independently within each layer to maintain local (within each layer) stability.
\item Remap the deformal Lagrangian surfaces on to the reference, or \"{}\+Eulerian\"{}, coordinate levels.
\end{DoxyEnumerate}

This loop is typically performed once per call to the solver, although it is possible to improve the model\textquotesingle{}s stability by executing the loop (and thereby the vertical remapping) multiple times per solver call.

At grid spacing of less than \texorpdfstring{$\sim$}{\string~}10 km, model dynamics should be able to \"{}see\"{} and \"{}feel\"{} the cloud and precipitation condensate; heat content, heat exchange with the environment, and momentum of condensate should be accounted for. The GFDL microphysics scheme is formulated to accomplish this through strict moist energy conservation during phase changes, and keeping heat and momentum budgets for all condensate. This results in thermodynamic consistency between the FV3 microphysics scheme and FV3 dyanmics.

In current fv3gfs, GFDL in-\/core fast saturation adjustment (phase-\/changes only) is called after the \"{}\+Lagrangian-\/to-\/\+Eulerain\"{} remapping. When \doxylink{group__fast__sat__adj}{GFDL In-\/\+Core Fast Saturation Adjustment Module} is activated (do\+\_\+sat\+\_\+adj=.true. in {\bfseries{fv\+\_\+core\+\_\+nml}} block), it adjusts cloud water evaporation (cloud water $\rightarrow$water vapor), cloud water freezing (cloud water $\rightarrow$cloud ice), and cloud ice deposition (water vapor $\rightarrow$cloud ice). The process of condensation is an interesting and well known example. Say dynamics lifts a column of air above saturation, then an adjustment is made to temperature and moisture in order to reach saturation. The tendency of the dynamics has been included in this procedure in order to have the correct balance.\hypertarget{_g_f_d_l_cloud_autotoc_md2}{}\doxysubsubsection{\texorpdfstring{Scale-\/awareness}{Scale-awareness}}\label{_g_f_d_l_cloud_autotoc_md2}
Scale-\/awareness provided by assumed subgrid variability that is directly proportional to grid spacing. Horizontal sub-\/grid variability is a function of cell area\+:
\begin{DoxyItemize}
\item Over land\+:  \[
h_{var}=\min \left\{0.2,\max\left[0.01, D_{land}(\frac{A_{r}}{10^{10}})^{0.25}\right]\right\}
\]
\item Over Ocean\+:  \[
h_{var}=\min \left\{0.2,\max\left[0.01, D_{ocean}(\frac{A_{r}}{10^{10}})^{0.25}\right]\right\}
\]
\end{DoxyItemize}

Where $A_{r}$ is cell area, $D_{land}$ and $D_{ocean}$ are base values for sub-\/grid variability over land and ocean (larger sub-\/grid variability appears in larger area). Horizontal sub-\/grid variability is used in cloud fraction, relative humidity calculation, evaporation and condensation processes. Scale-\/awareness is achieved by this horizontal subgrid variability and a $2^{nd}$ order FV-\/type vertical reconstruction (Lin et al. (1994) {\bfseries [lin\+\_\+et\+\_\+al\+\_\+1994]}).\hypertarget{_g_f_d_l_cloud_intro_GFDL_cloud}{}\doxysubsubsection{\texorpdfstring{Intraphysics Communication}{Intraphysics Communication}}\label{_g_f_d_l_cloud_intro_GFDL_cloud}

\begin{DoxyItemize}
\item GFDL Cloud MP\+: \doxysectlink{group__gfdlmp_arg_table_gfdl_cloud_microphys_run}{Argument Table}{1}
\item GFDL In-\/core Fast Saturation Adjustment\+: \doxysectlink{group__fast__sat__adj_arg_table_fv_sat_adj_run}{Argument Table}{1}
\end{DoxyItemize}\hypertarget{_g_f_d_l_cloud_Gen_GFDL_cloud}{}\doxysubsubsection{\texorpdfstring{General Algorithm}{General Algorithm}}\label{_g_f_d_l_cloud_Gen_GFDL_cloud}

\begin{DoxyItemize}
\item GFDL Cloud MP\+: mpdrv()
\item GFDL In-\/core Fast Saturation Ajustment\+: fv\+\_\+sat\+\_\+adj\+\_\+work() 
\end{DoxyItemize}