TransfiniteHexMap Derived Type

type, public :: TransfiniteHexMap


Components

Type Visibility Attributes Name Initial
real(kind=RP), public, DIMENSION(3,8) :: corners
type(FacePatch), public, DIMENSION(:), ALLOCATABLE :: faces

Type-Bound Procedures

procedure, public :: constructWithCorners

  • private subroutine constructWithCorners(self, corners)

    Arguments

    Type IntentOptional Attributes Name
    class(TransfiniteHexMap) :: self
    real(kind=RP) :: corners(3,8)

procedure, public :: constructWithFaces

  • private subroutine constructWithFaces(self, faces)

    Arguments

    Type IntentOptional Attributes Name
    class(TransfiniteHexMap) :: self
    type(FacePatch) :: faces(6)

procedure, public :: destruct => destructTransfiniteHexMap

  • private pure subroutine destructTransfiniteHexMap(self)

    Arguments

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

procedure, public :: transfiniteMapAt

  • private function transfiniteMapAt(self, u) result(x)

    Arguments

    Type IntentOptional Attributes Name
    class(TransfiniteHexMap) :: self
    real(kind=RP) :: u(3)

    Return Value real(kind=RP), (3)

procedure, public :: metricDerivativesAt

  • private function metricDerivativesAt(self, u) result(grad_x)

    Arguments

    Type IntentOptional Attributes Name
    class(TransfiniteHexMap) :: self
    real(kind=RP) :: u(3)

    Return Value real(kind=RP), (3,3)

procedure, public :: isHex8

  • private function isHex8(self) result(ans)

    Arguments

    Type IntentOptional Attributes Name
    class(TransfiniteHexMap) :: self

    Return Value logical

procedure, public :: setCorners

  • private subroutine setCorners(self, corners)

    Arguments

    Type IntentOptional Attributes Name
    class(TransfiniteHexMap) :: self
    real(kind=RP) :: corners(3,8)