Changeset 15471 for NEMO/trunk/src/OCE/DOM/domvvl.F90
- Timestamp:
- 2021-11-04T17:28:56+01:00 (3 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/trunk/src/OCE/DOM/domvvl.F90
r15014 r15471 683 683 ! 684 684 INTEGER :: ji, jj, jk ! dummy loop indices 685 INTEGER :: iku, ikum1, ikv, ikvm1, ikf, ikfm1 685 686 REAL(wp) :: zlnwd ! =1./0. when ln_wd_il = T/F 686 687 !!---------------------------------------------------------------------- … … 700 701 & + e1e2t(ji+1,jj) * ( pe3_in(ji+1,jj,jk) - e3t_0(ji+1,jj,jk) ) ) 701 702 END_3D 703 ! 704 ! Bottom correction: 705 DO_2D( 1, 0, 1, 0 ) 706 iku = mbku(ji ,jj) 707 ikum1 = iku - 1 708 pe3_out(ji,jj,iku) = ( umask(ji,jj,iku) * (1.0_wp - zlnwd) + zlnwd ) & 709 & * ( 0.5_wp * r1_e1e2u(ji,jj) & 710 & * ( e1e2t(ji ,jj) * ( SUM(tmask(ji ,jj,:)*(pe3_in(ji ,jj,:) - e3t_0(ji ,jj,:))) ) & 711 & + e1e2t(ji+1,jj) * ( SUM(tmask(ji+1,jj,:)*(pe3_in(ji+1,jj,:) - e3t_0(ji+1,jj,:))) ) ) & 712 & - SUM(pe3_out(ji,jj,1:ikum1))) 713 END_2D 714 702 715 CALL lbc_lnk( 'domvvl', pe3_out(:,:,:), 'U', 1._wp ) 703 716 pe3_out(:,:,:) = pe3_out(:,:,:) + e3u_0(:,:,:) … … 709 722 & + e1e2t(ji,jj+1) * ( pe3_in(ji,jj+1,jk) - e3t_0(ji,jj+1,jk) ) ) 710 723 END_3D 724 ! 725 ! Bottom correction: 726 DO_2D( 1, 0, 1, 0 ) 727 ikv = mbkv(ji ,jj) 728 ikvm1 = ikv - 1 729 pe3_out(ji,jj,ikv) = ( vmask(ji,jj,ikv) * (1.0_wp - zlnwd) + zlnwd ) & 730 & * ( 0.5_wp * r1_e1e2v(ji,jj) & 731 & * ( e1e2t(ji,jj ) * ( SUM(tmask(ji,jj ,:)*(pe3_in(ji,jj ,:) - e3t_0(ji,jj ,:))) ) & 732 & + e1e2t(ji,jj+1) * ( SUM(tmask(ji,jj+1,:)*(pe3_in(ji,jj+1,:) - e3t_0(ji,jj+1,:))) ) ) & 733 & - SUM(pe3_out(ji,jj,1:ikvm1))) 734 END_2D 711 735 CALL lbc_lnk( 'domvvl', pe3_out(:,:,:), 'V', 1._wp ) 712 736 pe3_out(:,:,:) = pe3_out(:,:,:) + e3v_0(:,:,:) … … 719 743 & + e1e2u(ji,jj+1) * ( pe3_in(ji,jj+1,jk) - e3u_0(ji,jj+1,jk) ) ) 720 744 END_3D 745 ! 746 ! Bottom correction: 747 DO_2D( 0, 0, 0, 0 ) 748 ikf = MIN(mbku(ji ,jj),mbku(ji,jj+1)) 749 ikfm1 = ikf - 1 750 pe3_out(ji,jj,ikf) = ( umask(ji,jj,ikf) * umask(ji,jj+1,ikf) * (1.0_wp - zlnwd) + zlnwd ) & 751 & * ( 0.5_wp * r1_e1e2f(ji,jj) & 752 & * ( e1e2u(ji,jj ) * ( SUM(umask(ji,jj ,:)*(pe3_in(ji,jj ,:) - e3u_0(ji,jj ,:))) ) & 753 & + e1e2u(ji,jj+1) * ( SUM(umask(ji,jj+1,:)*(pe3_in(ji,jj+1,:) - e3u_0(ji,jj+1,:))) ) ) & 754 & - SUM(pe3_out(ji,jj,1:ikfm1))) 755 END_2D 721 756 CALL lbc_lnk( 'domvvl', pe3_out(:,:,:), 'F', 1._wp ) 722 757 pe3_out(:,:,:) = pe3_out(:,:,:) + e3f_0(:,:,:)
Note: See TracChangeset
for help on using the changeset viewer.