/[MITgcm]/manual/s_phys_pkgs/text/kpp.tex
ViewVC logotype

Diff of /manual/s_phys_pkgs/text/kpp.tex

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.7 by heimbach, Tue Aug 2 22:26:58 2005 UTC revision 1.8 by heimbach, Wed Aug 3 04:00:31 2005 UTC
# Line 59  The scheme has been extensively compared Line 59  The scheme has been extensively compared
59  (see e.g. \cite{lar-eta:97}) and is now coomon in many  (see e.g. \cite{lar-eta:97}) and is now coomon in many
60  ocean models.  ocean models.
61    
62    The current code originates in the NCAR NCOM 1-D code
63    and was kindly provided by Bill Large and Jan Morzel.
64    It has been adapted first to the MITgcm vector code and
65    subsequently to the current parallel code.
66    Adjustment were mainly in conjunction with WRAPPER requirements
67    (domain decomposition and threading capability), to enable
68    automatic differentiation of tangent linear and adjoint code
69    via TAMC.
70    
71  The following sections will describe the KPP package  The following sections will describe the KPP package
72  configuration and compiling (\ref{sec:pkg:kpp:comp}),  configuration and compiling (\ref{sec:pkg:kpp:comp}),
73  the settings and choices of runtime parameters  the settings and choices of runtime parameters
# Line 85  using the \texttt{packages.conf} file by Line 94  using the \texttt{packages.conf} file by
94  or using \texttt{genmake2} adding  or using \texttt{genmake2} adding
95  \texttt{-enable=kpp} or \texttt{-disable=kpp} switches  \texttt{-enable=kpp} or \texttt{-disable=kpp} switches
96  %  %
97    \item
98    \textit{Required packages and CPP options:} \\
99    No additional packages are required, but the MITgcm kernel flag
100    enabling the penetration of shortwave radiation below
101    the surface layer needs to be set in \texttt{CPP\_OPTIONS.h}
102    as follows: \\
103    \texttt{\#define SHORTWAVE\_HEATING}
104    %
105  \end{itemize}  \end{itemize}
106  (see Section \ref{sect:buildingCode}).  (see Section \ref{sect:buildingCode}).
107    
# Line 271  their default values. Line 288  their default values.
288    
289  %----------------------------------------------------------------------  %----------------------------------------------------------------------
290    
291  \subsubsection{Equations  \subsubsection{Equations and key routines
292  \label{sec:pkg:kpp:equations}}  \label{sec:pkg:kpp:equations}}
293    
294  We restrict ourselves to writing out only the essential equations  We restrict ourselves to writing out only the essential equations
295  that relate to main processes and parameters mentioned above.  that relate to main processes and parameters mentioned above.
296  We closely follow the notation of \cite{lar-eta:94}.  We closely follow the notation of \cite{lar-eta:94}.
297    
298  \paragraph{Mixing in the boundary layer} ~ \\  \paragraph{KPP\_CALC:} Top-level routine. \\
299    ~
300    
301    \paragraph{KPP\_MIX:} Intermediate-level routine \\
302    ~
303    
304    \paragraph{BLMIX: Mixing in the boundary layer} ~ \\
305  %  %
306  ~  ~
307    
# Line 343  it has the following form: Line 366  it has the following form:
366    
367  \end{itemize}  \end{itemize}
368    
369    In practice, the routine peforms the following tasks:
 \paragraph{Mixing in the interior} ~ \\  
370  %  %
371  ~  \begin{enumerate}
   
 \paragraph{Implicit time integration} ~ \\  
372  %  %
373  ~  \item
374    compute velocity scales at hbl
375  %----------------------------------------------------------------------  %
376    \item
377  \subsubsection{Key subroutines  find the interior viscosities and derivatives at hbl
378  \label{sec:pkg:kpp:subroutines}}  %
379    \item
380  \paragraph{kpp\_calc:} Top-level routine. \\  compute turbulent velocity scales on the interfaces
381  ~  %
382    \item
383  \paragraph{kpp\_mix:} Intermediate-level routine \\  compute the dimensionless shape functions at the interfaces
384  ~  %
385    \item
386    compute boundary layer diffusivities at the interfaces
387    %
388    \item
389    compute nonlocal transport term
390    %
391    \item
392    find diffusivities at kbl-1 grid level
393    %
394    \end{enumerate}
395    
396  \paragraph{ri\_iwmix:} ~ \\  \paragraph{RI\_IWMIX: Mixing in the interior} ~ \\
397  %  %
398  Compute interior viscosity and diffusivity coefficients due to  Compute interior viscosity and diffusivity coefficients due to
399  %  %
# Line 376  shear instability (dependent on a local Line 406  shear instability (dependent on a local
406  to background internal wave activity, and  to background internal wave activity, and
407  %  %
408  \item  \item
409  to static instability (local Richardson number < 0).  to static instability (local Richardson number $<$ 0).
410  %  %
411  \end{itemize}  \end{itemize}
412    
413    TO BE CONTINUED.
414    
415  \paragraph{bldepth:} ~ \\  \paragraph{BLDEPTH: Boundary layer depth calculation:} ~ \\
416  %  %
417  The oceanic planetary boundary layer depth, \texttt{hbl}, is determined as  The oceanic planetary boundary layer depth, \texttt{hbl}, is determined as
418  the shallowest depth where the bulk Richardson number is  the shallowest depth where the bulk Richardson number is
# Line 404  stable/ustable forcing conditions, and w Line 435  stable/ustable forcing conditions, and w
435  to grid points (caseA), so that conditional branches can be  to grid points (caseA), so that conditional branches can be
436  avoided in later subroutines.  avoided in later subroutines.
437    
438  \paragraph{blmix:} ~ \\  TO BE CONTINUED.
 %  
 Compute boundary layer mixing coefficients.  
 Mixing coefficients within boundary layer depend on surface  
 forcing and the magnitude and gradient of interior mixing below  
 the boundary layer ("matching").  
 %  
 \begin{enumerate}  
 %  
 \item  
 compute velocity scales at hbl  
 %  
 \item  
 find the interior viscosities and derivatives at hbl  
 %  
 \item  
 compute turbulent velocity scales on the interfaces  
 %  
 \item  
 compute the dimensionless shape functions at the interfaces  
 %  
 \item  
 compute boundary layer diffusivities at the interfaces  
 %  
 \item  
 compute nonlocal transport term  
 %  
 \item  
 find diffusivities at kbl-1 grid level  
 %  
 \end{enumerate}  
439    
440  \paragraph{kpp\_calc\_diff\_t/\_s, kpp\_calc\_visc:} ~  \\  \paragraph{KPP\_CALC\_DIFF\_T/\_S, KPP\_CALC\_VISC:} ~  \\
441  %  %
442  Add contribution to net diffusivity/viscosity from  Add contribution to net diffusivity/viscosity from
443  KPP diffusivity/viscosity.  KPP diffusivity/viscosity.
444    
445  \paragraph{kpp\_transport\_t/\_s/\_ptr:} ~ \\  TO BE CONTINUED.
446    
447    \paragraph{KPP\_TRANSPORT\_T/\_S/\_PTR:} ~ \\
448  %  %
449  Add non local KPP transport term (ghat) to diffusive  Add non local KPP transport term (ghat) to diffusive
450  temperature/salinity/passive tracer flux.  temperature/salinity/passive tracer flux.
451  The nonlocal transport term is nonzero only for scalars  The nonlocal transport term is nonzero only for scalars
452  in unstable (convective) forcing conditions.  in unstable (convective) forcing conditions.
453    
454  \paragraph{Flow chart:} ~ \\  TO BE CONTINUED.
455    
456    \paragraph{Implicit time integration} ~ \\
457  %  %
458    TO BE CONTINUED.
459    
460    
461    \paragraph{Penetration of shortwave radiation} ~ \\
462    %
463    TO BE CONTINUED.
464    
465    
466    %----------------------------------------------------------------------
467    
468    \subsubsection{Flow chart
469    \label{sec:pkg:kpp:flowchart}}
470    
471    
472  {\footnotesize  {\footnotesize
473  \begin{verbatim}  \begin{verbatim}
474    

Legend:
Removed from v.1.7  
changed lines
  Added in v.1.8

  ViewVC Help
Powered by ViewVC 1.1.22