cable_netcdf_decomp_util_mod Module



Derived Types

type, public ::  dim_spec_t

Components

Type Visibility Attributes Name Initial
character(len=CABLE_NETCDF_MAX_STR_LEN_DIM), public :: name
integer, public :: size

Functions

private function subscript(shape_spec, name)

Arguments

Type IntentOptional Attributes Name
type(dim_spec_t), intent(in) :: shape_spec(:)
character(len=*), intent(in) :: name

Return Value integer

private function patch_land_index(cstart, nap, patch_index)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: cstart(:)
integer, intent(in) :: nap(:)
integer, intent(in) :: patch_index

Return Value integer

public function io_decomp_land_to_x_y(land_x, land_y, mem_shape_spec, var_shape_spec, type) result(decomp)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: land_x(:)
integer, intent(in) :: land_y(:)
type(dim_spec_t), intent(in) :: mem_shape_spec(:)
type(dim_spec_t), intent(in) :: var_shape_spec(:)
integer, intent(in) :: type

Return Value class(cable_netcdf_decomp_t), allocatable

public function io_decomp_patch_to_x_y_patch(land_x, land_y, cstart, nap, mem_shape_spec, var_shape_spec, type) result(decomp)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: land_x(:)
integer, intent(in) :: land_y(:)
integer, intent(in) :: cstart(:)

These are required to (a) get the land index of each patch index, and (b) get the patch offset value relative to cstart

integer, intent(in) :: nap(:)

These are required to (a) get the land index of each patch index, and (b) get the patch offset value relative to cstart

type(dim_spec_t), intent(in) :: mem_shape_spec(:)
type(dim_spec_t), intent(in) :: var_shape_spec(:)
integer, intent(in) :: type

Return Value class(cable_netcdf_decomp_t), allocatable

public function io_decomp_land_to_land(land_decomp_start, mem_shape_spec, var_shape_spec, type) result(decomp)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: land_decomp_start
type(dim_spec_t), intent(in) :: mem_shape_spec(:)
type(dim_spec_t), intent(in) :: var_shape_spec(:)
integer, intent(in) :: type

Return Value class(cable_netcdf_decomp_t), allocatable

public function io_decomp_patch_to_land_patch(land_decomp_start, cstart, nap, mem_shape_spec, var_shape_spec, type) result(decomp)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: land_decomp_start
integer, intent(in) :: cstart(:)
integer, intent(in) :: nap(:)
type(dim_spec_t), intent(in) :: mem_shape_spec(:)
type(dim_spec_t), intent(in) :: var_shape_spec(:)
integer, intent(in) :: type

Return Value class(cable_netcdf_decomp_t), allocatable

public function io_decomp_patch_to_patch(patch_decomp_start, mem_shape_spec, var_shape_spec, type) result(decomp)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: patch_decomp_start
type(dim_spec_t), intent(in) :: mem_shape_spec(:)
type(dim_spec_t), intent(in) :: var_shape_spec(:)
integer, intent(in) :: type

Return Value class(cable_netcdf_decomp_t), allocatable