Changeset 11868 for NEMO/branches/2019/dev_r11233_AGRIF-05_jchanut_vert_coord_interp/src/NST/agrif_oce_sponge.F90
- Timestamp:
- 2019-11-06T16:43:51+01:00 (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2019/dev_r11233_AGRIF-05_jchanut_vert_coord_interp/src/NST/agrif_oce_sponge.F90
r11827 r11868 60 60 #endif 61 61 ! 62 CALL iom_put( "agrif_spu", fspu(:,:))63 CALL iom_put( "agrif_spv", fspv(:,:))62 CALL iom_put( 'agrif_spu', fspu(:,:)) 63 CALL iom_put( 'agrif_spv', fspv(:,:)) 64 64 ! 65 65 END SUBROUTINE Agrif_Sponge_Tra … … 90 90 #endif 91 91 ! 92 CALL iom_put( "agrif_spt", fspt(:,:))93 CALL iom_put( "agrif_spf", fspf(:,:))92 CALL iom_put( 'agrif_spt', fspt(:,:)) 93 CALL iom_put( 'agrif_spf', fspf(:,:)) 94 94 ! 95 95 END SUBROUTINE Agrif_Sponge_dyn … … 128 128 ind1 = 1+nbghostcells 129 129 DO ji = mi0(ind1), mi1(ind1) 130 ztabramp(ji,:) = umask(ji,:,1)130 ztabramp(ji,:) = ssumask(ji,:) 131 131 END DO 132 132 ! … … 138 138 ind1 = jpiglo - nbghostcells - 1 139 139 DO ji = mi0(ind1), mi1(ind1) 140 ztabramp(ji,:) = umask(ji,:,1)140 ztabramp(ji,:) = ssumask(ji,:) 141 141 END DO 142 142 ! … … 148 148 ind1 = 1+nbghostcells 149 149 DO jj = mj0(ind1), mj1(ind1) 150 ztabramp(:,jj) = vmask(:,jj,1)150 ztabramp(:,jj) = ssvmask(:,jj) 151 151 END DO 152 152 ! … … 158 158 ind1 = jpjglo - nbghostcells - 1 159 159 DO jj = mj0(ind1), mj1(ind1) 160 ztabramp(:,jj) = vmask(:,jj,1)160 ztabramp(:,jj) = ssvmask(:,jj) 161 161 END DO 162 162 ! … … 180 180 181 181 ztabramp(:,:) = 0._wp 182 IF ( Agrif_irhox()==1 ) ispongearea =-1 183 IF ( Agrif_irhoy()==1 ) jspongearea =-1 182 183 ! Trick to remove sponge in 2DV domains: 184 IF ( nbcellsx <= 3 ) ispongearea = -1 185 IF ( nbcellsy <= 3 ) jspongearea = -1 184 186 185 187 ! --- West --- ! … … 192 194 END DO 193 195 194 ! ghost cells (cosmetic):196 ! ghost cells: 195 197 ind1 = 1 196 ind2 = nbghostcells 198 ind2 = nbghostcells + 1 197 199 DO ji = mi0(ind1), mi1(ind2) 198 200 DO jj = 1, jpj … … 210 212 END DO 211 213 212 ! ghost cells (cosmetic):213 ind1 = jpiglo - nbghostcells + 1214 ! ghost cells: 215 ind1 = jpiglo - nbghostcells 214 216 ind2 = jpiglo 215 217 DO ji = mi0(ind1), mi1(ind2) … … 228 230 END DO 229 231 230 ! ghost cells (cosmetic):232 ! ghost cells: 231 233 ind1 = 1 232 ind2 = nbghostcells 234 ind2 = nbghostcells + 1 233 235 DO jj = mj0(ind1), mj1(ind2) 234 236 DO ji = 1, jpi … … 246 248 END DO 247 249 248 ! ghost cells (cosmetic):249 ind1 = jpjglo - nbghostcells + 1250 ! ghost cells: 251 ind1 = jpjglo - nbghostcells 250 252 ind2 = jpjglo 251 253 DO jj = mj0(ind1), mj1(ind2) … … 263 265 DO jj = 2, jpjm1 264 266 DO ji = 2, jpim1 ! vector opt. 265 fspu(ji,jj) = 0.5_wp * ( ztabramp(ji,jj) + ztabramp(ji+1,jj ) ) 266 fspv(ji,jj) = 0.5_wp * ( ztabramp(ji,jj) + ztabramp(ji ,jj+1) ) 267 fspu(ji,jj) = 0.5_wp * ( ztabramp(ji,jj) + ztabramp(ji+1,jj ) ) * ssumask(ji,jj) 268 fspv(ji,jj) = 0.5_wp * ( ztabramp(ji,jj) + ztabramp(ji ,jj+1) ) * ssvmask(ji,jj) 267 269 END DO 268 270 END DO … … 279 281 DO jj = 2, jpjm1 280 282 DO ji = 2, jpim1 ! vector opt. 281 fspt(ji,jj) = ztabramp(ji,jj) 282 fspf(ji,jj) = 0.25_wp * ( ztabramp(ji ,jj ) + ztabramp(ji ,jj+1) & 283 & +ztabramp(ji+1,jj+1) + ztabramp(ji+1,jj ) ) 283 fspt(ji,jj) = ztabramp(ji,jj) * ssmask(ji,jj) 284 fspf(ji,jj) = 0.25_wp * ( ztabramp(ji ,jj ) + ztabramp(ji ,jj+1) & 285 & +ztabramp(ji+1,jj+1) + ztabramp(ji+1,jj ) ) & 286 & * ssvmask(ji,jj) * ssvmask(ji,jj+1) 284 287 END DO 285 288 END DO … … 291 294 292 295 #if defined key_vertical 293 ! Trick to vertical remove interpolation in sponge layer in case of 2DV domains:296 ! Remove vertical interpolation where not needed: 294 297 DO jj = 2, jpjm1 295 298 DO ji = 2, jpim1 … … 303 306 & (fspf(ji-1,jj)==0._wp).AND.(fspf(ji,jj)==0._wp)) mbkv_parent(ji,jj) = 0 304 307 ! 305 IF ( mbkt(ji,jj) == 0) mbkt_parent(ji,jj) = 0306 IF ( mbku(ji,jj) == 0) mbku_parent(ji,jj) = 0307 IF ( mbkv(ji,jj) == 0) mbkv_parent(ji,jj) = 0308 IF ( ssmask(ji,jj) == 0._wp) mbkt_parent(ji,jj) = 0 309 IF (ssumask(ji,jj) == 0._wp) mbku_parent(ji,jj) = 0 310 IF (ssvmask(ji,jj) == 0._wp) mbkv_parent(ji,jj) = 0 308 311 END DO 309 312 END DO
Note: See TracChangeset
for help on using the changeset viewer.