SupportMod Module


Uses

  • module~~supportmod~~UsesGraph module~supportmod SupportMod ESMF ESMF module~supportmod->ESMF gFTL2_StringIntegerMap gFTL2_StringIntegerMap module~supportmod->gFTL2_StringIntegerMap gFTL2_StringVector gFTL2_StringVector module~supportmod->gFTL2_StringVector iso_fortran_env iso_fortran_env module~supportmod->iso_fortran_env module~mapl_basemod MAPL_BaseMod module~supportmod->module~mapl_basemod module~mapl_constants MAPL_Constants module~supportmod->module~mapl_constants module~mapl_exceptionhandling MAPL_ExceptionHandling module~supportmod->module~mapl_exceptionhandling module~mapl_rangemod MAPL_RangeMod module~supportmod->module~mapl_rangemod module~mapl_stringroutehandlemapmod MAPL_StringRouteHandleMapMod module~supportmod->module~mapl_stringroutehandlemapmod module~pfio pFIO module~supportmod->module~pfio mpi mpi module~supportmod->mpi

Used by

  • module~~supportmod~~UsedByGraph module~supportmod SupportMod proc~check_resources check_resources proc~check_resources->module~supportmod program~main~3 main program~main~3->module~supportmod

Variables

Type Visibility Attributes Name Initial
integer, public, parameter :: N_TILES = 6
integer, public :: ierror
integer, public :: local_pet
integer, public :: npx
integer, public :: npy
integer, public :: pet_count
integer, public :: px
integer, public :: py
integer, public :: srcTerm
type(ESMF_RouteHandle), public, target :: default_route_handle
type(StringRouteHandleMap), public :: route_handles

Derived Types

type, public ::  RegridSupport

Components

Type Visibility Attributes Name Initial
character(len=:), public, allocatable :: in_file
character(len=:), public, allocatable :: out_file
integer, public :: IM
integer, public :: JM
integer, public :: LM
integer, public :: NT
integer, public :: Xdim
integer, public :: Ydim
integer, public :: i_1
integer, public :: i_n
integer, public :: j_1
integer, public :: j_n
integer, public :: my_tile
integer, public :: nx_loc
integer, public :: ny_loc
integer, public :: x_1
integer, public :: x_n
integer, public :: y_1
integer, public :: y_n
logical, public :: debug = .false.
real(kind=ESMF_KIND_R8), public, allocatable :: latitudes(:)
real(kind=ESMF_KIND_R8), public, allocatable :: longitudes(:)
type(ESMF_Grid), public :: grid_cubed_sphere
type(ESMF_Grid), public :: grid_lat_lon
type(FileMetadata), public :: cfio_cubed_sphere
type(FileMetadata), public :: cfio_lat_lon
type(NetCDF4_FileFormatter), public :: formatter_cubed_sphere
type(NetCDF4_FileFormatter), public :: formatter_lat_lon
type(StringVector), public :: requested_variables
type(StringVector), public :: scalar_variables
type(StringVector), public :: vector_variables(2)

Type-Bound Procedures

procedure, public :: create_cubed_sphere_grid
procedure, public :: create_esmf_grids
procedure, public :: create_lat_lon_grid
procedure, public :: process_command_line
procedure, public :: read_metadata
procedure, public :: transfer_metadata
procedure, public :: write_data
procedure, public :: write_metadata

Functions

public function all_gather(local) result(global)

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in) :: local

Return Value character(len=:), allocatable

public function run_length_encode(missing) result(str)

Arguments

Type IntentOptional Attributes Name
logical, intent(in) :: missing(:)

Return Value character(len=:), allocatable

public elemental function cosd(x) result(c)

Arguments

Type IntentOptional Attributes Name
real(kind=REAL64), intent(in) :: x

Return Value real(kind=REAL64)

public elemental function sind(x) result(s)

Arguments

Type IntentOptional Attributes Name
real(kind=REAL64), intent(in) :: x

Return Value real(kind=REAL64)


Subroutines

public subroutine create_cubed_sphere_grid(this, rc)

Arguments

Type IntentOptional Attributes Name
class(RegridSupport), intent(inout) :: this
integer, intent(out), optional :: rc

public subroutine create_esmf_grids(this, rc)

Arguments

Type IntentOptional Attributes Name
class(RegridSupport), intent(inout) :: this
integer, intent(out), optional :: rc

public subroutine create_lat_lon_grid(this, rc)

Arguments

Type IntentOptional Attributes Name
class(RegridSupport), intent(inout) :: this
integer, intent(out), optional :: rc

public subroutine process_command_line(regridder, rc)

Arguments

Type IntentOptional Attributes Name
class(RegridSupport) :: regridder
integer, intent(out), optional :: rc

public subroutine read_metadata(this)

Arguments

Type IntentOptional Attributes Name
class(RegridSupport), intent(inout) :: this

public subroutine regrid(srcField, dstField, missing, rc)

Arguments

Type IntentOptional Attributes Name
type(ESMF_Field), intent(in) :: srcField
type(ESMF_Field), intent(inout) :: dstField
real(kind=REAL32), intent(in), optional :: missing
integer, intent(out), optional :: rc

public subroutine transfer_metadata(this)

Arguments

Type IntentOptional Attributes Name
class(RegridSupport), intent(inout) :: this

public subroutine write_data(this, rc)

Arguments

Type IntentOptional Attributes Name
class(RegridSupport), intent(inout), target :: this
integer, intent(out), optional :: rc

public subroutine write_metadata(this, rc)

Arguments

Type IntentOptional Attributes Name
class(RegridSupport), intent(inout) :: this
integer, intent(out), optional :: rc