- Timestamp:
- 2019-12-10T15:16:33+01:00 (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2019/dev_r11943_MERGE_2019/src/OCE/DYN/dynatf.F90
r11949 r12150 30 30 USE sbc_oce ! Surface boundary condition: ocean fields 31 31 USE sbcrnf ! river runoffs 32 USE sbcisf ! ice shelf33 32 USE phycst ! physical constants 34 33 USE dynadv ! dynamics: vector invariant versus flux form … … 42 41 USE trddyn ! trend manager: dynamics 43 42 USE trdken ! trend manager: kinetic energy 43 USE isf_oce , ONLY: ln_isf ! ice shelf 44 USE isfdynatf , ONLY: isf_dynatf ! ice shelf volume filter correction subroutine 44 45 ! 45 46 USE in_out_manager ! I/O manager … … 145 146 # endif 146 147 ! 147 CALL lbc_lnk_multi( 'dyn nxt', puu(:,:,:,Kaa), 'U', -1., pvv(:,:,:,Kaa), 'V', -1. ) !* local domain boundaries148 CALL lbc_lnk_multi( 'dynatf', puu(:,:,:,Kaa), 'U', -1., pvv(:,:,:,Kaa), 'V', -1. ) !* local domain boundaries 148 149 ! 149 150 ! !* BDY open boundaries … … 218 219 ENDIF 219 220 END IF 220 221 IF ( ln_isf ) THEN ! if ice shelf melting 222 DO jk = 1, jpkm1 ! Deal with isf separetely, as can be through depth too 223 DO jj = 1, jpj 224 DO ji = 1, jpi 225 IF( misfkt(ji,jj) <=jk .and. jk < misfkb(ji,jj) ) THEN 226 ze3t_f(ji,jj,jk) = ze3t_f(ji,jj,jk) - zcoef * ( fwfisf_b(ji,jj) - fwfisf(ji,jj) ) & 227 & * ( pe3t(ji,jj,jk,Kmm) * r1_hisf_tbl(ji,jj) ) * tmask(ji,jj,jk) 228 ELSEIF ( jk==misfkb(ji,jj) ) THEN 229 ze3t_f(ji,jj,jk) = ze3t_f(ji,jj,jk) - zcoef * ( fwfisf_b(ji,jj) - fwfisf(ji,jj) ) & 230 & * ( pe3t(ji,jj,jk,Kmm) * r1_hisf_tbl(ji,jj) ) * ralpha(ji,jj) * tmask(ji,jj,jk) 231 ENDIF 232 END DO 233 END DO 234 END DO 235 END IF 221 ! 222 ! ice shelf melting (deal separately as it can be in depth) 223 ! PM: we could probably define a generic subroutine to do the in depth correction 224 ! to manage rnf, isf and possibly in the futur icb, tide water glacier (...) 225 ! ...(kt, coef, ktop, kbot, hz, fwf_b, fwf) 226 IF ( ln_isf ) CALL isf_dynatf( kt, Kmm, ze3t_f, atfp * rdt ) 236 227 ! 237 228 pe3t(:,:,1:jpkm1,Kmm) = ze3t_f(:,:,1:jpkm1) ! filtered scale factor at T-points
Note: See TracChangeset
for help on using the changeset viewer.