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

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 3101 for branches/2011/dev_NOC_UKMO_MERGE/DOC – NEMO

Ignore:
Timestamp:
2011-11-14T18:39:45+01:00 (13 years ago)
Author:
acc
Message:

Branch dev_NOC_UKMO_MERGE #890. Resolved conflicts (most arising from the tracer sub-timestepping)

Location:
branches/2011/dev_NOC_UKMO_MERGE/DOC/TexFiles
Files:
7 edited
1 copied

Legend:

Unmodified
Added
Removed
  • branches/2011/dev_NOC_UKMO_MERGE/DOC/TexFiles/Biblio/Biblio.bib

    r3094 r3101  
    12751275  url = {http://dx.doi.org/10.1016/j.ocemod.2009.12.003}, 
    12761276  issn = {1463-5003}, 
     1277} 
     1278 
     1279@ARTICLE{HollowayOM86, 
     1280  author = {Greg Holloway}, 
     1281  title = {A Shelf Wave/Topographic Pump Drives Mean Coastal Circulation (part I)}, 
     1282  journal = OM, 
     1283  year = {1986}, 
     1284  volume = {68},   
     1285} 
     1286 
     1287@ARTICLE{HollowayJPO92, 
     1288  author = {Greg Holloway}, 
     1289  title = {Representing Topographic Stress for Large-Scale Ocean Models}, 
     1290  journal = JPO, 
     1291  year = {1992}, 
     1292  volume = {22},   
     1293  pages = {1033--1046}, 
     1294} 
     1295 
     1296@ARTICLE{HollowayJPO94, 
     1297  author = {Michael Eby and Greg Holloway}, 
     1298  title = {Sensitivity of a Large-Scale Ocean Model to a Parameterization of Topographic Stress}, 
     1299  journal = JPO, 
     1300  year = {1994}, 
     1301  volume = {24},   
     1302  pages = {2577--2587}, 
     1303} 
     1304 
     1305@ARTICLE{HollowayJGR09, 
     1306  author = {Greg Holloway and Zeliang Wang}, 
     1307  title = {Representing eddy stress in an Arctic Ocean model}, 
     1308  journal = JGR, 
     1309  year = {2009}, 
     1310  doi = {10.1029/2008JC005169},   
     1311} 
     1312 
     1313@ARTICLE{HollowayOM08, 
     1314  author = {Mathew Maltrud and Greg Holloway}, 
     1315  title = {Implementing biharmonic neptune in a global eddying ocean model}, 
     1316  journal = OM, 
     1317  year = {2008}, 
     1318  volume = {21},   
     1319  pages = {22--34}, 
    12771320} 
    12781321 
  • branches/2011/dev_NOC_UKMO_MERGE/DOC/TexFiles/Chapters/Chap_DYN.tex

    r2541 r3101  
    633633$\bullet$ Rotated axes scheme (rot) \citep{Thiem_Berntsen_OM06} (\np{ln\_dynhpg\_rot}=true) 
    634634 
    635 Note that expression \eqref{Eq_dynhpg_sco} is used when the variable volume  
     635$\bullet$ Pressure Jacobian scheme (prj) \citep{Thiem_Berntsen_OM06} (\np{ln\_dynhpg\_prj}=true) 
     636 
     637Note that expression \eqref{Eq_dynhpg_sco} is commonly used when the variable volume  
    636638formulation is activated (\key{vvl}) because in that case, even with a flat bottom,  
    637639the coordinate surfaces are not horizontal but follow the free surface  
    638 \citep{Levier2007}. The other pressure gradient options are not yet available. 
     640\citep{Levier2007}. Only the pressure jacobian scheme (\np{ln\_dynhpg\_prj}=true) is available as an  
     641alternative to the default \np{ln\_dynhpg\_sco}=true when \key{vvl} is active.  The pressure Jacobian scheme uses  
     642a constrained cubic spline to reconstruct the density profile across the water column. This method 
     643maintains the monotonicity between the density nodes and is of a higher order than the linear 
     644interpolation method. The pressure can be calculated by analytical integration of the density profile and 
     645a pressure Jacobian method is used to solve the horizontal pressure gradient. This method should 
     646provide a more accurate calculation of the horizontal pressure gradient than the standard scheme. 
    639647 
    640648%-------------------------------------------------------------------------------------------------------------- 
     
    11621170 
    11631171% ================================================================ 
     1172% Neptune effect  
     1173% ================================================================ 
     1174\section  [Neptune effect (\textit{dynnept})] 
     1175                {Neptune effect (\mdl{dynnept})} 
     1176\label{DYN_nept} 
     1177 
     1178The "Neptune effect" (thus named in \citep{HollowayOM86}) is a 
     1179parameterisation of the potentially large effect of topographic form stress 
     1180(caused by eddies) in driving the ocean circulation. Originally developed for 
     1181low-resolution models, in which it was applied via a Laplacian (second-order) 
     1182diffusion-like term in the momentum equation, it can also be applied in eddy 
     1183permitting or resolving models, in which a more scale-selective bilaplacian 
     1184(fourth-order) implementation is preferred. This mechanism has a 
     1185significant effect on boundary currents (including undercurrents), and the 
     1186upwelling of deep water near continental shelves. 
     1187 
     1188The theoretical basis for the method can be found in  
     1189\citep{HollowayJPO92}, including the explanation of why form stress is not 
     1190necessarily a drag force, but may actually drive the flow.  
     1191\citep{HollowayJPO94} demonstrate the effects of the parameterisation in 
     1192the GFDL-MOM model, at a horizontal resolution of about 1.8 degrees.  
     1193\citep{HollowayOM08} demonstrate the biharmonic version of the 
     1194parameterisation in a global run of the POP model, with an average horizontal 
     1195grid spacing of about 32km. 
     1196 
     1197The NEMO implementation is a simplified form of that supplied by 
     1198Greg Holloway, the testing of which was described in \citep{HollowayJGR09}. 
     1199The major simplification is that a time invariant Neptune velocity 
     1200field is assumed.  This is computed only once, during start-up, and 
     1201made available to the rest of the code via a module.  Vertical 
     1202diffusive terms are also ignored, and the model topography itself 
     1203is used, rather than a separate topographic dataset as in 
     1204\citep{HollowayOM08}.  This implementation is only in the iso-level 
     1205formulation, as is the case anyway for the bilaplacian operator. 
     1206 
     1207The velocity field is derived from a transport stream function given by: 
     1208 
     1209\begin{equation} \label{Eq_dynnept_sf} 
     1210\psi = -fL^2H 
     1211\end{equation} 
     1212 
     1213where $L$ is a latitude-dependant length scale given by: 
     1214 
     1215\begin{equation} \label{Eq_dynnept_ls} 
     1216L = l_1 + (l_2 -l_1)\left ( {1 + \cos 2\phi \over 2 } \right ) 
     1217\end{equation} 
     1218 
     1219where $\phi$ is latitude and $l_1$ and $l_2$ are polar and equatorial length scales respectively. 
     1220Neptune velocity components, $u^*$, $v^*$ are derived from the stremfunction as: 
     1221 
     1222\begin{equation} \label{Eq_dynnept_vel} 
     1223u^* = -{1\over H} {\partial \psi \over \partial y}\ \ \  ,\ \ \ v^* = {1\over H} {\partial \psi \over \partial x} 
     1224\end{equation} 
     1225 
     1226\smallskip 
     1227%----------------------------------------------namdom---------------------------------------------------- 
     1228\namdisplay{namdyn_nept} 
     1229%-------------------------------------------------------------------------------------------------------- 
     1230\smallskip 
     1231 
     1232The Neptune effect is enabled when \np{ln\_neptsimp}=true (default=false). 
     1233\np{ln\_smooth\_neptvel} controls whether a scale-selective smoothing is applied 
     1234to the Neptune effect flow field (default=false) (this smoothing method is as 
     1235used by Holloway).  \np{rn\_tslse} and \np{rn\_tslsp} are the equatorial and 
     1236polar values respectively of the length-scale parameter $L$ used in determining 
     1237the Neptune stream function \eqref{Eq_dynnept_sf} and \eqref{Eq_dynnept_ls}. 
     1238Values at intermediate latitudes are given by a cosine fit, mimicking the 
     1239variation of the deformation radius with latitude.  The default values of 12km 
     1240and 3km are those given in \citep{HollowayJPO94}, appropriate for a coarse 
     1241resolution model. The finer resolution study of \citep{HollowayOM08} increased 
     1242the values of L by a factor of $\sqrt 2$ to 17km and 4.2km, thus doubling the 
     1243stream function for a given topography. 
     1244 
     1245The simple formulation for ($u^*$, $v^*$) can give unacceptably large velocities 
     1246in shallow water, and \citep{HollowayOM08} add an offset to the depth in the 
     1247denominator to control this problem. In this implementation we offer instead (at 
     1248the suggestion of G. Madec) the option of ramping down the Neptune flow field to 
     1249zero over a finite depth range. The switch \np{ln\_neptramp} activates this 
     1250option (default=false), in which case velocities at depths greater than 
     1251\np{rn\_htrmax} are unaltered, but ramp down linearly with depth to zero at a 
     1252depth of \np{rn\_htrmin} (and shallower). 
     1253 
     1254% ================================================================ 
  • branches/2011/dev_NOC_UKMO_MERGE/DOC/TexFiles/Chapters/Chap_MISC.tex

    r2541 r3101  
    253253Note this implementation may be sensitive to the optimization level.  
    254254 
     255\subsection{MPP scalability} 
     256\label{MISC_mppsca} 
     257 
     258The default method of communicating values across the north-fold in distributed memory applications 
     259(\key{mpp\_mpi}) uses a \textsc{MPI\_ALLGATHER} function to exchange values from each processing 
     260region in the northern row with every other processing region in the northern row. This enables a 
     261global width array containing the top 4 rows to be collated on every northern row processor and then 
     262folded with a simple algorithm. Although conceptually simple, this "All to All" communication will 
     263hamper performance scalability for large numbers of northern row processors. From version 3.4 
     264onwards an alternative method is available which only performs direct "Peer to Peer" communications 
     265between each processor and its immediate "neighbours" across the fold line. This is achieved by 
     266using the default \textsc{MPI\_ALLGATHER} method during initialisation to help identify the "active" 
     267neighbours. Stored lists of these neighbours are then used in all subsequent north-fold exchanges to 
     268restrict exchanges to those between associated regions. The collated global width array for each 
     269region is thus only partially filled but is guaranteed to be set at all the locations actually 
     270required by each individual for the fold operation. This alternative method should give identical 
     271results to the default \textsc{ALLGATHER} method and is recommended for large values of \np{jpni}. 
     272The new method is activated by setting \np{ln\_nnogather} to be true ({\bf nammpp}). The 
     273reproducibility of results using the two methods should be confirmed for each new, non-reference 
     274configuration. 
    255275 
    256276% ================================================================ 
  • branches/2011/dev_NOC_UKMO_MERGE/DOC/TexFiles/Chapters/Chap_ZDF.tex

    r2541 r3101  
    11% ================================================================ 
    2 % Chapter Ñ Vertical Ocean Physics (ZDF) 
     2% Chapter Vertical Ocean Physics (ZDF) 
    33% ================================================================ 
    44\chapter{Vertical Ocean Physics (ZDF)} 
     
    539539the clipping factor is of crucial importance for the entrainment depth predicted in  
    540540stably stratified situations, and that its value has to be chosen in accordance  
    541 with the algebraic model for the turbulent ßuxes. The clipping is only activated  
     541with the algebraic model for the turbulent fluxes. The clipping is only activated  
    542542if \np{ln\_length\_lim}=true, and the $c_{lim}$ is set to the \np{rn\_clim\_galp} value. 
    543543 
     
    981981reduced as necessary to ensure stability; these changes are not reported. 
    982982 
     983Limits on the bottom friction coefficient are not imposed if the user has elected to 
     984handle the bottom friction implicitly (see \S\ref{ZDF_bfr_imp}). The number of potential 
     985breaches of the explicit stability criterion are still reported for information purposes. 
     986 
     987% ------------------------------------------------------------------------------------------------------------- 
     988%       Implicit Bottom Friction 
     989% ------------------------------------------------------------------------------------------------------------- 
     990\subsection{Implicit Bottom Friction (\np{ln\_bfrimp}$=$\textit{T})} 
     991\label{ZDF_bfr_imp} 
     992 
     993An optional implicit form of bottom friction has been implemented to improve 
     994model stability. We recommend this option for shelf sea and coastal ocean applications, especially  
     995for split-explicit time splitting. This option can be invoked by setting \np{ln\_bfrimp}  
     996to \textit{true} in the \textit{nambfr} namelist. This option requires \np{ln\_zdfexp} to be \textit{false}  
     997in the \textit{namzdf} namelist.  
     998 
     999This implementation is realised in \mdl{dynzdf\_imp} and \mdl{dynspg\_ts}. In \mdl{dynzdf\_imp}, the  
     1000bottom boundary condition is implemented implicitly. 
     1001 
     1002\begin{equation} \label{Eq_dynzdf_bfr} 
     1003\left.{\left( {\frac{A^{vm} }{e_3 }\ \frac{\partial \textbf{U}_h}{\partial k}} \right)} \right|_{mbk} 
     1004    = \binom{c_{b}^{u}u^{n+1}_{mbk}}{c_{b}^{v}v^{n+1}_{mbk}} 
     1005\end{equation} 
     1006 
     1007where $mbk$ is the layer number of the bottom wet layer. superscript $n+1$ means the velocity used in the 
     1008friction formula is to be calculated, so, it is implicit. 
     1009 
     1010If split-explicit time splitting is used, care must be taken to avoid the double counting of 
     1011the bottom friction in the 2-D barotropic momentum equations. As NEMO only updates the barotropic  
     1012pressure gradient and Coriolis' forcing terms in the 2-D barotropic calculation, we need to remove 
     1013the bottom friction induced by these two terms which has been included in the 3-D momentum trend  
     1014and update it with the latest value. On the other hand, the bottom friction contributed by the 
     1015other terms (e.g. the advection term, viscosity term) has been included in the 3-D momentum equations 
     1016and should not be added in the 2-D barotropic mode. 
     1017 
     1018The implementation of the implicit bottom friction in \mdl{dynspg\_ts} is done in two steps as the 
     1019following: 
     1020 
     1021\begin{equation} \label{Eq_dynspg_ts_bfr1} 
     1022\frac{\textbf{U}_{med}-\textbf{U}^{m-1}}{2\Delta t}=-g\nabla\eta-f\textbf{k}\times\textbf{U}^{m}+c_{b} 
     1023\left(\textbf{U}_{med}-\textbf{U}^{m-1}\right) 
     1024\end{equation} 
     1025\begin{equation} \label{Eq_dynspg_ts_bfr2} 
     1026\frac{\textbf{U}^{m+1}-\textbf{U}_{med}}{2\Delta t}=\textbf{T}+ 
     1027\left(g\nabla\eta^{'}+f\textbf{k}\times\textbf{U}^{'}\right)- 
     10282\Delta t_{bc}c_{b}\left(g\nabla\eta^{'}+f\textbf{k}\times\textbf{u}_{b}\right) 
     1029\end{equation} 
     1030 
     1031where $\textbf{T}$ is the vertical integrated 3-D momentum trend. We assume the leap-frog time-stepping 
     1032is used here. $\Delta t$ is the barotropic mode time step and $\Delta t_{bc}$ is the baroclinic mode time step. 
     1033 $c_{b}$ is the friction coefficient. $\eta$ is the sea surface level calculated in the barotropic loops 
     1034while $\eta^{'}$ is the sea surface level used in the 3-D baroclinic mode. $\textbf{u}_{b}$ is the bottom 
     1035layer horizontal velocity. 
     1036 
     1037 
     1038 
     1039 
    9831040% ------------------------------------------------------------------------------------------------------------- 
    9841041%       Bottom Friction with split-explicit time splitting 
    9851042% ------------------------------------------------------------------------------------------------------------- 
    986 \subsection{Bottom Friction with split-explicit time splitting} 
     1043\subsection{Bottom Friction with split-explicit time splitting (\np{ln\_bfrimp}$=$\textit{F})} 
    9871044\label{ZDF_bfr_ts} 
    9881045 
     
    9931050{\key{dynspg\_flt}). Extra attention is required, however, when using  
    9941051split-explicit time stepping (\key{dynspg\_ts}). In this case the free surface  
    995 equation is solved with a small time step \np{nn\_baro}*\np{rn\_rdt}, while the three  
    996 dimensional prognostic variables are solved with a longer time step that is a  
    997 multiple of \np{rn\_rdt}. The trend in the barotropic momentum due to bottom  
     1052equation is solved with a small time step \np{rn\_rdt}/\np{nn\_baro}, while the three  
     1053dimensional prognostic variables are solved with the longer time step  
     1054of \np{rn\_rdt} seconds. The trend in the barotropic momentum due to bottom  
    9981055friction appropriate to this method is that given by the selected parameterisation  
    9991056($i.e.$ linear or non-linear bottom friction) computed with the evolving velocities  
     
    10181075\end{enumerate} 
    10191076 
    1020 Note that the use of an implicit formulation 
     1077Note that the use of an implicit formulation within the barotropic loop 
    10211078for the bottom friction trend means that any limiting of the bottom friction coefficient  
    10221079in \mdl{dynbfr} does not adversely affect the solution when using split-explicit time  
    10231080splitting. This is because the major contribution to bottom friction is likely to come from  
    1024 the barotropic component which uses the unrestricted value of the coefficient. 
    1025  
    1026 The implicit formulation takes the form: 
     1081the barotropic component which uses the unrestricted value of the coefficient. However, if the 
     1082limiting is thought to be having a major effect (a more likely prospect in coastal and shelf seas 
     1083applications) then the fully implicit form of the bottom friction should be used (see \S\ref{ZDF_bfr_imp} )  
     1084which can be selected by setting \np{ln\_bfrimp} $=$ \textit{true}. 
     1085 
     1086Otherwise, the implicit formulation takes the form: 
    10271087\begin{equation} \label{Eq_zdfbfr_implicitts} 
    10281088 \bar{U}^{t+ \rdt} = \; \left [ \bar{U}^{t-\rdt}\; + 2 \rdt\;RHS \right ] / \left [ 1 - 2 \rdt \;c_b^{u} / H_e \right ]   
     
    10911151The essential goal of the parameterization is to represent the momentum  
    10921152exchange between the barotropic tides and the unrepresented internal waves  
    1093 induced by the tidal ßow over rough topography in a stratified ocean.  
     1153induced by the tidal flow over rough topography in a stratified ocean.  
    10941154In the current version of \NEMO, the map is built from the output of  
    10951155the barotropic global ocean tide model MOG2D-G \citep{Carrere_Lyard_GRL03}. 
  • branches/2011/dev_NOC_UKMO_MERGE/DOC/TexFiles/Namelist/nambfr

    r2540 r3101  
    99   ln_bfr2d    = .false.   !  horizontal variation of the bottom friction coef (read a 2D mask file ) 
    1010   rn_bfrien   =    50.    !  local multiplying factor of bfr (ln_bfr2d=T) 
     11   ln_bfrimp   = .false.   !  implicit bottom friction (requires ln_zdfexp = .false. if true) 
    1112/ 
  • branches/2011/dev_NOC_UKMO_MERGE/DOC/TexFiles/Namelist/namdyn_hpg

    r2540 r3101  
    99   ln_hpg_djc  = .false.   !  s-coordinate (Density Jacobian with Cubic polynomial) 
    1010   ln_hpg_rot  = .false.   !  s-coordinate (ROTated axes scheme) 
     11   ln_hpg_prj  = .false.   !  s-coordinate (Pressure Jacobian scheme) 
    1112   rn_gamma    = 0.e0      !  weighting coefficient (wdj scheme) 
    1213   ln_dynhpg_imp = .false. !  time stepping: semi-implicit time scheme  (T) 
  • branches/2011/dev_NOC_UKMO_MERGE/DOC/TexFiles/Namelist/namtra_ldf

    r2540 r3101  
    99   ln_traldf_hor    =  .false.  !  horizontal (geopotential)            (require "key_ldfslp" when ln_sco=T) 
    1010   ln_traldf_iso    =  .true.   !  iso-neutral                          (require "key_ldfslp") 
    11    ln_traldf_grif   =  .false.  !  griffies skew flux formulation       (require "key_ldfslp")  ! UNDER TEST, DO NOT USE 
    12    ln_traldf_gdia   =  .false.  !  griffies operator strfn diagnostics  (require "key_ldfslp")  ! UNDER TEST, DO NOT USE 
     11   ln_traldf_grif   =  .false.  !  griffies skew flux formulation       (require "key_ldfslp") 
     12   ln_traldf_gdia   =  .false.  !  griffies operator strfn diagnostics  (require "key_ldfslp") 
     13   ln_triad_iso     =  .false.  !  griffies operator calculates triads twice => pure lateral mixing in ML (require "key_ldfslp") 
     14   ln_botmix_grif   =  .false.  !  griffies operator with lateral mixing on bottom (require "key_ldfslp") 
    1315   !                       !  Coefficient 
    1416   rn_aht_0         =  2000.    !  horizontal eddy diffusivity for tracers [m2/s] 
Note: See TracChangeset for help on using the changeset viewer.