general vertical coordinates

INTERFACE:

    subroutine general_coordinates(first,cord_relax,maxdepth)
DESCRIPTION:

Here, the general vertical coordinates layer distribution in T-, U- and V-points is calculated. The general vertical coordinates as discussed in section 4.1, see equations (14) - (19), are basically an interpolation between equidistant and non-equaidistant $\sigma $ coordinates. During the first call, a three-dimensional field gga containing the relative interface positions is calculated, which further down used together with the actual water depth in the T-, U- and V-points for calculating the updated old and new layer thicknesses.

USES:

    use domain, only: ga,ddu,ddl,d_gamma,gamma_surf
    use domain, only: imin,imax,jmin,jmax,kmax,H,HU,HV,az,au,av,min_depth
    use variables_3d, only: dt,kmin,kumin,kvmin,ho,hn,huo,hun,hvo,hvn
    use variables_3d, only: sseo,ssen,ssuo,ssun,ssvo,ssvn
  $ use omp_lib
    IMPLICIT NONE
INPUT PARAMETERS:
    logical, intent(in)                 :: first
    REALTYPE, intent(in)                :: cord_relax
    REALTYPE, intent(in)                :: maxdepth
REVISION HISTORY:
    Original author(s): Hans Burchard & Karsten Bolding
LOCAL VARIABLES:
    integer         :: i,j,k,rc,kk
    REALTYPE        :: alpha
    REALTYPE        :: HH,zz,r
    REALTYPE, save, dimension(:),     allocatable  :: dga,be,sig
    REALTYPE, save, dimension(:,:,:), allocatable  :: gga