**INTERFACE:**

subroutine bottom_friction(runtype)

In this routine the bottom friction for the external (vertically integrated)
mode is calculated. This is done separately for the -equation in the
U-points and for the -equation in the V-points.
The drag coefficient for the external mode is given in eq. (71) on page .
For `runtype=1` (only vertically integrated calculations), the
bottom roughness length is depending on the bed friction
velocity and the molecular viscosity :

see e.g. Kagan (1995), i.e. the given roughness may be increased
by viscous effects.
After this, the drag coefficient is multiplied by the absolute value of the
local velocity, which is alculated by dividing the local transports by the
local water depths and by properly interpolating these velocities
to the U- and V-points. The resulting fields are `ru`, representing
on the U-points and `rv`, representing
this quantity on the V-points.
**USES:**

use parameters, only: kappa,avmmol use domain, only: imin,imax,jmin,jmax,au,av,min_depth use variables_2d use getm_timers, only: tic, toc, TIM_BOTTFRICT $ use omp_lib IMPLICIT NONE

integer, intent(in) :: runtype

Original author(s): Karsten Bolding & Hans Burchard

integer :: i,j REALTYPE :: uloc(E2DFIELD),vloc(E2DFIELD) REALTYPE :: HH(E2DFIELD),fricvel(E2DFIELD)

kklingbe 2017-10-02