geometry_interface Module


Used by

  • module~~geometry_interface~~UsedByGraph module~geometry_interface geometry_interface module~geometry_implementation geometry_implementation module~geometry_implementation->module~geometry_interface module~cartesian_grid_interface cartesian_grid_interface module~cartesian_grid_interface->module~geometry_interface module~structured_grid_interface structured_grid_interface module~cartesian_grid_interface->module~structured_grid_interface module~cylinder_2d_interface cylinder_2d_interface module~cylinder_2d_interface->module~geometry_interface module~sphere_1d_interface sphere_1d_interface module~sphere_1d_interface->module~geometry_interface module~problem_discretization_interface problem_discretization_interface module~problem_discretization_interface->module~geometry_interface module~problem_discretization_interface->module~cylinder_2d_interface module~problem_discretization_interface->module~sphere_1d_interface module~plate_3d_interface plate_3d_interface module~problem_discretization_interface->module~plate_3d_interface module~problem_discretization_interface->module~structured_grid_interface module~cylindrical_grid_interface cylindrical_grid_interface module~cylindrical_grid_interface->module~geometry_interface module~cylindrical_grid_interface->module~structured_grid_interface module~spherical_grid_interface spherical_grid_interface module~spherical_grid_interface->module~geometry_interface module~spherical_grid_interface->module~structured_grid_interface module~plate_3d_interface->module~geometry_interface module~structured_grid_interface->module~geometry_interface module~spherical_grid_implementation spherical_grid_implementation module~spherical_grid_implementation->module~spherical_grid_interface module~spherical_grid_implementation->module~plate_3d_interface module~define_problem_discretization define_problem_discretization module~define_problem_discretization->module~problem_discretization_interface module~plate_3d_implementation plate_3d_implementation module~plate_3d_implementation->module~plate_3d_interface module~cylinder_2d_implementation cylinder_2d_implementation module~cylinder_2d_implementation->module~cylinder_2d_interface proc~initialize_from_plate_3d initialize_from_plate_3d proc~initialize_from_plate_3d->module~cartesian_grid_interface proc~initialize_from_sphere_1d initialize_from_sphere_1d proc~initialize_from_sphere_1d->module~spherical_grid_interface proc~evaluate evaluate proc~evaluate->module~cartesian_grid_interface module~cartesian_grid_implementation cartesian_grid_implementation module~cartesian_grid_implementation->module~cartesian_grid_interface module~cartesian_grid_implementation->module~plate_3d_interface proc~initialize_from_cylinder_2d initialize_from_cylinder_2d proc~initialize_from_cylinder_2d->module~cylindrical_grid_interface module~cylindrical_grid_implementation cylindrical_grid_implementation module~cylindrical_grid_implementation->module~cylindrical_grid_interface module~cylindrical_grid_implementation->module~plate_3d_interface module~curvilinear_grid_interface curvilinear_grid_interface module~curvilinear_grid_interface->module~structured_grid_interface proc~laplacian laplacian proc~laplacian->module~cartesian_grid_interface module~structured_grid_implementation structured_grid_implementation module~structured_grid_implementation->module~structured_grid_interface module~sphere_1d_implementation sphere_1d_implementation module~sphere_1d_implementation->module~sphere_1d_interface

Contents


Interfaces

interface

  • private module subroutine build(this, grid_description_file)

    template method pattern for building a geometry description from a json_file

    Arguments

    Type IntentOptional AttributesName
    class(geometry), intent(out) :: this
    character(len=*), intent(in) :: grid_description_file

Abstract Interfaces

abstract interface

  • private subroutine set_json_file(this, grid_description_file)

    define json_file problem description

    Arguments

    Type IntentOptional AttributesName
    class(geometry), intent(out) :: this
    character(len=*), intent(in) :: grid_description_file

abstract interface

  • private subroutine set_metadata(this)

    read grid metadata from json_file stored in child class

    Arguments

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

Derived Types

type, public, abstract :: geometry

Abstract representation of the problem geometry in a problem-independent fashion; defer case-specific steps to child classes

Type-Bound Procedures

procedure, public :: build
procedure(set_metadata), public :: set_block_metadata
procedure(set_json_file), public :: set_grid_specification