static_3d.h 3.36 KB
Newer Older
1 2
! Remember to update this value if you add more 3D arrays.
#ifdef UV_TVD
kbk's avatar
kbk committed
3
#ifdef SPM
kbk's avatar
kbk committed
4
  integer, parameter                   :: n3d_fields=29
5
#else
kbk's avatar
kbk committed
6 7 8
  integer, parameter                   :: n3d_fields=26 
#endif  
#else
kbk's avatar
kbk committed
9
#ifdef SPM
kbk's avatar
kbk committed
10
  integer, parameter                   :: n3d_fields=22
kbk's avatar
kbk committed
11 12 13
#else
  integer, parameter                   :: n3d_fields=19
#endif
14
#endif
kbk's avatar
kbk committed
15 16 17 18
! Number of vertical layers in z,u,v columns
  INTEGER                              :: kmin(I2DFIELD)
  INTEGER                              :: kumin(I2DFIELD)
  INTEGER                              :: kvmin(I2DFIELD)
kbk's avatar
kbk committed
19 20 21
  INTEGER                              :: kmin_pmz(I2DFIELD)
  INTEGER                              :: kumin_pmz(I2DFIELD)
  INTEGER                              :: kvmin_pmz(I2DFIELD)
kbk's avatar
kbk committed
22 23 24 25 26 27 28 29 30 31

  REALTYPE                             :: uu(I3DFIELD)
  REALTYPE                             :: vv(I3DFIELD)
  REALTYPE                             :: ww(I3DFIELD)
  REALTYPE                             :: ho(I3DFIELD)
  REALTYPE                             :: hn(I3DFIELD)
  REALTYPE                             :: huo(I3DFIELD)
  REALTYPE                             :: hun(I3DFIELD)
  REALTYPE                             :: hvo(I3DFIELD)
  REALTYPE                             :: hvn(I3DFIELD)
32
  REALTYPE                             :: hcc(I3DFIELD)
kbk's avatar
kbk committed
33 34 35 36
  REALTYPE                             :: uuEx(I3DFIELD)
  REALTYPE                             :: vvEx(I3DFIELD)
  REALTYPE                             :: num(I3DFIELD)
  REALTYPE                             :: nuh(I3DFIELD)
37 38

! 3D turbulent fields
kbk's avatar
kbk committed
39 40 41
  REALTYPE                             :: tke(I3DFIELD)
  REALTYPE                             :: eps(I3DFIELD)
  REALTYPE                             :: SS(I3DFIELD)
42

kbk's avatar
kbk committed
43
#ifndef NO_BAROCLINIC
44
! 3D baroclinic fields
45
  REALTYPE                             :: NN(I3DFIELD)
kbk's avatar
kbk committed
46 47 48 49 50 51 52
  REALTYPE                             :: S(I3DFIELD)
  REALTYPE                             :: T(I3DFIELD)
  REALTYPE                             :: rho(I3DFIELD)
  REALTYPE                             :: idpdx(I3DFIELD)
  REALTYPE                             :: idpdy(I3DFIELD)
#endif

kbk's avatar
kbk committed
53
#ifdef SPM
54
! suspended matter
kbk's avatar
kbk committed
55 56 57 58 59
  REALTYPE                             :: spm(I3DFIELD)
  REALTYPE                             :: spm_ws(I3DFIELD)
  REALTYPE                             :: spm_pool(I2DFIELD)
#endif

60 61
  REALTYPE                             :: light(I3DFIELD)

62
#ifdef UV_TVD
kbk's avatar
kbk committed
63 64 65 66 67 68 69
  REALTYPE                             :: uadv(I3DFIELD)
  REALTYPE                             :: vadv(I3DFIELD)
  REALTYPE                             :: wadv(I3DFIELD)
  REALTYPE                             :: huadv(I3DFIELD)
  REALTYPE                             :: hvadv(I3DFIELD)
  REALTYPE                             :: hoadv(I3DFIELD)
  REALTYPE                             :: hnadv(I3DFIELD)
70 71 72
#endif

! 2D fields in 3D domain
kbk's avatar
kbk committed
73 74 75 76 77 78
  REALTYPE                             :: sseo(I2DFIELD)
  REALTYPE                             :: ssen(I2DFIELD)
  REALTYPE                             :: ssuo(I2DFIELD)
  REALTYPE                             :: ssun(I2DFIELD)
  REALTYPE                             :: ssvo(I2DFIELD)
  REALTYPE                             :: ssvn(I2DFIELD)
79 80

! 3D friction in 3D domain
kbk's avatar
kbk committed
81 82 83 84
  REALTYPE                             :: rru(I2DFIELD)
  REALTYPE                             :: rrv(I2DFIELD)
  REALTYPE                             :: taus(I2DFIELD)
  REALTYPE                             :: taub(I2DFIELD)
85