Changeset 7588 for branches/2016/dev_merge_2016/NEMOGCM/NEMO/OPA_SRC
- Timestamp:
- 2017-01-20T16:24:07+01:00 (7 years ago)
- Location:
- branches/2016/dev_merge_2016/NEMOGCM/NEMO/OPA_SRC
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2016/dev_merge_2016/NEMOGCM/NEMO/OPA_SRC/DOM/domzgr.F90
r7421 r7588 30 30 USE usrdef_zgr ! user defined vertical coordinate system 31 31 USE depth_e3 ! depth <=> e3 32 USE wet_dry, ONLY: ln_wd, ht_wd 32 33 ! 33 34 USE in_out_manager ! I/O manager … … 256 257 CALL iom_get( inum, jpdom_data, 'bottom_level' , z2d , lrowattr=ln_use_jattr ) ! last wet T-points 257 258 k_bot(:,:) = INT( z2d(:,:) ) 259 ! 260 ! bathymetry with orography (wetting and drying only) 261 IF( ln_wd ) CALL iom_get( inum, jpdom_data, 'ht_wd' , ht_wd , lrowattr=ln_use_jattr ) 258 262 ! 259 263 CALL iom_close( inum ) -
branches/2016/dev_merge_2016/NEMOGCM/NEMO/OPA_SRC/DYN/wet_dry.F90
r7580 r7588 170 170 zdep2 = ht_wd(ji,jj) + sshb1(ji,jj) - rn_wdmin1 171 171 IF(zdep2 .le. 0._wp) THEN !add more safty, but not necessary 172 !zdep2 = 0._wp173 172 sshb1(ji,jj) = rn_wdmin1 - ht_wd(ji,jj) 173 IF(zflxu(ji, jj) > 0._wp) zwdlmtu(ji ,jj) = 0._wp 174 IF(zflxu(ji-1,jj) < 0._wp) zwdlmtu(ji-1,jj) = 0._wp 175 IF(zflxv(ji, jj) > 0._wp) zwdlmtv(ji ,jj) = 0._wp 176 IF(zflxv(ji,jj-1) < 0._wp) zwdlmtv(ji,jj-1) = 0._wp 174 177 wdmask(ji,jj) = 0._wp 175 178 END IF … … 202 205 zdep2 = ht_wd(ji,jj) + sshb1(ji,jj) - rn_wdmin1 - z2dt * sshemp(ji,jj) 203 206 204 IF(zdep1 > zdep2) THEN 205 jflag = 1 207 IF( zdep1 > zdep2 ) THEN 206 208 wdmask(ji, jj) = 0 207 209 zcoef = ( ( zdep2 - rn_wdmin2 ) * ztmp - zzflxn * z2dt ) / ( zflxp(ji,jj) * z2dt ) 208 210 !zcoef = ( ( zdep2 - rn_wdmin2 ) * ztmp - zzflxn * z2dt ) / ( zzflxp * z2dt ) 209 zcoef = max(zcoef, 0._wp) 211 ! flag if the limiter has been used but stop flagging if the only 212 ! changes have zeroed the coefficient since further iterations will 213 ! not change anything 214 IF( zcoef > 0._wp ) THEN 215 jflag = 1 216 ELSE 217 zcoef = 0._wp 218 ENDIF 210 219 IF(jk1 > nn_wdit) zcoef = 0._wp 211 220 IF(zflxu1(ji, jj) > 0._wp) zwdlmtu(ji ,jj) = zcoef … … 316 325 317 326 zdep2 = ht_wd(ji,jj) + sshn_e(ji,jj) - rn_wdmin1 318 IF(zdep2 .le. 0._wp) THEN !add more saf ty, but not necessary327 IF(zdep2 .le. 0._wp) THEN !add more safety, but not necessary 319 328 sshn_e(ji,jj) = rn_wdmin1 - ht_wd(ji,jj) 329 IF(zflxu(ji, jj) > 0._wp) zwdlmtu(ji ,jj) = 0._wp 330 IF(zflxu(ji-1,jj) < 0._wp) zwdlmtu(ji-1,jj) = 0._wp 331 IF(zflxv(ji, jj) > 0._wp) zwdlmtv(ji ,jj) = 0._wp 332 IF(zflxv(ji,jj-1) < 0._wp) zwdlmtv(ji,jj-1) = 0._wp 320 333 END IF 321 334 ENDDO … … 348 361 349 362 IF(zdep1 > zdep2) THEN 350 jflag = 1351 363 zcoef = ( ( zdep2 - rn_wdmin2 ) * ztmp - zzflxn * z2dt ) / ( zflxp(ji,jj) * z2dt ) 352 364 !zcoef = ( ( zdep2 - rn_wdmin2 ) * ztmp - zzflxn * z2dt ) / ( zzflxp * z2dt ) 353 zcoef = max(zcoef, 0._wp) 365 ! flag if the limiter has been used but stop flagging if the only 366 ! changes have zeroed the coefficient since further iterations will 367 ! not change anything 368 IF( zcoef > 0._wp ) THEN 369 jflag = 1 370 ELSE 371 zcoef = 0._wp 372 ENDIF 354 373 IF(jk1 > nn_wdit) zcoef = 0._wp 355 374 IF(zflxu1(ji, jj) > 0._wp) zwdlmtu(ji ,jj) = zcoef
Note: See TracChangeset
for help on using the changeset viewer.