Changeset 14644 for NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/doc/latex/NEMO/subfiles/chap_LBC.tex
- Timestamp:
- 2021-03-26T15:33:49+01:00 (3 years ago)
- Location:
- NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final
- Property svn:externals
-
old new 9 9 10 10 # SETTE 11 ^/utils/CI/sette _wave@13990sette11 ^/utils/CI/sette@14244 sette
-
- Property svn:externals
-
NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/doc/latex/NEMO/subfiles
- Property svn:ignore
-
old new 1 *.aux 2 *.bbl 3 *.blg 4 *.fdb* 5 *.fls 6 *.idx 7 *.ilg 1 8 *.ind 2 *.ilg 9 *.lo* 10 *.out 11 *.pdf 12 *.pyg 13 *.tdo 14 *.toc 15 *.xdv 16 cache*
-
- Property svn:ignore
-
NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/doc/latex/NEMO/subfiles/chap_LBC.tex
r14200 r14644 5 5 \chapter{Lateral Boundary Condition (LBC)} 6 6 \label{chap:LBC} 7 8 \thispagestyle{plain}9 7 10 8 \chaptertoc … … 161 159 162 160 %% ================================================================================================= 163 \section [Model domain boundary condition (\forcode{jperio})]{Model domain boundary condition (\protect\jp{jperio})}161 \section{Model domain boundary condition} 164 162 \label{sec:LBC_jperio} 165 163 … … 170 168 171 169 %% ================================================================================================= 172 \subsection [Closed, cyclic (\forcode{=0,1,2,7})]{Closed, cyclic (\protect\jp{jperio}\forcode{=0,1,2,7})}170 \subsection{Closed, cyclic (\forcode{l_Iperio,l_jperio})} 173 171 \label{subsec:LBC_jperio012} 174 172 175 173 The choice of closed or cyclic model domain boundary condition is made by 176 setting \ jp{jperio} to 0, 1, 2 or 7in namelist \nam{cfg}{cfg}.174 setting \forcode{l_Iperio,l_jperio} to true or false in namelist \nam{cfg}{cfg}. 177 175 Each time such a boundary condition is needed, it is set by a call to routine \mdl{lbclnk}. 178 176 The computation of momentum and tracer trends proceeds from $i=2$ to $i=jpi-1$ and from $j=2$ to $j=jpj-1$, … … 183 181 \begin{description} 184 182 185 \item [For closed boundary (\ jp{jperio}\forcode{=0})], solid walls are imposed at all model boundaries:183 \item [For closed boundary (\forcode{l_Iperio = .false.,l_jperio = .false.})], solid walls are imposed at all model boundaries: 186 184 first and last rows and columns are set to zero. 187 185 188 \item [For cyclic east-west boundary (\ jp{jperio}\forcode{=1})], first and last rows are set to zero (closed) whilst the first column is set to186 \item [For cyclic east-west boundary (\forcode{l_Iperio = .true.,l_jperio = .false.})], first and last rows are set to zero (closed) whilst the first column is set to 189 187 the value of the last-but-one column and the last column to the value of the second one 190 188 (\autoref{fig:LBC_jperio}-a). 191 189 Whatever flows out of the eastern (western) end of the basin enters the western (eastern) end. 192 190 193 \item [For cyclic north-south boundary (\ jp{jperio}\forcode{=2})], first and last columns are set to zero (closed) whilst the first row is set to191 \item [For cyclic north-south boundary (\forcode{l_Iperio = .false.,l_jperio = .true.})], first and last columns are set to zero (closed) whilst the first row is set to 194 192 the value of the last-but-one row and the last row to the value of the second one 195 193 (\autoref{fig:LBC_jperio}-a). 196 194 Whatever flows out of the northern (southern) end of the basin enters the southern (northern) end. 197 195 198 \item [Bi-cyclic east-west and north-south boundary (\ jp{jperio}\forcode{=7})] combines cases 1 and 2.196 \item [Bi-cyclic east-west and north-south boundary (\forcode{l_Iperio = .true.,l_jperio = .true.})] combines cases 1 and 2. 199 197 200 198 \end{description} … … 209 207 210 208 %% ================================================================================================= 211 \subsection [North-fold (\forcode{=3,6})]{North-fold (\protect\jp{jperio}\forcode{=3,6})}209 \subsection{North-fold (\forcode{l_NFold = .true.})} 212 210 \label{subsec:LBC_north_fold} 213 211 … … 222 220 \includegraphics[width=0.66\textwidth]{LBC_North_Fold_T} 223 221 \caption[North fold boundary in ORCA 2\deg, 1/4\deg and 1/12\deg]{ 224 North fold boundary with a $T$-point pivot and cyclic east-west boundary condition ($ jperio=4$),222 North fold boundary with a $T$-point pivot and cyclic east-west boundary condition ($c\_NFtype='T'$), 225 223 as used in ORCA 2\deg, 1/4\deg and 1/12\deg. 226 224 Pink shaded area corresponds to the inner domain mask (see text).} … … 288 286 Each processor is independent and without message passing or synchronous process, programs run alone and access just its own local memory. 289 287 For this reason, 290 the main model dimensions are now the local dimensions of the subdomain (pencil) that are named \ jp{jpi}, \jp{jpj}, \jp{jpk}.288 the main model dimensions are now the local dimensions of the subdomain (pencil) that are named \texttt{jpi}, \texttt{jpj}, \texttt{jpk}. 291 289 These dimensions include the internal domain and the overlapping rows. 292 The number of rows to exchange (known as the halo) is usually set to one ( nn\_hls=1, in \mdl{par\_oce},290 The number of rows to exchange (known as the halo) is usually set to one (\forcode{nn_hls=1}, in \mdl{par\_oce}, 293 291 and must be kept to one until further notice). 294 The whole domain dimensions are named \ jp{jpiglo}, \jp{jpjglo} and \jp{jpk}.292 The whole domain dimensions are named \texttt{jpiglo}, \texttt{jpjglo} and \texttt{jpk}. 295 293 The relationship between the whole domain and a sub-domain is: 296 294 \begin{gather*} … … 299 297 \end{gather*} 300 298 301 One also defines variables nldi and nlei which correspond to the internal domain bounds, and the variables nimpp and njmpp which are the position of the (1,1) grid-point in the global domain (\autoref{fig:LBC_mpp}). Note that since the version 4, there is no more extra-halo area as defined in \autoref{fig:LBC_mpp} so \ jp{jpi} is now always equal to nlci and \jp{jpj} equal to nlcj.299 One also defines variables nldi and nlei which correspond to the internal domain bounds, and the variables nimpp and njmpp which are the position of the (1,1) grid-point in the global domain (\autoref{fig:LBC_mpp}). Note that since the version 4, there is no more extra-halo area as defined in \autoref{fig:LBC_mpp} so \texttt{jpi} is now always equal to nlci and \texttt{jpj} equal to nlcj. 302 300 303 301 An element of $T_{l}$, a local array (subdomain) corresponds to an element of $T_{g}$, … … 309 307 with $1 \leq i \leq jpi$, $1 \leq j \leq jpj $ , and $1 \leq k \leq jpk$. 310 308 311 The 1-d arrays $mig(1:\ jp{jpi})$ and $mjg(1:\jp{jpj})$, defined in \rou{dom\_glo} routine (\mdl{domain} module), should be used to get global domain indices from local domain indices. The 1-d arrays, $mi0(1:\jp{jpiglo})$, $mi1(1:\jp{jpiglo})$ and $mj0(1:\jp{jpjglo})$, $mj1(1:\jp{jpjglo})$ have the reverse purpose and should be used to define loop indices expressed in global domain indices (see examples in \mdl{dtastd} module).\\309 The 1-d arrays $mig(1:\texttt{jpi})$ and $mjg(1:\texttt{jpj})$, defined in \rou{dom\_glo} routine (\mdl{domain} module), should be used to get global domain indices from local domain indices. The 1-d arrays, $mi0(1:\texttt{jpiglo})$, $mi1(1:\texttt{jpiglo})$ and $mj0(1:\texttt{jpjglo})$, $mj1(1:\texttt{jpjglo})$ have the reverse purpose and should be used to define loop indices expressed in global domain indices (see examples in \mdl{dtastd} module).\\ 312 310 313 311 The \NEMO\ model computes equation terms with the help of mask arrays (0 on land points and 1 on sea points). It is therefore possible that an MPI subdomain contains only land points. To save ressources, we try to supress from the computational domain as much land subdomains as possible. For example if $N_{mpi}$ processes are allocated to NEMO, the domain decomposition will be given by the following equation: … … 372 370 The number of boundary sets is defined by \np{nb_bdy}{nb\_bdy}. 373 371 Each boundary set can be either defined as a series of straight line segments directly in the namelist 374 (\np[=.false.]{ln_coords_file}{ln\_coords\_file}, and a namelist block \forcode{&nambdy_index} must be included for each set) or read in from a file (\np[=.true.]{ln_coords_file}{ln\_coords\_file}, and a ``\ ifile{coordinates.bdy}'' file must be provided).375 The coordinates.bdy file is analagous to the usual \NEMO\ ``\ ifile{coordinates}'' file.372 (\np[=.false.]{ln_coords_file}{ln\_coords\_file}, and a namelist block \forcode{&nambdy_index} must be included for each set) or read in from a file (\np[=.true.]{ln_coords_file}{ln\_coords\_file}, and a ``\textit{coordinates.bdy.nc}'' file must be provided). 373 The coordinates.bdy file is analagous to the usual \NEMO\ ``\textit{coordinates.nc}'' file. 376 374 In the example above, there are two boundary sets, the first of which is defined via a file and 377 375 the second is defined in the namelist. … … 570 568 571 569 The boundary geometry for each set may be defined in a namelist \forcode{&nambdy_index} or 572 by reading in a ``\ ifile{coordinates.bdy}'' file.573 The \ texttt{nambdy\_index} namelist defines a series of straight-line segments for north, east, south and west boundaries.574 One \ texttt{nambdy\_index} namelist block is needed for each boundary condition defined by indexes.570 by reading in a ``\textit{coordinates.bdy.nc}'' file. 571 The \forcode{&nambdy_index} namelist defines a series of straight-line segments for north, east, south and west boundaries. 572 One \forcode{&nambdy_index} namelist block is needed for each boundary condition defined by indexes. 575 573 For the northern boundary, \texttt{nbdysegn} gives the number of segments, 576 \ jp{jpjnob} gives the $j$ index for each segment and \jp{jpindt} and577 \ jp{jpinft} give the start and end $i$ indices for each segment with similar for the other boundaries.574 \texttt{jpjnob} gives the $j$ index for each segment and \texttt{jpindt} and 575 \texttt{jpinft} give the start and end $i$ indices for each segment with similar for the other boundaries. 578 576 These segments define a list of $T$ grid points along the outermost row of the boundary ($nbr\,=\, 1$). 579 577 The code deduces the $U$ and $V$ points and also the points for $nbr\,>\, 1$ if \np[>1]{nn_rimwidth}{nn\_rimwidth}. 580 578 581 The boundary geometry may also be defined from a ``\ ifile{coordinates.bdy}'' file.579 The boundary geometry may also be defined from a ``\textit{coordinates.bdy.nc}'' file. 582 580 \autoref{fig:LBC_nc_header} gives an example of the header information from such a file, based on the description of geometrical setup given above. 583 581 The file should contain the index arrays for each of the $T$, $U$ and $V$ grids. … … 633 631 \centering 634 632 \includegraphics[width=0.66\textwidth]{LBC_nc_header} 635 \caption[Header for a \ protect\ifile{coordinates.bdy} file]{636 Example of the header for a \ protect\ifile{coordinates.bdy} file}633 \caption[Header for a \textit{coordinates.bdy.nc} file]{ 634 Example of the header for a \textit{coordinates.bdy.nc} file} 637 635 \label{fig:LBC_nc_header} 638 636 \end{figure} … … 684 682 \texttt{<constituent>\_z1} and \texttt{<constituent>\_z2} for the real and imaginary parts of 685 683 SSH, respectively, are expected to be available in file 686 \ ifile{<input>\_grid\_T}, variables \texttt{<constituent>\_u1} and684 \textit{<input>\_grid\_T.nc}, variables \texttt{<constituent>\_u1} and 687 685 \texttt{<constituent>\_u2} for the real and imaginary parts of u, respectively, in file 688 \ ifile{<input>\_grid\_U}, and \texttt{<constituent>\_v1} and686 \textit{<input>\_grid\_U.nc}, and \texttt{<constituent>\_v1} and 689 687 \texttt{<constituent>\_v2} for the real and imaginary parts of v, respectively, in file 690 \ ifile{<input>\_grid\_V}; when data along open boundary segments is used,688 \textit{<input>\_grid\_V.nc}; when data along open boundary segments is used, 691 689 variables \texttt{z1} and \texttt{z2} (real and imaginary part of SSH) are 692 expected to be available in file \ ifile{<input><constituent>\_grid\_T},690 expected to be available in file \textit{<input><constituent>\_grid\_T.nc}, 693 691 variables \texttt{u1} and \texttt{u2} (real and imaginary part of u) in file 694 \ ifile{<input><constituent>\_grid\_U}, and variables \texttt{v1} and \texttt{v2}692 \textit{<input><constituent>\_grid\_U.nc}, and variables \texttt{v1} and \texttt{v2} 695 693 (real and imaginary part of v) in file 696 \ ifile{<input><constituent>\_grid\_V}.\par694 \textit{<input><constituent>\_grid\_V.nc}.\par 697 695 698 696 Note that the barotropic velocity components are assumed to be defined
Note: See TracChangeset
for help on using the changeset viewer.