Mesh1D Derived Type

type, public, extends(SEMMesh) :: Mesh1D


Inherits

type~~mesh1d~~InheritsGraph type~mesh1d Mesh1D type~semmesh SEMMesh type~mesh1d->type~semmesh type~domaindecomposition DomainDecomposition type~semmesh->type~domaindecomposition decomp type~domaindecomposition_t DomainDecomposition_t type~domaindecomposition->type~domaindecomposition_t

Inherited by

type~~mesh1d~~InheritedByGraph type~mesh1d Mesh1D type~dgmodel1d_t DGModel1D_t type~dgmodel1d_t->type~mesh1d mesh type~dgmodel1d DGModel1D type~dgmodel1d->type~dgmodel1d_t type~dgmodel1d~2 DGModel1D type~dgmodel1d~2->type~dgmodel1d_t type~nulldgmodel1d_t NullDGModel1D_t type~nulldgmodel1d_t->type~dgmodel1d type~burgers1d_t Burgers1D_t type~burgers1d_t->type~dgmodel1d type~advection_diffusion_1d_t advection_diffusion_1d_t type~advection_diffusion_1d_t->type~dgmodel1d type~nulldgmodel1d NullDGModel1D type~nulldgmodel1d->type~nulldgmodel1d_t type~nulldgmodel1d~2 NullDGModel1D type~nulldgmodel1d~2->type~nulldgmodel1d_t type~advection_diffusion_1d advection_diffusion_1d type~advection_diffusion_1d->type~advection_diffusion_1d_t type~burgers1d~2 Burgers1D type~burgers1d~2->type~burgers1d_t type~burgers1d Burgers1D type~burgers1d->type~burgers1d_t type~advection_diffusion_1d~2 advection_diffusion_1d type~advection_diffusion_1d~2->type~advection_diffusion_1d_t

Contents

Source Code


Components

TypeVisibilityAttributesNameInitial
character(len=255), public, allocatable:: BCNames(:)
integer, public, pointer, dimension(:,:):: BCType
integer, public, dimension(2):: bcid =0
type(DomainDecomposition), public :: decomp
integer, public, pointer, dimension(:,:):: elemInfo
integer, public, pointer, dimension(:):: globalNodeIDs
integer, public :: nBCs
integer, public :: nCornerNodes
integer, public :: nElem
integer, public :: nGeo
integer, public :: nGlobalElem
integer, public :: nNodes
integer, public :: nSides
integer, public :: nUniqueNodes
integer, public :: nUniqueSides
real(kind=prec), public, pointer, dimension(:):: nodeCoords
integer, public :: quadrature

Type-Bound Procedures

procedure, public :: Free => Free_Mesh1D

  • public subroutine Free_Mesh1D(this)

    Arguments

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

procedure, public :: Init => Init_Mesh1D

  • public subroutine Init_Mesh1D(this, nElem, nNodes, nBCs)

    Arguments

    TypeIntentOptionalAttributesName
    class(Mesh1D), intent(out) :: this
    integer, intent(in) :: nElem
    integer, intent(in) :: nNodes
    integer, intent(in) :: nBCs

procedure, public :: ResetBoundaryConditionType => ResetBoundaryConditionType_Mesh1D

  • public subroutine ResetBoundaryConditionType_Mesh1D(this, leftbc, rightbc)

    This method can be used to reset all of the boundary elements boundary condition type to the desired value.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(Mesh1D), intent(inout) :: this
    integer, intent(in) :: leftbc
    integer, intent(in) :: rightbc

generic, public :: StructuredMesh => UniformBlockMesh_Mesh1D

  • public subroutine UniformBlockMesh_Mesh1D(this, nElem, x)

    Arguments

    TypeIntentOptionalAttributesName
    class(Mesh1D), intent(out) :: this
    integer, intent(in) :: nElem
    real(kind=prec), intent(in) :: x(1:2)

procedure, private :: UniformBlockMesh_Mesh1D

  • public subroutine UniformBlockMesh_Mesh1D(this, nElem, x)

    Arguments

    TypeIntentOptionalAttributesName
    class(Mesh1D), intent(out) :: this
    integer, intent(in) :: nElem
    real(kind=prec), intent(in) :: x(1:2)

procedure, public :: Write_Mesh => Write_Mesh1D

  • public subroutine Write_Mesh1D(this, meshFile)

    Arguments

    TypeIntentOptionalAttributesName
    class(Mesh1D), intent(inout) :: this
    character, intent(in) :: meshFile

Source Code

  type,extends(SEMMesh) :: Mesh1D
    integer,pointer,dimension(:,:) :: elemInfo
    real(prec),pointer,dimension(:) :: nodeCoords
    integer,pointer,dimension(:) :: globalNodeIDs
    integer,pointer,dimension(:,:) :: BCType
    character(LEN=255),allocatable :: BCNames(:)
    integer,dimension(2) :: bcid = 0 ! Boundary conditions for the left and right endpoints

  contains
    procedure,public :: Init => Init_Mesh1D
    procedure,public :: Free => Free_Mesh1D
    generic,public :: StructuredMesh => UniformBlockMesh_Mesh1D
    procedure,private ::  UniformBlockMesh_Mesh1D
    procedure,public :: ResetBoundaryConditionType => ResetBoundaryConditionType_Mesh1D

    procedure,public  :: Write_Mesh => Write_Mesh1D

  endtype Mesh1D