Ear_ Derived Type

type, public :: Ear_


Components

Type Visibility Attributes Name Initial
type(FEMDomain_), public :: FEMDomain
real(kind=real64), public :: Length
real(kind=real64), public :: Width
real(kind=real64), public :: Angle
type(Stem_), public, pointer :: pStem
integer(kind=int32), public :: division(1:3) = [6, 6, 30]
integer(kind=int32), public, allocatable :: I_planeNodeID(:)
integer(kind=int32), public, allocatable :: I_planeElementID(:)
integer(kind=int32), public, allocatable :: II_planeNodeID(:)
integer(kind=int32), public, allocatable :: II_planeElementID(:)
integer(kind=int32), public :: A_PointNodeID
integer(kind=int32), public :: B_PointNodeID
integer(kind=int32), public :: C_PointNodeID
integer(kind=int32), public :: D_PointNodeID
integer(kind=int32), public :: A_PointElementID
integer(kind=int32), public :: B_PointElementID
real(kind=real64), public :: disp_x
real(kind=real64), public :: disp_y
real(kind=real64), public :: disp_z
real(kind=real64), public, allocatable :: YoungModulus(:)
real(kind=real64), public, allocatable :: PoissonRatio(:)
real(kind=real64), public, allocatable :: Density(:)
real(kind=real64), public, allocatable :: Stress(:,:,:)
real(kind=real64), public, allocatable :: Displacement(:,:)

Type-Bound Procedures

procedure, public :: Init => initEar

  • public subroutine initEar(this, Length, width, Angle, debug, x_num, y_num, z_num, Leaf_angle_z)

    Arguments

    Type IntentOptional Attributes Name
    class(Ear_), intent(inout) :: this
    real(kind=real64), intent(in) :: Length
    real(kind=real64), intent(in) :: width
    real(kind=real64), intent(in) :: Angle
    logical, intent(in), optional :: debug
    integer(kind=int32), intent(in), optional :: x_num
    integer(kind=int32), intent(in), optional :: y_num
    integer(kind=int32), intent(in), optional :: z_num
    real(kind=real64), intent(in), optional :: Leaf_angle_z

procedure, public :: move => moveEar

  • public recursive subroutine moveEar(this, x, y, z, reset)

    Arguments

    Type IntentOptional Attributes Name
    class(Ear_), intent(inout) :: this
    real(kind=real64), intent(in), optional :: x
    real(kind=real64), intent(in), optional :: y
    real(kind=real64), intent(in), optional :: z
    logical, intent(in), optional :: reset

procedure, public :: rotate => rotateEar

  • public recursive subroutine rotateEar(this, x, y, z)

    Arguments

    Type IntentOptional Attributes Name
    class(Ear_), intent(inout) :: this
    real(kind=real64), intent(in), optional :: x
    real(kind=real64), intent(in), optional :: y
    real(kind=real64), intent(in), optional :: z

procedure, public :: getCoordinate => getCoordinateEar

  • public function getCoordinateEar(this, nodetype) result(ret)

    Arguments

    Type IntentOptional Attributes Name
    class(Ear_), intent(in) :: this
    character(len=*), intent(in) :: nodetype

    Return Value real(kind=real64), allocatable, (:)

procedure, public :: connect => connectEar

  • public subroutine connectEar(obj, direct, stem)

    Arguments

    Type IntentOptional Attributes Name
    class(Ear_), intent(inout) :: obj
    character(len=2), intent(in) :: direct
    class(Stem_), intent(inout) :: stem

procedure, public :: vtk => vtkEar

  • public subroutine vtkEar(this, name)

    Arguments

    Type IntentOptional Attributes Name
    class(Ear_), intent(inout) :: this
    character(len=*), intent(in) :: name

procedure, public :: stl => stlEar

  • public subroutine stlEar(obj, name)

    Arguments

    Type IntentOptional Attributes Name
    class(Ear_), intent(inout) :: obj
    character(len=*), intent(in) :: name