Changeset 14064 for NEMO/trunk/src/NST/agrif_oce_update.F90
- Timestamp:
- 2020-12-03T18:01:12+01:00 (3 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/trunk/src/NST/agrif_oce_update.F90
r14053 r14064 915 915 REAL(wp), DIMENSION(i1:i2,j1:j2), INTENT(inout) :: tabres 916 916 LOGICAL , INTENT(in ) :: before 917 !! 918 REAL(wp), DIMENSION(jpi,jpj) :: zpgu ! 2D workspace 917 919 !! 918 920 INTEGER :: ji, jj, jk … … 934 936 ! 935 937 ! Update "now" 3d velocities: 936 spgu(ji,jj) = 0._wp938 zpgu(ji,jj) = 0._wp 937 939 DO jk=1,jpkm1 938 spgu(ji,jj) = spgu(ji,jj) + e3u(ji,jj,jk,Kmm_a) * uu(ji,jj,jk,Kmm_a)940 zpgu(ji,jj) = zpgu(ji,jj) + e3u(ji,jj,jk,Kmm_a) * uu(ji,jj,jk,Kmm_a) 939 941 END DO 940 942 ! 941 zcorr = (tabres(ji,jj) - spgu(ji,jj)) * r1_hu(ji,jj,Kmm_a)943 zcorr = (tabres(ji,jj) - zpgu(ji,jj)) * r1_hu(ji,jj,Kmm_a) 942 944 DO jk=1,jpkm1 943 945 uu(ji,jj,jk,Kmm_a) = uu(ji,jj,jk,Kmm_a) + zcorr * umask(ji,jj,jk) … … 954 956 ! 955 957 ! Correct "before" velocities to hold correct bt component: 956 spgu(ji,jj) = 0.e0958 zpgu(ji,jj) = 0.e0 957 959 DO jk=1,jpkm1 958 spgu(ji,jj) = spgu(ji,jj) + e3u(ji,jj,jk,Kbb_a) * uu(ji,jj,jk,Kbb_a)960 zpgu(ji,jj) = zpgu(ji,jj) + e3u(ji,jj,jk,Kbb_a) * uu(ji,jj,jk,Kbb_a) 959 961 END DO 960 962 ! 961 zcorr = uu_b(ji,jj,Kbb_a) - spgu(ji,jj) * r1_hu(ji,jj,Kbb_a)963 zcorr = uu_b(ji,jj,Kbb_a) - zpgu(ji,jj) * r1_hu(ji,jj,Kbb_a) 962 964 DO jk=1,jpkm1 963 965 uu(ji,jj,jk,Kbb_a) = uu(ji,jj,jk,Kbb_a) + zcorr * umask(ji,jj,jk) … … 982 984 REAL(wp), DIMENSION(i1:i2,j1:j2), INTENT(inout) :: tabres 983 985 LOGICAL , INTENT(in ) :: before 986 ! 987 REAL(wp), DIMENSION(jpi,jpj) :: zpgv ! 2D workspace 984 988 ! 985 989 INTEGER :: ji, jj, jk … … 1000 1004 ! 1001 1005 ! Update "now" 3d velocities: 1002 spgv(ji,jj) = 0.e01006 zpgv(ji,jj) = 0.e0 1003 1007 DO jk=1,jpkm1 1004 spgv(ji,jj) = spgv(ji,jj) + e3v(ji,jj,jk,Kmm_a) * vv(ji,jj,jk,Kmm_a)1008 zpgv(ji,jj) = zpgv(ji,jj) + e3v(ji,jj,jk,Kmm_a) * vv(ji,jj,jk,Kmm_a) 1005 1009 END DO 1006 1010 ! 1007 zcorr = (tabres(ji,jj) - spgv(ji,jj)) * r1_hv(ji,jj,Kmm_a)1011 zcorr = (tabres(ji,jj) - zpgv(ji,jj)) * r1_hv(ji,jj,Kmm_a) 1008 1012 DO jk=1,jpkm1 1009 1013 vv(ji,jj,jk,Kmm_a) = vv(ji,jj,jk,Kmm_a) + zcorr * vmask(ji,jj,jk) … … 1020 1024 ! 1021 1025 ! Correct "before" velocities to hold correct bt component: 1022 spgv(ji,jj) = 0.e01026 zpgv(ji,jj) = 0.e0 1023 1027 DO jk=1,jpkm1 1024 spgv(ji,jj) = spgv(ji,jj) + e3v(ji,jj,jk,Kbb_a) * vv(ji,jj,jk,Kbb_a)1028 zpgv(ji,jj) = zpgv(ji,jj) + e3v(ji,jj,jk,Kbb_a) * vv(ji,jj,jk,Kbb_a) 1025 1029 END DO 1026 1030 ! 1027 zcorr = vv_b(ji,jj,Kbb_a) - spgv(ji,jj) * r1_hv(ji,jj,Kbb_a)1031 zcorr = vv_b(ji,jj,Kbb_a) - zpgv(ji,jj) * r1_hv(ji,jj,Kbb_a) 1028 1032 DO jk=1,jpkm1 1029 1033 vv(ji,jj,jk,Kbb_a) = vv(ji,jj,jk,Kbb_a) + zcorr * vmask(ji,jj,jk)
Note: See TracChangeset
for help on using the changeset viewer.