- Timestamp:
- 2018-06-30T12:51:02+02:00 (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2018/dev_r9838_ENHANCE04_MLF/src/OCE/DYN/wet_dry.F90
r9168 r9863 117 117 118 118 119 SUBROUTINE wad_lmt( sshb1, sshemp, z2dt )119 SUBROUTINE wad_lmt( sshb1, sshemp, p2dt ) 120 120 !!---------------------------------------------------------------------- 121 121 !! *** ROUTINE wad_lmt *** … … 129 129 REAL(wp), DIMENSION(:,:), INTENT(inout) :: sshb1 !!gm DOCTOR names: should start with p ! 130 130 REAL(wp), DIMENSION(:,:), INTENT(in ) :: sshemp 131 REAL(wp) , INTENT(in ) :: z2dt131 REAL(wp) , INTENT(in ) :: p2dt 132 132 ! 133 133 INTEGER :: ji, jj, jk, jk1 ! dummy loop indices … … 220 220 & + MIN( zflxv1(ji,jj) , 0._wp ) - MAX( zflxv1(ji, jj-1) , 0._wp) 221 221 ! 222 zdep1 = (zzflxp + zzflxn) * z2dt / ztmp223 zdep2 = ht_0(ji,jj) + sshb1(ji,jj) - rn_wdmin1 - z2dt * sshemp(ji,jj)222 zdep1 = (zzflxp + zzflxn) * p2dt / ztmp 223 zdep2 = ht_0(ji,jj) + sshb1(ji,jj) - rn_wdmin1 - p2dt * sshemp(ji,jj) 224 224 ! 225 225 IF( zdep1 > zdep2 ) THEN 226 226 wdmask(ji, jj) = 0._wp 227 zcoef = ( ( zdep2 - rn_wdmin2 ) * ztmp - zzflxn * z2dt ) / ( zflxp(ji,jj) * z2dt )228 !zcoef = ( ( zdep2 - rn_wdmin2 ) * ztmp - zzflxn * z2dt ) / ( zzflxp * z2dt )227 zcoef = ( ( zdep2 - rn_wdmin2 ) * ztmp - zzflxn * p2dt ) / ( zflxp(ji,jj) * p2dt ) 228 !zcoef = ( ( zdep2 - rn_wdmin2 ) * ztmp - zzflxn * p2dt ) / ( zzflxp * p2dt ) 229 229 ! flag if the limiter has been used but stop flagging if the only 230 230 ! changes have zeroed the coefficient since further iterations will … … 270 270 271 271 272 SUBROUTINE wad_lmt_bt( zflxu, zflxv, sshn_e, zssh_frc, rdtbt )272 SUBROUTINE wad_lmt_bt( zflxu, zflxv, sshn_e, zssh_frc, pdt ) 273 273 !!---------------------------------------------------------------------- 274 274 !! *** ROUTINE wad_lmt *** … … 280 280 !! ** Action : - calculate flux limiter and W/D flag 281 281 !!---------------------------------------------------------------------- 282 REAL(wp) , INTENT(in ) :: rdtbt ! ocean time-step index282 REAL(wp) , INTENT(in ) :: pdt ! external mode time-step [s] 283 283 REAL(wp), DIMENSION(:,:), INTENT(inout) :: zflxu, zflxv, sshn_e, zssh_frc 284 284 ! 285 285 INTEGER :: ji, jj, jk, jk1 ! dummy loop indices 286 286 INTEGER :: jflag ! local integer 287 REAL(wp) :: z2dt288 287 REAL(wp) :: zcoef, zdep1, zdep2 ! local scalars 289 288 REAL(wp) :: zzflxp, zzflxn ! local scalars … … 298 297 jflag = 0 299 298 zdepwd = 50._wp ! maximum depth that ocean cells can have W/D processes 300 !301 z2dt = rdtbt302 299 ! 303 300 zflxp(:,:) = 0._wp … … 347 344 & + min(zflxv1(ji,jj), 0._wp) - max(zflxv1(ji, jj-1), 0._wp) 348 345 349 zdep1 = (zzflxp + zzflxn) * z2dt / ztmp350 zdep2 = ht_0(ji,jj) + sshn_e(ji,jj) - rn_wdmin1 - z2dt * zssh_frc(ji,jj)346 zdep1 = (zzflxp + zzflxn) * pdt / ztmp 347 zdep2 = ht_0(ji,jj) + sshn_e(ji,jj) - rn_wdmin1 - pdt * zssh_frc(ji,jj) 351 348 352 349 IF(zdep1 > zdep2) THEN 353 zcoef = ( ( zdep2 - rn_wdmin2 ) * ztmp - zzflxn * z2dt ) / ( zflxp(ji,jj) * z2dt )354 !zcoef = ( ( zdep2 - rn_wdmin2 ) * ztmp - zzflxn * z2dt ) / ( zzflxp * z2dt )350 zcoef = ( ( zdep2 - rn_wdmin2 ) * ztmp - zzflxn * pdt ) / ( zflxp(ji,jj) * pdt ) 351 !zcoef = ( ( zdep2 - rn_wdmin2 ) * ztmp - zzflxn * pdt ) / ( zzflxp * pdt ) 355 352 ! flag if the limiter has been used but stop flagging if the only 356 353 ! changes have zeroed the coefficient since further iterations will
Note: See TracChangeset
for help on using the changeset viewer.