Changeset 5131
- Timestamp:
- 2015-03-06T12:30:35+01:00 (8 years ago)
- Location:
- trunk/NEMOGCM/NEMO/OFF_SRC
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/NEMOGCM/NEMO/OFF_SRC/dommsk.F90
r4990 r5131 15 15 USE in_out_manager ! I/O manager 16 16 USE wrk_nemo 17 USE lbclnk 17 18 18 19 IMPLICIT NONE … … 48 49 !!---------------------------------------------------------------------- 49 50 ! 50 INTEGER :: ji, j k ! dummy loop indices51 INTEGER :: ji, jj, jk ! dummy loop indices 51 52 INTEGER :: iif, iil, ijf, ijl ! local integers 52 53 INTEGER, POINTER, DIMENSION(:,:) :: imsk … … 83 84 ENDIF 84 85 ! 86 ! (ISF) MIN(1,SUM(umask)) is here to check if you have effectively at 87 ! least 1 wet u point 88 DO jj = 1, jpjm1 89 DO ji = 1, fs_jpim1 ! vector loop 90 umask_i(ji,jj) = ssmask(ji,jj) * ssmask(ji+1,jj ) * MIN(1._wp,SUM(umask(ji,jj,:))) 91 vmask_i(ji,jj) = ssmask(ji,jj) * ssmask(ji ,jj+1) * MIN(1._wp,SUM(vmask(ji,jj,:))) 92 END DO 93 DO ji = 1, jpim1 ! NO vector opt. 94 fmask_i(ji,jj) = ssmask(ji,jj ) * ssmask(ji+1,jj ) & 95 & * ssmask(ji,jj+1) * ssmask(ji+1,jj+1) * MIN(1._wp,SUM(fmask(ji,jj,:))) 96 END DO 97 END DO 98 CALL lbc_lnk( umask_i, 'U', 1._wp ) ! Lateral boundary conditions 99 CALL lbc_lnk( vmask_i, 'V', 1._wp ) 100 CALL lbc_lnk( fmask_i, 'F', 1._wp ) 101 102 ! 3. Ocean/land mask at wu-, wv- and w points 103 !---------------------------------------------- 104 wmask (:,:,1) = tmask(:,:,1) ! ???????? 105 wumask(:,:,1) = umask(:,:,1) ! ???????? 106 wvmask(:,:,1) = vmask(:,:,1) ! ???????? 107 DO jk=2,jpk 108 wmask (:,:,jk)=tmask(:,:,jk) * tmask(:,:,jk-1) 109 wumask(:,:,jk)=umask(:,:,jk) * umask(:,:,jk-1) 110 wvmask(:,:,jk)=vmask(:,:,jk) * vmask(:,:,jk-1) 111 END DO 112 ! 85 113 IF( nprint == 1 .AND. lwp ) THEN ! Control print 86 114 imsk(:,:) = INT( tmask_i(:,:) ) -
trunk/NEMOGCM/NEMO/OFF_SRC/dtadyn.F90
r5120 r5131 245 245 tsn(:,:,:,jp_sal) = sf_dyn(jf_sal)%fnow(:,:,:) * tmask(:,:,:) ! salinity 246 246 ! 247 CALL eos ( tsn, rhd, rhop, gdept_0(:,:,:) ) ! In any case, we need rhop 247 ! 248 CALL eos ( tsn, rhd, rhop, gdept_0(:,:,:) ) ! In any case, we need rhop 249 CALL eos_rab( tsn, rab_n ) ! now local thermal/haline expension ratio at T-points 250 CALL bn2 ( tsn, rab_n, rn2 ) ! before Brunt-Vaisala frequency need for zdfmxl 251 252 rn2b(:,:,:) = rn2(:,:,:) ! need for zdfmxl 248 253 CALL zdf_mxl( kt ) ! In any case, we need mxl 249 254 ! … … 535 540 !!--------------------------------------------------------------------- 536 541 #if defined key_ldfslp && ! defined key_c1d 542 CALL eos ( pts, rhd, rhop, gdept_0(:,:,:) ) 537 543 CALL eos_rab( pts, rab_n ) ! now local thermal/haline expension ratio at T-points 538 544 CALL bn2 ( pts, rab_n, rn2 ) ! now Brunt-Vaisala 539 ! Partial steps: before Horizontal DErivative 540 ! only gtsu, gtsv, rhd, gru , grv are used545 546 ! Partial steps: before Horizontal DErivative 541 547 IF( ln_zps .AND. .NOT. ln_isfcav) & 542 548 & CALL zps_hde ( kt, jpts, pts, gtsu, gtsv, & ! Partial steps: before horizontal gradient … … 547 553 & gtui, gtvi, grui, grvi, arui, arvi, gzui, gzvi, ge3rui, ge3rvi ) ! of t, s, rd at the first ocean level 548 554 549 550 551 ! ! of t, s, rd at the bottom ocean level 555 rn2b(:,:,:) = rn2(:,:,:) ! need for zdfmxl 552 556 CALL zdf_mxl( kt ) ! mixed layer depth 553 557 CALL ldf_slp( kt, rhd, rn2 ) ! slopes
Note: See TracChangeset
for help on using the changeset viewer.