block_metadata Derived Type

type, public :: block_metadata

structured-grid block descriptor


Inherits

type~~block_metadata~~InheritsGraph type~block_metadata block_metadata type~subdomain_t subdomain_t type~block_metadata->type~subdomain_t subdomain

Inherited by

type~~block_metadata~~InheritedByGraph type~block_metadata block_metadata type~cylinder_2d cylinder_2d type~cylinder_2d->type~block_metadata metadata type~structured_grid structured_grid type~structured_grid->type~block_metadata metadata type~plate_3d plate_3d type~plate_3d->type~block_metadata metadata type~sphere_1d sphere_1d type~sphere_1d->type~block_metadata metadata type~cylindrical_grid cylindrical_grid type~cylindrical_grid->type~structured_grid type~cylindrical_grid->type~cylindrical_grid scale_factor type~problem_discretization problem_discretization type~problem_discretization->type~structured_grid block_map, vertices, scalar_fields, scalar_flux_divergence type~spherical_grid spherical_grid type~spherical_grid->type~structured_grid type~cartesian_grid cartesian_grid type~cartesian_grid->type~structured_grid type~curvilinear_grid curvilinear_grid type~curvilinear_grid->type~structured_grid metric_tensor type~curvilinear_grid->type~structured_grid

Contents


Components

TypeVisibility AttributesNameInitial
character(len=max_name_length), private :: label_ ='unlabeled'
real(kind=r8k), private :: max_spacing_
type(subdomain_t), private :: subdomain
integer(kind=tag_kind), private :: tag_ =untagged

Type-Bound Procedures

procedure, public :: get_label

  • interface

    private pure module function get_label(this) result(this_label)

    Result is the label of a this block_metadata object

    Arguments

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

    Return Value character(len=:), allocatable

procedure, public :: get_max_spacing

  • interface

    private pure module function get_max_spacing(this) result(this_max_spacing)

    Result contains the maximum allowable grid spacing for this block_metadata object

    Arguments

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

    Return Value real

procedure, public :: get_subdomain

  • interface

    private pure module function get_subdomain(this) result(edges)

    Result contains the coordinate intervals delimiting this block_metadata object

    Arguments

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

    Return Value real(kind=r8k), dimension(space_dimension,num_end_points)

procedure, public :: get_tag

  • interface

    private elemental module function get_tag(this) result(this_tag)

    Result is the identification tag of a this block_metadata object

    Arguments

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

    Return Value integer(kind=tag_kind)

procedure, public :: set_label

  • interface

    private pure module subroutine set_label(this, label)

    Define the label of a this block_metadata object

    Arguments

    Type IntentOptional AttributesName
    class(block_metadata), intent(inout) :: this
    character(len=*), intent(in) :: label

procedure, public :: set_max_spacing

  • interface

    private elemental module subroutine set_max_spacing(this, max_spacing)

    Define the maximum allowable grid spacing

    Arguments

    Type IntentOptional AttributesName
    class(block_metadata), intent(inout) :: this
    real(kind=r8k), intent(in) :: max_spacing

procedure, public :: set_subdomain

  • interface

    private module subroutine set_subdomain(this, subdomain)

    Define the end point of a block-structured grid coordinate direction

    Arguments

    Type IntentOptional AttributesName
    class(block_metadata), intent(inout) :: this
    type(subdomain_t), intent(in) :: subdomain

procedure, public :: set_tag

  • interface

    private elemental module subroutine set_tag(this, tag)

    Define the identification tag of a this block_metadata object

    Arguments

    Type IntentOptional AttributesName
    class(block_metadata), intent(inout) :: this
    integer, intent(in) :: tag