- Timestamp:
- 2016-07-19T10:38:35+02:00 (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/NERC/dev_r5549_BDY_ZEROGRAD/NEMOGCM/NEMO/OPA_SRC/TRD/trdvor.F90
r4990 r6808 20 20 USE sbc_oce ! surface boundary condition: ocean 21 21 USE phycst ! Define parameters for the routines 22 USE ldfdyn _oce! ocean active tracers: lateral physics22 USE ldfdyn ! ocean active tracers: lateral physics 23 23 USE dianam ! build the name of file (routine) 24 24 USE zdfmxl ! mixed layer depth 25 USE lbclnk ! ocean lateral boundary conditions (or mpp link)25 ! 26 26 USE in_out_manager ! I/O manager 27 27 USE ioipsl ! NetCDF library 28 USE lbclnk ! ocean lateral boundary conditions (or mpp link) 28 29 USE lib_mpp ! MPP library 29 30 USE wrk_nemo ! Memory allocation … … 56 57 57 58 !! * Substitutions 58 # include "domzgr_substitute.h90"59 # include "ldfdyn_substitute.h90"60 59 # include "vectopt_loop_substitute.h90" 61 60 !!---------------------------------------------------------------------- … … 85 84 !! 86 85 !! ** Purpose : computation of cumulated trends over analysis period 87 !! and make outputs (NetCDF or DIMGformat)86 !! and make outputs (NetCDF format) 88 87 !!---------------------------------------------------------------------- 89 88 REAL(wp), DIMENSION(:,:,:), INTENT(inout) :: putrd, pvtrd ! U and V trends … … 109 108 DO jj = 2, jpjm1 ! wind stress trends 110 109 DO ji = fs_2, fs_jpim1 ! vector opt. 111 ztswu(ji,jj) = 0.5 * ( utau_b(ji,jj) + utau(ji,jj) ) / ( fse3u(ji,jj,1) * rau0 )112 ztswv(ji,jj) = 0.5 * ( vtau_b(ji,jj) + vtau(ji,jj) ) / ( fse3v(ji,jj,1) * rau0 )110 ztswu(ji,jj) = 0.5 * ( utau_b(ji,jj) + utau(ji,jj) ) / ( e3u_n(ji,jj,1) * rau0 ) 111 ztswv(ji,jj) = 0.5 * ( vtau_b(ji,jj) + vtau(ji,jj) ) / ( e3v_n(ji,jj,1) * rau0 ) 113 112 END DO 114 113 END DO … … 183 182 ikbu = mbkv(ji,jj) 184 183 ikbv = mbkv(ji,jj) 185 zudpvor(ji,jj) = putrdvor(ji,jj) * fse3u(ji,jj,ikbu) * e1u(ji,jj) * umask(ji,jj,ikbu)186 zvdpvor(ji,jj) = pvtrdvor(ji,jj) * fse3v(ji,jj,ikbv) * e2v(ji,jj) * vmask(ji,jj,ikbv)184 zudpvor(ji,jj) = putrdvor(ji,jj) * e3u_n(ji,jj,ikbu) * e1u(ji,jj) * umask(ji,jj,ikbu) 185 zvdpvor(ji,jj) = pvtrdvor(ji,jj) * e3v_n(ji,jj,ikbv) * e2v(ji,jj) * vmask(ji,jj,ikbv) 187 186 END DO 188 187 END DO 189 188 ! 190 189 CASE( jpvor_swf ) ! wind stress 191 zudpvor(:,:) = putrdvor(:,:) * fse3u(:,:,1) * e1u(:,:) * umask(:,:,1)192 zvdpvor(:,:) = pvtrdvor(:,:) * fse3v(:,:,1) * e2v(:,:) * vmask(:,:,1)190 zudpvor(:,:) = putrdvor(:,:) * e3u_n(:,:,1) * e1u(:,:) * umask(:,:,1) 191 zvdpvor(:,:) = pvtrdvor(:,:) * e3v_n(:,:,1) * e2v(:,:) * vmask(:,:,1) 193 192 ! 194 193 END SELECT 195 194 196 195 ! Average except for Beta.V 197 zudpvor(:,:) = zudpvor(:,:) * hur(:,:)198 zvdpvor(:,:) = zvdpvor(:,:) * hvr(:,:)196 zudpvor(:,:) = zudpvor(:,:) * r1_hu_n(:,:) 197 zvdpvor(:,:) = zvdpvor(:,:) * r1_hv_n(:,:) 199 198 200 199 ! Curl … … 270 269 ! putrdvor and pvtrdvor terms 271 270 DO jk = 1,jpk 272 zudpvor(:,:) = zudpvor(:,:) + putrdvor(:,:,jk) * fse3u(:,:,jk) * e1u(:,:) * umask(:,:,jk)273 zvdpvor(:,:) = zvdpvor(:,:) + pvtrdvor(:,:,jk) * fse3v(:,:,jk) * e2v(:,:) * vmask(:,:,jk)271 zudpvor(:,:) = zudpvor(:,:) + putrdvor(:,:,jk) * e3u_n(:,:,jk) * e1u(:,:) * umask(:,:,jk) 272 zvdpvor(:,:) = zvdpvor(:,:) + pvtrdvor(:,:,jk) * e3v_n(:,:,jk) * e2v(:,:) * vmask(:,:,jk) 274 273 END DO 275 274 … … 286 285 END DO 287 286 ! Average of the Curl and Surface mask 288 vortrd(:,:,jpvor_bev) = vortrd(:,:,jpvor_bev) * hur(:,:) * fmask(:,:,1)287 vortrd(:,:,jpvor_bev) = vortrd(:,:,jpvor_bev) * r1_hu_n(:,:) * fmask(:,:,1) 289 288 ENDIF 290 289 ! 291 290 ! Average 292 zudpvor(:,:) = zudpvor(:,:) * hur(:,:)293 zvdpvor(:,:) = zvdpvor(:,:) * hvr(:,:)291 zudpvor(:,:) = zudpvor(:,:) * r1_hu_n(:,:) 292 zvdpvor(:,:) = zvdpvor(:,:) * r1_hv_n(:,:) 294 293 ! 295 294 ! Curl … … 318 317 !! 319 318 !! ** Purpose : computation of cumulated trends over analysis period 320 !! and make outputs (NetCDF or DIMGformat)319 !! and make outputs (NetCDF format) 321 320 !!---------------------------------------------------------------------- 322 321 INTEGER , INTENT(in ) :: kt ! time step … … 351 350 ! Vertically averaged velocity 352 351 DO jk = 1, jpk - 1 353 zun(:,:) = zun(:,:) + e1u(:,:) * un(:,:,jk) * fse3u(:,:,jk)354 zvn(:,:) = zvn(:,:) + e2v(:,:) * vn(:,:,jk) * fse3v(:,:,jk)352 zun(:,:) = zun(:,:) + e1u(:,:) * un(:,:,jk) * e3u_n(:,:,jk) 353 zvn(:,:) = zvn(:,:) + e2v(:,:) * vn(:,:,jk) * e3v_n(:,:,jk) 355 354 END DO 356 355 357 zun(:,:) = zun(:,:) * hur(:,:)358 zvn(:,:) = zvn(:,:) * hvr(:,:)356 zun(:,:) = zun(:,:) * r1_hu_n(:,:) 357 zvn(:,:) = zvn(:,:) * r1_hv_n(:,:) 359 358 360 359 ! Curl
Note: See TracChangeset
for help on using the changeset viewer.