Seed_ Derived Type

type, public :: Seed_


Contents


Components

TypeVisibility AttributesNameInitial
type(FEMDomain_), public :: FEMDomain
type(WaterAbsorption_), public :: seedDomain
type(FEMDomain_), public :: water
type(FEMDomain_), public :: tissue
type(MaterialProp_), public :: Permiability
type(MaterialProp_), public :: YoungsModulus
type(MaterialProp_), public :: PoissonRatio
type(MaterialProp_), public :: density
type(MaterialProp_), public :: Cohesion
type(MaterialProp_), public :: phi
type(MaterialProp_), public :: psi
type(MaterialProp_), public :: a_Psi
type(MaterialProp_), public :: a_P
type(MaterialProp_), public :: theta_eq
type(MaterialProp_), public :: Psi_eq
type(MaterialProp_), public :: a_E
type(MaterialProp_), public :: a_v
type(MaterialProp_), public :: E_eq
type(MaterialProp_), public :: v_eq
type(Boundary_), public :: disp_x
type(Boundary_), public :: disp_y
type(Boundary_), public :: disp_z
type(Boundary_), public :: traction_x
type(Boundary_), public :: traction_y
type(Boundary_), public :: traction_z
type(Boundary_), public :: flux
type(Boundary_), public :: const
integer(kind=int32), public :: num_of_seed =1
real(kind=real64), public :: mass =0.0d0
real(kind=real64), public :: water_content =0.0d0
real(kind=real64), public :: radius =0.0d0
real(kind=real64), public :: width1 =0.00d0
real(kind=real64), public :: width2 =0.00d0
real(kind=real64), public :: width3 =0.0d0
real(kind=real64), public :: width1_origin =0.00d0
real(kind=real64), public :: width2_origin =0.00d0
real(kind=real64), public :: width3_origin =0.0d0
real(kind=real64), public :: location(3) =0.0d0
character(len=200), public :: path =" "
character(len=200), public :: name =" "
integer(kind=int32), public :: step =0

Type-Bound Procedures

procedure, public :: create => createSeed

  • public subroutine createSeed(obj, Name, MeshType, x_num, y_num, z_num, x_len, y_len, z_len, YoungsModulus, PoissonRatio, Permiability, a_Psi, a_P, theta_eq, Psi_eq, a_E, a_v, E_eq, v_eq)

    Arguments

    Type IntentOptional AttributesName
    class(Seed_), intent(inout) :: obj
    character(len=*), intent(in), optional :: Name
    character(len=*), intent(in), optional :: MeshType
    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 :: x_len
    real(kind=real64), intent(in), optional :: y_len
    real(kind=real64), intent(in), optional :: z_len
    real(kind=real64), intent(in), optional :: YoungsModulus
    real(kind=real64), intent(in), optional :: PoissonRatio
    real(kind=real64), intent(in), optional :: Permiability
    real(kind=real64), intent(in), optional :: a_Psi
    real(kind=real64), intent(in), optional :: a_P
    real(kind=real64), intent(in), optional :: theta_eq
    real(kind=real64), intent(in), optional :: Psi_eq
    real(kind=real64), intent(in), optional :: a_E
    real(kind=real64), intent(in), optional :: a_v
    real(kind=real64), intent(in), optional :: E_eq
    real(kind=real64), intent(in), optional :: v_eq

procedure, public :: env => envSeed

  • public subroutine envSeed(obj, disp_x, disp_y, disp_z, WaterContent, x_max, x_min, y_max, y_min, z_max, z_min)

    Arguments

    Type IntentOptional AttributesName
    class(Seed_), intent(inout) :: obj
    real(kind=real64), intent(in), optional :: disp_x
    real(kind=real64), intent(in), optional :: disp_y
    real(kind=real64), intent(in), optional :: disp_z
    real(kind=real64), intent(in), optional :: WaterContent
    real(kind=real64), intent(in), optional :: x_max
    real(kind=real64), intent(in), optional :: x_min
    real(kind=real64), intent(in), optional :: y_max
    real(kind=real64), intent(in), optional :: y_min
    real(kind=real64), intent(in), optional :: z_max
    real(kind=real64), intent(in), optional :: z_min

procedure, public :: material => materialSeed

  • public subroutine materialSeed(obj, YoungsModulus, PoissonRatio, Permiability, a_Psi, a_P, theta_eq, Psi_eq, a_E, a_v, E_eq, v_eq, x_max, x_min, y_max, y_min, z_max, z_min)

    Arguments

    Type IntentOptional AttributesName
    class(Seed_), intent(inout) :: obj
    real(kind=real64), intent(in), optional :: YoungsModulus
    real(kind=real64), intent(in), optional :: PoissonRatio
    real(kind=real64), intent(in), optional :: Permiability
    real(kind=real64), intent(in), optional :: a_Psi
    real(kind=real64), intent(in), optional :: a_P
    real(kind=real64), intent(in), optional :: theta_eq
    real(kind=real64), intent(in), optional :: Psi_eq
    real(kind=real64), intent(in), optional :: a_E
    real(kind=real64), intent(in), optional :: a_v
    real(kind=real64), intent(in), optional :: E_eq
    real(kind=real64), intent(in), optional :: v_eq
    real(kind=real64), intent(in), optional :: x_max
    real(kind=real64), intent(in), optional :: x_min
    real(kind=real64), intent(in), optional :: y_max
    real(kind=real64), intent(in), optional :: y_min
    real(kind=real64), intent(in), optional :: z_max
    real(kind=real64), intent(in), optional :: z_min

procedure, public :: grow => growSeed

  • public subroutine growSeed(obj, timestep, dt, Display, nr_tol, interval, Name, restart)

    Arguments

    Type IntentOptional AttributesName
    class(Seed_), intent(inout) :: obj
    integer(kind=int32), intent(in), optional :: timestep
    real(kind=real64), intent(in), optional :: dt
    logical, intent(in), optional :: Display
    real(kind=real64), intent(in), optional :: nr_tol
    integer(kind=int32), intent(in), optional :: interval
    character(len=*), intent(in), optional :: Name
    logical, intent(in), optional :: restart

procedure, public :: move => moveSeed

  • public subroutine moveSeed(obj, x, y, z)

    Arguments

    Type IntentOptional AttributesName
    class(Seed_), intent(inout) :: obj
    real(kind=real64), intent(in), optional :: x
    real(kind=real64), intent(in), optional :: y
    real(kind=real64), intent(in), optional :: z

procedure, public :: rotate => rotateSeed

  • public subroutine rotateSeed(obj, x, y, z)

    Arguments

    Type IntentOptional AttributesName
    class(Seed_), intent(inout) :: obj
    real(kind=real64), intent(in), optional :: x
    real(kind=real64), intent(in), optional :: y
    real(kind=real64), intent(in), optional :: z

procedure, public :: gmsh => gmshSeed

  • public subroutine gmshSeed(obj, Name)

    Arguments

    Type IntentOptional AttributesName
    class(Seed_), intent(inout) :: obj
    character(len=*), intent(in), optional :: Name

procedure, public :: init => initSeed

  • public subroutine initSeed(obj, mass, water_content, radius, location, x, y, z, width1, width2, width3)

    Arguments

    Type IntentOptional AttributesName
    class(Seed_), intent(inout) :: obj
    real(kind=real64), intent(in), optional :: mass
    real(kind=real64), intent(in), optional :: water_content
    real(kind=real64), intent(in), optional :: radius
    real(kind=real64), intent(in), optional :: location(3)
    real(kind=real64), intent(in), optional :: x
    real(kind=real64), intent(in), optional :: y
    real(kind=real64), intent(in), optional :: z
    real(kind=real64), intent(in), optional :: width1
    real(kind=real64), intent(in), optional :: width2
    real(kind=real64), intent(in), optional :: width3

procedure, public :: import => importSeed

  • public subroutine importSeed(obj, FileName)

    Arguments

    Type IntentOptional AttributesName
    class(Seed_), intent(inout) :: obj
    character(len=*), intent(in) :: FileName

procedure, public :: createMesh => createMeshSeed

  • public subroutine createMeshSeed(obj, FileName, withSTL, ObjType, ElemType)

    Arguments

    Type IntentOptional AttributesName
    class(Seed_), intent(inout) :: obj
    character(len=*), intent(in) :: FileName
    logical, intent(in), optional :: withSTL
    character(len=*), intent(in), optional :: ObjType
    character(len=*), intent(in) :: ElemType

procedure, public :: export => exportSeed

  • public subroutine exportSeed(obj, FileName, SeedID, extention)

    Arguments

    Type IntentOptional AttributesName
    class(Seed_), intent(inout) :: obj
    character(len=*), intent(in) :: FileName
    integer(kind=int32), intent(in), optional :: SeedID
    character(len=*), intent(in), optional :: extention

procedure, public :: save => saveSeed

  • public subroutine saveSeed(obj, path, name)

    Arguments

    Type IntentOptional AttributesName
    class(Seed_), intent(inout) :: obj
    character(len=*), intent(in), optional :: path
    character(len=*), intent(in), optional :: name

procedure, public :: open => openSeed

  • public subroutine openSeed(obj, path, name)

    Arguments

    Type IntentOptional AttributesName
    class(Seed_), intent(inout) :: obj
    character(len=*), intent(in), optional :: path
    character(len=*), intent(in), optional :: name

procedure, public :: flush => flushSeed

  • public subroutine flushSeed(obj, path, name)

    Arguments

    Type IntentOptional AttributesName
    class(Seed_), intent(inout) :: obj
    character(len=*), intent(in), optional :: path
    character(len=*), intent(in), optional :: name

procedure, public :: show => showSeed

  • public subroutine showSeed(obj)

    Arguments

    Type IntentOptional AttributesName
    class(Seed_), intent(in) :: obj

procedure, public :: load => loadSeed

  • public subroutine loadSeed(obj, path, name)

    Arguments

    Type IntentOptional AttributesName
    class(Seed_), intent(inout) :: obj
    character(len=*), intent(in), optional :: path
    character(len=*), intent(in), optional :: name

procedure, public :: remove => removeSeed

  • public subroutine removeSeed(obj)

    Arguments

    Type IntentOptional AttributesName
    class(Seed_), intent(inout) :: obj

procedure, public :: length => lengthSeed

  • public function lengthSeed(obj) result(length)

    Arguments

    Type IntentOptional AttributesName
    class(Seed_), intent(inout) :: obj

    Return Value real(kind=real64) (3)

procedure, public :: convertMeshType => convertMeshTypeSeed

  • public subroutine convertMeshTypeSeed(obj, Option)

    Arguments

    Type IntentOptional AttributesName
    class(Seed_), intent(inout) :: obj
    character(len=*), intent(in) :: Option

procedure, public :: result => resultSeed

  • public subroutine resultSeed(obj, path, name, step)

    Arguments

    Type IntentOptional AttributesName
    class(Seed_), intent(inout) :: obj
    character(len=*), intent(in) :: path
    character(len=*), intent(in) :: name
    integer(kind=int32), intent(in) :: step