1267 |
the cube-sphere grid. In this class of grid a rotation may be required |
the cube-sphere grid. In this class of grid a rotation may be required |
1268 |
between tiles. Aligning the coordinate requiring rotation with the |
between tiles. Aligning the coordinate requiring rotation with the |
1269 |
tile decomposition, allows the coordinate transformation to |
tile decomposition, allows the coordinate transformation to |
1270 |
be embedded within a custom form of the \_EXCH primitive. |
be embedded within a custom form of the \_EXCH primitive. In these |
1271 |
|
cases \_EXCH is mapped to exch2 routines, as detailed in the exch2 |
1272 |
|
package documentation \ref{sec:exch2}. |
1273 |
|
|
1274 |
\item {\bf Reverse Mode} |
\item {\bf Reverse Mode} |
1275 |
The communication primitives \_EXCH and \_GSUM both employ |
The communication primitives \_EXCH and \_GSUM both employ |
1286 |
is set to the value {\em REVERSE\_SIMULATION}. This signifies |
is set to the value {\em REVERSE\_SIMULATION}. This signifies |
1287 |
ti the low-level routines that the adjoint forms of the |
ti the low-level routines that the adjoint forms of the |
1288 |
appropriate communication operation should be performed. |
appropriate communication operation should be performed. |
1289 |
|
|
1290 |
\item {\bf MAX\_NO\_THREADS} |
\item {\bf MAX\_NO\_THREADS} |
1291 |
The variable {\em MAX\_NO\_THREADS} is used to indicate the |
The variable {\em MAX\_NO\_THREADS} is used to indicate the |
1292 |
maximum number of OS threads that a code will use. This |
maximum number of OS threads that a code will use. This |
1391 |
This is done to allow a large number of variations on the exchange |
This is done to allow a large number of variations on the exchange |
1392 |
process to be maintained. One set of variations supports the |
process to be maintained. One set of variations supports the |
1393 |
cube sphere grid. Support for a cube sphere grid in MITgcm is based |
cube sphere grid. Support for a cube sphere grid in MITgcm is based |
1394 |
on having each face of the cube as a separate tile (or tiles). |
on having each face of the cube as a separate tile or tiles. |
1395 |
The exchange routines are then able to absorb much of the |
The exchange routines are then able to absorb much of the |
1396 |
detailed rotation and reorientation required when moving around the |
detailed rotation and reorientation required when moving around the |
1397 |
cube grid. The set of {\em \_EXCH} routines that contain the |
cube grid. The set of {\em \_EXCH} routines that contain the |