ufield2d Derived Type

type, public :: ufield2d


Inherits

type~~ufield2d~~InheritsGraph type~ufield2d ufield2d type~spect2d spect2d type~ufield2d->type~spect2d sp type~parallel_pipe parallel_pipe type~ufield2d->type~parallel_pipe p type~perrors perrors type~ufield2d->type~perrors err type~spect2d->type~parallel_pipe p type~spect2d->type~perrors err type~parallel parallel type~parallel_pipe->type~parallel type~perrors->type~parallel p

Inherited by

type~~ufield2d~~InheritedByGraph type~ufield2d ufield2d type~field2d field2d type~field2d->type~ufield2d rs, ks type~species2d species2d type~species2d->type~field2d q, qn, cu, amu, dcu type~sim_fields sim_fields type~sim_fields->type~field2d qb, qe, psit, psi, div_vpot, reg, fxy, bxyz, cu, dcu, amu, epw, epwb type~simulation simulation type~simulation->type~sim_fields fields type~sim_species sim_species type~simulation->type~sim_species species type~sim_species->type~species2d spe

Contents


Components

TypeVisibility AttributesNameInitial
class(spect2d), public, pointer:: sp=> null()
class(perrors), public, pointer:: err=> null()
class(parallel_pipe), public, pointer:: p=> null()
integer, private :: layout
integer, private :: dim
integer, private :: noff
integer, private :: nd1
integer, private :: nvpx
integer, private :: nd1p
integer, private :: nd2
integer, private :: nvpy
integer, private :: nd2p
real, private, dimension(:,:,:), pointer:: rf=> null()
real, private, dimension(:,:,:), pointer:: buff=> null()

Finalization Procedures

final :: final_ufield2d

  • private subroutine final_ufield2d(this)

    Arguments

    Type IntentOptional AttributesName
    type(ufield2d), intent(inout) :: this

Type-Bound Procedures

generic, public :: new => init_ufield2d, init_ufield2d_k

  • private subroutine init_ufield2d(this, pp, perr, psp, dim, layout, nvpx, nvpy)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(inout) :: this
    class(parallel_pipe), intent(in), pointer:: pp
    class(perrors), intent(in), pointer:: perr
    class(spect2d), intent(in), pointer:: psp
    integer, intent(in) :: dim
    integer, intent(in) :: layout
    integer, intent(in) :: nvpx
    integer, intent(in) :: nvpy
  • private subroutine init_ufield2d_k(this, pp, perr, psp, dim, layout, nd1, nd2, nvpx, nvpy)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(inout) :: this
    class(parallel_pipe), intent(in), pointer:: pp
    class(perrors), intent(in), pointer:: perr
    class(spect2d), intent(in), pointer:: psp
    integer, intent(in) :: dim
    integer, intent(in) :: layout
    integer, intent(in) :: nd1
    integer, intent(in) :: nd2
    integer, intent(in) :: nvpx
    integer, intent(in) :: nvpy

generic, public :: del => end_ufield2d

  • private subroutine end_ufield2d(this)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(inout) :: this

generic, public :: cg => copyguard

  • private subroutine copyguard(this)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(inout) :: this

generic, public :: ag => acopyguard

  • private subroutine acopyguard(this)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(inout) :: this

generic, public :: wr => writehdf5

  • private subroutine writehdf5(this, file, dim)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(inout) :: this
    class(hdf5file), intent(in) :: file
    integer, intent(in) :: dim

generic, public :: psend => pipesend_ufield2d

  • private subroutine pipesend_ufield2d(this, stag, id)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(inout) :: this
    integer, intent(in) :: stag
    integer, intent(inout) :: id

generic, public :: precv => piperecv_ufield2d

  • private subroutine piperecv_ufield2d(this, rtag)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(inout) :: this
    integer, intent(in) :: rtag

generic, public :: as => asc, asa

  • private subroutine asc(this, value)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(inout) :: this
    real, intent(in) :: value
  • private subroutine asa(this, that)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(inout) :: this
    class(ufield2d), intent(in), target:: that

generic, public :: add => sum1, sum2

  • private subroutine sum1(this, a1, a2)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(inout) :: this
    class(ufield2d), intent(in), target:: a1
    class(ufield2d), intent(in), target:: a2
  • private subroutine sum2(this, a1, a2, dim, dim1, dim2)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(inout) :: this
    class(ufield2d), intent(in), target:: a1
    class(ufield2d), intent(in), target:: a2
    integer, intent(in), dimension(:):: dim
    integer, intent(in), dimension(:):: dim1
    integer, intent(in), dimension(:):: dim2

generic, public :: sub => minus1, minus2

  • private subroutine minus1(this, a1, a2)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(inout) :: this
    class(ufield2d), intent(in), target:: a1
    class(ufield2d), intent(in), target:: a2
  • private subroutine minus2(this, a1, a2, dim, dim1, dim2)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(inout) :: this
    class(ufield2d), intent(in), target:: a1
    class(ufield2d), intent(in), target:: a2
    integer, intent(in), dimension(:):: dim
    integer, intent(in), dimension(:):: dim1
    integer, intent(in), dimension(:):: dim2

generic, public :: mult => multiply1, multiply2

  • private subroutine multiply1(this, a1, value)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(inout) :: this
    class(ufield2d), intent(in), target:: a1
    real, intent(in) :: value
  • private subroutine multiply2(this, a1, dim, dim1, value)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(inout) :: this
    class(ufield2d), intent(in), target:: a1
    integer, intent(in), dimension(:):: dim
    integer, intent(in), dimension(:):: dim1
    real, intent(in), dimension(:):: value

procedure, private :: init_ufield2d

  • private subroutine init_ufield2d(this, pp, perr, psp, dim, layout, nvpx, nvpy)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(inout) :: this
    class(parallel_pipe), intent(in), pointer:: pp
    class(perrors), intent(in), pointer:: perr
    class(spect2d), intent(in), pointer:: psp
    integer, intent(in) :: dim
    integer, intent(in) :: layout
    integer, intent(in) :: nvpx
    integer, intent(in) :: nvpy

procedure, private :: init_ufield2d_k

  • private subroutine init_ufield2d_k(this, pp, perr, psp, dim, layout, nd1, nd2, nvpx, nvpy)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(inout) :: this
    class(parallel_pipe), intent(in), pointer:: pp
    class(perrors), intent(in), pointer:: perr
    class(spect2d), intent(in), pointer:: psp
    integer, intent(in) :: dim
    integer, intent(in) :: layout
    integer, intent(in) :: nd1
    integer, intent(in) :: nd2
    integer, intent(in) :: nvpx
    integer, intent(in) :: nvpy

procedure, private :: end_ufield2d

  • private subroutine end_ufield2d(this)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(inout) :: this

procedure, public :: getdim

  • private function getdim(this)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(in) :: this

    Return Value integer

procedure, public :: getlayout

  • private function getlayout(this)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(in) :: this

    Return Value integer

procedure, public :: getnd1p

  • private function getnd1p(this)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(in) :: this

    Return Value integer

procedure, public :: getnvpx

  • private function getnvpx(this)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(in) :: this

    Return Value integer

procedure, public :: getnd1

  • private function getnd1(this)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(in) :: this

    Return Value integer

procedure, public :: getnd2p

  • private function getnd2p(this)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(in) :: this

    Return Value integer

procedure, public :: getnvpy

  • private function getnvpy(this)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(in) :: this

    Return Value integer

procedure, public :: getnd2

  • private function getnd2(this)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(in) :: this

    Return Value integer

procedure, public :: getnoff

  • private function getnoff(this)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(in) :: this

    Return Value integer

procedure, public :: getrf

  • private function getrf(this)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(in) :: this

    Return Value real, dimension(:,:,:), pointer

procedure, private :: writehdf5

  • private subroutine writehdf5(this, file, dim)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(inout) :: this
    class(hdf5file), intent(in) :: file
    integer, intent(in) :: dim

procedure, private :: acopyguard

  • private subroutine acopyguard(this)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(inout) :: this

procedure, private :: copyguard

  • private subroutine copyguard(this)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(inout) :: this

procedure, private :: piperecv_ufield2d

  • private subroutine piperecv_ufield2d(this, rtag)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(inout) :: this
    integer, intent(in) :: rtag

procedure, private :: pipesend_ufield2d

  • private subroutine pipesend_ufield2d(this, stag, id)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(inout) :: this
    integer, intent(in) :: stag
    integer, intent(inout) :: id

procedure, private :: minus1

  • private subroutine minus1(this, a1, a2)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(inout) :: this
    class(ufield2d), intent(in), target:: a1
    class(ufield2d), intent(in), target:: a2

procedure, private :: multiply2

  • private subroutine multiply2(this, a1, dim, dim1, value)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(inout) :: this
    class(ufield2d), intent(in), target:: a1
    integer, intent(in), dimension(:):: dim
    integer, intent(in), dimension(:):: dim1
    real, intent(in), dimension(:):: value

procedure, private :: multiply1

  • private subroutine multiply1(this, a1, value)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(inout) :: this
    class(ufield2d), intent(in), target:: a1
    real, intent(in) :: value

procedure, private :: sum1

  • private subroutine sum1(this, a1, a2)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(inout) :: this
    class(ufield2d), intent(in), target:: a1
    class(ufield2d), intent(in), target:: a2

procedure, private :: asa

  • private subroutine asa(this, that)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(inout) :: this
    class(ufield2d), intent(in), target:: that

procedure, private :: asc

  • private subroutine asc(this, value)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(inout) :: this
    real, intent(in) :: value

procedure, private :: minus2

  • private subroutine minus2(this, a1, a2, dim, dim1, dim2)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(inout) :: this
    class(ufield2d), intent(in), target:: a1
    class(ufield2d), intent(in), target:: a2
    integer, intent(in), dimension(:):: dim
    integer, intent(in), dimension(:):: dim1
    integer, intent(in), dimension(:):: dim2

procedure, private :: sum2

  • private subroutine sum2(this, a1, a2, dim, dim1, dim2)

    Arguments

    Type IntentOptional AttributesName
    class(ufield2d), intent(inout) :: this
    class(ufield2d), intent(in), target:: a1
    class(ufield2d), intent(in), target:: a2
    integer, intent(in), dimension(:):: dim
    integer, intent(in), dimension(:):: dim1
    integer, intent(in), dimension(:):: dim2