SurfaceFace_t Derived Type

type, public :: SurfaceFace_t


Components

Type Visibility Attributes Name Initial
class(SurfaceEdge), public, dimension(:), allocatable :: edges
integer, public :: eID
integer, public :: globaleID
integer, public :: fID
integer, public :: numberOfConnections

Type-Bound Procedures

procedure, public :: construct => FaceConstruct

  • private subroutine FaceConstruct(self, mesh, eID, geID, fID)

    Arguments

    Type IntentOptional Attributes Name
    class(SurfaceFace_t) :: self
    type(HexMesh), intent(in) :: mesh
    integer, intent(in) :: eID
    integer, intent(in) :: geID
    integer, intent(in) :: fID

procedure, public :: destruct => FaceDestruct

  • private subroutine FaceDestruct(self)

    Arguments

    Type IntentOptional Attributes Name
    class(SurfaceFace_t), intent(inout) :: self

procedure, public :: setNoConnections => FaceSetNoOfConnections

  • private subroutine FaceSetNoOfConnections(self, mode)

    Arguments

    Type IntentOptional Attributes Name
    class(SurfaceFace_t) :: self
    integer, intent(in) :: mode

procedure, public :: isConnected => FaceIsConnected

  • private function FaceIsConnected(self, otherFace) result(isCon)

    Arguments

    Type IntentOptional Attributes Name
    class(SurfaceFace_t) :: self
    class(SurfaceFace_t), intent(in) :: otherFace

    Return Value logical

procedure, public :: isFullConnected => FaceIsFullConnected

  • private function FaceIsFullConnected(self, surfaceFaces, N) result(isCon)

    Arguments

    Type IntentOptional Attributes Name
    class(SurfaceFace_t) :: self
    class(SurfaceFace_t), intent(in), dimension(N) :: surfaceFaces
    integer, intent(in) :: N

    Return Value logical

procedure, public :: isTwiceEdConnected => FaceIsConnectedByEdgeTwice

  • private function FaceIsConnectedByEdgeTwice(self, surfaceFaces, N) result(isTwice)

    Arguments

    Type IntentOptional Attributes Name
    class(SurfaceFace_t) :: self
    type(SurfaceFace_t), intent(in), dimension(N) :: surfaceFaces
    integer, intent(in) :: N

    Return Value logical

procedure, public :: getBCPostion => FaceGetBCPosition

  • private function FaceGetBCPosition(self, BCDimension, BCSide) result(pos)

    Arguments

    Type IntentOptional Attributes Name
    class(SurfaceFace_t) :: self
    integer, intent(in) :: BCDimension
    integer, intent(in) :: BCSide

    Return Value real(kind=RP)

procedure, public :: shareCorner => FaceShareCorner

  • private function FaceShareCorner(self, otherFace) result(share)

    Arguments

    Type IntentOptional Attributes Name
    class(SurfaceFace_t) :: self
    class(SurfaceFace_t), intent(in) :: otherFace

    Return Value logical

procedure, public :: reconstructPeriod => FaceReconstructPeriodic

  • private subroutine FaceReconstructPeriodic(self, old, new, oldNewMap)

    Arguments

    Type IntentOptional Attributes Name
    class(SurfaceFace_t) :: self
    real(kind=RP), intent(in), dimension(NDIM,NODES_PER_FACE) :: old
    real(kind=RP), intent(in), dimension(NDIM,NODES_PER_FACE) :: new
    integer, intent(in), dimension(NODES_PER_FACE) :: oldNewMap

procedure, public :: updateEdgesPeriod => FaceUpdateEdgesOnPeriodic

  • private subroutine FaceUpdateEdgesOnPeriodic(self, surfaceElements, N)

    Arguments

    Type IntentOptional Attributes Name
    class(SurfaceFace_t) :: self
    class(SurfaceElement_t), intent(in), dimension(N) :: surfaceElements
    integer, intent(in) :: N