mesh_t Derived Type

type, public :: mesh_t

Top-level mesh container. This structure holds all geometric data and connectivity arrays for the entire computational domain.


Inherits

type~~mesh_t~~InheritsGraph type~mesh_t mesh_t type~cell_t cell_t type~mesh_t->type~cell_t cells type~face_t face_t type~mesh_t->type~face_t faces type~patch_t patch_t type~mesh_t->type~patch_t patches

Components

Type Visibility Attributes Name Initial
integer, public, allocatable :: cell_faces(:,:)
type(cell_t), public, allocatable :: cells(:)
type(face_t), public, allocatable :: faces(:)
integer, public, allocatable :: ncell_faces(:)
integer, public :: ncells = 0
integer, public :: nfaces = 0
integer, public :: npatches = 0
integer, public :: npoints = 0
type(patch_t), public, allocatable :: patches(:)
real(kind=rk), public, allocatable :: points(:,:)

Source Code

   type :: mesh_t
      integer :: ncells = 0   !< Total number of hexahedral cells.
      integer :: nfaces = 0   !< Total number of faces (internal + boundary).
      integer :: npoints = 0  !< Total number of unique nodes in the mesh.
      integer :: npatches = 0 !< Total number of boundary regions defined.

      real(rk), allocatable :: points(:,:)     !< Node coordinates (3, npoints).
      type(cell_t), allocatable :: cells(:)    !< Array containing all cell geometric data.
      type(face_t), allocatable :: faces(:)    !< Array containing all face connectivity data.
      type(patch_t), allocatable :: patches(:) !< Array of all boundary patches.

      integer, allocatable :: ncell_faces(:)   !< Number of faces belonging to each cell (usually 6).
      integer, allocatable :: cell_faces(:,:)  !< Indices of the faces for each cell (max_cell_faces, ncells).
   end type mesh_t