TwoGrids Derived Type

type, public :: TwoGrids

Type definition for a two-grid system. "f" in variable names stands for fine grid, "c" in variable names stands for coarse grid


Components

Type Visibility Attributes Name Initial
integer(kind=4), public :: nxf_global
integer(kind=4), public :: nyf_global
integer(kind=4), public :: nxf
integer(kind=4), public :: nyf
integer(kind=4), public :: nxc_global
integer(kind=4), public :: nyc_global
integer(kind=4), public :: nxc
integer(kind=4), public :: nyc
real(kind=realdp), public :: hxf
real(kind=realdp), public :: hyf
real(kind=realdp), public :: hxhyf
real(kind=realdp), public :: hxc
real(kind=realdp), public :: hyc
real(kind=realdp), public :: hxhyc
integer, public, dimension(0:npMax - 1) :: if_offset
integer, public, dimension(0:npMax - 1) :: jf_offset
integer, public, dimension(0:npMax - 1) :: if_nn
integer, public, dimension(0:npMax - 1) :: jf_nn
integer, public, dimension(0:npMax - 1) :: ic_offset
integer, public, dimension(0:npMax - 1) :: jc_offset
integer, public, dimension(0:npMax - 1) :: ic_nn
integer, public, dimension(0:npMax - 1) :: jc_nn
real(kind=realdp), public, allocatable, dimension(:,:) :: kxy_f
real(kind=realdp), public, allocatable, dimension(:,:) :: kxy_c
real(kind=realdp), public, allocatable, dimension(:,:) :: kh2_f
real(kind=realdp), public, allocatable, dimension(:,:) :: kh2_c

Constructor

public interface TwoGrids

  • public function FromFine2Coarse(OneGrid)

    A procedure to create a two-grid system from a given fine Gridpara type The wavenumber of the coarse level is restricted from the fine level

    Arguments

    Type IntentOptional Attributes Name
    type(Gridpara), intent(inout) :: OneGrid

    Return Value type(TwoGrids)