ufield3d Derived Type

type, public :: ufield3d


Inherits

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

Inherited by

type~~ufield3d~~InheritedByGraph type~ufield3d ufield3d type~field3d field3d type~field3d->type~ufield3d rs type~species2d species2d type~species2d->type~field3d q3 type~sim_fields sim_fields type~sim_fields->type~field3d bexyz, bbxyz, psi3d, cu3d type~beam3d beam3d type~beam3d->type~field3d q type~simulation simulation type~simulation->type~sim_fields fields type~sim_species sim_species type~simulation->type~sim_species species type~sim_beams sim_beams type~simulation->type~sim_beams beams type~sim_species->type~species2d spe type~sim_beams->type~beam3d beam

Contents


Components

TypeVisibility AttributesNameInitial
class(spect3d), public, pointer:: sp=> null()
class(perrors), public, pointer:: err=> null()
class(parallel_pipe), public, pointer:: p=> null()
integer, private :: dim
integer, private, dimension(2):: noff
integer, private :: nd1
integer, private :: nvpx
integer, private :: nd1p
integer, private :: nd2
integer, private :: nvpy
integer, private :: nd2p
integer, private :: nd3
integer, private :: nvpz
integer, private :: nd3p
real, private, dimension(:,:,:,:), pointer:: rf=> null()

Finalization Procedures

final :: final_ufield3d

  • private subroutine final_ufield3d(this)

    Arguments

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

Type-Bound Procedures

generic, public :: new => init_ufield3d

  • private subroutine init_ufield3d(this, pp, perr, psp, dim, nvpx, nvpy, nvpz)

    Arguments

    Type IntentOptional AttributesName
    class(ufield3d), intent(inout) :: this
    class(parallel_pipe), intent(in), pointer:: pp
    class(perrors), intent(in), pointer:: perr
    class(spect3d), intent(in), pointer:: psp
    integer, intent(in) :: dim
    integer, intent(in) :: nvpx
    integer, intent(in) :: nvpy
    integer, intent(in) :: nvpz

generic, public :: del => end_ufield3d

  • private subroutine end_ufield3d(this)

    Arguments

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

generic, public :: pcg => copyguard_pipe

  • private subroutine copyguard_pipe(this, rtag, stag, rid, sid)

    Arguments

    Type IntentOptional AttributesName
    class(ufield3d), intent(inout) :: this
    integer, intent(in) :: rtag
    integer, intent(in) :: stag
    integer, intent(inout) :: rid
    integer, intent(inout) :: sid

generic, public :: ag => acopyguard

  • private subroutine acopyguard(this, rtag, stag, id)

    Arguments

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

generic, public :: cp => copyin

  • private subroutine copyin(this, fd2d, lpos, sdim, ddim)

    Arguments

    Type IntentOptional AttributesName
    class(ufield3d), intent(inout) :: this
    class(ufield2d), intent(in), target:: fd2d
    integer, intent(in) :: lpos
    integer, intent(in), dimension(:):: sdim
    integer, intent(in), dimension(:):: ddim

generic, public :: cb => copyout

  • private subroutine copyout(this, fd2d, lpos, sdim, ddim)

    Arguments

    Type IntentOptional AttributesName
    class(ufield3d), intent(inout) :: this
    class(ufield2d), intent(in), target:: fd2d
    integer, intent(in) :: lpos
    integer, intent(in), dimension(:):: sdim
    integer, intent(in), dimension(:):: ddim

generic, public :: ca => copyadd

  • private subroutine copyadd(this, fd2d, lpos, sdim, ddim)

    Arguments

    Type IntentOptional AttributesName
    class(ufield3d), intent(inout) :: this
    class(ufield2d), intent(in), target:: fd2d
    integer, intent(in) :: lpos
    integer, intent(in), dimension(:):: sdim
    integer, intent(in), dimension(:):: ddim

generic, public :: wr => writehdf5_3d, writehdf5_2dslice

  • private subroutine writehdf5_3d(this, file, dim, rtag, stag, id)

    Arguments

    Type IntentOptional AttributesName
    class(ufield3d), intent(inout) :: this
    class(hdf5file), intent(in) :: file
    integer, intent(in) :: dim
    integer, intent(in) :: rtag
    integer, intent(in) :: stag
    integer, intent(inout) :: id
  • private subroutine writehdf5_2dslice(this, file, dim, slice, spos, rtag, stag, id)

    Arguments

    Type IntentOptional AttributesName
    class(ufield3d), intent(inout) :: this
    class(hdf5file), intent(in) :: file
    integer, intent(in) :: dim
    integer, intent(in) :: slice
    integer, intent(in) :: spos
    integer, intent(in) :: rtag
    integer, intent(in) :: stag
    integer, intent(inout) :: id

generic, public :: as => asc, asa

  • private subroutine asc(this, value)

    Arguments

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

    Arguments

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

generic, public :: add => sum

  • private subroutine sum(this, a1, a2)

    Arguments

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

generic, public :: sub => minus

  • private subroutine minus(this, a1, a2)

    Arguments

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

generic, public :: mult => multiply

  • private subroutine multiply(this, a1, value)

    Arguments

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

procedure, private :: init_ufield3d

  • private subroutine init_ufield3d(this, pp, perr, psp, dim, nvpx, nvpy, nvpz)

    Arguments

    Type IntentOptional AttributesName
    class(ufield3d), intent(inout) :: this
    class(parallel_pipe), intent(in), pointer:: pp
    class(perrors), intent(in), pointer:: perr
    class(spect3d), intent(in), pointer:: psp
    integer, intent(in) :: dim
    integer, intent(in) :: nvpx
    integer, intent(in) :: nvpy
    integer, intent(in) :: nvpz

procedure, private :: end_ufield3d

  • private subroutine end_ufield3d(this)

    Arguments

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

procedure, public :: getdim

  • private function getdim(this)

    Arguments

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

    Return Value integer

procedure, public :: getnd1p

  • private function getnd1p(this)

    Arguments

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

    Return Value integer

procedure, public :: getnvpx

  • private function getnvpx(this)

    Arguments

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

    Return Value integer

procedure, public :: getnd1

  • private function getnd1(this)

    Arguments

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

    Return Value integer

procedure, public :: getnd2p

  • private function getnd2p(this)

    Arguments

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

    Return Value integer

procedure, public :: getnvpy

  • private function getnvpy(this)

    Arguments

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

    Return Value integer

procedure, public :: getnd2

  • private function getnd2(this)

    Arguments

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

    Return Value integer

procedure, public :: getnd3p

  • private function getnd3p(this)

    Arguments

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

    Return Value integer

procedure, public :: getnvpz

  • private function getnvpz(this)

    Arguments

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

    Return Value integer

procedure, public :: getnd3

  • private function getnd3(this)

    Arguments

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

    Return Value integer

procedure, public :: getnoff

  • private function getnoff(this)

    Arguments

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

    Return Value integer, dimension(2)

procedure, public :: getrf

  • private function getrf(this)

    Arguments

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

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

procedure, private :: acopyguard

  • private subroutine acopyguard(this, rtag, stag, id)

    Arguments

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

procedure, private :: copyguard_pipe

  • private subroutine copyguard_pipe(this, rtag, stag, rid, sid)

    Arguments

    Type IntentOptional AttributesName
    class(ufield3d), intent(inout) :: this
    integer, intent(in) :: rtag
    integer, intent(in) :: stag
    integer, intent(inout) :: rid
    integer, intent(inout) :: sid

procedure, private :: copyadd

  • private subroutine copyadd(this, fd2d, lpos, sdim, ddim)

    Arguments

    Type IntentOptional AttributesName
    class(ufield3d), intent(inout) :: this
    class(ufield2d), intent(in), target:: fd2d
    integer, intent(in) :: lpos
    integer, intent(in), dimension(:):: sdim
    integer, intent(in), dimension(:):: ddim

procedure, private :: copyout

  • private subroutine copyout(this, fd2d, lpos, sdim, ddim)

    Arguments

    Type IntentOptional AttributesName
    class(ufield3d), intent(inout) :: this
    class(ufield2d), intent(in), target:: fd2d
    integer, intent(in) :: lpos
    integer, intent(in), dimension(:):: sdim
    integer, intent(in), dimension(:):: ddim

procedure, private :: copyin

  • private subroutine copyin(this, fd2d, lpos, sdim, ddim)

    Arguments

    Type IntentOptional AttributesName
    class(ufield3d), intent(inout) :: this
    class(ufield2d), intent(in), target:: fd2d
    integer, intent(in) :: lpos
    integer, intent(in), dimension(:):: sdim
    integer, intent(in), dimension(:):: ddim

procedure, private :: writehdf5_2dslice

  • private subroutine writehdf5_2dslice(this, file, dim, slice, spos, rtag, stag, id)

    Arguments

    Type IntentOptional AttributesName
    class(ufield3d), intent(inout) :: this
    class(hdf5file), intent(in) :: file
    integer, intent(in) :: dim
    integer, intent(in) :: slice
    integer, intent(in) :: spos
    integer, intent(in) :: rtag
    integer, intent(in) :: stag
    integer, intent(inout) :: id

procedure, private :: writehdf5_3d

  • private subroutine writehdf5_3d(this, file, dim, rtag, stag, id)

    Arguments

    Type IntentOptional AttributesName
    class(ufield3d), intent(inout) :: this
    class(hdf5file), intent(in) :: file
    integer, intent(in) :: dim
    integer, intent(in) :: rtag
    integer, intent(in) :: stag
    integer, intent(inout) :: id

procedure, private :: multiply

  • private subroutine multiply(this, a1, value)

    Arguments

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

procedure, private :: minus

  • private subroutine minus(this, a1, a2)

    Arguments

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

procedure, private :: sum

  • private subroutine sum(this, a1, a2)

    Arguments

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

procedure, private :: asa

  • private subroutine asa(this, that)

    Arguments

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

procedure, private :: asc

  • private subroutine asc(this, value)

    Arguments

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