SUBROUTINE VERTTRANSFORM ( N, UUH, VVH, WWH, PVH )

Argument Definitions (+ indicates altered content)
INTEGER            N
REAL               PVH(0:NXMAX-1,0:NYMAX-1,NUVZMAX)
REAL               UUH(0:NXMAX-1,0:NYMAX-1,NUVZMAX)
REAL               VVH(0:NXMAX-1,0:NYMAX-1,NUVZMAX)
REAL               WWH(0:NXMAX-1,0:NYMAX-1,NWZMAX)
Description
                             i  i   i   i   i 
 
 
    This subroutine transforms temperature, dew point temperature and 
    wind components from eta to meter coordinates. 
    The vertical wind component is transformed from Pa/s to m/s using 
    the conversion factor pinmconv. 
    In addition, this routine calculates vertical density gradients 
    needed for the parameterization of the turbulent velocities. 
 
    Author: A. Stohl, G. Wotawa 
 
    12 August 1996 
    Update: 16 January 1998 
 
    Major update: 17 February 1999 
    by G. Wotawa 
 
    - Vertical levels for u, v and w are put together 
    - Slope correction for vertical velocity: Modification of calculat 
      procedure 
 
 
 Changes, Bernd C. Krueger, Feb. 2001: 
       Variables tth and qvh (on eta coordinates) from common block 
 
 
Variables: 
nx,ny,nz                        field dimensions in x,y and z directio 
uu(0:nxmax,0:nymax,nzmax,2)     wind components in x-direction [m/s] 
vv(0:nxmax,0:nymax,nzmax,2)     wind components in y-direction [m/s] 
ww(0:nxmax,0:nymax,nzmax,2)     wind components in z-direction [deltae 
tt(0:nxmax,0:nymax,nzmax,2)     temperature [K] 
pv(0:nxmax,0:nymax,nzmax,2)     potential voriticity (pvu) 
ps(0:nxmax,0:nymax,2)           surface pressure [Pa]
Source file:verttransform.f
Intrinsic Functions Called
INTEGER            INT
REAL               FLOAT
GENERIC            ABS,        ATAN,       COS,        LOG
GENERIC            SIN,        SQRT
External Functions and Subroutines Called
REAL               EW
SUBROUTINE         CC2GLL
Parameter Variables Used
INTEGER            NUMPATH            (NUMPATH = 4)
INTEGER            IDIFFNORM          (IDIFFNORM = 10800)
INTEGER            NXMAX              (NXMAX = 361)
INTEGER            NYMAX              (NYMAX = 181)
INTEGER            NUVZMAX            (NUVZMAX = 61)
INTEGER            NWZMAX             (NWZMAX = 61)
INTEGER            NZMAX              (NZMAX = 61)
INTEGER            NCONVLEVMAX        (NCONVLEVMAX = NUVZMAX-1)
INTEGER            MAXNESTS           (MAXNESTS = 1)
INTEGER            NXMAXN             (NXMAXN = 1)
INTEGER            NYMAXN             (NYMAXN = 1)
INTEGER            JPACK              (JPACK = 4*NXMAX*NYMAX)
INTEGER            MAXXGRID           (MAXXGRID = 180)
INTEGER            MAXYGRID           (MAXYGRID = 90)
INTEGER            MAXXGRIDN          (MAXXGRIDN = 1)
INTEGER            MAXYGRIDN          (MAXYGRIDN = 1)
INTEGER            MAXAGECLASS        (MAXAGECLASS = 1)
INTEGER            MAXZGRID           (MAXZGRID = 14)
INTEGER            NCLASSUNC          (NCLASSUNC = 10)
INTEGER            MAXRECEPTOR        (MAXRECEPTOR = 200)
INTEGER            MAXPART            (MAXPART = 1000000)
INTEGER            MAXPOINT           (MAXPOINT = 10000)
INTEGER            MAXSPEC            (MAXSPEC = 1)
INTEGER            MAXPOINTSPEC       (MAXPOINTSPEC = MAXSPEC)
INTEGER            MAXWF              (MAXWF = 50000)
INTEGER            MAXTABLE           (MAXTABLE = 1000)
INTEGER            NUMCLASS           (NUMCLASS = 9)
INTEGER            NI                 (NI = 11)
INTEGER            MAXCOLUMN          (MAXCOLUMN = 3000)
INTEGER            MAXRAND            (MAXRAND = 2000000)
REAL               PI                 (PI = 3.14159265)
REAL               R_AIR              (R_AIR = 287.05)
REAL               GA                 (GA = 9.81)
REAL               PI180              (PI180 = PI/180.)
REAL               HMIXMAX            (HMIXMAX = 4500.)
REAL               CONST              (CONST = R_AIR/GA)
Local Variables (+ indicates altered content)
INTEGER           +IX,        +IX1,       +IXM,       +IXP
INTEGER           +IZ,        +JY,        +JY1,       +JYM
INTEGER           +JYP,       +KL,        +KLP,       +KMIN
INTEGER           +KZ
LOGICAL           +INIT
REAL              +DDPOL,     +DZ,        +DZ1,       +DZ2
REAL              +DZDX,      +DZDX1,     +DZDX2,     +DZDY
REAL              +DZDY1,     +DZDY2,     +FFPOL
REAL              +PINMCONV(NZMAX),       +PINT,      +POLD
REAL              +RHOH(NUVZMAX),         +TV,        +TVOLD
REAL              +UI,        +UUAUX,      UUPOLAUX
REAL              +UVWZLEV(0:NXMAX-1,0:NYMAX-1,NZMAX)
REAL              +UVZLEV(NUVZMAX),       +VI,        +VVAUX
REAL               VVPOLAUX,  +WDUMMY,    +WZLEV(NWZMAX)
REAL              +XLON,      +XLONR,     +YLAT
Referenced Common Block Variables (+ indicates altered content)
GLOBALI            INTEGER           +NMIXZ,     NUVZ
GLOBALI            INTEGER            NWZ,       NX
GLOBALI            INTEGER            NXMIN1,    NY
GLOBALI            INTEGER            NYMIN1,    NZ
GLOBALL            LOGICAL            NGLOBAL,   SGLOBAL
GLOBALR            REAL               AKNEW(NZMAX)
GLOBALR            REAL               AKZ(NUVZMAX)
GLOBALR            REAL               BKNEW(NZMAX)
GLOBALR            REAL               BKZ(NUVZMAX)
GLOBALR            REAL              +DRHODZ(0:NXMAX-1,0:NYMAX-1,NZMAX,2)
GLOBALR            REAL               DX,        DXCONST
GLOBALR            REAL               DY,        DYCONST
GLOBALR            REAL              +HEIGHT(NZMAX)
GLOBALR            REAL               NORTHPOLEMAP(9)
GLOBALR            REAL               PS(0:NXMAX-1,0:NYMAX-1,1,2)
GLOBALR            REAL              +PV(0:NXMAX-1,0:NYMAX-1,NZMAX,2)
GLOBALR            REAL              +QV(0:NXMAX-1,0:NYMAX-1,NZMAX,2)
GLOBALR            REAL               QVH(0:NXMAX-1,0:NYMAX-1,NUVZMAX,2)
GLOBALR            REAL              +RHO(0:NXMAX-1,0:NYMAX-1,NZMAX,2)
GLOBALR            REAL               SOUTHPOLEMAP(9)
GLOBALR            REAL               SWITCHNORTHG
GLOBALR            REAL               SWITCHSOUTHG
GLOBALR            REAL               TD2(0:NXMAX-1,0:NYMAX-1,1,2)
GLOBALR            REAL              +TT(0:NXMAX-1,0:NYMAX-1,NZMAX,2)
GLOBALR            REAL               TT2(0:NXMAX-1,0:NYMAX-1,1,2)
GLOBALR            REAL               TTH(0:NXMAX-1,0:NYMAX-1,NUVZMAX,2)
GLOBALR            REAL              +UU(0:NXMAX-1,0:NYMAX-1,NZMAX,2)
GLOBALR            REAL              +UUPOL(0:NXMAX-1,0:NYMAX-1,NZMAX,2)
GLOBALR            REAL              +VV(0:NXMAX-1,0:NYMAX-1,NZMAX,2)
GLOBALR            REAL              +VVPOL(0:NXMAX-1,0:NYMAX-1,NZMAX,2)
GLOBALR            REAL              +WW(0:NXMAX-1,0:NYMAX-1,NZMAX,2)
GLOBALR            REAL               XLON0,     YLAT0