Mesh1D Derived Type

type, public, extends(SEMMesh) :: Mesh1D


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