- Timestamp:
- 2017-01-04T17:47:47+01:00 (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2016/dev_r6519_HPC_4/NEMOGCM/NEMO/OPA_SRC/DYN/dynvor.F90
r7508 r7525 108 108 IF( l_trddyn ) THEN ! trend diagnostics: split the trend in two 109 109 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 110 DO jk = 1, jpk111 DO jj = 1, jpj112 DO ji = 1, jpi113 ztrdu(ji,jj,jk) = ua(ji,jj,jk)114 ztrdv(ji,jj,jk) = va(ji,jj,jk)115 END DO116 END DO117 END DO110 DO jk = 1, jpk 111 DO jj = 1, jpj 112 DO ji = 1, jpi 113 ztrdu(ji,jj,jk) = ua(ji,jj,jk) 114 ztrdv(ji,jj,jk) = va(ji,jj,jk) 115 END DO 116 END DO 117 END DO 118 118 CALL vor_ene( kt, nrvm, ua, va ) ! relative vorticity or metric trend 119 119 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 120 DO jk = 1, jpk121 DO jj = 1, jpj122 DO ji = 1, jpi123 ztrdu(ji,jj,jk) = ua(ji,jj,jk) - ztrdu(ji,jj,jk)124 ztrdv(ji,jj,jk) = va(ji,jj,jk) - ztrdv(ji,jj,jk)125 END DO126 END DO127 END DO120 DO jk = 1, jpk 121 DO jj = 1, jpj 122 DO ji = 1, jpi 123 ztrdu(ji,jj,jk) = ua(ji,jj,jk) - ztrdu(ji,jj,jk) 124 ztrdv(ji,jj,jk) = va(ji,jj,jk) - ztrdv(ji,jj,jk) 125 END DO 126 END DO 127 END DO 128 128 CALL trd_dyn( ztrdu, ztrdv, jpdyn_rvo, kt ) 129 129 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 130 DO jk = 1, jpk131 DO jj = 1, jpj132 DO ji = 1, jpi133 ztrdu(ji,jj,jk) = ua(ji,jj,jk)134 ztrdv(ji,jj,jk) = va(ji,jj,jk)135 END DO136 END DO137 END DO130 DO jk = 1, jpk 131 DO jj = 1, jpj 132 DO ji = 1, jpi 133 ztrdu(ji,jj,jk) = ua(ji,jj,jk) 134 ztrdv(ji,jj,jk) = va(ji,jj,jk) 135 END DO 136 END DO 137 END DO 138 138 CALL vor_ene( kt, ncor, ua, va ) ! planetary vorticity trend 139 139 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 140 DO jk = 1, jpk141 DO jj = 1, jpj142 DO ji = 1, jpi143 ztrdu(ji,jj,jk) = ua(ji,jj,jk) - ztrdu(ji,jj,jk)144 ztrdv(ji,jj,jk) = va(ji,jj,jk) - ztrdv(ji,jj,jk)145 END DO146 END DO147 END DO140 DO jk = 1, jpk 141 DO jj = 1, jpj 142 DO ji = 1, jpi 143 ztrdu(ji,jj,jk) = ua(ji,jj,jk) - ztrdu(ji,jj,jk) 144 ztrdv(ji,jj,jk) = va(ji,jj,jk) - ztrdv(ji,jj,jk) 145 END DO 146 END DO 147 END DO 148 148 CALL trd_dyn( ztrdu, ztrdv, jpdyn_pvo, kt ) 149 149 ELSE … … 154 154 IF( l_trddyn ) THEN ! trend diagnostics: splitthe trend in two 155 155 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 156 DO jk = 1, jpk157 DO jj = 1, jpj158 DO ji = 1, jpi159 ztrdu(ji,jj,jk) = ua(ji,jj,jk)160 ztrdv(ji,jj,jk) = va(ji,jj,jk)161 END DO162 END DO163 END DO156 DO jk = 1, jpk 157 DO jj = 1, jpj 158 DO ji = 1, jpi 159 ztrdu(ji,jj,jk) = ua(ji,jj,jk) 160 ztrdv(ji,jj,jk) = va(ji,jj,jk) 161 END DO 162 END DO 163 END DO 164 164 CALL vor_ens( kt, nrvm, ua, va ) ! relative vorticity or metric trend 165 165 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 166 DO jk = 1, jpk167 DO jj = 1, jpj168 DO ji = 1, jpi169 ztrdu(ji,jj,jk) = ua(ji,jj,jk) - ztrdu(ji,jj,jk)170 ztrdv(ji,jj,jk) = va(ji,jj,jk) - ztrdv(ji,jj,jk)171 END DO172 END DO173 END DO166 DO jk = 1, jpk 167 DO jj = 1, jpj 168 DO ji = 1, jpi 169 ztrdu(ji,jj,jk) = ua(ji,jj,jk) - ztrdu(ji,jj,jk) 170 ztrdv(ji,jj,jk) = va(ji,jj,jk) - ztrdv(ji,jj,jk) 171 END DO 172 END DO 173 END DO 174 174 CALL trd_dyn( ztrdu, ztrdv, jpdyn_rvo, kt ) 175 175 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 176 DO jk = 1, jpk177 DO jj = 1, jpj178 DO ji = 1, jpi179 ztrdu(ji,jj,jk) = ua(ji,jj,jk)180 ztrdv(ji,jj,jk) = va(ji,jj,jk)181 END DO182 END DO183 END DO176 DO jk = 1, jpk 177 DO jj = 1, jpj 178 DO ji = 1, jpi 179 ztrdu(ji,jj,jk) = ua(ji,jj,jk) 180 ztrdv(ji,jj,jk) = va(ji,jj,jk) 181 END DO 182 END DO 183 END DO 184 184 CALL vor_ens( kt, ncor, ua, va ) ! planetary vorticity trend 185 185 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 186 DO jk = 1, jpk187 DO jj = 1, jpj188 DO ji = 1, jpi189 ztrdu(ji,jj,jk) = ua(ji,jj,jk) - ztrdu(ji,jj,jk)190 ztrdv(ji,jj,jk) = va(ji,jj,jk) - ztrdv(ji,jj,jk)191 END DO192 END DO193 END DO186 DO jk = 1, jpk 187 DO jj = 1, jpj 188 DO ji = 1, jpi 189 ztrdu(ji,jj,jk) = ua(ji,jj,jk) - ztrdu(ji,jj,jk) 190 ztrdv(ji,jj,jk) = va(ji,jj,jk) - ztrdv(ji,jj,jk) 191 END DO 192 END DO 193 END DO 194 194 CALL trd_dyn( ztrdu, ztrdv, jpdyn_pvo, kt ) 195 195 ELSE … … 200 200 IF( l_trddyn ) THEN ! trend diagnostics: split the trend in two 201 201 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 202 DO jk = 1, jpk203 DO jj = 1, jpj204 DO ji = 1, jpi205 ztrdu(ji,jj,jk) = ua(ji,jj,jk)206 ztrdv(ji,jj,jk) = va(ji,jj,jk)207 END DO208 END DO209 END DO202 DO jk = 1, jpk 203 DO jj = 1, jpj 204 DO ji = 1, jpi 205 ztrdu(ji,jj,jk) = ua(ji,jj,jk) 206 ztrdv(ji,jj,jk) = va(ji,jj,jk) 207 END DO 208 END DO 209 END DO 210 210 CALL vor_ens( kt, nrvm, ua, va ) ! relative vorticity or metric trend (ens) 211 211 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 212 DO jk = 1, jpk213 DO jj = 1, jpj214 DO ji = 1, jpi215 ztrdu(ji,jj,jk) = ua(ji,jj,jk) - ztrdu(ji,jj,jk)216 ztrdv(ji,jj,jk) = va(ji,jj,jk) - ztrdv(ji,jj,jk)217 END DO218 END DO219 END DO212 DO jk = 1, jpk 213 DO jj = 1, jpj 214 DO ji = 1, jpi 215 ztrdu(ji,jj,jk) = ua(ji,jj,jk) - ztrdu(ji,jj,jk) 216 ztrdv(ji,jj,jk) = va(ji,jj,jk) - ztrdv(ji,jj,jk) 217 END DO 218 END DO 219 END DO 220 220 CALL trd_dyn( ztrdu, ztrdv, jpdyn_rvo, kt ) 221 221 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 222 DO jk = 1, jpk223 DO jj = 1, jpj224 DO ji = 1, jpi225 ztrdu(ji,jj,jk) = ua(ji,jj,jk)226 ztrdv(ji,jj,jk) = va(ji,jj,jk)227 END DO228 END DO229 END DO222 DO jk = 1, jpk 223 DO jj = 1, jpj 224 DO ji = 1, jpi 225 ztrdu(ji,jj,jk) = ua(ji,jj,jk) 226 ztrdv(ji,jj,jk) = va(ji,jj,jk) 227 END DO 228 END DO 229 END DO 230 230 CALL vor_ene( kt, ncor, ua, va ) ! planetary vorticity trend (ene) 231 231 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 232 DO jk = 1, jpk233 DO jj = 1, jpj234 DO ji = 1, jpi235 ztrdu(ji,jj,jk) = ua(ji,jj,jk) - ztrdu(ji,jj,jk)236 ztrdv(ji,jj,jk) = va(ji,jj,jk) - ztrdv(ji,jj,jk)237 END DO238 END DO239 END DO232 DO jk = 1, jpk 233 DO jj = 1, jpj 234 DO ji = 1, jpi 235 ztrdu(ji,jj,jk) = ua(ji,jj,jk) - ztrdu(ji,jj,jk) 236 ztrdv(ji,jj,jk) = va(ji,jj,jk) - ztrdv(ji,jj,jk) 237 END DO 238 END DO 239 END DO 240 240 CALL trd_dyn( ztrdu, ztrdv, jpdyn_pvo, kt ) 241 241 ELSE … … 247 247 IF( l_trddyn ) THEN ! trend diagnostics: split the trend in two 248 248 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 249 DO jk = 1, jpk250 DO jj = 1, jpj251 DO ji = 1, jpi252 ztrdu(ji,jj,jk) = ua(ji,jj,jk)253 ztrdv(ji,jj,jk) = va(ji,jj,jk)254 END DO255 END DO256 END DO249 DO jk = 1, jpk 250 DO jj = 1, jpj 251 DO ji = 1, jpi 252 ztrdu(ji,jj,jk) = ua(ji,jj,jk) 253 ztrdv(ji,jj,jk) = va(ji,jj,jk) 254 END DO 255 END DO 256 END DO 257 257 CALL vor_een( kt, nrvm, ua, va ) ! relative vorticity or metric trend 258 258 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 259 DO jk = 1, jpk260 DO jj = 1, jpj261 DO ji = 1, jpi262 ztrdu(ji,jj,jk) = ua(ji,jj,jk) - ztrdu(ji,jj,jk)263 ztrdv(ji,jj,jk) = va(ji,jj,jk) - ztrdv(ji,jj,jk)264 END DO265 END DO266 END DO259 DO jk = 1, jpk 260 DO jj = 1, jpj 261 DO ji = 1, jpi 262 ztrdu(ji,jj,jk) = ua(ji,jj,jk) - ztrdu(ji,jj,jk) 263 ztrdv(ji,jj,jk) = va(ji,jj,jk) - ztrdv(ji,jj,jk) 264 END DO 265 END DO 266 END DO 267 267 CALL trd_dyn( ztrdu, ztrdv, jpdyn_rvo, kt ) 268 268 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 269 DO jk = 1, jpk270 DO jj = 1, jpj271 DO ji = 1, jpi272 ztrdu(ji,jj,jk) = ua(ji,jj,jk)273 ztrdv(ji,jj,jk) = va(ji,jj,jk)274 END DO275 END DO276 END DO269 DO jk = 1, jpk 270 DO jj = 1, jpj 271 DO ji = 1, jpi 272 ztrdu(ji,jj,jk) = ua(ji,jj,jk) 273 ztrdv(ji,jj,jk) = va(ji,jj,jk) 274 END DO 275 END DO 276 END DO 277 277 CALL vor_een( kt, ncor, ua, va ) ! planetary vorticity trend 278 278 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 279 DO jk = 1, jpk280 DO jj = 1, jpj281 DO ji = 1, jpi282 ztrdu(ji,jj,jk) = ua(ji,jj,jk) - ztrdu(ji,jj,jk)283 ztrdv(ji,jj,jk) = va(ji,jj,jk) - ztrdv(ji,jj,jk)284 END DO285 END DO286 END DO279 DO jk = 1, jpk 280 DO jj = 1, jpj 281 DO ji = 1, jpi 282 ztrdu(ji,jj,jk) = ua(ji,jj,jk) - ztrdu(ji,jj,jk) 283 ztrdv(ji,jj,jk) = va(ji,jj,jk) - ztrdv(ji,jj,jk) 284 END DO 285 END DO 286 END DO 287 287 CALL trd_dyn( ztrdu, ztrdv, jpdyn_pvo, kt ) 288 288 ELSE
Note: See TracChangeset
for help on using the changeset viewer.