- Timestamp:
- 2016-10-18T15:32:04+02:00 (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2016/dev_r6519_HPC_4/NEMOGCM/NEMO/OPA_SRC/DIA/dia25h.F90
r6748 r7037 225 225 ENDIF 226 226 227 !$OMP PARALLEL WORKSHARE 227 228 tn_25h(:,:,:) = tn_25h(:,:,:) + tsn(:,:,:,jp_tem) 228 229 sn_25h(:,:,:) = sn_25h(:,:,:) + tsn(:,:,:,jp_sal) … … 239 240 rmxln_25h(:,:,:) = rmxln_25h(:,:,:) + mxln(:,:,:) 240 241 #endif 242 !$OMP END PARALLEL WORKSHARE 241 243 cnt_25h = cnt_25h + 1 242 244 … … 255 257 ENDIF 256 258 259 !$OMP PARALLEL WORKSHARE 257 260 tn_25h(:,:,:) = tn_25h(:,:,:) / 25.0_wp 258 261 sn_25h(:,:,:) = sn_25h(:,:,:) / 25.0_wp … … 269 272 rmxln_25h(:,:,:) = rmxln_25h(:,:,:) / 25.0_wp 270 273 #endif 274 !$OMP END PARALLEL WORKSHARE 271 275 272 276 IF (lwp) WRITE(numout,*) 'dia_wri_tide : Mean calculated by dividing 25 hour sums and writing output' 273 277 zmdi=1.e+20 !missing data indicator for masking 274 278 ! write tracers (instantaneous) 279 !$OMP PARALLEL WORKSHARE 275 280 zw3d(:,:,:) = tn_25h(:,:,:)*tmask(:,:,:) + zmdi*(1.0-tmask(:,:,:)) 281 !$OMP END PARALLEL WORKSHARE 276 282 CALL iom_put("temper25h", zw3d) ! potential temperature 283 !$OMP PARALLEL WORKSHARE 277 284 zw3d(:,:,:) = sn_25h(:,:,:)*tmask(:,:,:) + zmdi*(1.0-tmask(:,:,:)) 285 !$OMP END PARALLEL WORKSHARE 278 286 CALL iom_put( "salin25h", zw3d ) ! salinity 287 !$OMP PARALLEL WORKSHARE 279 288 zw2d(:,:) = sshn_25h(:,:)*tmask(:,:,1) + zmdi*(1.0-tmask(:,:,1)) 289 !$OMP END PARALLEL WORKSHARE 280 290 CALL iom_put( "ssh25h", zw2d ) ! sea surface 281 291 282 292 283 293 ! Write velocities (instantaneous) 294 !$OMP PARALLEL WORKSHARE 284 295 zw3d(:,:,:) = un_25h(:,:,:)*umask(:,:,:) + zmdi*(1.0-umask(:,:,:)) 296 !$OMP END PARALLEL WORKSHARE 285 297 CALL iom_put("vozocrtx25h", zw3d) ! i-current 298 !$OMP PARALLEL WORKSHARE 286 299 zw3d(:,:,:) = vn_25h(:,:,:)*vmask(:,:,:) + zmdi*(1.0-vmask(:,:,:)) 300 !$OMP END PARALLEL WORKSHARE 287 301 CALL iom_put("vomecrty25h", zw3d ) ! j-current 288 302 303 !$OMP PARALLEL WORKSHARE 289 304 zw3d(:,:,:) = wn_25h(:,:,:)*tmask(:,:,:) + zmdi*(1.0-tmask(:,:,:)) 305 !$OMP END PARALLEL WORKSHARE 290 306 CALL iom_put("vomecrtz25h", zw3d ) ! k-current 307 !$OMP PARALLEL WORKSHARE 291 308 zw3d(:,:,:) = avt_25h(:,:,:)*tmask(:,:,:) + zmdi*(1.0-tmask(:,:,:)) 309 !$OMP END PARALLEL WORKSHARE 292 310 CALL iom_put("avt25h", zw3d ) ! diffusivity 311 !$OMP PARALLEL WORKSHARE 293 312 zw3d(:,:,:) = avm_25h(:,:,:)*tmask(:,:,:) + zmdi*(1.0-tmask(:,:,:)) 313 !$OMP END PARALLEL WORKSHARE 294 314 CALL iom_put("avm25h", zw3d) ! viscosity 295 315 #if defined key_zdftke || defined key_zdfgls 316 !$OMP PARALLEL WORKSHARE 296 317 zw3d(:,:,:) = en_25h(:,:,:)*tmask(:,:,:) + zmdi*(1.0-tmask(:,:,:)) 318 !$OMP END PARALLEL WORKSHARE 297 319 CALL iom_put("tke25h", zw3d) ! tke 298 320 #endif 299 321 #if defined key_zdfgls 322 !$OMP PARALLEL WORKSHARE 300 323 zw3d(:,:,:) = rmxln_25h(:,:,:)*tmask(:,:,:) + zmdi*(1.0-tmask(:,:,:)) 324 !$OMP END PARALLEL WORKSHARE 301 325 CALL iom_put( "mxln25h",zw3d) 302 326 #endif 303 327 304 328 ! After the write reset the values to cnt=1 and sum values equal current value 329 !$OMP PARALLEL WORKSHARE 305 330 tn_25h(:,:,:) = tsn(:,:,:,jp_tem) 306 331 sn_25h(:,:,:) = tsn(:,:,:,jp_sal) … … 317 342 rmxln_25h(:,:,:) = mxln(:,:,:) 318 343 #endif 344 !$OMP END PARALLEL WORKSHARE 319 345 cnt_25h = 1 320 346 IF (lwp) WRITE(numout,*) 'dia_wri_tide : After 25hr mean write, reset sum to current value and cnt_25h to one for overlapping average',cnt_25h
Note: See TracChangeset
for help on using the changeset viewer.