Checksums a pair velocity arrays (2d or 3d) staggered at C-grid locations.
Definition at line 28 of file MOM_checksums.F90.
|
subroutine | chksum_uv_2d (mesg, arrayU, arrayV, HI, haloshift, symmetric, omit_corners, scale, logunit) |
| Checksums a pair of 2d velocity arrays staggered at C-grid locations. More...
|
|
subroutine | chksum_uv_3d (mesg, arrayU, arrayV, HI, haloshift, symmetric, omit_corners, scale, logunit) |
| Checksums a pair of 3d velocity arrays staggered at C-grid locations. More...
|
|
◆ chksum_uv_2d()
subroutine mom_checksums::uvchksum::chksum_uv_2d |
( |
character(len=*), intent(in) |
mesg, |
|
|
real, dimension(hi%isdb:,hi%jsd:), intent(in) |
arrayU, |
|
|
real, dimension(hi%isd:,hi%jsdb:), intent(in) |
arrayV, |
|
|
type(hor_index_type), intent(in) |
HI, |
|
|
integer, intent(in), optional |
haloshift, |
|
|
logical, intent(in), optional |
symmetric, |
|
|
logical, intent(in), optional |
omit_corners, |
|
|
real, intent(in), optional |
scale, |
|
|
integer, intent(in), optional |
logunit |
|
) |
| |
|
private |
Checksums a pair of 2d velocity arrays staggered at C-grid locations.
- Parameters
-
[in] | mesg | Identifying messages |
[in] | hi | A horizontal index type |
[in] | arrayu | The u-component array to be checksummed |
[in] | arrayv | The v-component array to be checksummed |
[in] | haloshift | The width of halos to check (default 0) |
[in] | symmetric | If true, do the checksums on the full symmetric computational domain. |
[in] | omit_corners | If true, avoid checking diagonal shifts |
[in] | scale | A scaling factor for these arrays. |
[in] | logunit | IO unit for checksum logging |
Definition at line 589 of file MOM_checksums.F90.
589 character(len=*),
intent(in) :: mesg
590 type(hor_index_type),
intent(in) :: HI
591 real,
dimension(HI%IsdB:,HI%jsd:),
intent(in) :: arrayU
592 real,
dimension(HI%isd:,HI%JsdB:),
intent(in) :: arrayV
593 integer,
optional,
intent(in) :: haloshift
594 logical,
optional,
intent(in) :: symmetric
596 logical,
optional,
intent(in) :: omit_corners
597 real,
optional,
intent(in) :: scale
598 integer,
optional,
intent(in) :: logunit
600 if (
present(haloshift))
then
601 call chksum_u_2d(arrayu,
'u '//mesg, hi, haloshift, symmetric, &
602 omit_corners, scale, logunit=logunit)
603 call chksum_v_2d(arrayv,
'v '//mesg, hi, haloshift, symmetric, &
604 omit_corners, scale, logunit=logunit)
606 call chksum_u_2d(arrayu,
'u '//mesg, hi, symmetric=symmetric, &
608 call chksum_v_2d(arrayv,
'v '//mesg, hi, symmetric=symmetric, &
◆ chksum_uv_3d()
subroutine mom_checksums::uvchksum::chksum_uv_3d |
( |
character(len=*), intent(in) |
mesg, |
|
|
real, dimension(hi%isdb:,hi%jsd:,:), intent(in) |
arrayU, |
|
|
real, dimension(hi%isd:,hi%jsdb:,:), intent(in) |
arrayV, |
|
|
type(hor_index_type), intent(in) |
HI, |
|
|
integer, intent(in), optional |
haloshift, |
|
|
logical, intent(in), optional |
symmetric, |
|
|
logical, intent(in), optional |
omit_corners, |
|
|
real, intent(in), optional |
scale, |
|
|
integer, intent(in), optional |
logunit |
|
) |
| |
|
private |
Checksums a pair of 3d velocity arrays staggered at C-grid locations.
- Parameters
-
[in] | mesg | Identifying messages |
[in] | hi | A horizontal index type |
[in] | arrayu | The u-component array to be checksummed |
[in] | arrayv | The v-component array to be checksummed |
[in] | haloshift | The width of halos to check (default 0) |
[in] | symmetric | If true, do the checksums on the full symmetric computational domain. |
[in] | omit_corners | If true, avoid checking diagonal shifts |
[in] | scale | A scaling factor for these arrays. |
[in] | logunit | IO unit for checksum logging |
Definition at line 617 of file MOM_checksums.F90.
617 character(len=*),
intent(in) :: mesg
618 type(hor_index_type),
intent(in) :: HI
619 real,
dimension(HI%IsdB:,HI%jsd:,:),
intent(in) :: arrayU
620 real,
dimension(HI%isd:,HI%JsdB:,:),
intent(in) :: arrayV
621 integer,
optional,
intent(in) :: haloshift
622 logical,
optional,
intent(in) :: symmetric
624 logical,
optional,
intent(in) :: omit_corners
625 real,
optional,
intent(in) :: scale
626 integer,
optional,
intent(in) :: logunit
628 if (
present(haloshift))
then
629 call chksum_u_3d(arrayu,
'u '//mesg, hi, haloshift, symmetric, &
630 omit_corners, scale, logunit=logunit)
631 call chksum_v_3d(arrayv,
'v '//mesg, hi, haloshift, symmetric, &
632 omit_corners, scale, logunit=logunit)
634 call chksum_u_3d(arrayu,
'u '//mesg, hi, symmetric=symmetric, &
636 call chksum_v_3d(arrayv,
'v '//mesg, hi, symmetric=symmetric, &
The documentation for this interface was generated from the following file:
- /glade/work/altuntas/cesm.sandboxes/cesm2_2_alpha_X_mom/components/mom/MOM6/src/framework/MOM_checksums.F90