Changeset 216 for trunk/NEMO/OPA_SRC/DYN/dynspg_fsc.F90
- Timestamp:
- 2005-03-17T15:02:38+01:00 (19 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/NEMO/OPA_SRC/DYN/dynspg_fsc.F90
r183 r216 16 16 USE oce ! ocean dynamics and tracers 17 17 USE dom_oce ! ocean space and time domain 18 USE trd tra_oce ! ocean active tracer trend19 USE trd dyn_oce ! ocean active dynamics trend18 USE trdmod ! ocean dynamics trends 19 USE trdmod_oce ! ocean variables trends 20 20 USE zdf_oce ! ocean vertical physics 21 21 USE in_out_manager ! I/O manager 22 22 USE phycst ! physical constants 23 23 USE ocesbc ! ocean surface boundary condition 24 USE flxrnf ! ???25 USE sol_oce ! solver variables24 USE flxrnf ! ocean runoffs 25 USE sol_oce ! ocean elliptic solver 26 26 USE solpcg ! preconditionned conjugate gradient solver 27 27 USE solsor ! Successive Over-relaxation solver … … 30 30 USE obcdyn ! ocean open boundary condition (obc_dyn routines) 31 31 USE obcvol ! ocean open boundary condition (obc_vol routines) 32 USE lib_mpp ! ???33 USE lbclnk ! ???34 USE cla_dynspg ! ???32 USE lib_mpp ! distributed memory computing library 33 USE lbclnk ! ocean lateral boundary conditions (or mpp link) 34 USE cla_dynspg ! cross land advection 35 35 36 36 IMPLICIT NONE … … 94 94 !! 95 95 !! ** Action : - Update (ua,va) with the surf. pressure gradient trend 96 !! - Save the trends in ( utrd,vtrd) ('key_diatrends')96 !! - Save the trends in (ztdua,ztdva) ('key_trddyn') 97 97 !! 98 98 !! References : … … 101 101 !! History : 102 102 !! ! 98-05 (G. Roullet) Original code 103 !! ! 98-10 (G. Madec, M. Imbard) release 8.2 104 !! 8.5 ! 02-08 (G. Madec) F90: Free form and module 105 !! ! 02-11 (C. Talandier, A-M Treguier) Open boundaries 103 !! ! 98-10 (G. Madec, M. Imbard) release 8.2 104 !! 8.5 ! 02-08 (G. Madec) F90: Free form and module 105 !! ! 02-11 (C. Talandier, A-M Treguier) Open boundaries 106 !! 9.0 ! 04-08 (C. Talandier) New trends organization 106 107 !!--------------------------------------------------------------------- 108 !! * Modules used 109 USE oce, ONLY : ztdua => ta, & ! use ta as 3D workspace 110 ztdva => sa ! use sa as 3D workspace 111 107 112 !! * Arguments 108 113 INTEGER, INTENT( in ) :: kt ! ocean time-step index … … 155 160 spgu(ji,jj) = zspgu 156 161 spgv(ji,jj) = zspgv 157 #if defined key_trddyn || defined key_trd_vor158 ! save the surface pressure gradient trends159 utrd2(ji,jj,1) = zspgu160 vtrd2(ji,jj,1) = zspgv161 #endif162 162 END DO 163 163 END DO … … 170 170 ua(ji,jj,jk) = ua(ji,jj,jk) + spgu(ji,jj) 171 171 va(ji,jj,jk) = va(ji,jj,jk) + spgv(ji,jj) 172 #if defined key_trddyn || defined key_trd_vor 173 ! save the surface pressure gradient trend for diagnostics 174 utrd(ji,jj,jk,8) = spgu(ji,jj) 175 vtrd(ji,jj,jk,8) = spgv(ji,jj) 176 #endif 177 END DO 178 END DO 179 END DO 172 END DO 173 END DO 174 END DO 175 176 ! Save the surface pressure gradient trend for diagnostics 177 IF( l_trddyn ) THEN 178 DO jk = 1, jpkm1 179 ztdua(:,:,jk) = spgu(:,:) 180 ztdva(:,:,jk) = spgv(:,:) 181 END DO 182 ENDIF 180 183 181 184 ! 1. Evaluate the masked next velocity … … 310 313 spgv(ji,jj) = z2dt * ztdgv 311 314 #endif 312 #if defined key_trddyn || defined key_trd_vor313 ! save the transport divergence gradient trends314 utrd2(ji,jj,2) = utrd2(ji,jj,2) + ztdgu315 vtrd2(ji,jj,2) = vtrd2(ji,jj,2) + ztdgv316 #endif317 315 END DO 318 316 END DO … … 328 326 ua(ji,jj,jk) = (ua(ji,jj,jk) + spgu(ji,jj)) * umask(ji,jj,jk) 329 327 va(ji,jj,jk) = (va(ji,jj,jk) + spgv(ji,jj)) * vmask(ji,jj,jk) 330 #if defined key_trddyn || defined key_trd_vor 331 ! save the surface pressure gradient trend for diagnostics 332 utrd(ji,jj,jk,8) = utrd(ji,jj,jk,8) + spgu(ji,jj)/z2dt 333 vtrd(ji,jj,jk,8) = vtrd(ji,jj,jk,8) + spgv(ji,jj)/z2dt 334 #endif 335 END DO 336 END DO 337 END DO 328 END DO 329 END DO 330 END DO 331 332 ! save the surface pressure gradient trends for diagnostic 333 ! momentum trends 334 IF( l_trddyn ) THEN 335 DO jk = 1, jpkm1 336 ztdua(:,:,jk) = ztdua(:,:,jk) + spgu(:,:)/z2dt 337 ztdva(:,:,jk) = ztdva(:,:,jk) + spgv(:,:)/z2dt 338 END DO 339 340 CALL trd_mod(ztdua, ztdva, jpdtdspg, 'DYN', kt) 341 ENDIF 338 342 339 343 IF(l_ctl) THEN ! print sum trends (used for debugging)
Note: See TracChangeset
for help on using the changeset viewer.