|
MOM6
|
Complete a halo update on a pair of arrays representing the two components of a vector.
Definition at line 79 of file MOM_domains.F90.
Private functions | |
| subroutine | pass_vector_complete_3d (id_update, u_cmpt, v_cmpt, MOM_dom, direction, stagger, halo, clock) |
| pass_vector_complete_3d completes a halo update for a pair of three-dimensional arrays representing the compontents of a three-dimensional horizontal vector. More... | |
| subroutine | pass_vector_complete_2d (id_update, u_cmpt, v_cmpt, MOM_dom, direction, stagger, halo, clock) |
| pass_vector_complete_2d completes a halo update for a pair of two-dimensional arrays representing the compontents of a two-dimensional horizontal vector. More... | |
Complete a halo update on a pair of arrays representing the two components of a vector.
Definition at line 79 of file MOM_domains.F90.
|
private |
pass_vector_complete_2d completes a halo update for a pair of two-dimensional arrays representing the compontents of a two-dimensional horizontal vector.
| [in] | id_update | The integer id of this update which has been returned from a previous call to pass_var_start. |
| [in,out] | u_cmpt | The nominal zonal (u) component of the vector pair which is having its halos points exchanged. |
| [in,out] | v_cmpt | The nominal meridional (v) component of the vector pair which is having its halos points exchanged. |
| [in,out] | mom_dom | The MOM_domain_type containing the mpp_domain needed to determine where data should be sent. |
| [in] | direction | An optional integer indicating which directions the data should be sent. It is TO_ALL or the sum of any of TO_EAST, TO_WEST, TO_NORTH, and TO_SOUTH, possibly plus SCALAR_PAIR if these are paired non-directional scalars discretized at the typical vector component locations. For example, TO_EAST sends the data to the processor to the east, so the halos on the western side are filled. TO_ALL is the default if omitted. |
| [in] | stagger | An optional flag, which may be one of A_GRID, BGRID_NE, or CGRID_NE, indicating where the two components of the vector are discretized. Omitting stagger is the same as setting it to CGRID_NE. |
| [in] | halo | The size of the halo to update - the full halo by default. |
| [in] | clock | The handle for a cpu time clock that should be started then stopped to time this routine. |
Definition at line 804 of file MOM_domains.F90.
|
private |
pass_vector_complete_3d completes a halo update for a pair of three-dimensional arrays representing the compontents of a three-dimensional horizontal vector.
| [in] | id_update | The integer id of this update which has been returned from a previous call to pass_var_start. |
| [in,out] | u_cmpt | The nominal zonal (u) component of the vector pair which is having its halos points exchanged. |
| [in,out] | v_cmpt | The nominal meridional (v) component of the vector pair which is having its halos points exchanged. |
| [in,out] | mom_dom | The MOM_domain_type containing the mpp_domain needed to determine where data should be sent. |
| [in] | direction | An optional integer indicating which directions the data should be sent. It is TO_ALL or the sum of any of TO_EAST, TO_WEST, TO_NORTH, and TO_SOUTH, possibly plus SCALAR_PAIR if these are paired non-directional scalars discretized at the typical vector component locations. For example, TO_EAST sends the data to the processor to the east, so the halos on the western side are filled. TO_ALL is the default if omitted. |
| [in] | stagger | An optional flag, which may be one of A_GRID, BGRID_NE, or CGRID_NE, indicating where the two components of the vector are discretized. Omitting stagger is the same as setting it to CGRID_NE. |
| [in] | halo | The size of the halo to update - the full halo by default. |
| [in] | clock | The handle for a cpu time clock that should be started then stopped to time this routine. |
Definition at line 858 of file MOM_domains.F90.