- Timestamp:
- 2014-02-04T13:19:11+01:00 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2011/DEV_r2739_STFC_dCSE/NEMOGCM/NEMO/OPA_SRC/DYN/dynzdf_imp.F90
r4436 r4479 105 105 DO jj = 2, jpjm1 106 106 DO ji = 2, jpim1 107 DO jk = 1, jpk fm1107 DO jk = 1, jpkm1 108 108 zcoef = - p2dt / fse3u(ji,jj,jk) 109 109 zzwi = zcoef * avmu (ji,jj,jk ) / fse3uw(ji,jj,jk ) … … 119 119 END DO 120 120 #else 121 DO jk = 1, jpk fm1 ! Matrix121 DO jk = 1, jpkm1 ! Matrix 122 122 DO jj = 2, jpjm1 123 123 DO ji = fs_2, fs_jpim1 ! vector opt. … … 160 160 ua(ji,jj,1) = ub(ji,jj,1) + p2dt * ( ua(ji,jj,1) + 0.5_wp * ( utau_b(ji,jj) + utau(ji,jj) ) & 161 161 & / ( fse3u(ji,jj,1) * rau0 ) ) 162 DO jk = 2, jpk fm1162 DO jk = 2, jpkm1 163 163 zzwibd = zwi(ji,jj,jk) / zwd(ji,jj,jk-1) 164 164 !== First recurrence : Dk = Dk - Lk * Uk-1 / Dk-1 (increasing k) == … … 169 169 END DO 170 170 !== third recurrence : SOLk = ( Lk - Uk * Ek+1 ) / Dk == 171 ua(ji,jj,jpk fm1) = ua(ji,jj,jpkfm1) / zwd(ji,jj,jpkfm1)172 DO jk = jpk f-2, 1, -1171 ua(ji,jj,jpkm1) = ua(ji,jj,jpkm1) / zwd(ji,jj,jpkm1) 172 DO jk = jpk-2, 1, -1 173 173 ua(ji,jj,jk) = ( ua(ji,jj,jk) - zws(ji,jj,jk) * ua(ji,jj,jk+1) ) / zwd(ji,jj,jk) 174 174 END DO 175 175 ! Normalization to obtain the general momentum trend ua 176 DO jk = 1, jpk fm1176 DO jk = 1, jpkm1 177 177 ua(ji,jj,jk) = ( ua(ji,jj,jk) - ub(ji,jj,jk) ) * z1_p2dt 178 178 END DO … … 180 180 END DO 181 181 #else 182 DO jk = 2, jpk fm1 !== First recurrence : Dk = Dk - Lk * Uk-1 / Dk-1 (increasing k) ==182 DO jk = 2, jpkm1 !== First recurrence : Dk = Dk - Lk * Uk-1 / Dk-1 (increasing k) == 183 183 DO jj = 2, jpjm1 184 184 DO ji = fs_2, fs_jpim1 ! vector opt. … … 194 194 END DO 195 195 END DO 196 DO jk = 2, jpk fm1196 DO jk = 2, jpkm1 197 197 DO jj = 2, jpjm1 198 198 DO ji = fs_2, fs_jpim1 ! vector opt. … … 205 205 DO jj = 2, jpjm1 !== third recurrence : SOLk = ( Lk - Uk * Ek+1 ) / Dk == 206 206 DO ji = fs_2, fs_jpim1 ! vector opt. 207 ua(ji,jj,jpk fm1) = ua(ji,jj,jpkfm1) / zwd(ji,jj,jpkfm1)208 END DO 209 END DO 210 DO jk = jpk f-2, 1, -1207 ua(ji,jj,jpkm1) = ua(ji,jj,jpkm1) / zwd(ji,jj,jpkm1) 208 END DO 209 END DO 210 DO jk = jpk-2, 1, -1 211 211 DO jj = 2, jpjm1 212 212 DO ji = fs_2, fs_jpim1 ! vector opt. … … 216 216 END DO 217 217 ! Normalization to obtain the general momentum trend ua 218 DO jk = 1, jpk fm1218 DO jk = 1, jpkm1 219 219 DO jj = 2, jpjm1 220 220 DO ji = fs_2, fs_jpim1 ! vector opt. … … 237 237 DO jj = 2, jpjm1 238 238 DO ji = 2, jpim1 239 DO jk = 1, jpk fm1 ! Matrix239 DO jk = 1, jpkm1 ! Matrix 240 240 zcoef = -p2dt / fse3v(ji,jj,jk) 241 241 zzwi = zcoef * avmv (ji,jj,jk ) / fse3vw(ji,jj,jk ) … … 251 251 END DO 252 252 #else 253 DO jk = 1, jpk fm1 ! Matrix253 DO jk = 1, jpkm1 ! Matrix 254 254 DO jj = 2, jpjm1 255 255 DO ji = fs_2, fs_jpim1 ! vector opt. … … 292 292 va(ji,jj,1) = vb(ji,jj,1) + p2dt * ( va(ji,jj,1) + 0.5_wp * ( vtau_b(ji,jj) + vtau(ji,jj) ) & 293 293 & / ( fse3v(ji,jj,1) * rau0 ) ) 294 DO jk = 2, jpk fm1294 DO jk = 2, jpkm1 295 295 zzwibd = zwi(ji,jj,jk) / zwd(ji,jj,jk-1) 296 296 !== First recurrence : Dk = Dk - Lk * Uk-1 / Dk-1 (increasing k) == … … 301 301 END DO 302 302 !== third recurrence : SOLk = ( Lk - Uk * SOLk+1 ) / Dk == 303 va(ji,jj,jpk fm1) = va(ji,jj,jpkfm1) / zwd(ji,jj,jpkfm1)304 DO jk = jpk f-2, 1, -1303 va(ji,jj,jpkm1) = va(ji,jj,jpkm1) / zwd(ji,jj,jpkm1) 304 DO jk = jpk-2, 1, -1 305 305 va(ji,jj,jk) = ( va(ji,jj,jk) - zws(ji,jj,jk) * va(ji,jj,jk+1) ) / zwd(ji,jj,jk) 306 306 END DO 307 307 ! Normalization to obtain the general momentum trend va 308 DO jk = 1, jpk fm1308 DO jk = 1, jpkm1 309 309 va(ji,jj,jk) = ( va(ji,jj,jk) - vb(ji,jj,jk) ) * z1_p2dt 310 310 END DO … … 312 312 END DO 313 313 #else 314 DO jk = 2, jpk fm1 !== First recurrence : Dk = Dk - Lk * Uk-1 / Dk-1 (increasing k) ==314 DO jk = 2, jpkm1 !== First recurrence : Dk = Dk - Lk * Uk-1 / Dk-1 (increasing k) == 315 315 DO jj = 2, jpjm1 316 316 DO ji = fs_2, fs_jpim1 ! vector opt. … … 326 326 END DO 327 327 END DO 328 DO jk = 2, jpk fm1328 DO jk = 2, jpkm1 329 329 DO jj = 2, jpjm1 330 330 DO ji = fs_2, fs_jpim1 ! vector opt. … … 337 337 DO jj = 2, jpjm1 !== third recurrence : SOLk = ( Lk - Uk * SOLk+1 ) / Dk == 338 338 DO ji = fs_2, fs_jpim1 ! vector opt. 339 va(ji,jj,jpk fm1) = va(ji,jj,jpkfm1) / zwd(ji,jj,jpkfm1)340 END DO 341 END DO 342 DO jk = jpk f-2, 1, -1339 va(ji,jj,jpkm1) = va(ji,jj,jpkm1) / zwd(ji,jj,jpkm1) 340 END DO 341 END DO 342 DO jk = jpk-2, 1, -1 343 343 DO jj = 2, jpjm1 344 344 DO ji = fs_2, fs_jpim1 ! vector opt. … … 349 349 350 350 ! Normalization to obtain the general momentum trend va 351 DO jk = 1, jpk fm1351 DO jk = 1, jpkm1 352 352 DO jj = 2, jpjm1 353 353 DO ji = fs_2, fs_jpim1 ! vector opt.
Note: See TracChangeset
for help on using the changeset viewer.