decomp_t Derived Type

type, public :: decomp_t

Domain decomposition descriptor


Inherited by

type~~decomp_t~~InheritedByGraph type~decomp_t decomp_t type~halo_async_t halo_async_t type~halo_async_t->type~decomp_t decomp type~ocean_engine_t ocean_engine_t type~ocean_engine_t->type~decomp_t decomp type~ocean_handle_t ocean_handle_t type~ocean_handle_t->type~ocean_engine_t engine

Components

Type Visibility Attributes Name Initial
logical, public :: has_east = .true.

True if this rank is on the east domain boundary

logical, public :: has_north = .true.

True if this rank is on the north domain boundary

logical, public :: has_south = .true.

True if this rank is on the south domain boundary

logical, public :: has_west = .true.

True if this rank is on the west domain boundary

integer, public :: i_start = 1

Global i-index of this rank’s first physical cell (1-based)

integer, public :: j_start = 1

Global j-index of this rank’s first physical cell (1-based)

integer, public :: nx_global = 0

Global physical cells in x

integer, public :: nx_local = 0

Local physical cells in x for this rank

integer, public :: ny_global = 0

Global physical cells in y

integer, public :: ny_local = 0

Local physical cells in y for this rank

integer, public :: px = 1

Number of processes in x-direction

integer, public :: py = 1

Number of processes in y-direction

integer, public :: rx = 0

This rank’s x-coordinate in the process grid (0-based)

integer, public :: ry = 0

This rank’s y-coordinate in the process grid (0-based)


Source Code

   type :: decomp_t
      !! Domain decomposition descriptor

      integer :: px = 1
         !! Number of processes in x-direction
      integer :: py = 1
         !! Number of processes in y-direction
      integer :: rx = 0
         !! This rank's x-coordinate in the process grid (0-based)
      integer :: ry = 0
         !! This rank's y-coordinate in the process grid (0-based)
      integer :: nx_global = 0
         !! Global physical cells in x
      integer :: ny_global = 0
         !! Global physical cells in y
      integer :: nx_local = 0
         !! Local physical cells in x for this rank
      integer :: ny_local = 0
         !! Local physical cells in y for this rank
      integer :: i_start = 1
         !! Global i-index of this rank's first physical cell (1-based)
      integer :: j_start = 1
         !! Global j-index of this rank's first physical cell (1-based)
      logical :: has_west = .true.
         !! True if this rank is on the west domain boundary
      logical :: has_east = .true.
         !! True if this rank is on the east domain boundary
      logical :: has_south = .true.
         !! True if this rank is on the south domain boundary
      logical :: has_north = .true.
         !! True if this rank is on the north domain boundary
   end type decomp_t