--- manual/s_phys_pkgs/diagnostics.tex	2004/10/16 03:40:17	1.6
+++ manual/s_phys_pkgs/diagnostics.tex	2005/07/14 19:18:01	1.9
@@ -6,13 +6,29 @@
 
 \subsection{Introduction}
 
+\noindent
 This section of the documentation describes the Diagnostics package available within 
-the GCM.  In addition to a description of how to set and extract diagnostic quantities, 
-this document also provides a comprehensive list of all available diagnostic quantities 
-and a short description of how they are computed.  It should be noted that this document 
-is not intended to be a complete documentation of the various packages used in the GCM, 
-and the reader should refer to original publications and the appropriate sections of this
-documentation for further insight.
+the GCM.  A large selection of model diagnostics is available for output.  
+In addition to the diagnostic quantities pre-defined in the GCM, there exists
+the option, in any experiment, to define a new diagnostic quantity and include it
+as part of the diagnostic output with the addition of a single subroutine call in the
+routine where the field is computed. As a matter of philosophy, no diagnostic is enabled 
+as default, thus each user must specify the exact diagnostic information required for an 
+experiment.  This is accomplished by enabling the specific diagnostic of interest cataloged 
+in the Diagnostic Menu (see Section \ref{sec:diagnostics:menu}). Instructions for enabling
+diagnostic output and defining new diagnostic quantities are found in Section 
+\ref{sec:diagnostics:usersguide} of this document.
+
+\noindent
+The Diagnostic Menu is a hard-wired enumeration of diagnostic quantities available within 
+the GCM. Once a diagnostic is enabled, the GCM will continually increment an array
+specifically allocated for that diagnostic whenever the appropriate quantity is computed.  
+A counter is defined which records how many times each diagnostic quantity has been 
+incremented.  Several special diagnostics are included in the menu. Quantities refered to 
+as ``Counter Diagnostics'', are defined for selected diagnostics which record the 
+frequency at which a diagnostic is incremented separately for each model grid location.
+Quantitied refered to as ``User Diagnostics'' are included in the menu to facilitate
+defining new diagnostics for a particular experiment.
 
 \subsection{Equations}
 Not relevant.
@@ -20,33 +36,16 @@
 \subsection{Key Subroutines and Parameters}
 \label{sec:diagnostics:diagover}
 
-A large selection of model diagnostics is available in the GCM.  At the time of
-this writing there are 280 different diagnostic quantities which can be enabled for an
-experiment.  As a matter of philosophy, no diagnostic is enabled as default, thus each 
-user must specify the exact diagnostic information required for an experiment.  This 
-is accomplished by enabling the specific diagnostic of interest cataloged in the 
-Diagnostic Menu (see Section \ref{sec:diagnostics:menu}).
-The Diagnostic Menu is a hard-wired enumeration of diagnostic quantities available within 
-the GCM. Diagnostics are internally referred to by their associated number in the Diagnostic
-Menu.  Once a diagnostic is enabled, the GCM will continually increment an array
-specifically allocated for that diagnostic whenever the associated process for the 
-diagnostic is computed.  Separate arrays are used both for the diagnostic quantity and 
-its diagnostic counter which records how many times each diagnostic quantity has been 
-computed.  In addition special diagnostics, called ``Counter Diagnostics'', records the 
-frequency of diagnostic updates separately for each model grid location.
-
-The diagnostics are computed at various times and places within the GCM.  
-Some diagnostics are computed on the A-grid (such as those within the fizhi routines), 
-while others are computed on the C-grid (those computed during the dynamics time-stepping).  
-Some diagnostics are scalars, while others are vectors.  Each of these possibilities requires
-separate tasks for A-grid to C-grid transformations and coordinate transformations.  Due
-to this complexity, and since the specific diagnostics enabled are User determined at the
-time of the run, 
-a diagnostic parameter has been developed and implemented into the GCM, defined as GDIAG,
-which contains information concerning various grid attributes of each diagnostic.  The GDIAG
-array is internally defined as a character*8 variable, and is equivalenced to 
-a character*1 "parse" array in output in order to extract the grid-attribute information.
-The GDIAG array is described in Table \ref{tab:diagnostics:gdiag.tabl}.
+\noindent
+The diagnostics are computed at various times and places within the GCM. Because the
+MIT GCM may employ a staggered grid, diagnostics may be computed at grid box centers,
+corners, or edges, and at the middle or edge in the vertical. Some diagnostics are scalars, 
+while others are components of vectors. An internal array is defined which contains 
+information concerning various grid attributes of each diagnostic. The GDIAG
+array (in common block \\diagnostics in file diagnostics.h) is internally defined as a 
+character*8 variable, and is equivalenced to a character*1 "parse" array in output in 
+order to extract the grid-attribute information.  The GDIAG array is described in 
+Table \ref{tab:diagnostics:gdiag.tabl}.
 
 \begin{table}
 \caption{Diagnostic Parsing Array}
@@ -77,31 +76,73 @@
 \end{center}
 \end{table}
 
+
+\noindent
 As an example, consider a diagnostic whose associated GDIAG parameter is equal
 to ``UU  002''.  From GDIAG we can determine that this diagnostic is a 
 U-vector component located at the C-grid U-point.
 Its corresponding V-component diagnostic is located in Diagnostic \# 002.
 
+
+\noindent
 In this way, each Diagnostic in the model has its attributes (ie. vector or scalar,
-A-Grid or C-grid, etc.) defined internally.  The Output routines
-use this information in order to determine
-what type of transformations need to be performed.  Thus, all Diagnostic
-interpolations are done at the time of output rather than during each model dynamic step.
-In this way the User now has more flexibility
-in determining the type of gridded data which is output.
+C-grid location, etc.) defined internally.  The Output routines use this information 
+in order to determine what type of transformations need to be performed.  Any 
+interpolations are done at the time of output rather than during each model step.
+In this way the User has flexibility in determining the type of gridded data which 
+is output.
 
+
+\noindent
 There are several utilities within the GCM available to users to enable, disable,
 clear, write and retrieve model diagnostics, and may be called from any routine.  
 The available utilities and the CALL sequences are listed below.
 
-{\bf fill\_diag}:  This routine will increment 
 
+\noindent
+{\bf fill\_diagnostics}:  This routine will increment the specified diagnostic
+quantity with a field sent through the argument list.
+
+
+\noindent
+\begin{tabbing}
+XXXXXXXXX\=XXXXXX\= \kill
+\>        call fill\_diagnostics (myThid, chardiag, levflg, nlevs, \\
+                bibjflg, bi, bj, arrayin) \\
+\\
+where \>  myThid   \>= Current Process(or) \\
+      \>  chardiag \>= Character *8 expression for diag to fill \\
+      \>  levflg   \>= Integer flag for vertical levels: \\
+      \>           \> 0 indicates multiple levels incremented in qdiag \\
+      \>           \> non-0 (any integer) - WHICH single level to increment. \\
+      \>           \> negative integer - the input data array is single-leveled \\
+      \>           \> positive integer - the input data array is multi-leveled \\
+      \>  nlevs    \>= indicates Number of levels to be filled (1 if levflg <> 0) \\
+      \>           \> positive: fill in "nlevs" levels in the same order as \\
+      \>           \> the input array \\
+      \>           \> negative: fill in -nlevs levels in reverse order. \\
+      \>  bibjflg  \>= Integer flag to indicate instructions for bi bj loop \\
+      \>           \> 0 indicates that the bi-bj loop must be done here \\
+      \>           \> 1 indicates that the bi-bj loop is done OUTSIDE \\
+      \>           \> 2 indicates that the bi-bj loop is done OUTSIDE \\
+      \>           \>    AND that we have been sent a local array \\
+      \>           \> 3 indicates that the bi-bj loop is done OUTSIDE \\
+      \>           \>    AND that we have been sent a local array \\
+      \>           \>    AND that the array has the shadow regions \\
+      \>  bi       \>= X-direction process(or) number - used for bibjflg=1-3 \\
+      \>  bj       \>= Y-direction process(or) number - used for bibjflg=1-3 \\
+      \>  arrayin  \>= Field to increment diagnostics array \\
+\end{tabbing}
+
+
+\noindent
 {\bf setdiag}:  This subroutine enables a diagnostic from the Diagnostic Menu, meaning 
 that space is allocated for the diagnostic and the model routines will increment the 
 diagnostic value during execution.  This routine is the underlying interface
 between the user and the desired diagnostic.  The diagnostic is referenced by its diagnostic
 number from the menu, and its calling sequence is given by:
 
+\noindent
 \begin{tabbing}
 XXXXXXXXX\=XXXXXX\= \kill
 \>        call setdiag (num) \\
@@ -109,6 +150,7 @@
 where \>  num   \>= Diagnostic number from menu \\
 \end{tabbing}
 
+\noindent
 {\bf getdiag}:  This subroutine retrieves the value of a model diagnostic.  This routine 
 is particulary useful when called from a user output routine, although it can be called 
 from any routine.  This routine returns the time-averaged value of the diagnostic by
@@ -116,6 +158,7 @@
 routine does not change the value of the diagnostic itself, that is, it does not replace 
 the diagnostic with its time-average.  The calling sequence for this routine is givin by:
 
+\noindent
 \begin{tabbing}
 XXXXXXXXX\=XXXXXX\= \kill
 \>        call getdiag (lev,num,qtmp,undef) \\
@@ -126,10 +169,12 @@
       \>  undef \>= Fill value to be used when diagnostic is undefined \\
 \end{tabbing}
 
+\noindent
 {\bf clrdiag}:  This subroutine initializes the values of model diagnostics to zero, and is
 particularly useful when called from user output routines to re-initialize diagnostics 
 during the run.  The calling sequence is:
 
+\noindent
 \begin{tabbing}
 XXXXXXXXX\=XXXXXX\= \kill
 \>        call clrdiag (num) \\
@@ -137,10 +182,12 @@
 where \>  num   \>= Diagnostic number from menu \\
 \end{tabbing}
 
+\noindent
 {\bf zapdiag}:  This entry into subroutine SETDIAG disables model diagnostics, meaning 
 that the diagnostic is no longer available to the user.  The memory previously allocated 
 to the diagnostic is released when ZAPDIAG is invoked.  The calling sequence is given by:
 
+\noindent
 \begin{tabbing}
 XXXXXXXXX\=XXXXXX\= \kill
 \>        call zapdiag (NUM) \\
@@ -148,29 +195,35 @@
 where \>  num   \>= Diagnostic number from menu \\
 \end{tabbing}
 
-{\bf diagsize}:  We end this section with a discussion on the manner in which computer 
-memory   is allocated for diagnostics.   All GCM diagnostic quantities are stored in the 
-single diagnostic array QDIAG which is located in diagnostics.h, and has the form:
+
+\subsection{Usage Notes}
+\label{sec:diagnostics:usersguide}
+
+\noindent
+We begin this section with a discussion on the manner in which computer 
+memory is allocated for diagnostics. All GCM diagnostic quantities are stored in the 
+single diagnostic array QDIAG which is located in the file \\
+\filelink{pkg/diagnostics/diagnostics.h}{pkg-diagnostics-diagnostics.h}.
+and has the form:
 
 common /diagnostics/ qdiag(1-Olx,sNx+Olx,1-Olx,sNx+Olx,numdiags,Nsx,Nsy)
 
-where numdiags is an Integer variable which should be
-set equal to the number of enabled diagnostics, and qdiag is a three-dimensional
-array.  The first two-dimensions of qdiag correspond to the horizontal dimension
-of a given diagnostic, while the third dimension of qdiag is used to identify
-specific diagnostic types.
-In order to minimize the memory requirement of the model for diagnostics,
-the default GCM executable is compiled with room for only one horizontal
-diagnostic array, as shown in the above example.  
-In order for the User to enable more than 1 two-dimensional diagnostic,
+\noindent
+where numdiags is an Integer variable which should be set equal to the number of 
+enabled diagnostics, and qdiag is a three-dimensional array.  The first two-dimensions 
+of qdiag correspond to the horizontal dimension of a given diagnostic, while the third 
+dimension of qdiag is used to identify diagnostic fields and levels combined. In order 
+to minimize the memory requirement of the model for diagnostics, the default GCM 
+executable is compiled with room for only one horizontal diagnostic array, or with
+numdiags set to 1. In order for the User to enable more than 1 two-dimensional diagnostic,
 the size of the diagnostics common must be expanded to accomodate the desired diagnostics.
 This can be accomplished by manually changing the parameter numdiags in the
-file \filelink{pkg/diagnostics/diagnostics\_SIZE.h}{pkg-diagnostics-diagnostics_SIZE.h}, or by allowing the 
-shell script (???????) to make this
-change based on the choice of diagnostic output made in the namelist.
+file \filelink{pkg/diagnostics/diagnostics\_SIZE.h}{pkg-diagnostics-diagnostics_SIZE.h}.
+numdiags should be set greater than or equal to the sum of all the diagnostics activated
+for output each multiplied by the number of levels defined for that diagnostic quantity.
+This is illustrated in the example below:
 
-\subsection{Usage Notes}
-\label{sec:diagnostics:usersguide}
+\noindent
 To use the diagnostics package, other than enabling it in packages.conf
 and turning the usediagnostics flag in data.pkg to .TRUE., a namelist
 must be supplied in the run directory called data.diagnostics. The namelist
@@ -178,28 +231,40 @@
 specify the frequency of output, the number of levels, and the name of
 up to 10 separate output files. A sample data.diagnostics namelist file:
 
-$\#$ Diagnostic Package Choices
- $\&$diagnostics\_list
-  frequency(1) = 10, \
-   levels(1,1) = 1.,2.,3.,4.,5., \
-   fields(1,1) = 'UVEL    ','VVEL    ', \
-   filename(1) = 'diagout1', \
-  frequency(2) = 100, \
-   levels(1,2) = 1.,2.,3.,4.,5., \
-   fields(1,2) = 'THETA   ','SALT    ', \
-   filename(2) = 'diagout2', \
- $\&$end \
+\noindent
+$\#$ Diagnostic Package Choices \\
+ $\&$diagnostics\_list \\
+  frequency(1) = 10, \ \\
+   levels(1,1) = 1.,2.,3.,4.,5., \ \\
+   fields(1,1) = 'UVEL    ','VVEL    ', \ \\
+   filename(1) = 'diagout1', \ \\
+  frequency(2) = 100, \ \\
+   levels(1,2) = 1.,2.,3.,4.,5., \ \\
+   fields(1,2) = 'THETA   ','SALT    ', \ \\
+   filename(2) = 'diagout2', \ \\
+ $\&$end \ \\
 
+\noindent
 In this example, there are two output files that will be generated
 for each tile and for each output time. The first set of output files
-has the prefix diagout1, does time averaging every 10 time steps,
-for fields which are multiple-level fields the levels output are 1-5,
-and the names of diagnostics quantities are UVEL and VVEL.
-The second set of output files
+has the prefix diagout1, does time averaging every 10 time steps
+(frequency is 10), they will write fields which are multiple-level 
+fields and output levels 1-5. The names of diagnostics quantities are 
+UVEL and VVEL.  The second set of output files
 has the prefix diagout2, does time averaging every 100 time steps,
-for fields which are multiple-level fields the levels output are 1-5,
+they include fields which are multiple-level fields, levels output are 1-5,
 and the names of diagnostics quantities are THETA and SALT.
 
+\noindent
+In order to define and include as part of the diagnostic output any field
+that is desired for a particular experiment, two steps must be taken. The
+first is to enable the ``User Diagnostic'' in data.diagnostics. This is
+accomplished by setting one of the fields slots to either UDIAG1 through 
+UDIAG10, for multi-level fields, or SDIAG1 through SDIAG10 for single level
+fields. These are listed in the diagnostics menu. The second step is to
+add a call to fill\_diagnostics from the subroutine in which the quantity
+desired for diagnostic output is computed. 
+
 \newpage
 
 \subsubsection{GCM Diagnostic Menu}
@@ -211,224 +276,88 @@
 \hline
 
 &\\
-1 & UFLUX    &   $Newton/m^2$  &    1  
-         &\begin{minipage}[t]{3in}
-          {Surface U-Wind Stress on the atmosphere}
-         \end{minipage}\\
-2 & VFLUX    &   $Newton/m^2$  &    1  
-         &\begin{minipage}[t]{3in}
-          {Surface V-Wind Stress on the atmosphere}
-         \end{minipage}\\
-3 & HFLUX    &   $Watts/m^2$  &    1  
-         &\begin{minipage}[t]{3in}
-          {Surface Flux of Sensible Heat}
-         \end{minipage}\\
-4 & EFLUX    &   $Watts/m^2$  &    1  
-         &\begin{minipage}[t]{3in}
-          {Surface Flux of Latent Heat}
-         \end{minipage}\\
-5 & QICE     &   $Watts/m^2$  &    1  
-         &\begin{minipage}[t]{3in}
-          {Heat Conduction through Sea-Ice}
-         \end{minipage}\\
-6 & RADLWG   &   $Watts/m^2$ &    1  
-         &\begin{minipage}[t]{3in}
-          {Net upward LW flux at the ground}
-         \end{minipage}\\
-7 & RADSWG   &   $Watts/m^2$  &    1 
-         &\begin{minipage}[t]{3in}
-          {Net downward SW flux at the ground} 
-         \end{minipage}\\
-8 & RI       &  $dimensionless$ &  Nrphys 
-         &\begin{minipage}[t]{3in}
-          {Richardson Number}
-         \end{minipage}\\
-9 & CT       &  $dimensionless$ &  1 
-         &\begin{minipage}[t]{3in}
-          {Surface Drag coefficient for T and Q}
-         \end{minipage}\\
-10 & CU       & $dimensionless$ &  1 
-         &\begin{minipage}[t]{3in}
-          {Surface Drag coefficient for U and V}
-         \end{minipage}\\
-11 & ET       &  $m^2/sec$ &  Nrphys
-         &\begin{minipage}[t]{3in}
-          {Diffusivity coefficient for T and Q}
-         \end{minipage}\\
-12 & EU       &  $m^2/sec$ &  Nrphys
-         &\begin{minipage}[t]{3in}
-          {Diffusivity coefficient for U and V}
-         \end{minipage}\\
-13 & TURBU    &  $m/sec/day$ &  Nrphys 
-         &\begin{minipage}[t]{3in}
-          {U-Momentum Changes due to Turbulence}
-         \end{minipage}\\
-14 & TURBV    &  $m/sec/day$ &  Nrphys 
-         &\begin{minipage}[t]{3in}
-          {V-Momentum Changes due to Turbulence}
-         \end{minipage}\\
-15 & TURBT    &  $deg/day$ &  Nrphys 
-         &\begin{minipage}[t]{3in}
-          {Temperature Changes due to Turbulence}
-         \end{minipage}\\
-16 & TURBQ    &  $g/kg/day$ &  Nrphys 
-         &\begin{minipage}[t]{3in}
-          {Specific Humidity Changes due to Turbulence}
-         \end{minipage}\\
-17 & MOISTT   &   $deg/day$ &  Nrphys 
-         &\begin{minipage}[t]{3in}
-          {Temperature Changes due to Moist Processes}
-         \end{minipage}\\
-18 & MOISTQ   &  $g/kg/day$ &  Nrphys 
-         &\begin{minipage}[t]{3in}
-          {Specific Humidity Changes due to Moist Processes}
-         \end{minipage}\\
-19 & RADLW    &  $deg/day$ &  Nrphys 
-         &\begin{minipage}[t]{3in}
-          {Net Longwave heating rate for each level}
-         \end{minipage}\\
-20 & RADSW    &  $deg/day$ &  Nrphys 
-         &\begin{minipage}[t]{3in}
-          {Net Shortwave heating rate for each level}
-         \end{minipage}\\
-21 & PREACC   &  $mm/day$ &  1
-         &\begin{minipage}[t]{3in}
-          {Total Precipitation}
-         \end{minipage}\\
-22 & PRECON   &  $mm/day$ &  1
-         &\begin{minipage}[t]{3in}
-          {Convective Precipitation}
-         \end{minipage}\\
-23 & TUFLUX   &  $Newton/m^2$ &  Nrphys
-         &\begin{minipage}[t]{3in}
-          {Turbulent Flux of U-Momentum}
-         \end{minipage}\\
-24 & TVFLUX   &  $Newton/m^2$ &  Nrphys
-         &\begin{minipage}[t]{3in}
-          {Turbulent Flux of V-Momentum}
-         \end{minipage}\\
-25 & TTFLUX   &  $Watts/m^2$ &  Nrphys
-         &\begin{minipage}[t]{3in}
-          {Turbulent Flux of Sensible Heat}
-         \end{minipage}\\
-26 & TQFLUX   &  $Watts/m^2$ &  Nrphys
-         &\begin{minipage}[t]{3in}
-          {Turbulent Flux of Latent Heat}
-         \end{minipage}\\
-27 & CN       &  $dimensionless$ &  1
-         &\begin{minipage}[t]{3in}
-          {Neutral Drag Coefficient}
-         \end{minipage}\\
-28 & WINDS     &  $m/sec$ &  1
-         &\begin{minipage}[t]{3in}
-          {Surface Wind Speed}
-         \end{minipage}\\
-29 & DTSRF     &  $deg$ &  1
-         &\begin{minipage}[t]{3in}
-          {Air/Surface virtual temperature difference}
-         \end{minipage}\\
-30 & TG        &  $deg$ &  1
+84 & SDIAG1   &             &    1  
          &\begin{minipage}[t]{3in}
-          {Ground temperature}
+          {User-Defined Surface Diagnostic-1} 
          \end{minipage}\\
-31 & TS        &  $deg$ &  1
+85 & SDIAG2   &             &    1  
          &\begin{minipage}[t]{3in}
-          {Surface air temperature (Adiabatic from lowest model layer)}
+          {User-Defined Surface Diagnostic-2} 
          \end{minipage}\\
-32 & DTG       &  $deg$ &  1
+86 & UDIAG1   &             &    Nrphys
          &\begin{minipage}[t]{3in}
-          {Ground temperature adjustment}
+          {User-Defined Upper-Air Diagnostic-1} 
          \end{minipage}\\
-
-\end{tabular}
-
-\newpage
-\vspace*{\fill}
-\begin{tabular}{lllll}
-\hline\hline
-N & NAME & UNITS & LEVELS & DESCRIPTION \\
-\hline
-
-&\\
-33 & QG        &  $g/kg$ &  1
+87 & UDIAG2   &             &    Nrphys
          &\begin{minipage}[t]{3in}
-          {Ground specific humidity}
+          {User-Defined Upper-Air Diagnostic-2} 
          \end{minipage}\\
-34 & QS        &  $g/kg$ &  1
+124& SDIAG3   &             &    1  
          &\begin{minipage}[t]{3in}
-          {Saturation surface specific humidity}
+          {User-Defined Surface Diagnostic-3} 
          \end{minipage}\\
-
-&\\
-35 & TGRLW    &    $deg$   &    1  
+125& SDIAG4   &             &    1  
          &\begin{minipage}[t]{3in}
-          {Instantaneous ground temperature used as input to the
-           Longwave radiation subroutine} 
+          {User-Defined Surface Diagnostic-4} 
          \end{minipage}\\
-36 & ST4      &   $Watts/m^2$  &    1  
+126& SDIAG5   &             &    1  
          &\begin{minipage}[t]{3in}
-          {Upward Longwave flux at the ground ($\sigma T^4$)}
+          {User-Defined Surface Diagnostic-5} 
          \end{minipage}\\
-37 & OLR      &   $Watts/m^2$  &    1  
+127& SDIAG6   &             &    1  
          &\begin{minipage}[t]{3in}
-          {Net upward Longwave flux at the top of the model}
+          {User-Defined Surface Diagnostic-6} 
          \end{minipage}\\
-38 & OLRCLR   &   $Watts/m^2$  &    1  
+128& SDIAG7   &             &    1  
          &\begin{minipage}[t]{3in}
-          {Net upward clearsky Longwave flux at the top of the model}
+          {User-Defined Surface Diagnostic-7} 
          \end{minipage}\\
-39 & LWGCLR   &   $Watts/m^2$  &    1  
+129& SDIAG8   &             &    1  
          &\begin{minipage}[t]{3in}
-          {Net upward clearsky Longwave flux at the ground}
+          {User-Defined Surface Diagnostic-8} 
          \end{minipage}\\
-40 & LWCLR    &  $deg/day$ &  Nrphys 
+130& SDIAG9   &             &    1  
          &\begin{minipage}[t]{3in}
-          {Net clearsky Longwave heating rate for each level}
+          {User-Defined Surface Diagnostic-9} 
          \end{minipage}\\
-41 & TLW      &    $deg$   &  Nrphys 
+131& SDIAG10  &             &    1  
          &\begin{minipage}[t]{3in}
-          {Instantaneous temperature used as input to the Longwave radiation
-          subroutine} 
+          {User-Defined Surface Diagnostic-1-} 
          \end{minipage}\\
-42 & SHLW     &    $g/g$   &  Nrphys 
+132& UDIAG3   &             &    Nrphys  
          &\begin{minipage}[t]{3in}
-          {Instantaneous specific humidity used as input to the Longwave radiation
-          subroutine} 
+          {User-Defined Multi-Level Diagnostic-3} 
          \end{minipage}\\
-43 & OZLW     &    $g/g$   &  Nrphys 
+133& UDIAG4   &             &    Nrphys  
          &\begin{minipage}[t]{3in}
-          {Instantaneous ozone used as input to the Longwave radiation
-          subroutine} 
+          {User-Defined Multi-Level Diagnostic-4} 
          \end{minipage}\\
-44 & CLMOLW   &    $0-1$   &  Nrphys 
+134& UDIAG5   &             &    Nrphys  
          &\begin{minipage}[t]{3in}
-          {Maximum overlap cloud fraction used in the Longwave radiation
-          subroutine} 
+          {User-Defined Multi-Level Diagnostic-5} 
          \end{minipage}\\
-45 & CLDTOT   &    $0-1$   &  Nrphys 
+135& UDIAG6   &             &    Nrphys  
          &\begin{minipage}[t]{3in}
-          {Total cloud fraction used in the Longwave and Shortwave radiation
-          subroutines} 
+          {User-Defined Multi-Level Diagnostic-6} 
          \end{minipage}\\
-46 & RADSWT   &    $Watts/m^2$   &  1 
+136& UDIAG7   &             &    Nrphys  
          &\begin{minipage}[t]{3in}
-          {Incident Shortwave radiation at the top of the atmosphere}
+          {User-Defined Multi-Level Diagnostic-7} 
          \end{minipage}\\
-47 & CLROSW   &    $0-1$   &  Nrphys 
+137& UDIAG8   &             &    Nrphys  
          &\begin{minipage}[t]{3in}
-          {Random overlap cloud fraction used in the shortwave radiation
-          subroutine} 
+          {User-Defined Multi-Level Diagnostic-8} 
          \end{minipage}\\
-48 & CLMOSW   &    $0-1$   &  Nrphys 
+138& UDIAG9   &             &    Nrphys  
          &\begin{minipage}[t]{3in}
-          {Maximum overlap cloud fraction used in the shortwave radiation
-          subroutine} 
+          {User-Defined Multi-Level Diagnostic-9} 
          \end{minipage}\\
-49 & EVAP     &    $mm/day$   &  1 
+139& UDIAG10  &             &    Nrphys  
          &\begin{minipage}[t]{3in}
-          {Surface evaporation}
+          {User-Defined Multi-Level Diagnostic-10} 
          \end{minipage}\\
 \end{tabular}
+\vspace{1.5in}
 \vfill
 
 \newpage
@@ -439,190 +368,138 @@
 \hline
 
 &\\
-50 & DUDT     &    $m/sec/day$ &  Nrphys
-         &\begin{minipage}[t]{3in}
-          {Total U-Wind tendency}
-         \end{minipage}\\
-51 & DVDT     &    $m/sec/day$ &  Nrphys
-         &\begin{minipage}[t]{3in}
-          {Total V-Wind tendency}
-         \end{minipage}\\
-52 & DTDT     &    $deg/day$ &  Nrphys
-         &\begin{minipage}[t]{3in}
-          {Total Temperature tendency}
-         \end{minipage}\\
-53 & DQDT     &    $g/kg/day$ &  Nrphys
-         &\begin{minipage}[t]{3in}
-          {Total Specific Humidity tendency}
-         \end{minipage}\\
-54 & USTAR    &    $m/sec$ &  1
-         &\begin{minipage}[t]{3in}
-          {Surface USTAR wind}
-         \end{minipage}\\
-55 & Z0       &    $m$ &  1
-         &\begin{minipage}[t]{3in}
-          {Surface roughness}
-         \end{minipage}\\
-56 & FRQTRB   &    $0-1$ &  Nrphys-1
-         &\begin{minipage}[t]{3in}
-          {Frequency of Turbulence}
-         \end{minipage}\\
-57 & PBL      &    $mb$ &  1
-         &\begin{minipage}[t]{3in}
-          {Planetary Boundary Layer depth}
-         \end{minipage}\\
-58 & SWCLR    &  $deg/day$ &  Nrphys 
-         &\begin{minipage}[t]{3in}
-          {Net clearsky Shortwave heating rate for each level}
-         \end{minipage}\\
-59 & OSR      &   $Watts/m^2$  &    1 
-         &\begin{minipage}[t]{3in}
-          {Net downward Shortwave flux at the top of the model}
-         \end{minipage}\\
-60 & OSRCLR   &   $Watts/m^2$  &    1  
+238& ETAN     & $(hPa,m)$ &    1
          &\begin{minipage}[t]{3in}
-          {Net downward clearsky Shortwave flux at the top of the model}
+          {Perturbation of Surface (pressure, height)} 
          \end{minipage}\\
-61 & CLDMAS   &   $kg / m^2$  &    Nrphys
+239& ETANSQ   & $(hPa^2,m^2)$ & 1
          &\begin{minipage}[t]{3in}
-          {Convective cloud mass flux}
+          {Square of Perturbation of Surface (pressure, height)} 
          \end{minipage}\\
-62 & UAVE     &   $m/sec$  &    Nrphys
+240& THETA    & $deg K$ & Nr
          &\begin{minipage}[t]{3in}
-          {Time-averaged $u-Wind$}
+          {Potential Temperature} 
          \end{minipage}\\
-63 & VAVE     &   $m/sec$  &    Nrphys
+241& SALT     & $g/kg$ & Nr
          &\begin{minipage}[t]{3in}
-          {Time-averaged $v-Wind$}
+          {Salt (or Water Vapor Mixing Ratio)} 
          \end{minipage}\\
-64 & TAVE     &   $deg$  &    Nrphys
+242& UVEL     & $m/sec$ & Nr
          &\begin{minipage}[t]{3in}
-          {Time-averaged $Temperature$}
+          {U-Velocity} 
          \end{minipage}\\
-65 & QAVE     &   $g/g$  &    Nrphys
+243& VVEL     & $m/sec$ & Nr
          &\begin{minipage}[t]{3in}
-          {Time-averaged $Specific \, \, Humidity$}
+          {V-Velocity} 
          \end{minipage}\\
-66 & PAVE     &   $mb$  &    1
+244& WVEL     & $m/sec$ & Nr
          &\begin{minipage}[t]{3in}
-          {Time-averaged $p_{surf} - p_{top}$}
+          {Vertical-Velocity} 
          \end{minipage}\\
-67 & QQAVE    &   $(m/sec)^2$  &    Nrphys
+245& THETASQ  & $deg^2$ & Nr
          &\begin{minipage}[t]{3in}
-          {Time-averaged $Turbulent Kinetic Energy$}
+          {Square of Potential Temperature} 
          \end{minipage}\\
-68 & SWGCLR   &   $Watts/m^2$  &    1  
+246& SALTSQ   & $g^2/{kg}^2$ & Nr
          &\begin{minipage}[t]{3in}
-          {Net downward clearsky Shortwave flux at the ground} 
+          {Square of Salt (or Water Vapor Mixing Ratio)} 
          \end{minipage}\\
-69 & SDIAG1   &             &    1  
+247& UVELSQ   & $m^2/sec^2$ & Nr
          &\begin{minipage}[t]{3in}
-          {User-Defined Surface Diagnostic-1} 
+          {Square of U-Velocity} 
          \end{minipage}\\
-70 & SDIAG2   &             &    1  
+248& VVELSQ   & $m^2/sec^2$ & Nr
          &\begin{minipage}[t]{3in}
-          {User-Defined Surface Diagnostic-2} 
+          {Square of V-Velocity} 
          \end{minipage}\\
-71 & UDIAG1   &             &    Nrphys
+249& WVELSQ   & $m^2/sec^2$ & Nr
          &\begin{minipage}[t]{3in}
-          {User-Defined Upper-Air Diagnostic-1} 
+          {Square of Vertical-Velocity} 
          \end{minipage}\\
-72 & UDIAG2   &             &    Nrphys
+250& UVELVVEL & $m^2/sec^2$ & Nr
          &\begin{minipage}[t]{3in}
-          {User-Defined Upper-Air Diagnostic-2} 
+          {Meridional Transport of Zonal Momentum} 
          \end{minipage}\\
-73 & DIABU    & $m/sec/day$ &    Nrphys
+251& UVELMASS & $m/sec$ & Nr
          &\begin{minipage}[t]{3in}
-          {Total Diabatic forcing on $u-Wind$} 
+          {Zonal Mass-Weighted Component of Velocity} 
          \end{minipage}\\
-74 & DIABV    & $m/sec/day$ &    Nrphys
+252& VVELMASS & $m/sec$ & Nr
          &\begin{minipage}[t]{3in}
-          {Total Diabatic forcing on $v-Wind$} 
+          {Meridional Mass-Weighted Component of Velocity} 
          \end{minipage}\\
-75 & DIABT    & $deg/day$ &    Nrphys
+253& WVELMASS & $m/sec$ & Nr
          &\begin{minipage}[t]{3in}
-          {Total Diabatic forcing on $Temperature$} 
+          {Vertical Mass-Weighted Component of Velocity} 
          \end{minipage}\\
-76 & DIABQ    & $g/kg/day$ &    Nrphys
+254& UTHMASS  & $m-deg/sec$ & Nr
          &\begin{minipage}[t]{3in}
-          {Total Diabatic forcing on $Specific \, \, Humidity$} 
+          {Zonal Mass-Weight Transp of Pot Temp} 
          \end{minipage}\\
-
-\end{tabular}
-\vfill
-
-\newpage
-\vspace*{\fill}
-\begin{tabular}{lllll}
-\hline\hline
-N & NAME & UNITS & LEVELS & DESCRIPTION \\
-\hline
-
-77 & VINTUQ  & $m/sec \cdot g/kg$ &    1
+255& VTHMASS  & $m-deg/sec$ & Nr
          &\begin{minipage}[t]{3in}
-          {Vertically integrated $u \, q$} 
+          {Meridional Mass-Weight Transp of Pot Temp} 
          \end{minipage}\\
-78 & VINTVQ  & $m/sec \cdot g/kg$ &    1
+256& WTHMASS  & $m-deg/sec$ & Nr
          &\begin{minipage}[t]{3in}
-          {Vertically integrated $v \, q$} 
+          {Vertical Mass-Weight Transp of Pot Temp} 
          \end{minipage}\\
-79 & VINTUT  & $m/sec \cdot deg$ &    1
+257& USLTMASS & $m-kg/sec-kg$ & Nr
          &\begin{minipage}[t]{3in}
-          {Vertically integrated $u \, T$} 
+          {Zonal Mass-Weight Transp of Salt (or W.Vap Mix Rat.)} 
          \end{minipage}\\
-80 & VINTVT  & $m/sec \cdot deg$ &    1
+258& VSLTMASS & $m-kg/sec-kg$ & Nr
          &\begin{minipage}[t]{3in}
-          {Vertically integrated $v \, T$} 
+          {Meridional Mass-Weight Transp of Salt (or W.Vap Mix Rat.)} 
          \end{minipage}\\
-81 & CLDFRC  & $0-1$ &    1
+259& WSLTMASS & $m-kg/sec-kg$ & Nr
          &\begin{minipage}[t]{3in}
-          {Total Cloud Fraction} 
+          {Vertical Mass-Weight Transp of Salt (or W.Vap Mix Rat.)} 
          \end{minipage}\\
-82 & QINT    & $gm/cm^2$ &    1
+260& UVELTH   & $m-deg/sec$ & Nr
          &\begin{minipage}[t]{3in}
-          {Precipitable water} 
+          {Zonal Transp of Pot Temp} 
          \end{minipage}\\
-83 & U2M     & $m/sec$ &    1
+261& VVELTH   & $m-deg/sec$ & Nr
          &\begin{minipage}[t]{3in}
-          {U-Wind at 2 meters}
+          {Meridional Transp of Pot Temp} 
          \end{minipage}\\
-84 & V2M     & $m/sec$ &    1
+262& WVELTH   & $m-deg/sec$ & Nr
          &\begin{minipage}[t]{3in}
-          {V-Wind at 2 meters}
+          {Vertical Transp of Pot Temp} 
          \end{minipage}\\
-85 & T2M     & $deg$ &    1
+263& UVELSLT  & $m-kg/sec-kg$ & Nr
          &\begin{minipage}[t]{3in}
-          {Temperature at 2 meters}
+          {Zonal Transp of Salt (or W.Vap Mix Rat.)} 
          \end{minipage}\\
-86 & Q2M     & $g/kg$ &    1
+264& VVELSLT  & $m-kg/sec-kg$ & Nr
          &\begin{minipage}[t]{3in}
-          {Specific Humidity at 2 meters}
+          {Meridional Transp of Salt (or W.Vap Mix Rat.)} 
          \end{minipage}\\
-87 & U10M    & $m/sec$ &    1
+265& WVELSLT  & $m-kg/sec-kg$ & Nr
          &\begin{minipage}[t]{3in}
-          {U-Wind at 10 meters}
+          {Vertical Transp of Salt (or W.Vap Mix Rat.)} 
          \end{minipage}\\
-88 & V10M    & $m/sec$ &    1
+275& WSLTMASS & $m-kg/sec-kg$ & Nr
          &\begin{minipage}[t]{3in}
-          {V-Wind at 10 meters}
+          {Vertical Mass-Weight Transp of Salt (or W.Vap Mix Rat.)} 
          \end{minipage}\\
-89 & T10M    & $deg$ &    1
+298& VISCA4   & $m^4/sec$ & 1
          &\begin{minipage}[t]{3in}
-          {Temperature at 10 meters}
+          {Biharmonic Viscosity Coefficient} 
          \end{minipage}\\
-90 & Q10M    & $g/kg$ &    1
+299& VISCAH   & $m^2/sec$ & 1
          &\begin{minipage}[t]{3in}
-          {Specific Humidity at 10 meters}
+          {Harmonic Viscosity Coefficient} 
          \end{minipage}\\
-91 & DTRAIN  & $kg/m^2$ &    Nrphys
+300& DRHODR   & $kg/m^3/{r-unit}$ & Nr
          &\begin{minipage}[t]{3in}
-          {Detrainment Cloud Mass Flux}
+          {Stratification: d.Sigma/dr} 
          \end{minipage}\\
-92 & QFILL   & $g/kg/day$ &    Nrphys
+301& DETADT2  & ${r-unit}^2/s^2$ & 1
          &\begin{minipage}[t]{3in}
-          {Filling of negative specific humidity}
+          {Square of Eta (Surf.P,SSH) Tendency} 
          \end{minipage}\\
-
 \end{tabular}
 \vspace{1.5in}
 \vfill
@@ -644,1688 +521,6 @@
 output frequency of the diagnostic, and $\Delta t$ is
 the timestep over which the diagnostic is updated.  
 
-{\bf 1)  \underline {UFLUX} Surface Zonal Wind Stress on the Atmosphere ($Newton/m^2$) } 
-
-The zonal wind stress is the turbulent flux of zonal momentum from 
-the surface. See section 3.3 for a description of the surface layer parameterization.
-\[
-{\bf UFLUX} =  - \rho C_D W_s u \hspace{1cm}where: \hspace{.2cm}C_D = C^2_u
-\]
-where $\rho$ = the atmospheric density at the surface, $C_{D}$ is the surface
-drag coefficient, $C_u$ is the dimensionless surface exchange coefficient for momentum 
-(see diagnostic number 10), $W_s$ is the magnitude of the surface layer wind, and $u$ is 
-the zonal wind in the lowest model layer.
-\\
-
-
-{\bf 2)  \underline {VFLUX} Surface Meridional Wind Stress on the Atmosphere ($Newton/m^2$) } 
-
-The meridional wind stress is the turbulent flux of meridional momentum from 
-the surface. See section 3.3 for a description of the surface layer parameterization.
-\[
-{\bf VFLUX} =  - \rho C_D W_s v \hspace{1cm}where: \hspace{.2cm}C_D = C^2_u
-\]
-where $\rho$ = the atmospheric density at the surface, $C_{D}$ is the surface
-drag coefficient, $C_u$ is the dimensionless surface exchange coefficient for momentum 
-(see diagnostic number 10), $W_s$ is the magnitude of the surface layer wind, and $v$ is 
-the meridional wind in the lowest model layer.
-\\
-
-{\bf 3)  \underline {HFLUX} Surface Flux of Sensible Heat ($Watts/m^2$) } 
-
-The turbulent flux of sensible heat from the surface to the atmosphere is a function of the
-gradient of virtual potential temperature and the eddy exchange coefficient:
-\[
-{\bf HFLUX} =  P^{\kappa}\rho c_{p} C_{H} W_s (\theta_{surface} - \theta_{Nrphys})
-\hspace{1cm}where: \hspace{.2cm}C_H = C_u C_t
-\]
-where $\rho$ = the atmospheric density at the surface, $c_{p}$ is the specific
-heat of air, $C_{H}$ is the dimensionless surface heat transfer coefficient, $W_s$ is the 
-magnitude of the surface layer wind, $C_u$ is the dimensionless surface exchange coefficient 
-for momentum (see diagnostic number 10), $C_t$ is the dimensionless surface exchange coefficient 
-for heat and moisture (see diagnostic number 9), and $\theta$ is the potential temperature 
-at the surface and at the bottom model level.
-\\
-
-
-{\bf 4)  \underline {EFLUX} Surface Flux of Latent Heat ($Watts/m^2$) } 
-
-The turbulent flux of latent heat from the surface to the atmosphere is a function of the
-gradient of moisture, the potential evapotranspiration fraction and the eddy exchange coefficient:
-\[
-{\bf EFLUX} =  \rho \beta L C_{H} W_s (q_{surface} - q_{Nrphys})
-\hspace{1cm}where: \hspace{.2cm}C_H = C_u C_t
-\]
-where $\rho$ = the atmospheric density at the surface, $\beta$ is the fraction of
-the potential evapotranspiration actually evaporated, L is the latent
-heat of evaporation, $C_{H}$ is the dimensionless surface heat transfer coefficient, $W_s$ is the 
-magnitude of the surface layer wind, $C_u$ is the dimensionless surface exchange coefficient 
-for momentum (see diagnostic number 10), $C_t$ is the dimensionless surface exchange coefficient 
-for heat and moisture (see diagnostic number 9), and $q_{surface}$ and $q_{Nrphys}$ are the specific
-humidity at the surface and at the bottom model level, respectively.
-\\
-
-{\bf 5)  \underline {QICE} Heat Conduction Through Sea Ice ($Watts/m^2$) } 
-
-Over sea ice there is an additional source of energy at the surface due to the heat
-conduction from the relatively warm ocean through the sea ice. The heat conduction
-through sea ice represents an additional energy source term for the ground temperature equation.
-
-\[
-{\bf QICE} = {C_{ti} \over {H_i}} (T_i-T_g)
-\]
-
-where $C_{ti}$ is the thermal conductivity of ice, $H_i$ is the ice thickness, assumed to
-be $3 \hspace{.1cm} m$ where sea ice is present, $T_i$ is 273 degrees Kelvin, and
-$T_g$ is the temperature of the sea ice.
-
-NOTE: QICE is not available through model version 5.3, but is available in subsequent versions.
-\\
- 
-
-{\bf 6) \underline {RADLWG} Net upward Longwave Flux at the surface ($Watts/m^2$)}
-
-\begin{eqnarray*}
-{\bf RADLWG} & =  & F_{LW,Nrphys+1}^{Net} \\
-             & =  & F_{LW,Nrphys+1}^\uparrow - F_{LW,Nrphys+1}^\downarrow
-\end{eqnarray*}
-\\
-where Nrphys+1 indicates the lowest model edge-level, or $p = p_{surf}$.
-$F_{LW}^\uparrow$ is
-the upward Longwave flux and $F_{LW}^\downarrow$ is the downward Longwave flux.
-\\
-
-{\bf 7) \underline {RADSWG} Net downard shortwave Flux at the surface ($Watts/m^2$)}
-
-\begin{eqnarray*}
-{\bf RADSWG} & =  & F_{SW,Nrphys+1}^{Net} \\
-             & =  & F_{SW,Nrphys+1}^\downarrow - F_{SW,Nrphys+1}^\uparrow
-\end{eqnarray*}
-\\
-where Nrphys+1 indicates the lowest model edge-level, or $p = p_{surf}$.
-$F_{SW}^\downarrow$ is
-the downward Shortwave flux and $F_{SW}^\uparrow$ is the upward Shortwave flux.
-\\
-
-
-\noindent
-{\bf 8)  \underline {RI} Richardson Number} ($dimensionless$)
-
-\noindent
-The non-dimensional stability indicator is the ratio of the buoyancy to the shear:
-\[
-{\bf RI} = { { {g \over \theta_v} \pp {\theta_v}{z} } \over { (\pp{u}{z})^2 + (\pp{v}{z})^2 } }
- =  {  {c_p \pp{\theta_v}{z} \pp{P^ \kappa}{z} } \over { (\pp{u}{z})^2 + (\pp{v}{z})^2 } }
-\]
-\\
-where we used the hydrostatic equation: 
-\[
-{\pp{\Phi}{P^ \kappa}} = c_p \theta_v
-\]
-Negative values indicate unstable buoyancy {\bf{AND}} shear, small positive values ($<0.4$)
-indicate dominantly unstable shear, and large positive values indicate dominantly stable
-stratification.
-\\
-
-\noindent
-{\bf 9)  \underline {CT}  Surface Exchange Coefficient for Temperature and Moisture ($dimensionless$) }
-
-\noindent
-The surface exchange coefficient is obtained from the similarity functions for the stability
- dependant flux profile relationships:
-\[
-{\bf CT} = -{( {\overline{w^{\prime}\theta^{\prime}}}) \over {u_* \Delta \theta }} = 
--{( {\overline{w^{\prime}q^{\prime}}}) \over {u_* \Delta q }} = 
-{ k \over { (\psi_{h} + \psi_{g}) } } 
-\]
-where $\psi_h$ is the surface layer non-dimensional temperature change and $\psi_g$ is the
-viscous sublayer non-dimensional temperature or moisture change:
-\[
-\psi_{h} = {\int_{\zeta_{0}}^{\zeta} {\phi_{h} \over \zeta} d \zeta} \hspace{1cm} and 
-\hspace{1cm} \psi_{g} = { 0.55 (Pr^{2/3} - 0.2) \over \nu^{1/2} } 
-(h_{0}u_{*} - h_{0_{ref}}u_{*_{ref}})^{1/2}
-\]
-and:
-$h_{0} = 30z_{0}$ with a maximum value over land of 0.01
-
-\noindent
-$\phi_h$ is the similarity function of $\zeta$, which expresses the stability dependance of
-the temperature and moisture gradients, specified differently for stable and unstable 
-layers according to Helfand and Schubert, 1993. k is the Von Karman constant, $\zeta$ is the 
-non-dimensional stability parameter, Pr is the Prandtl number for air, $\nu$ is the molecular 
-viscosity, $z_{0}$ is the surface roughness length, $u_*$ is the surface stress velocity 
-(see diagnostic number 67), and the subscript ref refers to a reference value.
-\\
-
-\noindent
-{\bf 10)  \underline {CU}  Surface Exchange Coefficient for Momentum ($dimensionless$) }
-
-\noindent
-The surface exchange coefficient is obtained from the similarity functions for the stability
- dependant flux profile relationships:
-\[
-{\bf CU} = {u_* \over W_s} = { k \over \psi_{m} } 
-\]
-where $\psi_m$ is the surface layer non-dimensional wind shear: 
-\[
-\psi_{m} = {\int_{\zeta_{0}}^{\zeta} {\phi_{m} \over \zeta} d \zeta}
-\]
-\noindent
-$\phi_m$ is the similarity function of $\zeta$, which expresses the stability dependance of
-the temperature and moisture gradients, specified differently for stable and unstable layers
-according to Helfand and Schubert, 1993. k is the Von Karman constant, $\zeta$ is the 
-non-dimensional stability parameter, $u_*$ is the surface stress velocity 
-(see diagnostic number 67), and $W_s$ is the magnitude of the surface layer wind.
-\\
-
-\noindent
-{\bf 11)  \underline {ET}  Diffusivity Coefficient for Temperature and Moisture ($m^2/sec$) }
-
-\noindent
-In the level 2.5 version of the Mellor-Yamada (1974) hierarchy, the turbulent heat or
-moisture flux for the atmosphere above the surface layer can be expressed as a turbulent 
-diffusion coefficient $K_h$ times the negative of the gradient of potential temperature 
-or moisture. In the Helfand and Labraga (1988) adaptation of this closure, $K_h$ 
-takes the form:
-\[
-{\bf ET} = K_h = -{( {\overline{w^{\prime}\theta_v^{\prime}}}) \over {\pp{\theta_v}{z}} }
- = \left\{ \begin{array}{l@{\quad\mbox{for}\quad}l} q \, \ell \, S_H(G_M,G_H) & \mbox{decaying turbulence}
-\\ { q^2 \over {q_e} } \, \ell \, S_{H}(G_{M_e},G_{H_e}) & \mbox{growing turbulence} \end{array} \right.
-\]
-where $q$ is the turbulent velocity, or $\sqrt{2*turbulent \hspace{.2cm} kinetic \hspace{.2cm} 
-energy}$, $q_e$ is the turbulence velocity derived from the more simple level 2.0 model, 
-which describes equilibrium turbulence, $\ell$ is the master length scale related to the layer 
-depth, 
-$S_H$ is a function of $G_H$ and $G_M$, the dimensionless buoyancy and
-wind shear parameters, respectively, or a function of $G_{H_e}$ and $G_{M_e}$, the equilibrium 
-dimensionless buoyancy and wind shear
-parameters.   Both $G_H$ and $G_M$, and their equilibrium values $G_{H_e}$ and $G_{M_e}$, 
-are functions of the Richardson number.
-
-\noindent
-For the detailed equations and derivations of the modified level 2.5 closure scheme,
-see Helfand and Labraga, 1988.
-
-\noindent
-In the surface layer, ${\bf {ET}}$ is the exchange coefficient for heat and moisture,
-in units of $m/sec$, given by:
-\[
-{\bf ET_{Nrphys}} =  C_t * u_* = C_H W_s
-\]
-\noindent
-where $C_t$ is the dimensionless exchange coefficient for heat and moisture from the 
-surface layer similarity functions (see diagnostic number 9), $u_*$ is the surface 
-friction velocity (see diagnostic number 67), $C_H$ is the heat transfer coefficient,
-and $W_s$ is the magnitude of the surface layer wind.
-\\
- 
-\noindent
-{\bf 12)  \underline {EU}  Diffusivity Coefficient for Momentum ($m^2/sec$) }
- 
-\noindent  
-In the level 2.5 version of the Mellor-Yamada (1974) hierarchy, the turbulent heat
-momentum flux for the atmosphere above the surface layer can be expressed as a turbulent
-diffusion coefficient $K_m$ times the negative of the gradient of the u-wind.
-In the Helfand and Labraga (1988) adaptation of this closure, $K_m$
-takes the form:
-\[
-{\bf EU} = K_m = -{( {\overline{u^{\prime}w^{\prime}}}) \over {\pp{U}{z}} }
- = \left\{ \begin{array}{l@{\quad\mbox{for}\quad}l} q \, \ell \, S_M(G_M,G_H) & \mbox{decaying turbulence}
-\\ { q^2 \over {q_e} } \, \ell \, S_{M}(G_{M_e},G_{H_e}) & \mbox{growing turbulence} \end{array} \right.
-\]
-\noindent
-where $q$ is the turbulent velocity, or $\sqrt{2*turbulent \hspace{.2cm} kinetic \hspace{.2cm}
-energy}$, $q_e$ is the turbulence velocity derived from the more simple level 2.0 model,
-which describes equilibrium turbulence, $\ell$ is the master length scale related to the layer
-depth, 
-$S_M$ is a function of $G_H$ and $G_M$, the dimensionless buoyancy and
-wind shear parameters, respectively, or a function of $G_{H_e}$ and $G_{M_e}$, the equilibrium 
-dimensionless buoyancy and wind shear
-parameters.   Both $G_H$ and $G_M$, and their equilibrium values $G_{H_e}$ and $G_{M_e}$, 
-are functions of the Richardson number.
-
-\noindent
-For the detailed equations and derivations of the modified level 2.5 closure scheme,
-see Helfand and Labraga, 1988.
- 
-\noindent
-In the surface layer, ${\bf {EU}}$ is the exchange coefficient for momentum,
-in units of $m/sec$, given by:
-\[
-{\bf EU_{Nrphys}} = C_u * u_* = C_D W_s
-\]
-\noindent
-where $C_u$ is the dimensionless exchange coefficient for momentum from the surface layer 
-similarity functions (see diagnostic number 10), $u_*$ is the surface friction velocity 
-(see diagnostic number 67), $C_D$ is the surface drag coefficient, and $W_s$ is the 
-magnitude of the surface layer wind.
-\\
- 
-\noindent
-{\bf 13)  \underline {TURBU}  Zonal U-Momentum changes due to Turbulence ($m/sec/day$) }
- 
-\noindent
-The tendency of U-Momentum due to turbulence is written:
-\[
-{\bf TURBU} = {\pp{u}{t}}_{turb} = {\pp{}{z} }{(- \overline{u^{\prime}w^{\prime}})}
- = {\pp{}{z} }{(K_m \pp{u}{z})}
-\]
-
-\noindent
-The Helfand and Labraga level 2.5 scheme models the turbulent
-flux of u-momentum in terms of $K_m$, and the equation has the form of a diffusion
-equation.
- 
-\noindent
-{\bf 14)  \underline {TURBV}  Meridional V-Momentum changes due to Turbulence ($m/sec/day$) }
- 
-\noindent
-The tendency of V-Momentum due to turbulence is written:
-\[
-{\bf TURBV} = {\pp{v}{t}}_{turb} = {\pp{}{z} }{(- \overline{v^{\prime}w^{\prime}})}
- = {\pp{}{z} }{(K_m \pp{v}{z})}
-\]
-
-\noindent
-The Helfand and Labraga level 2.5 scheme models the turbulent
-flux of v-momentum in terms of $K_m$, and the equation has the form of a diffusion
-equation.
-\\
- 
-\noindent
-{\bf 15)  \underline {TURBT}  Temperature changes due to Turbulence ($deg/day$) }
- 
-\noindent
-The tendency of temperature due to turbulence is written:
-\[
-{\bf TURBT} = {\pp{T}{t}} = P^{\kappa}{\pp{\theta}{t}}_{turb} = 
-P^{\kappa}{\pp{}{z} }{(- \overline{w^{\prime}\theta^{\prime}})}
- = P^{\kappa}{\pp{}{z} }{(K_h \pp{\theta_v}{z})}
-\]
-
-\noindent
-The Helfand and Labraga level 2.5 scheme models the turbulent
-flux of temperature in terms of $K_h$, and the equation has the form of a diffusion
-equation.
-\\
- 
-\noindent
-{\bf 16)  \underline {TURBQ}  Specific Humidity changes due to Turbulence ($g/kg/day$) }
- 
-\noindent
-The tendency of specific humidity due to turbulence is written:
-\[
-{\bf TURBQ} = {\pp{q}{t}}_{turb} = {\pp{}{z} }{(- \overline{w^{\prime}q^{\prime}})}
- = {\pp{}{z} }{(K_h \pp{q}{z})}
-\]
-
-\noindent
-The Helfand and Labraga level 2.5 scheme models the turbulent
-flux of temperature in terms of $K_h$, and the equation has the form of a diffusion
-equation.
-\\
- 
-\noindent
-{\bf 17)  \underline {MOISTT} Temperature Changes Due to Moist Processes ($deg/day$) } 
-
-\noindent
-\[
-{\bf MOISTT} = \left. {\pp{T}{t}}\right|_{c} + \left. {\pp{T}{t}} \right|_{ls}
-\]
-where:
-\[
-\left.{\pp{T}{t}}\right|_{c} = R \sum_i \left( \alpha { m_B \over c_p} \Gamma_s \right)_i 
-\hspace{.4cm} and 
-\hspace{.4cm} \left.{\pp{T}{t}}\right|_{ls} = {L \over c_p } (q^*-q)
-\]
-and
-\[
-\Gamma_s = g \eta \pp{s}{p}
-\]
-
-\noindent
-The subscript $c$ refers to convective processes, while the subscript $ls$ refers to large scale
-precipitation processes, or supersaturation rain. 
-The summation refers to contributions from each cloud type called by RAS.  
-The dry static energy is given 
-as $s$, the convective cloud base mass flux is given as $m_B$, and the cloud entrainment is
-given as $\eta$, which are explicitly defined in Section \ref{sec:fizhi:mc}, 
-the description of the convective parameterization.  The fractional adjustment, or relaxation
-parameter, for each cloud type is given as $\alpha$, while
-$R$ is the rain re-evaporation adjustment.
-\\
-
-\noindent
-{\bf 18)  \underline {MOISTQ} Specific Humidity Changes Due to Moist Processes ($g/kg/day$) } 
-
-\noindent
-\[
-{\bf MOISTQ} = \left. {\pp{q}{t}}\right|_{c} + \left. {\pp{q}{t}} \right|_{ls}
-\]
-where:
-\[
-\left.{\pp{q}{t}}\right|_{c} = R \sum_i \left( \alpha { m_B \over {L}}(\Gamma_h-\Gamma_s) \right)_i 
-\hspace{.4cm} and 
-\hspace{.4cm} \left.{\pp{q}{t}}\right|_{ls} = (q^*-q)
-\]
-and
-\[
-\Gamma_s = g \eta \pp{s}{p}\hspace{.4cm} and \hspace{.4cm}\Gamma_h = g \eta \pp{h}{p}
-\]
-\noindent
-The subscript $c$ refers to convective processes, while the subscript $ls$ refers to large scale
-precipitation processes, or supersaturation rain. 
-The summation refers to contributions from each cloud type called by RAS.  
-The dry static energy is given as $s$, 
-the moist static energy is given as $h$, 
-the convective cloud base mass flux is given as $m_B$, and the cloud entrainment is
-given as $\eta$, which are explicitly defined in Section \ref{sec:fizhi:mc}, 
-the description of the convective parameterization.  The fractional adjustment, or relaxation
-parameter, for each cloud type is given as $\alpha$, while
-$R$ is the rain re-evaporation adjustment.
-\\
-
-\noindent
-{\bf 19)  \underline {RADLW} Heating Rate due to Longwave Radiation ($deg/day$) }
-
-\noindent
-The net longwave heating rate is calculated as the vertical divergence of the
-net terrestrial radiative fluxes.
-Both the clear-sky and cloudy-sky longwave fluxes are computed within the
-longwave routine.
-The subroutine calculates the clear-sky flux, $F^{clearsky}_{LW}$, first.
-For a given cloud fraction,
-the clear line-of-sight probability $C(p,p^{\prime})$ is computed from the current level pressure $p$ 
-to the model top pressure, $p^{\prime} = p_{top}$, and the model surface pressure, $p^{\prime} = p_{surf}$,
-for the upward and downward radiative fluxes.
-(see Section \ref{sec:fizhi:radcloud}).
-The cloudy-sky flux is then obtained as:
-   
-\noindent
-\[
-F_{LW} = C(p,p') \cdot F^{clearsky}_{LW},
-\]
-
-\noindent
-Finally, the net longwave heating rate is calculated as the vertical divergence of the
-net terrestrial radiative fluxes:
-\[
-\pp{\rho c_p T}{t} = - {\partial \over \partial z} F_{LW}^{NET} ,
-\]
-or
-\[
-{\bf RADLW} = \frac{g}{c_p \pi} {\partial \over \partial \sigma} F_{LW}^{NET} .
-\]
-
-\noindent
-where $g$ is the accelation due to gravity,
-$c_p$ is the heat capacity of air at constant pressure,
-and
-\[
-F_{LW}^{NET} = F_{LW}^\uparrow - F_{LW}^\downarrow
-\]
-\\
-
-
-\noindent
-{\bf 20)  \underline {RADSW} Heating Rate due to Shortwave Radiation ($deg/day$) }
-
-\noindent
-The net Shortwave heating rate is calculated as the vertical divergence of the
-net solar radiative fluxes.
-The clear-sky and cloudy-sky shortwave fluxes are calculated separately.
-For the clear-sky case, the shortwave fluxes and heating rates are computed with
-both CLMO (maximum overlap cloud fraction) and
-CLRO (random overlap cloud fraction) set to zero (see Section \ref{sec:fizhi:radcloud}).
-The shortwave routine is then called a second time, for the cloudy-sky case, with the
-true time-averaged cloud fractions CLMO
-and CLRO being used.  In all cases, a normalized incident shortwave flux is used as
-input at the top of the atmosphere.
-
-\noindent
-The heating rate due to Shortwave Radiation under cloudy skies is defined as:
-\[
-\pp{\rho c_p T}{t} = - {\partial \over \partial z} F(cloudy)_{SW}^{NET} \cdot {\rm RADSWT},
-\]
-or
-\[
-{\bf RADSW} = \frac{g}{c_p \pi} {\partial \over \partial \sigma} F(cloudy)_{SW}^{NET}\cdot {\rm RADSWT} .
-\]
-
-\noindent
-where $g$ is the accelation due to gravity,
-$c_p$ is the heat capacity of air at constant pressure, RADSWT is the true incident
-shortwave radiation at the top of the atmosphere (See Diagnostic \#48), and
-\[
-F(cloudy)_{SW}^{Net} = F(cloudy)_{SW}^\uparrow - F(cloudy)_{SW}^\downarrow
-\]
-\\
-
-\noindent
-{\bf 21)  \underline {PREACC} Total (Large-scale + Convective) Accumulated Precipition ($mm/day$) } 
-
-\noindent
-For a change in specific humidity due to moist processes, $\Delta q_{moist}$, 
-the vertical integral or total precipitable amount is given by:   
-\[
-{\bf PREACC} = \int_{surf}^{top} \rho \Delta q_{moist} dz = - \int_{surf}^{top} \Delta  q_{moist}
-{dp \over g} = {1 \over g} \int_0^1 \Delta q_{moist} dp
-\]
-\\
-
-\noindent
-A precipitation rate is defined as the vertically integrated moisture adjustment per Moist Processes
-time step, scaled to $mm/day$.
-\\
-
-\noindent
-{\bf 22)  \underline {PRECON} Convective Precipition ($mm/day$) } 
-
-\noindent
-For a change in specific humidity due to sub-grid scale cumulus convective processes, $\Delta q_{cum}$, 
-the vertical integral or total precipitable amount is given by:   
-\[
-{\bf PRECON} = \int_{surf}^{top} \rho \Delta q_{cum} dz = - \int_{surf}^{top} \Delta  q_{cum}
-{dp \over g} = {1 \over g} \int_0^1 \Delta q_{cum} dp
-\]
-\\
-
-\noindent
-A precipitation rate is defined as the vertically integrated moisture adjustment per Moist Processes
-time step, scaled to $mm/day$.
-\\
-
-\noindent
-{\bf 23)  \underline {TUFLUX}  Turbulent Flux of U-Momentum ($Newton/m^2$) }
-
-\noindent
-The turbulent flux of u-momentum is calculated for $diagnostic \hspace{.2cm} purposes
- \hspace{.2cm} only$ from the eddy coefficient for momentum:
-
-\[
-{\bf TUFLUX} =  {\rho } {(\overline{u^{\prime}w^{\prime}})} =  
-{\rho } {(- K_m \pp{U}{z})}
-\]
- 
-\noindent
-where $\rho$ is the air density, and $K_m$ is the eddy coefficient.
-\\
-
-\noindent
-{\bf 24)  \underline {TVFLUX}  Turbulent Flux of V-Momentum ($Newton/m^2$) }
-
-\noindent
-The turbulent flux of v-momentum is calculated for $diagnostic \hspace{.2cm} purposes 
-\hspace{.2cm} only$ from the eddy coefficient for momentum:
-
-\[
-{\bf TVFLUX} =  {\rho } {(\overline{v^{\prime}w^{\prime}})} = 
- {\rho } {(- K_m \pp{V}{z})}
-\]
- 
-\noindent
-where $\rho$ is the air density, and $K_m$ is the eddy coefficient.
-\\
-
-
-\noindent
-{\bf 25)  \underline {TTFLUX}  Turbulent Flux of Sensible Heat ($Watts/m^2$) }
-
-\noindent
-The turbulent flux of sensible heat is calculated for $diagnostic \hspace{.2cm} purposes 
-\hspace{.2cm} only$ from the eddy coefficient for heat and moisture:
-
-\noindent
-\[
-{\bf TTFLUX} = c_p {\rho }  
-P^{\kappa}{(\overline{w^{\prime}\theta^{\prime}})}
- = c_p  {\rho } P^{\kappa}{(- K_h \pp{\theta_v}{z})}
-\]
- 
-\noindent
-where $\rho$ is the air density, and $K_h$ is the eddy coefficient.
-\\
-
-
-\noindent
-{\bf 26)  \underline {TQFLUX}  Turbulent Flux of Latent Heat ($Watts/m^2$) }
-
-\noindent
-The turbulent flux of latent heat is calculated for $diagnostic \hspace{.2cm} purposes 
-\hspace{.2cm} only$ from the eddy coefficient for heat and moisture:
-
-\noindent
-\[
-{\bf TQFLUX} = {L {\rho } (\overline{w^{\prime}q^{\prime}})} = 
-{L {\rho }(- K_h \pp{q}{z})}
-\]
- 
-\noindent
-where $\rho$ is the air density, and $K_h$ is the eddy coefficient.
-\\
-
- 
-\noindent
-{\bf 27)  \underline {CN}  Neutral Drag Coefficient ($dimensionless$) }
-
-\noindent
-The drag coefficient for momentum obtained by assuming a neutrally stable surface layer:
-\[
-{\bf CN} = { k \over { \ln({h \over {z_0}})} }
-\]
-
-\noindent
-where $k$ is the Von Karman constant, $h$ is the height of the surface layer, and
-$z_0$ is the surface roughness. 
-
-\noindent
-NOTE: CN is not available through model version 5.3, but is available in subsequent
-versions.
-\\
-
-\noindent
-{\bf 28)  \underline {WINDS}  Surface Wind Speed ($meter/sec$) }
-
-\noindent
-The surface wind speed is calculated for the last internal turbulence time step:
-\[
-{\bf WINDS} = \sqrt{u_{Nrphys}^2 + v_{Nrphys}^2}
-\]
-
-\noindent
-where the subscript $Nrphys$ refers to the lowest model level.
-\\
- 
-\noindent
-{\bf 29)  \underline {DTSRF}  Air/Surface Virtual Temperature Difference ($deg \hspace{.1cm} K$) }
-
-\noindent
-The air/surface virtual temperature difference measures the stability of the surface layer:
-\[
-{\bf DTSRF} = (\theta_{v{Nrphys+1}} - \theta{v_{Nrphys}}) P^{\kappa}_{surf}
-\]
-\noindent
-where
-\[
-\theta_{v{Nrphys+1}} = { T_g \over {P^{\kappa}_{surf}} } (1 + .609 q_{Nrphys+1}) \hspace{1cm}
-and \hspace{1cm} q_{Nrphys+1} = q_{Nrphys} + \beta(q^*(T_g,P_s) - q_{Nrphys})
-\]
-
-\noindent
-$\beta$ is the surface potential evapotranspiration coefficient ($\beta=1$ over oceans),
-$q^*(T_g,P_s)$ is the saturation specific humidity at the ground temperature 
-and surface pressure, level $Nrphys$ refers to the lowest model level and level $Nrphys+1$ 
-refers to the surface.
-\\
-
- 
-\noindent
-{\bf 30)  \underline {TG}  Ground Temperature ($deg \hspace{.1cm} K$) }
-
-\noindent
-The ground temperature equation is solved as part of the turbulence package
-using a backward implicit time differencing scheme:
-\[
-{\bf TG} \hspace{.1cm} is \hspace{.1cm} obtained \hspace{.1cm} from: \hspace{.1cm}
-C_g\pp{T_g}{t} = R_{sw} - R_{lw} + Q_{ice} - H - LE
-\]
-
-\noindent
-where $R_{sw}$ is the net surface downward shortwave radiative flux, $R_{lw}$ is the
-net surface upward longwave radiative flux, $Q_{ice}$ is the heat conduction through
-sea ice, $H$ is the upward sensible heat flux, $LE$ is the upward latent heat
-flux, and $C_g$ is the total heat capacity of the ground. 
-$C_g$ is obtained by solving a heat diffusion equation 
-for the penetration of the diurnal cycle into the ground (Blackadar, 1977), and is given by:
-\[
-C_g = \sqrt{ {\lambda C_s \over {2 \omega} } } = \sqrt{(0.386 + 0.536W + 0.15W^2)2x10^{-3}
-{ 86400. \over {2 \pi} } } \, \, .
-\]
-\noindent
-Here, the thermal conductivity, $\lambda$, is equal to $2x10^{-3}$ ${ly\over{ sec}} 
-{cm \over {^oK}}$, 
-the angular velocity of the earth, $\omega$, is written as $86400$ $sec/day$ divided 
-by $2 \pi$ $radians/
-day$, and the expression for $C_s$, the heat capacity per unit volume at the surface, 
-is a function of the ground wetness, $W$. 
-\\
-
-\noindent
-{\bf 31)  \underline {TS}  Surface Temperature ($deg \hspace{.1cm} K$) }
-
-\noindent
-The surface temperature estimate is made by assuming that the model's lowest
-layer is well-mixed, and therefore that $\theta$ is constant in that layer.
-The surface temperature is therefore:
-\[
-{\bf TS} = \theta_{Nrphys} P^{\kappa}_{surf}
-\]
-\\
- 
-\noindent
-{\bf 32)  \underline {DTG}  Surface Temperature Adjustment ($deg \hspace{.1cm} K$) }
-
-\noindent
-The change in surface temperature from one turbulence time step to the next, solved
-using the Ground Temperature Equation (see diagnostic number 30) is calculated:
-\[
-{\bf DTG} = {T_g}^{n} - {T_g}^{n-1}
-\]
-
-\noindent
-where superscript $n$ refers to the new, updated time level, and the superscript $n-1$
-refers to the value at the previous turbulence time level.
-\\
- 
-\noindent
-{\bf 33)  \underline {QG}  Ground Specific Humidity ($g/kg$) }
-
-\noindent
-The ground specific humidity is obtained by interpolating between the specific
-humidity at the lowest model level and the specific humidity of a saturated ground.
-The interpolation is performed using the potential evapotranspiration function:
-\[
-{\bf QG} = q_{Nrphys+1} = q_{Nrphys} + \beta(q^*(T_g,P_s) - q_{Nrphys})
-\]
-
-\noindent
-where $\beta$ is the surface potential evapotranspiration coefficient ($\beta=1$ over oceans), 
-and $q^*(T_g,P_s)$ is the saturation specific humidity at the ground temperature and surface
-pressure.
-\\
- 
-\noindent
-{\bf 34)  \underline {QS}  Saturation Surface Specific Humidity ($g/kg$) }
-
-\noindent
-The surface saturation specific humidity is the saturation specific humidity at
-the ground temprature and surface pressure:
-\[
-{\bf QS} = q^*(T_g,P_s)
-\]
-\\
- 
-\noindent
-{\bf 35)  \underline {TGRLW} Instantaneous ground temperature used as input to the Longwave
- radiation subroutine (deg)}
-\[
-{\bf TGRLW}  = T_g(\lambda , \phi ,n)
-\]
-\noindent
-where $T_g$ is the model ground temperature at the current time step $n$.
-\\
- 
- 
-\noindent
-{\bf 36)  \underline {ST4} Upward Longwave flux at the surface ($Watts/m^2$) }
-\[
-{\bf ST4} = \sigma T^4
-\]
-\noindent
-where $\sigma$ is the Stefan-Boltzmann constant and T is the temperature.
-\\
- 
-\noindent
-{\bf 37)  \underline {OLR} Net upward Longwave flux at $p=p_{top}$ ($Watts/m^2$) }
-\[
-{\bf OLR}  =  F_{LW,top}^{NET}
-\]
-\noindent
-where top indicates the top of the first model layer.
-In the GCM, $p_{top}$ = 0.0 mb.
-\\
-
-
-\noindent
-{\bf 38)  \underline {OLRCLR} Net upward clearsky Longwave flux at $p=p_{top}$ ($Watts/m^2$) }
-\[
-{\bf OLRCLR}  =  F(clearsky)_{LW,top}^{NET}
-\]
-\noindent
-where top indicates the top of the first model layer.
-In the GCM, $p_{top}$ = 0.0 mb.
-\\
-
-\noindent
-{\bf 39)  \underline {LWGCLR} Net upward clearsky Longwave flux at the surface ($Watts/m^2$) }
-
-\noindent
-\begin{eqnarray*}
-{\bf LWGCLR} & =  & F(clearsky)_{LW,Nrphys+1}^{Net} \\
-             & =  & F(clearsky)_{LW,Nrphys+1}^\uparrow - F(clearsky)_{LW,Nrphys+1}^\downarrow
-\end{eqnarray*}
-where Nrphys+1 indicates the lowest model edge-level, or $p = p_{surf}$.
-$F(clearsky)_{LW}^\uparrow$ is
-the upward clearsky Longwave flux and the $F(clearsky)_{LW}^\downarrow$ is the downward clearsky Longwave flux.
-\\
-
-\noindent
-{\bf 40)  \underline {LWCLR} Heating Rate due to Clearsky Longwave Radiation ($deg/day$) }
-
-\noindent
-The net longwave heating rate is calculated as the vertical divergence of the
-net terrestrial radiative fluxes.
-Both the clear-sky and cloudy-sky longwave fluxes are computed within the
-longwave routine.
-The subroutine calculates the clear-sky flux, $F^{clearsky}_{LW}$, first.
-For a given cloud fraction,
-the clear line-of-sight probability $C(p,p^{\prime})$ is computed from the current level pressure $p$ 
-to the model top pressure, $p^{\prime} = p_{top}$, and the model surface pressure, $p^{\prime} = p_{surf}$,
-for the upward and downward radiative fluxes.
-(see Section \ref{sec:fizhi:radcloud}).
-The cloudy-sky flux is then obtained as:
-   
-\noindent
-\[
-F_{LW} = C(p,p') \cdot F^{clearsky}_{LW},
-\]
-
-\noindent
-Thus, {\bf LWCLR} is defined as the net longwave heating rate due to the 
-vertical divergence of the
-clear-sky longwave radiative flux:
-\[
-\pp{\rho c_p T}{t}_{clearsky} = - {\partial \over \partial z} F(clearsky)_{LW}^{NET} ,
-\]
-or
-\[
-{\bf LWCLR} = \frac{g}{c_p \pi} {\partial \over \partial \sigma} F(clearsky)_{LW}^{NET} .
-\]
-
-\noindent
-where $g$ is the accelation due to gravity,
-$c_p$ is the heat capacity of air at constant pressure,
-and
-\[
-F(clearsky)_{LW}^{Net} = F(clearsky)_{LW}^\uparrow - F(clearsky)_{LW}^\downarrow
-\]
-\\
-
- 
-\noindent
-{\bf 41)  \underline {TLW} Instantaneous temperature used as input to the Longwave
- radiation subroutine (deg)}
-\[
-{\bf TLW}  = T(\lambda , \phi ,level, n)
-\]
-\noindent
-where $T$ is the model temperature at the current time step $n$.
-\\
- 
- 
-\noindent
-{\bf 42)  \underline {SHLW} Instantaneous specific humidity used as input to
- the Longwave radiation subroutine (kg/kg)}
-\[
-{\bf SHLW}  = q(\lambda , \phi , level , n)
-\]
-\noindent
-where $q$ is the model specific humidity at the current time step $n$.
-\\
- 
- 
-\noindent
-{\bf 43)  \underline {OZLW} Instantaneous ozone used as input to
- the Longwave radiation subroutine (kg/kg)}
-\[
-{\bf OZLW}  = {\rm OZ}(\lambda , \phi , level , n)
-\]
-\noindent
-where $\rm OZ$ is the interpolated ozone data set from the climatological monthly
-mean zonally averaged ozone data set.
-\\
- 
-
-\noindent
-{\bf 44) \underline {CLMOLW} Maximum Overlap cloud fraction used in LW Radiation ($0-1$) }
-
-\noindent
-{\bf CLMOLW} is the time-averaged maximum overlap cloud fraction that has been filled by the Relaxed
-Arakawa/Schubert Convection scheme and will be used in the Longwave Radiation algorithm.  These are
-convective clouds whose radiative characteristics are assumed to be correlated in the vertical.
-For a complete description of cloud/radiative interactions, see Section \ref{sec:fizhi:radcloud}.
-\[
-{\bf CLMOLW} = CLMO_{RAS,LW}(\lambda, \phi,  level )
-\]
-\\
- 
-
-{\bf 45) \underline {CLDTOT} Total cloud fraction used in LW and SW Radiation ($0-1$) }
-
-{\bf CLDTOT} is the time-averaged total cloud fraction that has been filled by the Relaxed
-Arakawa/Schubert and Large-scale Convection schemes and will be used in the Longwave and Shortwave
-Radiation packages.
-For a complete description of cloud/radiative interactions, see Section \ref{sec:fizhi:radcloud}.
-\[
-{\bf CLDTOT} = F_{RAS} + F_{LS}
-\]
-\\
-where $F_{RAS}$ is the time-averaged cloud fraction due to sub-grid scale convection, and $F_{LS}$ is the
-time-averaged cloud fraction due to precipitating and non-precipitating large-scale moist processes.
-\\
-
-
-\noindent
-{\bf 46) \underline {CLMOSW} Maximum Overlap cloud fraction used in SW Radiation ($0-1$) }
-
-\noindent
-{\bf CLMOSW} is the time-averaged maximum overlap cloud fraction that has been filled by the Relaxed
-Arakawa/Schubert Convection scheme and will be used in the Shortwave Radiation algorithm.  These are
-convective clouds whose radiative characteristics are assumed to be correlated in the vertical.
-For a complete description of cloud/radiative interactions, see Section \ref{sec:fizhi:radcloud}.
-\[
-{\bf CLMOSW} = CLMO_{RAS,SW}(\lambda, \phi,  level )
-\]
-\\
-
-\noindent
-{\bf 47) \underline {CLROSW} Random Overlap cloud fraction used in SW Radiation ($0-1$) }
-
-\noindent
-{\bf CLROSW} is the time-averaged random overlap cloud fraction that has been filled by the Relaxed
-Arakawa/Schubert and Large-scale Convection schemes and will be used in the Shortwave 
-Radiation algorithm.  These are
-convective and large-scale clouds whose radiative characteristics are not 
-assumed to be correlated in the vertical.
-For a complete description of cloud/radiative interactions, see Section \ref{sec:fizhi:radcloud}.
-\[
-{\bf CLROSW} = CLRO_{RAS,Large Scale,SW}(\lambda, \phi,  level )
-\]
-\\
-
-\noindent
-{\bf 48)  \underline {RADSWT} Incident Shortwave radiation at the top of the atmosphere ($Watts/m^2$) }
-\[
-{\bf RADSWT} = {\frac{S_0}{R_a^2}} \cdot cos \phi_z
-\]
-\noindent
-where $S_0$, is the extra-terrestial solar contant,
-$R_a$ is the earth-sun distance in Astronomical Units,
-and $cos \phi_z$ is the cosine of the zenith angle.
-It should be noted that {\bf RADSWT}, as well as
-{\bf OSR} and {\bf OSRCLR}, 
-are calculated at the top of the atmosphere (p=0 mb).  However, the
-{\bf OLR} and {\bf OLRCLR} diagnostics are currently
-calculated at $p= p_{top}$ (0.0 mb for the GCM).
-\\
-   
-\noindent
-{\bf 49)  \underline {EVAP}  Surface Evaporation ($mm/day$) }
-
-\noindent
-The surface evaporation is a function of the gradient of moisture, the potential 
-evapotranspiration fraction and the eddy exchange coefficient:
-\[
-{\bf EVAP} =  \rho \beta K_{h} (q_{surface} - q_{Nrphys})
-\]
-where $\rho$ = the atmospheric density at the surface, $\beta$ is the fraction of
-the potential evapotranspiration actually evaporated ($\beta=1$ over oceans), $K_{h}$ is the 
-turbulent eddy exchange coefficient for heat and moisture at the surface in $m/sec$ and 
-$q{surface}$ and $q_{Nrphys}$ are the specific humidity at the surface (see diagnostic
-number 34) and at the bottom model level, respectively.
-\\
-
-\noindent
-{\bf 50)  \underline {DUDT} Total Zonal U-Wind Tendency  ($m/sec/day$) }
-
-\noindent
-{\bf DUDT} is the total time-tendency of the Zonal U-Wind due to Hydrodynamic, Diabatic,
-and Analysis forcing.
-\[
-{\bf DUDT} = \pp{u}{t}_{Dynamics} + \pp{u}{t}_{Moist} + \pp{u}{t}_{Turbulence} + \pp{u}{t}_{Analysis} 
-\]
-\\
-
-\noindent
-{\bf 51)  \underline {DVDT} Total Zonal V-Wind Tendency  ($m/sec/day$) }
-
-\noindent
-{\bf DVDT} is the total time-tendency of the Meridional V-Wind due to Hydrodynamic, Diabatic,
-and Analysis forcing.
-\[
-{\bf DVDT} = \pp{v}{t}_{Dynamics} + \pp{v}{t}_{Moist} + \pp{v}{t}_{Turbulence} + \pp{v}{t}_{Analysis} 
-\]
-\\
-
-\noindent
-{\bf 52)  \underline {DTDT} Total Temperature Tendency  ($deg/day$) }
-
-\noindent
-{\bf DTDT} is the total time-tendency of Temperature due to Hydrodynamic, Diabatic,
-and Analysis forcing.
-\begin{eqnarray*}
-{\bf DTDT} & = & \pp{T}{t}_{Dynamics} + \pp{T}{t}_{Moist Processes} + \pp{T}{t}_{Shortwave Radiation} \\
-           & + & \pp{T}{t}_{Longwave Radiation} + \pp{T}{t}_{Turbulence} + \pp{T}{t}_{Analysis} 
-\end{eqnarray*}
-\\
-
-\noindent
-{\bf 53)  \underline {DQDT} Total Specific Humidity Tendency  ($g/kg/day$) }
-
-\noindent
-{\bf DQDT} is the total time-tendency of Specific Humidity due to Hydrodynamic, Diabatic,
-and Analysis forcing.
-\[
-{\bf DQDT} = \pp{q}{t}_{Dynamics} + \pp{q}{t}_{Moist Processes} 
-+ \pp{q}{t}_{Turbulence} + \pp{q}{t}_{Analysis} 
-\]
-\\
-   
-\noindent
-{\bf 54)  \underline {USTAR}  Surface-Stress Velocity ($m/sec$) }
-
-\noindent
-The surface stress velocity, or the friction velocity, is the wind speed at 
-the surface layer top impeded by the surface drag:
-\[
-{\bf USTAR} = C_uW_s \hspace{1cm}where: \hspace{.2cm} 
-C_u = {k \over {\psi_m} }
-\]
-
-\noindent
-$C_u$ is the non-dimensional surface drag coefficient (see diagnostic
-number 10), and $W_s$ is the surface wind speed (see diagnostic number 28).
- 
-\noindent
-{\bf 55)  \underline {Z0}  Surface Roughness Length ($m$) }
-
-\noindent
-Over the land surface, the surface roughness length is interpolated to the local
-time from the monthly mean data of Dorman and Sellers (1989). Over the ocean,
-the roughness length is a function of the surface-stress velocity, $u_*$.
-\[
-{\bf Z0} = c_1u^3_* + c_2u^2_* + c_3u_* + c_4 + {c_5 \over {u_*}}
-\]
-
-\noindent
-where the constants are chosen to interpolate between the reciprocal relation of
-Kondo(1975) for weak winds, and the piecewise linear relation of Large and Pond(1981) 
-for moderate to large winds.
-\\
- 
-\noindent
-{\bf 56)  \underline {FRQTRB}  Frequency of Turbulence ($0-1$) }
-
-\noindent
-The fraction of time when turbulence is present is defined as the fraction of
-time when the turbulent kinetic energy exceeds some minimum value, defined here
-to be $0.005 \hspace{.1cm}m^2/sec^2$. When this criterion is met, a counter is
-incremented. The fraction over the averaging interval is reported.
-\\
- 
-\noindent
-{\bf 57)  \underline {PBL}  Planetary Boundary Layer Depth ($mb$) }
-
-\noindent
-The depth of the PBL is defined by the turbulence parameterization to be the
-depth at which the turbulent kinetic energy reduces to ten percent of its surface
-value.
-
-\[
-{\bf PBL} = P_{PBL} - P_{surface}
-\]
-
-\noindent
-where $P_{PBL}$ is the pressure in $mb$ at which the turbulent kinetic energy
-reaches one tenth of its surface value, and $P_s$ is the surface pressure.
-\\
- 
-\noindent
-{\bf 58)  \underline {SWCLR} Clear sky Heating Rate due to Shortwave Radiation ($deg/day$) }
-
-\noindent
-The net Shortwave heating rate is calculated as the vertical divergence of the
-net solar radiative fluxes.
-The clear-sky and cloudy-sky shortwave fluxes are calculated separately.
-For the clear-sky case, the shortwave fluxes and heating rates are computed with
-both CLMO (maximum overlap cloud fraction) and
-CLRO (random overlap cloud fraction) set to zero (see Section \ref{sec:fizhi:radcloud}).
-The shortwave routine is then called a second time, for the cloudy-sky case, with the
-true time-averaged cloud fractions CLMO
-and CLRO being used.  In all cases, a normalized incident shortwave flux is used as
-input at the top of the atmosphere.
-
-\noindent
-The heating rate due to Shortwave Radiation under clear skies is defined as:
-\[
-\pp{\rho c_p T}{t} = - {\partial \over \partial z} F(clear)_{SW}^{NET} \cdot {\rm RADSWT},
-\]
-or
-\[
-{\bf SWCLR} = \frac{g}{c_p } {\partial \over \partial p} F(clear)_{SW}^{NET}\cdot {\rm RADSWT} .
-\]
-
-\noindent
-where $g$ is the accelation due to gravity,
-$c_p$ is the heat capacity of air at constant pressure, RADSWT is the true incident
-shortwave radiation at the top of the atmosphere (See Diagnostic \#48), and
-\[
-F(clear)_{SW}^{Net} = F(clear)_{SW}^\uparrow - F(clear)_{SW}^\downarrow
-\]
-\\
-
-\noindent
-{\bf 59)  \underline {OSR} Net upward Shortwave flux at the top of the model ($Watts/m^2$) }
-\[
-{\bf OSR}  =  F_{SW,top}^{NET}
-\]                                                                                       
-\noindent
-where top indicates the top of the first model layer used in the shortwave radiation
-routine.
-In the GCM, $p_{SW_{top}}$ = 0 mb.
-\\
-
-\noindent
-{\bf 60)  \underline {OSRCLR} Net upward clearsky Shortwave flux at the top of the model ($Watts/m^2$) }
-\[
-{\bf OSRCLR}  =  F(clearsky)_{SW,top}^{NET}
-\]
-\noindent
-where top indicates the top of the first model layer used in the shortwave radiation
-routine.
-In the GCM, $p_{SW_{top}}$ = 0 mb.
-\\
-
-
-\noindent
-{\bf 61)  \underline {CLDMAS} Convective Cloud Mass Flux ($kg/m^2$) } 
-
-\noindent
-The amount of cloud mass moved per RAS timestep from all convective clouds is written:
-\[
-{\bf CLDMAS} = \eta m_B
-\]
-where $\eta$ is the entrainment, normalized by the cloud base mass flux, and $m_B$ is
-the cloud base mass flux. $m_B$ and $\eta$ are defined explicitly in Section \ref{sec:fizhi:mc}, the 
-description of the convective parameterization.
-\\
-
-
-
-\noindent
-{\bf 62)  \underline {UAVE} Time-Averaged Zonal U-Wind ($m/sec$) }
-
-\noindent
-The diagnostic {\bf UAVE} is simply the time-averaged Zonal U-Wind over
-the {\bf NUAVE} output frequency.  This is contrasted to the instantaneous
-Zonal U-Wind which is archived on the Prognostic Output data stream.
-\[
-{\bf UAVE} = u(\lambda, \phi, level , t)
-\]
-\\
-Note, {\bf UAVE} is computed and stored on the staggered C-grid.
-\\
-
-\noindent
-{\bf 63)  \underline {VAVE} Time-Averaged Meridional V-Wind ($m/sec$) }
-
-\noindent
-The diagnostic {\bf VAVE} is simply the time-averaged Meridional V-Wind over
-the {\bf NVAVE} output frequency.  This is contrasted to the instantaneous
-Meridional V-Wind which is archived on the Prognostic Output data stream.
-\[
-{\bf VAVE} = v(\lambda, \phi, level , t)
-\]
-\\
-Note, {\bf VAVE} is computed and stored on the staggered C-grid.
-\\
-
-\noindent
-{\bf 64)  \underline {TAVE} Time-Averaged Temperature ($Kelvin$) }
-
-\noindent
-The diagnostic {\bf TAVE} is simply the time-averaged Temperature over
-the {\bf NTAVE} output frequency.  This is contrasted to the instantaneous
-Temperature which is archived on the Prognostic Output data stream.
-\[
-{\bf TAVE} = T(\lambda, \phi, level , t)
-\]
-\\
-
-\noindent
-{\bf 65)  \underline {QAVE} Time-Averaged Specific Humidity ($g/kg$) }
-
-\noindent
-The diagnostic {\bf QAVE} is simply the time-averaged Specific Humidity over
-the {\bf NQAVE} output frequency.  This is contrasted to the instantaneous
-Specific Humidity which is archived on the Prognostic Output data stream.
-\[
-{\bf QAVE} = q(\lambda, \phi, level , t)
-\]
-\\
-
-\noindent
-{\bf 66)  \underline {PAVE} Time-Averaged Surface Pressure - PTOP ($mb$) }
-
-\noindent
-The diagnostic {\bf PAVE} is simply the time-averaged Surface Pressure - PTOP over
-the {\bf NPAVE} output frequency.  This is contrasted to the instantaneous
-Surface Pressure - PTOP which is archived on the Prognostic Output data stream.
-\begin{eqnarray*}
-{\bf PAVE} & =  & \pi(\lambda, \phi, level , t) \\
-           & =  & p_s(\lambda, \phi, level , t) - p_T
-\end{eqnarray*}
-\\
-
- 
-\noindent
-{\bf 67)  \underline {QQAVE} Time-Averaged Turbulent Kinetic Energy $(m/sec)^2$ }
- 
-\noindent
-The diagnostic {\bf QQAVE} is simply the time-averaged prognostic Turbulent Kinetic Energy 
-produced by the GCM Turbulence parameterization over
-the {\bf NQQAVE} output frequency.  This is contrasted to the instantaneous
-Turbulent Kinetic Energy which is archived on the Prognostic Output data stream.
-\[
-{\bf QQAVE} = qq(\lambda, \phi, level , t)
-\]
-\\
-Note, {\bf QQAVE} is computed and stored at the ``mass-point'' locations on the staggered C-grid.
-\\
- 
-\noindent
-{\bf 68)  \underline {SWGCLR} Net downward clearsky Shortwave flux at the surface ($Watts/m^2$) }
-
-\noindent
-\begin{eqnarray*}
-{\bf SWGCLR} & =  & F(clearsky)_{SW,Nrphys+1}^{Net} \\
-             & =  & F(clearsky)_{SW,Nrphys+1}^\downarrow - F(clearsky)_{SW,Nrphys+1}^\uparrow
-\end{eqnarray*}
-\noindent
-\\
-where Nrphys+1 indicates the lowest model edge-level, or $p = p_{surf}$.
-$F(clearsky){SW}^\downarrow$ is
-the downward clearsky Shortwave flux and $F(clearsky)_{SW}^\uparrow$ is 
-the upward clearsky Shortwave flux.
-\\
-
-\noindent
-{\bf 69)  \underline {SDIAG1} User-Defined Surface Diagnostic-1 }
-
-\noindent
-The GCM provides Users with a built-in mechanism for archiving user-defined
-diagnostics.  The generic diagnostic array QDIAG located in COMMON /DIAG/, and the associated 
-diagnostic counters and pointers located in COMMON /DIAGP/,
-must be accessable in order to use the user-defined diagnostics (see Section \ref{sec:diagnostics:diagover}).  
-A convenient method for incorporating all necessary COMMON files is to
-include the GCM {\em vstate.com} file in the routine which employs the
-user-defined diagnostics.
-
-\noindent
-In addition to enabling the user-defined diagnostic (ie., CALL SETDIAG(84)), the User must fill 
-the QDIAG array with the desired quantity within the User's
-application program or within modified GCM subroutines, as well as increment
-the diagnostic counter at the time when the diagnostic is updated.  
-The QDIAG location index for {\bf SDIAG1} and its corresponding counter is 
-automatically defined as {\bf ISDIAG1} and {\bf NSDIAG1}, respectively, after the 
-diagnostic has been enabled.  
-The syntax for its use is given by
-\begin{verbatim}
-      do j=1,jm
-      do i=1,im
-      qdiag(i,j,ISDIAG1) = qdiag(i,j,ISDIAG1) + ...
-      enddo
-      enddo
-
-      NSDIAG1 = NSDIAG1 + 1
-\end{verbatim}
-The diagnostics defined in this manner will automatically be archived by the output routines.
-\\
-
-\noindent
-{\bf 70)  \underline {SDIAG2} User-Defined Surface Diagnostic-2 }
-
-\noindent
-The GCM provides Users with a built-in mechanism for archiving user-defined
-diagnostics.  For a complete description refer to Diagnostic \#84.
-The syntax for using the surface SDIAG2 diagnostic is given by
-\begin{verbatim}
-      do j=1,jm
-      do i=1,im
-      qdiag(i,j,ISDIAG2) = qdiag(i,j,ISDIAG2) + ...
-      enddo
-      enddo
-
-      NSDIAG2 = NSDIAG2 + 1
-\end{verbatim}
-The diagnostics defined in this manner will automatically be archived by the output routines.
-\\
-
-\noindent
-{\bf 71)  \underline {UDIAG1} User-Defined Upper-Air Diagnostic-1 }
-
-\noindent
-The GCM provides Users with a built-in mechanism for archiving user-defined
-diagnostics.  For a complete description refer to Diagnostic \#84.
-The syntax for using the upper-air UDIAG1 diagnostic is given by
-\begin{verbatim}
-      do L=1,Nrphys
-      do j=1,jm
-      do i=1,im
-      qdiag(i,j,IUDIAG1+L-1) = qdiag(i,j,IUDIAG1+L-1) + ...
-      enddo
-      enddo
-      enddo
-
-      NUDIAG1 = NUDIAG1 + 1
-\end{verbatim}
-The diagnostics defined in this manner will automatically be archived by the 
-output programs.
-\\
-
-\noindent
-{\bf 72)  \underline {UDIAG2} User-Defined Upper-Air Diagnostic-2 }
-
-\noindent
-The GCM provides Users with a built-in mechanism for archiving user-defined
-diagnostics.  For a complete description refer to Diagnostic \#84.
-The syntax for using the upper-air UDIAG2 diagnostic is given by
-\begin{verbatim}
-      do L=1,Nrphys
-      do j=1,jm
-      do i=1,im
-      qdiag(i,j,IUDIAG2+L-1) = qdiag(i,j,IUDIAG2+L-1) + ...
-      enddo
-      enddo
-      enddo
-
-      NUDIAG2 = NUDIAG2 + 1
-\end{verbatim}
-The diagnostics defined in this manner will automatically be archived by the 
-output programs.
-\\
-
-
-\noindent
-{\bf 73)  \underline {DIABU} Total Diabatic Zonal U-Wind Tendency  ($m/sec/day$) }
-
-\noindent
-{\bf DIABU} is the total time-tendency of the Zonal U-Wind due to Diabatic processes
-and the Analysis forcing.
-\[
-{\bf DIABU} = \pp{u}{t}_{Moist} + \pp{u}{t}_{Turbulence} + \pp{u}{t}_{Analysis} 
-\]
-\\
-
-\noindent
-{\bf 74)  \underline {DIABV} Total Diabatic Meridional V-Wind Tendency  ($m/sec/day$) }
-
-\noindent
-{\bf DIABV} is the total time-tendency of the Meridional V-Wind due to Diabatic processes
-and the Analysis forcing.
-\[
-{\bf DIABV} = \pp{v}{t}_{Moist} + \pp{v}{t}_{Turbulence} + \pp{v}{t}_{Analysis} 
-\]
-\\
-
-\noindent
-{\bf 75)  \underline {DIABT} Total Diabatic Temperature Tendency  ($deg/day$) }
-
-\noindent
-{\bf DIABT} is the total time-tendency of Temperature due to Diabatic processes
-and the Analysis forcing.
-\begin{eqnarray*}
-{\bf DIABT} & = & \pp{T}{t}_{Moist Processes} + \pp{T}{t}_{Shortwave Radiation} \\
-           & + & \pp{T}{t}_{Longwave Radiation} + \pp{T}{t}_{Turbulence} + \pp{T}{t}_{Analysis} 
-\end{eqnarray*}
-\\
-If we define the time-tendency of Temperature due to Diabatic processes as
-\begin{eqnarray*}
-\pp{T}{t}_{Diabatic} & = & \pp{T}{t}_{Moist Processes} + \pp{T}{t}_{Shortwave Radiation} \\
-                     & + & \pp{T}{t}_{Longwave Radiation} + \pp{T}{t}_{Turbulence}
-\end{eqnarray*}
-then, since there are no surface pressure changes due to Diabatic processes, we may write
-\[
-\pp{T}{t}_{Diabatic} = {p^\kappa \over \pi }\pp{\pi \theta}{t}_{Diabatic}
-\]
-where $\theta = T/p^\kappa$.  Thus, {\bf DIABT} may be written as
-\[
-{\bf DIABT} = {p^\kappa \over \pi } \left( \pp{\pi \theta}{t}_{Diabatic} + \pp{\pi \theta}{t}_{Analysis} \right)
-\]
-\\
-
-\noindent
-{\bf 76)  \underline {DIABQ} Total Diabatic Specific Humidity Tendency  ($g/kg/day$) }
-
-\noindent
-{\bf DIABQ} is the total time-tendency of Specific Humidity due to Diabatic processes
-and the Analysis forcing.
-\[
-{\bf DIABQ} = \pp{q}{t}_{Moist Processes} + \pp{q}{t}_{Turbulence} + \pp{q}{t}_{Analysis} 
-\]
-If we define the time-tendency of Specific Humidity due to Diabatic processes as
-\[
-\pp{q}{t}_{Diabatic} = \pp{q}{t}_{Moist Processes} + \pp{q}{t}_{Turbulence}
-\]
-then, since there are no surface pressure changes due to Diabatic processes, we may write
-\[
-\pp{q}{t}_{Diabatic} = {1 \over \pi }\pp{\pi q}{t}_{Diabatic}
-\]
-Thus, {\bf DIABQ} may be written as
-\[
-{\bf DIABQ} = {1 \over \pi } \left( \pp{\pi q}{t}_{Diabatic} + \pp{\pi q}{t}_{Analysis} \right)
-\]
-\\
-
-\noindent
-{\bf 77)  \underline {VINTUQ} Vertically Integrated Moisture Flux ($m/sec \cdot g/kg$) }
-
-\noindent
-The vertically integrated moisture flux due to the zonal u-wind is obtained by integrating
-$u q$ over the depth of the atmosphere at each model timestep, 
-and dividing by the total mass of the column.
-\[
-{\bf VINTUQ} = \frac{ \int_{surf}^{top} u q \rho dz  } { \int_{surf}^{top} \rho dz  }
-\]
-Using $\rho \delta z = -{\delta p \over g} = - {1 \over g} \delta p$, we have 
-\[
-{\bf VINTUQ} = { \int_0^1 u q dp  }
-\]
-\\
-
-
-\noindent
-{\bf 78)  \underline {VINTVQ} Vertically Integrated Moisture Flux ($m/sec \cdot g/kg$) }
-
-\noindent
-The vertically integrated moisture flux due to the meridional v-wind is obtained by integrating
-$v q$ over the depth of the atmosphere at each model timestep, 
-and dividing by the total mass of the column.
-\[
-{\bf VINTVQ} = \frac{ \int_{surf}^{top} v q \rho dz  } { \int_{surf}^{top} \rho dz  }
-\]
-Using $\rho \delta z = -{\delta p \over g} = - {1 \over g} \delta p$, we have 
-\[
-{\bf VINTVQ} = { \int_0^1 v q dp  }
-\]
-\\
-
-
-\noindent
-{\bf 79)  \underline {VINTUT} Vertically Integrated Heat Flux ($m/sec \cdot deg$) }
-
-\noindent
-The vertically integrated heat flux due to the zonal u-wind is obtained by integrating
-$u T$ over the depth of the atmosphere at each model timestep, 
-and dividing by the total mass of the column.
-\[
-{\bf VINTUT} = \frac{ \int_{surf}^{top} u T \rho dz  } { \int_{surf}^{top} \rho dz  }
-\]
-Or,
-\[
-{\bf VINTUT} = { \int_0^1 u T dp  }
-\]
-\\
-
-\noindent
-{\bf 80)  \underline {VINTVT} Vertically Integrated Heat Flux ($m/sec \cdot deg$) }
-
-\noindent
-The vertically integrated heat flux due to the meridional v-wind is obtained by integrating
-$v T$ over the depth of the atmosphere at each model timestep, 
-and dividing by the total mass of the column.
-\[
-{\bf VINTVT} = \frac{ \int_{surf}^{top} v T \rho dz  } { \int_{surf}^{top} \rho dz  }
-\]
-Using $\rho \delta z = -{\delta p \over g} $, we have 
-\[
-{\bf VINTVT} = { \int_0^1 v T dp  }
-\]
-\\
-
-\noindent
-{\bf 81 \underline {CLDFRC} Total 2-Dimensional Cloud Fracton ($0-1$) }
-
-If we define the
-time-averaged random and maximum overlapped cloudiness as CLRO and
-CLMO respectively, then the probability of clear sky associated 
-with random overlapped clouds at any level is (1-CLRO) while the probability of
-clear sky associated with maximum overlapped clouds at any level is (1-CLMO). 
-The total clear sky probability is given by (1-CLRO)*(1-CLMO), thus
-the total cloud fraction at each  level may be obtained by 
-1-(1-CLRO)*(1-CLMO).
-
-At any given level, we may define the clear line-of-site probability by
-appropriately accounting for the maximum and random overlap
-cloudiness.  The clear line-of-site probability is defined to be
-equal to the product of the clear line-of-site probabilities
-associated with random and maximum overlap cloudiness.  The clear
-line-of-site probability $C(p,p^{\prime})$ associated with maximum overlap clouds, 
-from the current pressure $p$ 
-to the model top pressure, $p^{\prime} = p_{top}$, or the model surface pressure, $p^{\prime} = p_{surf}$,
-is simply 1.0 minus the largest maximum overlap cloud value along  the
-line-of-site, ie.
-
-$$1-MAX_p^{p^{\prime}} \left( CLMO_p \right)$$
-
-Thus, even in the time-averaged sense it is assumed that the
-maximum overlap clouds are correlated in the vertical.  The clear
-line-of-site probability associated with random overlap clouds is
-defined to be the product of the clear sky probabilities at each
-level along the line-of-site, ie. 
-
-$$\prod_{p}^{p^{\prime}} \left( 1-CLRO_p \right)$$
-
-The total cloud fraction at a given level associated with a line-
-of-site calculation is given by
-
-$$1-\left( 1-MAX_p^{p^{\prime}} \left[ CLMO_p \right] \right)
-    \prod_p^{p^{\prime}} \left( 1-CLRO_p \right)$$
-
-
-\noindent
-The 2-dimensional net cloud fraction as seen from the top of the
-atmosphere is given by
-\[
-{\bf CLDFRC} = 1-\left( 1-MAX_{l=l_1}^{Nrphys} \left[ CLMO_l \right] \right)
-    \prod_{l=l_1}^{Nrphys} \left( 1-CLRO_l \right)
-\]
-\\
-For a complete description of cloud/radiative interactions, see Section \ref{sec:fizhi:radcloud}.
-
-
-\noindent
-{\bf 82)  \underline {QINT} Total Precipitable Water ($gm/cm^2$) }
-
-\noindent
-The Total Precipitable Water is defined as the vertical integral of the specific humidity,
-given by:
-\begin{eqnarray*}
-{\bf QINT} & = & \int_{surf}^{top} \rho q dz \\
-           & = & {\pi \over g} \int_0^1 q dp
-\end{eqnarray*}
-where we have used the hydrostatic relation 
-$\rho \delta z = -{\delta p \over g} $.
-\\
-
-
-\noindent
-{\bf 83)  \underline {U2M}  Zonal U-Wind at 2 Meter Depth ($m/sec$) }
-
-\noindent
-The u-wind at the 2-meter depth is determined from the similarity theory:
-\[
-{\bf U2M} = {u_* \over k} \psi_{m_{2m}} {u_{sl} \over {W_s}} =
-{ \psi_{m_{2m}} \over {\psi_{m_{sl}} }}u_{sl}
-\]
-
-\noindent
-where $\psi_m(2m)$ is the non-dimensional wind shear at two meters, and the subscript
-$sl$ refers to the height of the top of the surface layer. If the roughness height
-is above two meters, ${\bf U2M}$ is undefined.
-\\
- 
-\noindent
-{\bf 84)  \underline {V2M}  Meridional V-Wind at 2 Meter Depth ($m/sec$) }
-
-\noindent
-The v-wind at the 2-meter depth is a determined from the similarity theory:
-\[
-{\bf V2M} = {u_* \over k} \psi_{m_{2m}} {v_{sl} \over {W_s}} =
-{ \psi_{m_{2m}} \over {\psi_{m_{sl}} }}v_{sl}
-\]
-
-\noindent
-where $\psi_m(2m)$ is the non-dimensional wind shear at two meters, and the subscript
-$sl$ refers to the height of the top of the surface layer. If the roughness height
-is above two meters, ${\bf V2M}$ is undefined.
-\\
- 
-\noindent
-{\bf 85)  \underline {T2M}  Temperature at 2 Meter Depth ($deg \hspace{.1cm} K$) }
-
-\noindent
-The temperature at the 2-meter depth is a determined from the similarity theory:
-\[
-{\bf T2M} = P^{\kappa} ({\theta* \over k} ({\psi_{h_{2m}}+\psi_g}) + \theta_{surf} ) = 
-P^{\kappa}(\theta_{surf} + { {\psi_{h_{2m}}+\psi_g} \over {{\psi_{h_{sl}}+\psi_g}} }
-(\theta_{sl} - \theta_{surf})) 
-\]
-where:
-\[
-\theta_* = - { (\overline{w^{\prime}\theta^{\prime}}) \over {u_*} }
-\]
-
-\noindent
-where $\psi_h(2m)$ is the non-dimensional temperature gradient at two meters, $\psi_g$ is
-the non-dimensional temperature gradient in the viscous sublayer, and the subscript
-$sl$ refers to the height of the top of the surface layer. If the roughness height
-is above two meters, ${\bf T2M}$ is undefined.
-\\
- 
-\noindent
-{\bf 86)  \underline {Q2M}  Specific Humidity at 2 Meter Depth ($g/kg$) }
-
-\noindent
-The specific humidity at the 2-meter depth is determined from the similarity theory:
-\[
-{\bf Q2M} = P^{\kappa} ({q_* \over k} ({\psi_{h_{2m}}+\psi_g}) + q_{surf} ) = 
-P^{\kappa}(q_{surf} + { {\psi_{h_{2m}}+\psi_g} \over {{\psi_{h_{sl}}+\psi_g}} }
-(q_{sl} - q_{surf})) 
-\]
-where:
-\[
-q_* = - { (\overline{w^{\prime}q^{\prime}}) \over {u_*} }
-\]
-
-\noindent
-where $\psi_h(2m)$ is the non-dimensional temperature gradient at two meters, $\psi_g$ is
-the non-dimensional temperature gradient in the viscous sublayer, and the subscript
-$sl$ refers to the height of the top of the surface layer. If the roughness height
-is above two meters, ${\bf Q2M}$ is undefined.
-\\
- 
-\noindent
-{\bf 87)  \underline {U10M}  Zonal U-Wind at 10 Meter Depth ($m/sec$) }
-
-\noindent
-The u-wind at the 10-meter depth is an interpolation between the surface wind
-and the model lowest level wind using the ratio of the non-dimensional wind shear
-at the two levels:
-\[
-{\bf U10M} = {u_* \over k} \psi_{m_{10m}} {u_{sl} \over {W_s}} =
-{ \psi_{m_{10m}} \over {\psi_{m_{sl}} }}u_{sl}
-\]
-
-\noindent
-where $\psi_m(10m)$ is the non-dimensional wind shear at ten meters, and the subscript
-$sl$ refers to the height of the top of the surface layer.
-\\
- 
-\noindent
-{\bf 88)  \underline {V10M}  Meridional V-Wind at 10 Meter Depth ($m/sec$) }
-
-\noindent
-The v-wind at the 10-meter depth is an interpolation between the surface wind
-and the model lowest level wind using the ratio of the non-dimensional wind shear
-at the two levels:
-\[
-{\bf V10M} = {u_* \over k} \psi_{m_{10m}} {v_{sl} \over {W_s}} =
-{ \psi_{m_{10m}} \over {\psi_{m_{sl}} }}v_{sl}
-\]
-
-\noindent
-where $\psi_m(10m)$ is the non-dimensional wind shear at ten meters, and the subscript
-$sl$ refers to the height of the top of the surface layer.
-\\
- 
-\noindent
-{\bf 89)  \underline {T10M}  Temperature at 10 Meter Depth ($deg \hspace{.1cm} K$) }
-
-\noindent
-The temperature at the 10-meter depth is an interpolation between the surface potential 
-temperature and the model lowest level potential temperature using the ratio of the 
-non-dimensional temperature gradient at the two levels:
-\[
-{\bf T10M} = P^{\kappa} ({\theta* \over k} ({\psi_{h_{10m}}+\psi_g}) + \theta_{surf} ) = 
-P^{\kappa}(\theta_{surf} + { {\psi_{h_{10m}}+\psi_g} \over {{\psi_{h_{sl}}+\psi_g}} }
-(\theta_{sl} - \theta_{surf})) 
-\]
-where:
-\[
-\theta_* = - { (\overline{w^{\prime}\theta^{\prime}}) \over {u_*} }
-\]
-
-\noindent
-where $\psi_h(10m)$ is the non-dimensional temperature gradient at two meters, $\psi_g$ is
-the non-dimensional temperature gradient in the viscous sublayer, and the subscript
-$sl$ refers to the height of the top of the surface layer.
-\\
- 
-\noindent
-{\bf 90)  \underline {Q10M}  Specific Humidity at 10 Meter Depth ($g/kg$) }
-
-\noindent
-The specific humidity at the 10-meter depth is an interpolation between the surface specific 
-humidity and the model lowest level specific humidity using the ratio of the 
-non-dimensional temperature gradient at the two levels:
-\[
-{\bf Q10M} = P^{\kappa} ({q_* \over k} ({\psi_{h_{10m}}+\psi_g}) + q_{surf} ) = 
-P^{\kappa}(q_{surf} + { {\psi_{h_{10m}}+\psi_g} \over {{\psi_{h_{sl}}+\psi_g}} }
-(q_{sl} - q_{surf})) 
-\]
-where:
-\[
-q_* =  - { (\overline{w^{\prime}q^{\prime}}) \over {u_*} }
-\]
-
-\noindent
-where $\psi_h(10m)$ is the non-dimensional temperature gradient at two meters, $\psi_g$ is
-the non-dimensional temperature gradient in the viscous sublayer, and the subscript
-$sl$ refers to the height of the top of the surface layer.
-\\
- 
-\noindent
-{\bf 91)  \underline {DTRAIN} Cloud Detrainment Mass Flux ($kg/m^2$) } 
-
-The amount of cloud mass moved per RAS timestep at the cloud detrainment level is written:
-\[
-{\bf DTRAIN} = \eta_{r_D}m_B
-\]
-\noindent
-where $r_D$ is the detrainment level, 
-$m_B$ is the cloud base mass flux, and $\eta$
-is the entrainment, defined in Section \ref{sec:fizhi:mc}.
-\\
-
-\noindent
-{\bf 92)  \underline {QFILL}  Filling of negative Specific Humidity ($g/kg/day$) }
-
-\noindent
-Due to computational errors associated with the numerical scheme used for
-the advection of moisture, negative values of specific humidity may be generated.  The
-specific humidity is checked for negative values after every dynamics timestep.  If negative
-values have been produced, a filling algorithm is invoked which redistributes moisture from
-below.  Diagnostic {\bf QFILL} is equal to the net filling needed
-to eliminate negative specific humidity, scaled to a per-day rate:
-\[
-{\bf QFILL} = q^{n+1}_{final} - q^{n+1}_{initial}
-\]
-where
-\[
-q^{n+1} = (\pi q)^{n+1} / \pi^{n+1}
-\]
-
 \subsection{Dos and Donts}
 
 \subsection{Diagnostics Reference}
