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

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

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

revision 1.19 by afe, Mon May 10 21:39:11 2004 UTC revision 1.24 by molod, Mon Jul 18 20:45:27 2005 UTC
# Line 10  Line 10 
10  %%    o automatically inserted at \section{Reference}  %%    o automatically inserted at \section{Reference}
11    
12    
13  \section{exch2: Extended Cubed Sphere \mbox{Topology}}  \subsection{exch2: Extended Cubed Sphere \mbox{Topology}}
14  \label{sec:exch2}  \label{sec:exch2}
15    
16    
17  \subsection{Introduction}  \subsubsection{Introduction}
18    
19  The \texttt{exch2} package extends the original cubed sphere topology  The \texttt{exch2} package extends the original cubed sphere topology
20  configuration to allow more flexible domain decomposition and  configuration to allow more flexible domain decomposition and
# Line 41  of these files with alternate topologies Line 41  of these files with alternate topologies
41  \file{utils/exch2/code-mods} along with the appropriate \file{SIZE.h}  \file{utils/exch2/code-mods} along with the appropriate \file{SIZE.h}
42  file for single-processor execution.  file for single-processor execution.
43    
44  \subsection{Invoking exch2}  \subsubsection{Invoking exch2}
45    
46  To use exch2 with the cubed sphere, the following conditions must be  To use exch2 with the cubed sphere, the following conditions must be
47  met: \\  met: \\
# Line 96  verification/hs94.cs-32x32x5 Line 96  verification/hs94.cs-32x32x5
96    
97    
98    
99  \subsection{Generating Topology Files for exch2}  \subsubsection{Generating Topology Files for exch2}
100  \label{sec:topogen}  \label{sec:topogen}
101    
102  Alternate cubed sphere topologies may be created using the Matlab  Alternate cubed sphere topologies may be created using the Matlab
# Line 182  by their tile number in the topology, se Line 182  by their tile number in the topology, se
182    
183    
184    
185  \subsection{exch2, SIZE.h, and Multiprocessing}  \subsubsection{exch2, SIZE.h, and Multiprocessing}
186  \label{sec:exch2mpi}  \label{sec:exch2mpi}
187    
188  Once the topology configuration files are created, the Fortran  Once the topology configuration files are created, the Fortran
# Line 215  regenerating the topology, \code{\varlin Line 215  regenerating the topology, \code{\varlin
215  The number of tiles MITgcm allocates and how they are distributed  The number of tiles MITgcm allocates and how they are distributed
216  between processors depends on \varlink{nPx}{nPx} and  between processors depends on \varlink{nPx}{nPx} and
217  \varlink{nSx}{nSx}.  \varlink{nSx}{nSx} is the number of tiles per  \varlink{nSx}{nSx}.  \varlink{nSx}{nSx} is the number of tiles per
218  processor and \varlink{nPx}{nPx} is the number of processors.  The total  processor and \varlink{nPx}{nPx} is the number of processors.  The
219  number of tiles in the topology minus those listed in  total number of tiles in the topology minus those listed in
220  \file{blanklist.txt} must equal \code{nSx*nPx}.  Note that in order to  \file{blanklist.txt} must equal \code{nSx*nPx}.  Note that in order to
221  obtain maximum usage from a given number of processors in some cases,  obtain maximum usage from a given number of processors in some cases,
222  this restriction might entail sharing a processor with a tile that would  this restriction might entail sharing a processor with a tile that
223  otherwise be excluded. \\  would otherwise be excluded because it is topographically outside of
224    the domain and therefore in \file{blanklist.txt}.  For example,
225    suppose you have five processors and a domain decomposition of
226    thirty-six tiles that allows you to exclude seven tiles.  To evenly
227    distribute the remaining twenty-nine tiles among five processors, you
228    would have to run one ``dummy'' tile to make an even six tiles per
229    processor.  Such dummy tiles are \emph{not} listed in
230    \file{blanklist.txt}.\\
231    
232    
233  The following is an example of \file{SIZE.h} for the twelve-tile  The following is an example of \file{SIZE.h} for the twelve-tile
234  configuration illustrated in figure \ref{fig:12tile} running on  configuration illustrated in figure \ref{fig:12tile} running on
# Line 263  figure \ref{fig:24tile} running on six p Line 271  figure \ref{fig:24tile} running on six p
271    
272    
273    
274  \subsection{Key Variables}  \subsubsection{Key Variables}
275    
276  The descriptions of the variables are divided up into scalars,  The descriptions of the variables are divided up into scalars,
277  one-dimensional arrays indexed to the tile number, and two and  one-dimensional arrays indexed to the tile number, and two and
# Line 273  scalars are common to every part of the Line 281  scalars are common to every part of the
281  arrays to individual tiles, and the arrays indexed by tile and  arrays to individual tiles, and the arrays indexed by tile and
282  neighbor to relationships between tiles and their neighbors. \\  neighbor to relationships between tiles and their neighbors. \\
283    
284  \subsubsection{Scalars}  Scalars:
285    
286  The number of tiles in a particular topology is set with the parameter  The number of tiles in a particular topology is set with the parameter
287  \code{NTILES}, and the maximum number of neighbors of any tiles by  \code{NTILES}, and the maximum number of neighbors of any tiles by
# Line 296  are stored internally in a range from \c Line 304  are stored internally in a range from \c
304  $x$ axis, and the $y$ axis variable \varlink{bj}{bj} is assumed to  $x$ axis, and the $y$ axis variable \varlink{bj}{bj} is assumed to
305  equal \code{1} throughout the package. \\  equal \code{1} throughout the package. \\
306    
307  \subsubsection{Arrays indexed to tile number}  Arrays indexed to tile number:
308    
309  The following arrays are of length \code{NTILES} and are indexed to  The following arrays are of length \code{NTILES} and are indexed to
310  the tile number, which is indicated in the diagrams with the notation  the tile number, which is indicated in the diagrams with the notation
# Line 349  exchange and numerical handling for the Line 357  exchange and numerical handling for the
357  corners of the cube. \\  corners of the cube. \\
358    
359    
360  \subsubsection{Arrays Indexed to Tile Number and Neighbor}  Arrays Indexed to Tile Number and Neighbor:
361    
362  The following arrays have vectors of length \code{MAX\_NEIGHBOURS} and  The following arrays have vectors of length \code{MAX\_NEIGHBOURS} and
363  \code{NTILES} and describe the orientations between the the tiles. \\  \code{NTILES} and describe the orientations between the the tiles. \\
# Line 493  western halo region of \code{Tn}. The ra Line 501  western halo region of \code{Tn}. The ra
501  width of \code{T}'s northern edge, expanded by one into the halo. \\  width of \code{T}'s northern edge, expanded by one into the halo. \\
502    
503    
504  \subsection{Key Routines}  \subsubsection{Key Routines}
505    
506  Most of the subroutines particular to exch2 handle the exchanges  Most of the subroutines particular to exch2 handle the exchanges
507  themselves and are of the same format as those described in  themselves and are of the same format as those described in

Legend:
Removed from v.1.19  
changed lines
  Added in v.1.24

  ViewVC Help
Powered by ViewVC 1.1.22