- Timestamp:
- 2021-12-03T20:32:50+01:00 (3 years ago)
- Location:
- NEMO/branches/2021/dev_r14318_RK3_stage1
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2021/dev_r14318_RK3_stage1
- Property svn:externals
-
old new 9 9 10 10 # SETTE 11 ^/utils/CI/sette@14244 sette 11 ^/utils/CI/sette@HEAD sette 12
-
- Property svn:externals
-
NEMO/branches/2021/dev_r14318_RK3_stage1/tests/DOME/MY_SRC/usrdef_zgr.F90
r14261 r15574 86 86 ! at u/v/f-point: averaging zht 87 87 zhu(:,:) = 600_wp ; zhv(:,:) = 600_wp ; zhf(:,:) = 600_wp 88 DO ji = 1, jpim1 89 zhu(ji,:) = 0.5_wp * ( zht(ji,:) + zht(ji+1,:) ) 90 END DO 91 DO jj = 1, jpjm1 92 zhv(:,jj) = 0.5_wp * ( zht(:,jj) + zht(:,jj+1) ) 93 END DO 94 DO jj = 1, jpjm1 95 DO ji = 1, jpim1 96 zhf(ji,jj) = 0.25_wp * ( zht(ji,jj ) + zht(ji+1,jj ) & 97 & + zht(ji,jj+1) + zht(ji+1,jj+1) ) 98 END DO 99 END DO 100 CALL lbc_lnk_multi( 'usrdef_zgr', zhu, 'U', 1.0_wp, zhv, 'V', 1.0_wp, zhf, 'F', 1.0_wp) 88 DO_2D( 0, 0, 0, 0 ) 89 zhu(ji,jj) = 0.5_wp * ( zht(ji,jj ) + zht(ji+1,jj ) ) 90 zhv(jj,jj) = 0.5_wp * ( zht(ji,jj ) + zht(ji ,jj+1) ) 91 zhf(ji,jj) = 0.25_wp * ( zht(ji,jj ) + zht(ji+1,jj ) & 92 & + zht(ji,jj+1) + zht(ji+1,jj+1) ) 93 END_2D 94 CALL lbc_lnk( 'usrdef_zgr', zhu, 'U', 1.0_wp, zhv, 'V', 1.0_wp, zhf, 'F', 1.0_wp) 101 95 ! 102 96 CALL zgr_z1d( pdept_1d, pdepw_1d, pe3t_1d , pe3w_1d ) ! Reference z-coordinate system … … 106 100 ! 107 101 ! no ocean cavities : top ocean level is ONE, except over land 108 ! the ocean basin surrounded by land (1 grid-point) set through lbc_lnk call as jperio=0102 ! the ocean basin surrounded by land (1+nn_hls grid-point) set through lbc_lnk call 109 103 z2d(:,:) = 1._wp ! surface ocean is the 1st level 110 104 WHERE (gphit(:,:)>0._wp) z2d(:,:) = 0._wp 111 105 ! Dig inlet: 112 106 WHERE ((gphit(:,:)>0._wp).AND.(glamt(:,:)>-50._wp).AND.(glamt(:,:)<50._wp)) z2d(:,:) = 1._wp 113 CALL lbc_lnk( 'usrdef_zgr', z2d, 'T', 1. ) ! closed basin since jperio = 0 (see userdef_nam.F90)107 CALL lbc_lnk( 'usrdef_zgr', z2d, 'T', 1. ) ! closed basin, see userdef_nam.F90 114 108 k_top(:,:) = NINT( z2d(:,:) ) 115 109 ! … … 193 187 pe3w (ji,jj,ik ) = pdept(ji,jj,ik ) - pdept(ji,jj,ik-1) ! st caution ik > 1 194 188 END_2D 195 ! ! bottom scale factors and depth at U-, V-, UW and VW-points 196 ! ! usually Computed as the minimum of neighbooring scale factors 197 pe3u (:,:,:) = pe3t(:,:,:) ! HERE DOME configuration : 198 pe3v (:,:,:) = pe3t(:,:,:) ! e3 increases with i-index and identical with j-index 199 pe3f (:,:,:) = pe3t(:,:,:) ! so e3 minimum of (i,i+1) points is (i) point 200 pe3uw(:,:,:) = pe3w(:,:,:) ! in j-direction e3v=e3t and e3f=e3v 201 pe3vw(:,:,:) = pe3w(:,:,:) ! ==>> no need of lbc_lnk calls 189 ! 190 DO_3D( 0, 0, 0, 0, 1, jpk ) 191 pe3u (ji,jj,jk) = MIN( pe3t(ji,jj,jk), pe3t(ji+1,jj,jk) ) 192 pe3v (ji,jj,jk) = MIN( pe3t(ji,jj,jk), pe3t(ji,jj+1,jk) ) 193 pe3uw(ji,jj,jk) = MIN( pe3w(ji,jj,jk), pe3w(ji+1,jj,jk) ) 194 pe3vw(ji,jj,jk) = MIN( pe3w(ji,jj,jk), pe3w(ji,jj+1,jk) ) 195 END_3D 196 ! 197 CALL lbc_lnk('usrdef_zgr', pe3u , 'U', 1._wp, pe3uw, 'U', 1._wp ) 198 CALL lbc_lnk('usrdef_zgr', pe3v , 'V', 1._wp, pe3vw, 'V', 1._wp ) 199 ! 200 DO jk = 1, jpk 201 WHERE( pe3u (:,:,jk) == 0._wp ) pe3u (:,:,jk) = pe3t_1d(jk) 202 WHERE( pe3v (:,:,jk) == 0._wp ) pe3v (:,:,jk) = pe3t_1d(jk) 203 WHERE( pe3uw(:,:,jk) == 0._wp ) pe3uw(:,:,jk) = pe3w_1d(jk) 204 WHERE( pe3vw(:,:,jk) == 0._wp ) pe3vw(:,:,jk) = pe3w_1d(jk) 205 END DO 206 207 DO_3D( 0, 0, 0, 0, 1, jpk ) 208 pe3f(ji,jj,jk) = MIN( pe3v(ji,jj,jk), pe3v(ji+1,jj,jk) ) 209 END_3D 210 CALL lbc_lnk('usrdef_zgr', pe3f, 'F', 1._wp ) 202 211 ! 203 212 ENDIF
Note: See TracChangeset
for help on using the changeset viewer.