mesh_mod Module

module~~mesh_mod~~UsesGraph module~mesh_mod mesh_mod module~kinds_mod kinds_mod module~kinds_mod->module~mesh_mod
Help

Module for 2D simplex meshes

Used By

module~~mesh_mod~~UsedByGraph module~mesh_mod mesh_mod program~testmesh_prg testMesh_prg module~mesh_mod->program~testmesh_prg
Help


Variables

TypeVisibility AttributesNameInitial
integer, public, parameter:: ET_POINT_1 =11

Element type for a single point

integer, public, parameter:: ET_EDGE_1 =21

Element type for a 2-node edge

integer, public, parameter:: ET_EDGE_2 =22

Element type for a 3-node edge

integer, public, parameter:: ET_EDGE_3 =23

Element type for a 4-node edge

integer, public, parameter:: ET_TRIANGLE_1 =31

Element type for a 3-node triangle

integer, public, parameter:: ET_TRIANGLE_2 =32

Element type for a 6-node triangle

integer, public, parameter:: ET_TRIANGLE_3 =33

Element type for a 10-node triangle


Derived Types

type, public :: node_t

One node in the mesh

Components

TypeVisibility AttributesNameInitial
integer, public :: nidx

Node index

real(kind=wp), public, dimension(2):: x

Node location

integer, public :: ngroup

Node group

integer, public, dimension(:), allocatable:: nodes

Indicies of nodes connected to this one

integer, public, dimension(:), allocatable:: elements

Indicies of elements this node occures in

type, public :: element_t

One element in the mesh

Components

TypeVisibility AttributesNameInitial
integer, public :: eidx

Element index

integer, public :: etype

Element type

integer, public :: egroup

Element group

integer, public :: ecolor

Element color

integer, public, dimension(:), allocatable:: nodes

Nodes of the element

integer, public, dimension(:), allocatable:: elements

Elements connected to this one by at least one node

type, public :: group_t

Physical group of elements

Components

TypeVisibility AttributesNameInitial
integer, public :: gidx

Group index

integer, public :: gdim

Group dimensionality \(d\)

character(len=128), public :: gname

Group name

real(kind=wp), public, dimension(:), allocatable:: gdata

Data for group

type, public :: mesh_t

A 2D mesh of elements connecting nodes

Components

TypeVisibility AttributesNameInitial
type(node_t), public, dimension(:), allocatable:: nodes

All nodes in the mesh

type(element_t), public, dimension(:), allocatable:: elements

All elements in the mesh

type(group_t), public, dimension(:), allocatable:: groups

All groups in the mesh

Type-Bound Procedures

procedure, public :: readGmsh
procedure, public :: writeVTK
procedure, public :: appendScalarVTK
procedure, public :: appendVectorVTK
procedure, public :: connect