Constructs a boundary condition object for an ice shelf based on the conditions used in Dallaston et al. (2015).
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=r8), | intent(in) | :: | thickness | The water thickness at the inflowing plume boundary |
||
real(kind=r8), | intent(in), | dimension(2) | :: | velocity | The longitudinal water velocity at the inflowing plume boundary |
|
real(kind=r8), | intent(in) | :: | temperature | The water temperature at the inflowing plume boundary |
||
real(kind=r8), | intent(in) | :: | salinity | The water salinity at the inflowing plume boundary |
pure function constructor(thickness, velocity, temperature, salinity) &
result(this)
!* Author: Chris MacMackin
! Date: November 2016
!
! Constructs a boundary condition object for an ice shelf based on
! the conditions used in Dallaston et al. (2015).
!
real(r8), intent(in) :: thickness
!! The water thickness at the inflowing plume boundary
real(r8), dimension(2), intent(in) :: velocity
!! The longitudinal water velocity at the inflowing plume boundary
real(r8), intent(in) :: temperature
!! The water temperature at the inflowing plume boundary
real(r8), intent(in) :: salinity
!! The water salinity at the inflowing plume boundary
type(simple_plume_boundary) :: this
this%thickness = thickness
this%velocity = velocity
this%temperature = temperature
this%salinity = salinity
end function constructor