Computes and returns the density of the plume water beneath the ice shelf. The density of this water would vary depending on how much saline ambient water has been entrained into the plume versus how much fresh water has been released due to melting. However, the Boussinesq approximation is used here and only a single reference density is returned.
Based on my approach to non-dimensionalisation, I'm pretty sure the density should always be 1, making this method unneccessary.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(asym_plume), | intent(in) | :: | this |
The density of the water at the base of the ice sheet.
function asym_plume_water_density(this) result(density)
!* Author: Christopher MacMackin
! Date: April 2016
!
! Computes and returns the density of the plume water beneath the ice
! shelf. The density of this water would vary depending on how much
! saline ambient water has been entrained into the plume versus how
! much fresh water has been released due to melting. However, the
! Boussinesq approximation is used here and only a single reference
! density is returned.
!
! @NOTE Based on my approach to non-dimensionalisation, I'm pretty
! sure the density should always be 1, making this method
! unneccessary.
!
class(asym_plume), intent(in) :: this
real(r8) :: density
!! The density of the water at the base of the ice sheet.
density = 1.0_r8
#ifdef DEBUG
call logger%debug('asym_plume%water_density','Plume has average density '// &
trim(str(density))//'.')
#endif
end function asym_plume_water_density