Next: 6.19 RW Basic binary
Up: 6.18 exch2: Extended Cubed
Previous: 6.18.5 Key Variables
Contents
Most of the subroutines particular to exch2 handle the exchanges
themselves and are of the same format as those described in
4.3.3.3 Cube sphere
communication. Like the original routines, they are written as
templates which the local Makefile converts from RX into
RL and RS forms.
The interfaces with the core model subroutines are
EXCH_UV_XY_RX, EXCH_UV_XYZ_RX and
EXCH_XY_RX. They override the standard exchange routines
when genmake2 is run with exch2 option. They in turn
call the local exch2 subroutines EXCH2_UV_XY_RX and
EXCH2_UV_XYZ_RX for two and three-dimensional vector
quantities, and EXCH2_XY_RX and EXCH2_XYZ_RX for two
and three-dimensional scalar quantities. These subroutines set the
dimensions of the area to be exchanged, call EXCH2_RX1_CUBE
for scalars and EXCH2_RX2_CUBE for vectors, and then handle
the singularities at the cube corners.
The separate scalar and vector forms of EXCH2_RX1_CUBE and
EXCH2_RX2_CUBE reflect that the vector-handling subroutine
needs to pass both the and components of the physical vectors.
This swapping arises from the topological folding discussed above, where the
and axes get swapped in some cases, and is not an
issue with the scalar case. These subroutines call
EXCH2_SEND_RX1 and EXCH2_SEND_RX2, which do most of
the work using the variables discussed above.
Next: 6.19 RW Basic binary
Up: 6.18 exch2: Extended Cubed
Previous: 6.18.5 Key Variables
Contents
mitgcm-support@dev.mitgcm.org
Copyright © 2002
Massachusetts Institute of Technology |
|
|