Tank_ Derived Type

type, public :: Tank_


Components

Type Visibility Attributes Name Initial
character(len=:), public, allocatable :: name
real(kind=real64), public, allocatable :: coeff(:)
real(kind=real64), public, allocatable :: height(:)
real(kind=real64), public, allocatable :: runoff(:)
real(kind=real64), public :: P = 0.0d0
real(kind=real64), public :: E = 0.0d0
real(kind=real64), public :: S_n = 0.0d0
real(kind=real64), public :: S = 0.0d0
real(kind=real64), public :: out_coeff = 0.0d0
real(kind=real64), public :: out_height = 0.0d0
type(Tank_), public, pointer :: out => null()
real(kind=real64), public :: GL_bottom = 0.0d0
type(Tank_), public, pointer :: in => null()

Type-Bound Procedures

procedure, public :: init => initTank_TankModelClass

  • public subroutine initTank_TankModelClass(this, coeff, height, GL_bottom, name)

    Arguments

    Type IntentOptional Attributes Name
    class(Tank_), intent(inout) :: this
    real(kind=real64), intent(in) :: coeff(:)
    real(kind=real64), intent(in) :: height(:)
    real(kind=real64), intent(in) :: GL_bottom
    character(len=*), intent(in) :: name

procedure, public :: connect => connectTank_TankModelClass

  • public subroutine connectTank_TankModelClass(this, tank, coeff, height)

    Arguments

    Type IntentOptional Attributes Name
    class(Tank_), intent(inout), target :: this
    type(Tank_), intent(inout), target :: tank
    real(kind=real64), intent(in) :: coeff
    real(kind=real64), intent(in) :: height

procedure, public :: update => updateTank_TankModelClass

  • public subroutine updateTank_TankModelClass(this, dt)

    Arguments

    Type IntentOptional Attributes Name
    class(Tank_), intent(inout) :: this
    real(kind=real64), intent(in) :: dt

procedure, public :: to_waterhead => to_waterhead_Tank_TankModelClass

  • public function to_waterhead_Tank_TankModelClass(this, GL) result(waterhead_mm)

    Arguments

    Type IntentOptional Attributes Name
    class(Tank_), intent(in) :: this
    real(kind=real64), intent(in) :: GL

    Return Value real(kind=real64)