SELF_Mesh_2D Module


Uses

  • module~~self_mesh_2d~2~~UsesGraph module~self_mesh_2d~2 SELF_Mesh_2D module~self_mesh_2d_t SELF_Mesh_2D_t module~self_mesh_2d~2->module~self_mesh_2d_t iso_c_binding iso_c_binding module~self_mesh_2d~2->iso_c_binding module~self_gpu SELF_GPU module~self_mesh_2d~2->module~self_gpu module~self_mesh_2d_t->iso_c_binding module~self_supportroutines SELF_SupportRoutines module~self_mesh_2d_t->module~self_supportroutines module~self_constants SELF_Constants module~self_mesh_2d_t->module~self_constants module~self_mesh SELF_Mesh module~self_mesh_2d_t->module~self_mesh HDF5 HDF5 module~self_mesh_2d_t->HDF5 module~self_lagrange SELF_Lagrange module~self_mesh_2d_t->module~self_lagrange module~self_quadrature SELF_Quadrature module~self_mesh_2d_t->module~self_quadrature module~self_hdf5 SELF_HDF5 module~self_mesh_2d_t->module~self_hdf5 module~self_domaindecomposition~2 SELF_DomainDecomposition module~self_mesh_2d_t->module~self_domaindecomposition~2 module~self_gpu->iso_c_binding module~self_gpu_enums SELF_GPU_enums module~self_gpu->module~self_gpu_enums module~self_supportroutines->module~self_constants iso_fortran_env iso_fortran_env module~self_supportroutines->iso_fortran_env module~self_constants->iso_c_binding module~self_constants->iso_fortran_env module~self_mesh->iso_c_binding module~self_mesh->module~self_constants module~self_mesh->module~self_domaindecomposition~2 module~self_gpu_enums->iso_c_binding module~self_lagrange->iso_c_binding module~self_lagrange->module~self_gpu module~self_lagrange->module~self_constants module~self_lagrange->iso_fortran_env module~self_lagrange_t SELF_Lagrange_t module~self_lagrange->module~self_lagrange_t module~self_quadrature->module~self_constants module~self_quadrature->iso_fortran_env module~self_hdf5->module~self_constants module~self_hdf5->HDF5 module~self_hdf5->iso_fortran_env mpi mpi module~self_hdf5->mpi module~self_domaindecomposition~2->iso_c_binding module~self_domaindecomposition_t SELF_DomainDecomposition_t module~self_domaindecomposition~2->module~self_domaindecomposition_t module~self_domaindecomposition~2->mpi module~self_lagrange_t->iso_c_binding module~self_lagrange_t->module~self_supportroutines module~self_lagrange_t->module~self_constants module~self_lagrange_t->HDF5 module~self_lagrange_t->module~self_quadrature module~self_lagrange_t->module~self_hdf5 module~self_lagrange_t->iso_fortran_env module~self_domaindecomposition_t->iso_c_binding module~self_domaindecomposition_t->module~self_supportroutines module~self_domaindecomposition_t->module~self_constants module~self_domaindecomposition_t->module~self_lagrange module~self_domaindecomposition_t->mpi

Used by

  • module~~self_mesh_2d~2~~UsedByGraph module~self_mesh_2d~2 SELF_Mesh_2D module~self_geometry_2d SELF_Geometry_2D module~self_geometry_2d->module~self_mesh_2d~2 module~self_dgmodel2d SELF_DGModel2D module~self_dgmodel2d->module~self_mesh_2d~2 module~self_dgmodel2d->module~self_geometry_2d module~self_dgmodel2d_t SELF_DGModel2D_t module~self_dgmodel2d->module~self_dgmodel2d_t module~self_esatmo2d SELF_ESAtmo2D module~self_esatmo2d->module~self_mesh_2d~2 module~self_esatmo2d->module~self_geometry_2d module~self_ecdgmodel2d_t SELF_ECDGModel2D_t module~self_esatmo2d->module~self_ecdgmodel2d_t module~self_esatmo2d_t SELF_ESAtmo2D_t module~self_esatmo2d->module~self_esatmo2d_t module~self_ecadvection2d~2 SELF_ECAdvection2D module~self_ecadvection2d~2->module~self_mesh_2d~2 module~self_ecadvection2d~2->module~self_geometry_2d module~self_ecadvection2d~2->module~self_ecdgmodel2d_t module~self_ecadvection2d_t SELF_ECAdvection2D_t module~self_ecadvection2d~2->module~self_ecadvection2d_t module~self_mappedvector_2d_t SELF_MappedVector_2D_t module~self_mappedvector_2d_t->module~self_mesh_2d~2 module~self_mappedvector_2d_t->module~self_geometry_2d module~self_dgmodel2d_t->module~self_mesh_2d~2 module~self_dgmodel2d_t->module~self_geometry_2d module~self_mappedscalar_2d SELF_MappedScalar_2D module~self_dgmodel2d_t->module~self_mappedscalar_2d module~self_mappedvector_2d~2 SELF_MappedVector_2D module~self_dgmodel2d_t->module~self_mappedvector_2d~2 module~self_mappedscalar_2d_t SELF_MappedScalar_2D_t module~self_mappedscalar_2d_t->module~self_mesh_2d~2 module~self_mappedscalar_2d_t->module~self_geometry_2d module~self_points_t SELF_Points_t module~self_points_t->module~self_geometry_2d module~self_points_t->module~self_mappedscalar_2d module~self_ecdgmodel2d_t->module~self_dgmodel2d module~self_mappedtwopointvector_2d SELF_MappedTwoPointVector_2D module~self_ecdgmodel2d_t->module~self_mappedtwopointvector_2d module~self_lineareuler2d_t self_LinearEuler2D_t module~self_lineareuler2d_t->module~self_dgmodel2d module~self_mappedtwopointvector_2d_t SELF_MappedTwoPointVector_2D_t module~self_mappedtwopointvector_2d_t->module~self_geometry_2d module~self_advection_diffusion_2d_t self_advection_diffusion_2d_t module~self_advection_diffusion_2d_t->module~self_dgmodel2d module~self_mappedscalar_2d->module~self_mappedscalar_2d_t module~self_mappedscalar_2d~2 SELF_MappedScalar_2D module~self_mappedscalar_2d~2->module~self_mappedscalar_2d_t module~self_points SELF_Points module~self_points->module~self_geometry_2d module~self_points->module~self_points_t module~self_points->module~self_mappedscalar_2d module~self_nulldgmodel2d_t self_NullDGModel2D_t module~self_nulldgmodel2d_t->module~self_dgmodel2d module~self_lineareuler2d_pml_t self_LinearEuler2D_PML_t module~self_lineareuler2d_pml_t->module~self_dgmodel2d module~self_lineareuler2d_pml_t->module~self_lineareuler2d_t module~self_lineareuler2d_pml_t->module~self_mappedscalar_2d module~self_linearshallowwater2d_t self_LinearShallowWater2D_t module~self_linearshallowwater2d_t->module~self_dgmodel2d module~self_mappedvector_2d~2->module~self_mappedvector_2d_t module~self_mappedvector_2d SELF_MappedVector_2D module~self_mappedvector_2d->module~self_mappedvector_2d_t module~self_dgmodel2d~2 SELF_DGModel2D module~self_dgmodel2d~2->module~self_dgmodel2d_t module~self_lineareuler2d self_LinearEuler2D module~self_lineareuler2d->module~self_lineareuler2d_t module~self_mappedtwopointvector_2d~2 SELF_MappedTwoPointVector_2D module~self_mappedtwopointvector_2d~2->module~self_mappedtwopointvector_2d_t module~self_advection_diffusion_2d~2 self_advection_diffusion_2d module~self_advection_diffusion_2d~2->module~self_advection_diffusion_2d_t module~self_esatmo2d_t->module~self_mappedscalar_2d module~self_ecdgmodel2d~2 SELF_ECDGModel2D module~self_esatmo2d_t->module~self_ecdgmodel2d~2 module~self_nulldgmodel2d self_NullDGModel2D module~self_nulldgmodel2d->module~self_nulldgmodel2d_t module~self_nulldgmodel2d~2 self_NullDGModel2D module~self_nulldgmodel2d~2->module~self_nulldgmodel2d_t module~self_lineareuler2d_pml self_LinearEuler2D_PML module~self_lineareuler2d_pml->module~self_lineareuler2d_pml_t module~self_lineareuler2d_pml~2 self_LinearEuler2D_PML module~self_lineareuler2d_pml~2->module~self_lineareuler2d_pml_t module~self_points~2 SELF_Points module~self_points~2->module~self_points_t module~self_ecdgmodel2d SELF_ECDGModel2D module~self_ecdgmodel2d->module~self_ecdgmodel2d_t module~self_ecdgmodel2d~2->module~self_ecdgmodel2d_t module~self_lineareuler2d~2 self_LinearEuler2D module~self_lineareuler2d~2->module~self_lineareuler2d_t module~self_mappedtwopointvector_2d->module~self_mappedtwopointvector_2d_t module~self_advection_diffusion_2d self_advection_diffusion_2d module~self_advection_diffusion_2d->module~self_advection_diffusion_2d_t module~self_linearshallowwater2d self_LinearShallowWater2D module~self_linearshallowwater2d->module~self_linearshallowwater2d_t module~self_linearshallowwater2d~2 self_LinearShallowWater2D module~self_linearshallowwater2d~2->module~self_linearshallowwater2d_t module~self_esatmo2d~2 SELF_ESAtmo2D module~self_esatmo2d~2->module~self_esatmo2d_t module~self_ecadvection2d_t->module~self_ecdgmodel2d~2 module~self_ecadvection2d SELF_ECAdvection2D module~self_ecadvection2d->module~self_ecadvection2d_t

Contents


Derived Types

type, public, extends(Mesh2D_t) :: Mesh2D

Components

TypeVisibilityAttributesNameInitial
character(len=255), public, allocatable:: BCNames(:)
integer, public, pointer, dimension(:,:):: BCType
integer, public, pointer, dimension(:,:):: CGNSCornerMap
integer, public, pointer, dimension(:,:):: CGNSSideMap
type(DomainDecomposition), public :: decomp
integer, public, pointer, dimension(:,:):: elemInfo
integer, public, allocatable:: elemMaterial(:)
integer, public, pointer, dimension(:,:,:):: globalNodeIDs
character(len=SELF_MESH_MATNAME_LENGTH), public, allocatable:: materialNames(:)
integer, public :: nBCs
integer, public :: nCornerNodes
integer, public :: nElem
integer, public :: nGeo
integer, public :: nGlobalElem
integer, public :: nMaterials =0
integer, public :: nNodes
integer, public :: nSides
integer, public :: nUniqueNodes
integer, public :: nUniqueSides
real(kind=prec), public, pointer, dimension(:,:,:,:):: nodeCoords
integer, public :: quadrature
integer, public, pointer, dimension(:,:,:):: sideInfo
type(c_ptr), public :: sideInfo_gpu

Type-Bound Procedures

procedure, public :: Free => Free_Mesh2D
procedure, public :: Init => Init_Mesh2D
procedure, public :: Read_HOHQMesh => Read_HOHQMesh_Mesh2D_t
procedure, public :: Read_HOPr => Read_HOPr_Mesh2D_t
procedure, public :: RecalculateFlip => RecalculateFlip_Mesh2D_t
procedure, public :: ResetBoundaryConditionType => ResetBoundaryConditionType_Mesh2D_t
generic, public :: StructuredMesh => UniformStructuredMesh_Mesh2D_t
procedure, public :: UpdateDevice => UpdateDevice_Mesh2D
procedure, public :: Write_Mesh => Write_Mesh2D_t

Subroutines

public subroutine Free_Mesh2D(this)

Arguments

TypeIntentOptionalAttributesName
class(Mesh2D), intent(inout) :: this

public subroutine Init_Mesh2D(this, nGeo, nElem, nSides, nNodes, nBCs)

Arguments

TypeIntentOptionalAttributesName
class(Mesh2D), intent(inout) :: this
integer, intent(in) :: nGeo
integer, intent(in) :: nElem
integer, intent(in) :: nSides
integer, intent(in) :: nNodes
integer, intent(in) :: nBCs

public subroutine UpdateDevice_Mesh2D(this)

Arguments

TypeIntentOptionalAttributesName
class(Mesh2D), intent(inout) :: this