1 | MODULE trdicp_oce |
---|
2 | !!====================================================================== |
---|
3 | !! *** MODULE trdicp_oce *** |
---|
4 | !! Ocean trends : set tracer and momentum trend variables |
---|
5 | !!====================================================================== |
---|
6 | |
---|
7 | !!---------------------------------------------------------------------- |
---|
8 | !! 'key_trdtra' or tracer trends diagnostics |
---|
9 | !! 'key_trddyn' momentum trends diagnostics |
---|
10 | !!---------------------------------------------------------------------- |
---|
11 | !! * Modules used |
---|
12 | USE par_oce ! ocean parameters |
---|
13 | |
---|
14 | IMPLICIT NONE |
---|
15 | PUBLIC |
---|
16 | |
---|
17 | !! Namelist parameters |
---|
18 | !!---------------------------------------------------------------------- |
---|
19 | INTEGER :: & !!: namdia : diagnostics on dynamics and/or tracer trends |
---|
20 | ntrd = 10 , & !: time step frequency dynamics and tracers trends |
---|
21 | nctls = 0 !: control surface type for trends vertical integration |
---|
22 | |
---|
23 | !! Tracers trends diagnostics parameters |
---|
24 | !!--------------------------------------------------------------------- |
---|
25 | INTEGER, PARAMETER :: & !: trends index |
---|
26 | jpttdlad = 1, & !: tracer horizontal advection |
---|
27 | jpttdzad = 2, & !: tracer vertical advection |
---|
28 | jpttdldf = 3, & !: tracer horizontal diffusion |
---|
29 | jpttdzdf = 4, & !: tracer vertical diffusion |
---|
30 | jpttdnpc = 5, & !: tracer non penetrative convection |
---|
31 | jpttddoe = 6, & !: tracer D.amping O.r vertical E.iv |
---|
32 | jpttdqsr = 7, & !: tracer penetrative solar radiation |
---|
33 | jpttdnsr = 8 !: tracer non solar radiation |
---|
34 | |
---|
35 | !! Momentum trends diagnostics parameters |
---|
36 | !!--------------------------------------------------------------------- |
---|
37 | INTEGER, PARAMETER :: & !: trends index |
---|
38 | jpdtdhpg = 1, & !: dynamic hydrostatic pressure gradient |
---|
39 | jpdtdkeg = 2, & !: dynamic kinetic energy gradient |
---|
40 | jpdtdrvo = 3, & !: dynamic relative vorticity |
---|
41 | jpdtdpvo = 4, & !: dynamic planetary vorticity |
---|
42 | jpdtdldf = 5, & !: dynamic lateral diffusion |
---|
43 | jpdtdzad = 6, & !: dynamic vertical advection |
---|
44 | jpdtdzdf = 7, & !: dynamic vertical diffusion |
---|
45 | jpdtdspg = 8, & !: dynamic surface pressure gradient |
---|
46 | jpdtddat = 9, & !: dynamic damping term |
---|
47 | jpdtdswf = 10, & !: dynamic surface wind forcing |
---|
48 | jpdtdbfr = 11 !: dynamic bottom friction |
---|
49 | |
---|
50 | REAL, DIMENSION(jpi,jpj) :: & !: |
---|
51 | tldfbbl, sldfbbl, & ! Temperature/salinity lateral diffusion trends |
---|
52 | ! ! in the BBL |
---|
53 | tladbbl, sladbbl ! Temperature/salinity lateral advection trends |
---|
54 | ! ! in the BBL |
---|
55 | |
---|
56 | REAL, DIMENSION(jpi,jpj,jpk) :: & !: |
---|
57 | tladi, sladi, & ! Temp./sal. MUSCL OR TVD advection fluxes |
---|
58 | ! ! terms along i- |
---|
59 | tladj, sladj ! Temp./sal. MUSCL OR TVD advection fluxes |
---|
60 | ! ! terms along j- |
---|
61 | #if defined key_ldfslp |
---|
62 | REAL(wp), DIMENSION(jpi,jpj,jpk) :: & !: |
---|
63 | uldftrd, vldftrd !: lateral diffusion trend in isopycnal case |
---|
64 | #endif |
---|
65 | #if defined key_trdtra || defined key_trddyn || defined key_esopa |
---|
66 | |
---|
67 | !! Variables used for diagnostics |
---|
68 | !!--------------------------------------------------------------------- |
---|
69 | REAL(wp) :: & !: |
---|
70 | tvolt, & !: volume of the whole ocean computed at t-points |
---|
71 | tvolu, & !: volume of the whole ocean computed at u-points |
---|
72 | tvolv !: volume of the whole ocean computed at v-points |
---|
73 | |
---|
74 | !! Tracers trends diagnostics variables |
---|
75 | !!--------------------------------------------------------------------- |
---|
76 | REAL(wp), DIMENSION(10) :: & !: |
---|
77 | tmo, smo !: tracers trends average |
---|
78 | ! ! tmo(1) : horizontal advection |
---|
79 | ! ! tmo(2) : vertical advection |
---|
80 | ! ! tmo(3) : horizontal diffusion |
---|
81 | ! ! tmo(4) : vertical diffusion |
---|
82 | ! ! tmo(5) : static instability |
---|
83 | ! ! tmo(6) : damping OR vertical EIV |
---|
84 | ! ! tmo(7) : penetrative solar radiation (T only) |
---|
85 | REAL(wp), DIMENSION(10) :: & !: |
---|
86 | t2, s2 !: tracers square trends average |
---|
87 | ! ! t2(1) : horizontal advection |
---|
88 | ! ! t2(2) : vertical advection |
---|
89 | ! ! t2(3) : horizontal diffusion |
---|
90 | ! ! t2(4) : vertical diffusion |
---|
91 | ! ! t2(5) : static instability |
---|
92 | ! ! t2(6) : damping OR vertical EIV |
---|
93 | ! ! t2(7) : penetrative solar radiation (T only) |
---|
94 | |
---|
95 | !! Momentum trends diagnostics variables |
---|
96 | !!--------------------------------------------------------------------- |
---|
97 | REAL(wp), DIMENSION(11) :: & !: |
---|
98 | umo, vmo !: momentum trends average |
---|
99 | ! ! umo(1) : hydrostatic pressure gradient |
---|
100 | ! ! umo(2) : kinetic energy |
---|
101 | ! ! umo(3) : lateral diffusion geo-pot |
---|
102 | ! ! umo(4) : |
---|
103 | ! ! umo(5) : lateral diffusion |
---|
104 | ! ! umo(6) : vertical advection |
---|
105 | ! ! umo(7) : vertical diffusion |
---|
106 | ! ! umo(8) : surface pressure gradient |
---|
107 | ! ! umo(9) : |
---|
108 | |
---|
109 | REAL(wp), DIMENSION(10) :: & !: |
---|
110 | hke !: momentum square trends average |
---|
111 | ! ! hke(1) : horizontal advection |
---|
112 | ! ! hke(2) : vertical advection |
---|
113 | |
---|
114 | REAL(wp) :: & !: |
---|
115 | rpktrd, & !: potential to kinetic energy conversion |
---|
116 | peke !: conversion potential energy - kinetic energy trend |
---|
117 | |
---|
118 | #endif |
---|
119 | |
---|
120 | !!====================================================================== |
---|
121 | END MODULE trdicp_oce |
---|