GridCase Derived Type

type, public, extends(ESMF_TestParameter) :: GridCase


Inherits

type~~gridcase~~InheritsGraph type~gridcase GridCase type~esmf_testparameter ESMF_TestParameter type~gridcase->type~esmf_testparameter type~realminmax RealMinMax type~gridcase->type~realminmax lon_range, lat_range MpiTestParameter MpiTestParameter type~esmf_testparameter->MpiTestParameter

Components

Type Visibility Attributes Name Initial
character(len=2), public :: dateline
character(len=2), public :: pole
integer, public :: im_world
integer, public, allocatable :: ims(:)
integer, public :: jm_world
integer, public, allocatable :: jms(:)
integer, public :: numPETsRequested
integer, public :: nx
integer, public :: ny
logical, public :: default_decomposition = .false.
real, public, allocatable :: lats(:)
real, public, allocatable :: lons(:)
type(RealMinMax), public :: lat_range
type(RealMinMax), public :: lon_range

Constructor

public interface GridCase

  • public function GridCase_global(nx, ny, im_world, jm_world, dateline, pole, default_decomposition, ims, jms, lons, lats) result(param)

    Arguments

    Type IntentOptional Attributes Name
    integer, intent(in) :: nx
    integer, intent(in) :: ny
    integer, intent(in) :: im_world
    integer, intent(in) :: jm_world
    character(len=2), intent(in) :: dateline
    character(len=2), intent(in) :: pole
    logical, intent(in) :: default_decomposition
    integer, intent(in) :: ims(:)
    integer, intent(in) :: jms(:)
    real, intent(in) :: lons(:)
    real, intent(in) :: lats(:)

    Return Value type(GridCase)

  • public function GridCase_local(nx, ny, im_world, jm_world, lon_range, lat_range, default_decomposition, ims, jms, lons, lats) result(param)

    Arguments

    Type IntentOptional Attributes Name
    integer, intent(in) :: nx
    integer, intent(in) :: ny
    integer, intent(in) :: im_world
    integer, intent(in) :: jm_world
    type(RealMinMax), intent(in) :: lon_range
    type(RealMinMax), intent(in) :: lat_range
    logical, intent(in) :: default_decomposition
    integer, intent(in) :: ims(:)
    integer, intent(in) :: jms(:)
    real, intent(in) :: lons(:)
    real, intent(in) :: lats(:)

    Return Value type(GridCase)


Type-Bound Procedures

procedure, public :: getNumPetsRequested => getNumPETsRequested

  • private pure function getNumPETsRequested(this) result(numPETsRequested)

    Arguments

    Type IntentOptional Attributes Name
    class(ESMF_TestParameter), intent(in) :: this

    Return Value integer

procedure, public :: setNumPetsRequested => setNumPETsRequested

  • private pure subroutine setNumPETsRequested(this, numPETsRequested)

    Arguments

    Type IntentOptional Attributes Name
    class(ESMF_TestParameter), intent(inout) :: this
    integer, intent(in) :: numPETsRequested

procedure, public :: toString

  • public function toString(this) result(string)

    Arguments

    Type IntentOptional Attributes Name
    class(GridCase), intent(in) :: this

    Return Value character(len=:), allocatable

procedure, public :: toStringActual

  • private function toStringActual(this) result(string)

    Arguments

    Type IntentOptional Attributes Name
    class(ESMF_TestParameter), intent(in) :: this

    Return Value character(len=:), allocatable

Source Code

   type, extends(ESMF_TestParameter) :: GridCase
      ! always inputs
      logical :: default_decomposition = .false.
      character(len=2) :: dateline
      character(len=2) :: pole
      type (RealMinMax) :: lon_range
      type (RealMinMax) :: lat_range
      ! inputs/outputs depending on toggle
      integer :: nx
      integer :: ny
      integer :: im_world
      integer :: jm_world
      integer, allocatable :: ims(:)
      integer, allocatable :: jms(:)
      ! outputs
      real, allocatable :: lons(:)
      real, allocatable :: lats(:)
   contains
      procedure :: toString
   end type GridCase