FieldDelta Derived Type

type, public :: FieldDelta


Inherits

type~~fielddelta~~InheritsGraph type~fielddelta FieldDelta ESMF_Geom ESMF_Geom type~fielddelta->ESMF_Geom geom ESMF_TypeKind_Flag ESMF_TypeKind_Flag type~fielddelta->ESMF_TypeKind_Flag typekind

Inherited by

type~~fielddelta~~InheritedByGraph type~fielddelta FieldDelta type~fieldbundledelta FieldBundleDelta type~fieldbundledelta->type~fielddelta field_delta

Constructor

public interface FieldDelta

  • private function new_FieldDelta(geom, typekind, num_levels, units) result(field_delta)

    Arguments

    Type IntentOptional Attributes Name
    type(ESMF_Geom), intent(in), optional :: geom
    type(ESMF_TypeKind_Flag), intent(in), optional :: typekind
    integer, intent(in), optional :: num_levels
    character(len=*), intent(in), optional :: units

    Return Value type(FieldDelta)


Type-Bound Procedures

generic, public :: initialize => initialize_field_delta

  • private subroutine initialize_field_delta(this, f_a, f_b, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(FieldDelta), intent(out) :: this
    type(ESMF_Field), intent(in) :: f_a
    type(ESMF_Field), intent(in) :: f_b
    integer, intent(out), optional :: rc

generic, public :: initialize => initialize_field_delta_degenerate

  • private subroutine initialize_field_delta_degenerate(this, f, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(FieldDelta), intent(out) :: this
    type(ESMF_Field), intent(in) :: f
    integer, intent(out), optional :: rc

procedure, public :: initialize_field_delta

  • private subroutine initialize_field_delta(this, f_a, f_b, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(FieldDelta), intent(out) :: this
    type(ESMF_Field), intent(in) :: f_a
    type(ESMF_Field), intent(in) :: f_b
    integer, intent(out), optional :: rc

procedure, public :: initialize_field_delta_degenerate

  • private subroutine initialize_field_delta_degenerate(this, f, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(FieldDelta), intent(out) :: this
    type(ESMF_Field), intent(in) :: f
    integer, intent(out), optional :: rc

procedure, public :: reallocate_field

  • private subroutine reallocate_field(this, field, ignore, unusable, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(FieldDelta), intent(in) :: this
    type(ESMF_Field), intent(inout) :: field
    character(len=*), intent(in), optional :: ignore
    class(KeywordEnforcer), intent(in), optional :: unusable
    integer, intent(out), optional :: rc

procedure, public :: reallocate_fields

  • private subroutine reallocate_fields(this, fieldList, ignore, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(FieldDelta), intent(in) :: this
    type(ESMF_Field), intent(inout) :: fieldList(:)
    character(len=*), intent(in) :: ignore
    integer, intent(out), optional :: rc

procedure, public :: update_field

  • private subroutine update_field(this, field, ignore, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(FieldDelta), intent(in) :: this
    type(ESMF_Field), intent(inout) :: field
    character(len=*), intent(in), optional :: ignore
    integer, intent(out), optional :: rc

procedure, public :: update_fields

  • private subroutine update_fields(this, fieldList, ignore, rc)

    Arguments

    Type IntentOptional Attributes Name
    class(FieldDelta), intent(in) :: this
    type(ESMF_Field), intent(inout) :: fieldList(:)
    character(len=*), intent(in) :: ignore
    integer, intent(out), optional :: rc

Source Code

   type :: FieldDelta
      private
      ! intrinsic
      type(ESMF_Geom), allocatable :: geom
      type(ESMF_TypeKind_Flag), allocatable :: typekind
      ! info attributes
      integer, allocatable :: num_levels
      character(:), allocatable :: units

!#      logical :: geom_coords_changed = .false.
!#      logical :: vgrid_coords_changed = .false.
   contains
      procedure :: initialize_field_delta
      procedure :: initialize_field_delta_degenerate
      generic :: initialize => initialize_field_delta
      generic :: initialize => initialize_field_delta_degenerate
      procedure :: update_field
      procedure :: update_fields
      procedure :: reallocate_field
      procedure :: reallocate_fields
   end type FieldDelta