Changeset 62
- Timestamp:
- 2004-04-22T13:53:53+02:00 (20 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/NEMO/OPA_SRC/DOM/dommsk.F90
r32 r62 19 19 USE solisl ! ??? 20 20 USE dynspg_fsc ! 21 USE dynspg_fsc_atsk ! 21 22 22 23 IMPLICIT NONE … … 46 47 !! tropic stream function points (b). 47 48 !! Set mbathy to the number of non-zero w-levels of a water column 48 !! (if island in the domain (l _isl=T), this is done latter in49 !! (if island in the domain (lk_isl=T), this is done latter in 49 50 !! routine solver_init) 50 51 !! … … 139 140 WRITE(numout,*) 'dommsk : ocean mask ' 140 141 WRITE(numout,*) '~~~~~~' 142 WRITE(numout,*) ' Namelist namlbc' 141 143 WRITE(numout,*) ' lateral momentum boundary cond. shlat = ',shlat 142 144 ENDIF 143 145 144 IF(lwp)WRITE(numout,*) ' ocean lateral:'145 146 IF ( shlat == 0. ) THEN 146 IF(lwp) WRITE(numout,*) 'free-slip '147 IF(lwp) WRITE(numout,*) ' ocean lateral free-slip ' 147 148 ELSEIF ( shlat == 2. ) THEN 148 IF(lwp) WRITE(numout,*) ' no-slip '149 IF(lwp) WRITE(numout,*) ' ocean lateral no-slip ' 149 150 ELSEIF ( 0. < shlat .AND. shlat < 2. ) THEN 150 IF(lwp) WRITE(numout,*) ' partial-slip '151 IF(lwp) WRITE(numout,*) ' ocean lateral partial-slip ' 151 152 ELSEIF ( 2. < shlat ) THEN 152 IF(lwp) WRITE(numout,*) ' strong-slip '153 IF(lwp) WRITE(numout,*) ' ocean lateral strong-slip ' 153 154 ELSE 154 IF(lwp) WRITE(numout,cform_err)155 IF(lwp) WRITE(numout,*) ' shlat is negative = ', shlat155 IF(lwp) WRITE(numout,cform_err) 156 IF(lwp) WRITE(numout,*) ' shlat is negative = ', shlat 156 157 nstop = nstop + 1 157 158 ENDIF 158 159 159 160 160 ! 1. Ocean/land mask at t-point (computed from mbathy) … … 215 215 vmask(ji,jj,jk) = tmask(ji,jj ,jk) * tmask(ji ,jj+1,jk) 216 216 fmask(ji,jj,jk) = tmask(ji,jj ,jk) * tmask(ji+1,jj ,jk) & 217 217 & * tmask(ji,jj+1,jk) * tmask(ji+1,jj+1,jk) 218 218 END DO 219 219 END DO … … 246 246 247 247 ! Computation 248 IF( lk_dynspg_fsc ) THEN248 IF( lk_dynspg_fsc .OR. lk_dynspg_fsc_tsk ) THEN 249 249 bmask(:,:) = tmask(:,:,1) ! elliptic equation is written at t-point 250 250 ELSE … … 266 266 ! north fold : 267 267 IF( nperio == 3 .OR. nperio == 4 ) THEN 268 IF( lk_dynspg_fsc ) THEN268 IF( lk_dynspg_fsc .OR. lk_dynspg_fsc_tsk ) THEN 269 269 ! T-pt pivot and T-pt elliptic eq. : bmask set to 0. on row jpj and on half jpjglo-1 row 270 270 DO ji = 1, jpi … … 280 280 ENDIF 281 281 IF( nperio == 5 .OR. nperio == 6 ) THEN 282 IF( lk_dynspg_fsc ) THEN282 IF( lk_dynspg_fsc .OR. lk_dynspg_fsc_tsk ) THEN 283 283 ! F-pt pivot and T-pt elliptic eq. : bmask set to 0. on row jpj 284 284 bmask(:,jpj) = 0.e0 … … 304 304 ! north fold : bmask must be set to 0. on rows jpj-1 and jpj 305 305 IF( npolj == 3 .OR. npolj == 4 ) THEN 306 IF( lk_dynspg_fsc ) THEN306 IF( lk_dynspg_fsc .OR. lk_dynspg_fsc_tsk ) THEN 307 307 DO ji = 1, nlci 308 308 ii = ji + nimpp - 1 … … 318 318 ENDIF 319 319 IF( npolj == 5 .OR. npolj == 6 ) THEN 320 IF( lk_dynspg_fsc ) THEN320 IF( lk_dynspg_fsc .OR. lk_dynspg_fsc_tsk ) THEN 321 321 DO ji = 1, nlci 322 ii = ji + nimpp - 1323 322 bmask(ji,nlcj ) = 0.e0 324 323 END DO 325 324 ELSE 326 325 DO ji = 1, nlci 326 ii = ji + nimpp - 1 327 327 bmask(ji,nlcj-1) = bmask(ji,nlcj-1) * fpol(ii) 328 328 bmask(ji,nlcj ) = 0.e0 … … 410 410 ! Mbathy set to the number of w-level (minimum value 2) 411 411 ! ----------------------------------- 412 IF( l _isl ) THEN412 IF( lk_isl ) THEN 413 413 ! this is done at the end of solver_init routine 414 414 ELSE
Note: See TracChangeset
for help on using the changeset viewer.