fill_ustar_shelf Subroutine

public subroutine fill_ustar_shelf(state_handle, buf)

Melt friction velocity u* (m/s), max(sqrt(C_d(u²+v²+u_tide²)), u*_min). This is the MELT law’s u* and nothing else: it drives no momentum drag, and KPP/EPBL do not read it.

Arguments

Type IntentOptional Attributes Name
class(*), intent(in) :: state_handle
real(kind=wp), intent(inout) :: buf(:,:,:)

Calls

proc~~fill_ustar_shelf~~CallsGraph proc~fill_ustar_shelf fill_ustar_shelf proc~cavity_mask_impl cavity_mask_impl proc~fill_ustar_shelf->proc~cavity_mask_impl

Source Code

   subroutine fill_ustar_shelf(state_handle, buf)
      !! Melt friction velocity `u*` (m/s), `max(sqrt(C_d(u²+v²+u_tide²)),
      !! u*_min)`.  This is the MELT law's `u*` and nothing else: it
      !! drives no momentum drag, and KPP/EPBL do not read it.
      class(*), intent(in) :: state_handle
      real(wp), intent(inout) :: buf(:, :, :)
      select type (state => state_handle)
      class is (ocean_state_t)
         call cavity_mask_impl(state%cavity_flux%ustar, state%cavity_flux%active, buf)
      end select
   end subroutine fill_ustar_shelf