SeepageFlow_ Derived Type

type, public :: SeepageFlow_


Components

Type Visibility Attributes Name Initial
type(FEMDomain_), public, pointer :: FEMDomain => null()
type(FEMSolver_), public :: solver
character(len=:), public, allocatable :: model
real(kind=real64), public :: rho = 1.0d0
real(kind=real64), public :: g = 9.80d0
real(kind=real64), public, allocatable :: Permiability(:)
real(kind=real64), public, allocatable :: WaterHead(:)
real(kind=real64), public, allocatable :: Velocity(:,:)

Type-Bound Procedures

procedure, public :: init => initSeepageFlow

  • public subroutine initSeepageFlow(this, femdomain, model, Permiability)

    Arguments

    Type IntentOptional Attributes Name
    class(SeepageFlow_), intent(inout) :: this
    type(FEMDomain_), intent(in), target :: femdomain
    character(len=*), intent(in) :: model
    real(kind=real64), intent(in) :: Permiability(:)

procedure, public :: fixPressureBoundary => fixPressureBoundarySeepageFlow

  • public subroutine fixPressureBoundarySeepageFlow(This, NodeList, Pressure, Pressures, DomainID)

    Arguments

    Type IntentOptional Attributes Name
    class(SeepageFlow_), intent(inout) :: This
    integer(kind=int32), intent(in) :: NodeList(:)
    real(kind=real64), intent(in), optional :: Pressure
    real(kind=real64), intent(in), optional :: Pressures(:)
    integer(kind=int32), intent(in), optional :: DomainID

procedure, public :: getPressure => getPressureSeepageFlow

  • public function getPressureSeepageFlow(This, debug, dt, timeIntegral) result(WaterHead)

    Arguments

    Type IntentOptional Attributes Name
    class(SeepageFlow_), intent(inout) :: This
    logical, intent(in), optional :: debug
    real(kind=real64), intent(in), optional :: dt
    character(len=*), intent(in), optional :: timeIntegral

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

procedure, public :: getVelocity => getVelocitySeepageFlow

  • public function getVelocitySeepageFlow(This, Pressure, Permiability, Permiability_field) result(Velocity)

    Arguments

    Type IntentOptional Attributes Name
    class(SeepageFlow_), intent(inout) :: This
    real(kind=real64), intent(in) :: Pressure(:)
    real(kind=real64), intent(in), optional :: Permiability
    real(kind=real64), intent(in), optional :: Permiability_field(:)

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