Changeset 9023 for branches/2017/dev_merge_2017/NEMOGCM/NEMO/OPA_SRC/TRA
- Timestamp:
- 2017-12-13T18:08:50+01:00 (6 years ago)
- Location:
- branches/2017/dev_merge_2017/NEMOGCM/NEMO/OPA_SRC/TRA
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2017/dev_merge_2017/NEMOGCM/NEMO/OPA_SRC/TRA/tranxt.F90
r9019 r9023 316 316 IF( jk == mikt(ji,jj) ) THEN ! first level 317 317 ze3t_f = ze3t_f - zfact2 * ( (emp_b(ji,jj) - emp(ji,jj) ) & 318 & - (rnf_b(ji,jj) - rnf(ji,jj) ) &319 318 & + (fwfisf_b(ji,jj) - fwfisf(ji,jj)) ) 320 319 ztc_f = ztc_f - zfact1 * ( psbc_tc(ji,jj,jn) - psbc_tc_b(ji,jj,jn) ) 321 320 ENDIF 321 IF( ln_rnf_depth ) THEN 322 ! Rivers are not just at the surface must go down to nk_rnf(ji,jj) 323 IF( mikt(ji,jj) <=jk .and. jk <= nk_rnf(ji,jj) ) THEN 324 ze3t_f = ze3t_f - zfact2 * ( - (rnf_b(ji,jj) - rnf(ji,jj) ) ) & 325 & * ( e3t_n(ji,jj,jk) / h_rnf(ji,jj) ) 326 ENDIF 327 ELSE 328 IF( jk == mikt(ji,jj) ) THEN ! first level 329 ze3t_f = ze3t_f - zfact2 * ( - (rnf_b(ji,jj) - rnf(ji,jj) ) ) 330 ENDIF 331 ENDIF 332 322 333 ! 323 334 ! solar penetration (temperature only) -
branches/2017/dev_merge_2017/NEMOGCM/NEMO/OPA_SRC/TRA/trasbc.F90
r9019 r9023 27 27 USE trd_oce ! trends: ocean variables 28 28 USE trdtra ! trends manager: tracers 29 #if defined key_asminc 30 USE asminc ! Assimilation increment 31 #endif 29 32 ! 30 33 USE in_out_manager ! I/O manager … … 33 36 USE lbclnk ! ocean lateral boundary conditions (or mpp link) 34 37 USE timing ! Timing 38 USE wet_dry, ONLY : ll_wd, rn_wdmin1, r_rn_wdmin1 ! Wetting and drying 35 39 36 40 IMPLICIT NONE … … 71 75 INTEGER, INTENT(in) :: kt ! ocean time-step index 72 76 ! 73 INTEGER :: ji, jj, jk, jn ! dummy loop indices74 INTEGER :: ikt, ikb ! local integers75 REAL(wp) :: zfact, z1_e3t, zdep ! local scalar77 INTEGER :: ji, jj, jk, jn ! dummy loop indices 78 INTEGER :: ikt, ikb ! local integers 79 REAL(wp) :: zfact, z1_e3t, zdep, ztim ! local scalar 76 80 REAL(wp), ALLOCATABLE, DIMENSION(:,:,:) :: ztrdt, ztrds 77 81 !!---------------------------------------------------------------------- … … 121 125 DO jj = 2, jpj 122 126 DO ji = fs_2, fs_jpim1 ! vector opt. 123 sbc_tsc(ji,jj,jp_tem) = r1_rau0_rcp * qns(ji,jj) ! non solar heat flux 127 IF ( ll_wd ) THEN ! If near WAD point limit the flux for now 128 IF ( sshn(ji,jj) + ht_0(ji,jj) > 2._wp * rn_wdmin1 ) THEN 129 sbc_tsc(ji,jj,jp_tem) = r1_rau0_rcp * qns(ji,jj) ! non solar heat flux 130 ELSE IF ( sshn(ji,jj) + ht_0(ji,jj) > rn_wdmin1 ) THEN 131 sbc_tsc(ji,jj,jp_tem) = r1_rau0_rcp * qns(ji,jj) * (tanh(5._wp*( ( sshn(ji,jj) + ht_0(ji,jj) - rn_wdmin1 )*r_rn_wdmin1)) ) 132 ELSE 133 sbc_tsc(ji,jj,jp_tem) = 0._wp 134 ENDIF 135 ELSE 136 sbc_tsc(ji,jj,jp_tem) = r1_rau0_rcp * qns(ji,jj) ! non solar heat flux 137 ENDIF 138 124 139 sbc_tsc(ji,jj,jp_sal) = r1_rau0 * sfx(ji,jj) ! salt flux due to freezing/melting 125 140 END DO … … 207 222 IF( iom_use('rnf_x_sss') ) CALL iom_put( "rnf_x_sss", rnf*tsn(:,:,1,jp_sal) ) ! runoff term on sss 208 223 224 #if defined key_asminc 225 ! 226 !---------------------------------------- 227 ! Assmilation effects 228 !---------------------------------------- 229 ! 230 IF( ln_sshinc ) THEN ! input of heat and salt due to assimilation 231 ! 232 IF( ln_linssh ) THEN 233 DO jj = 2, jpj 234 DO ji = fs_2, fs_jpim1 235 ztim = ssh_iau(ji,jj) / e3t_n(ji,jj,1) 236 tsa(ji,jj,1,jp_tem) = tsa(ji,jj,1,jp_tem) + tsn(ji,jj,1,jp_tem) * ztim 237 tsa(ji,jj,1,jp_sal) = tsa(ji,jj,1,jp_sal) + tsn(ji,jj,1,jp_sal) * ztim 238 END DO 239 END DO 240 ELSE 241 DO jj = 2, jpj 242 DO ji = fs_2, fs_jpim1 243 ztim = ssh_iau(ji,jj) / ( ht_n(ji,jj) + 1. - ssmask(ji, jj) ) 244 tsa(ji,jj,:,jp_tem) = tsa(ji,jj,:,jp_tem) + tsn(ji,jj,:,jp_tem) * ztim 245 tsa(ji,jj,:,jp_sal) = tsa(ji,jj,:,jp_sal) + tsn(ji,jj,:,jp_sal) * ztim 246 END DO 247 END DO 248 ENDIF 249 ! 250 ENDIF 251 ! 252 #endif 253 209 254 ! 210 255 !----------------------------------------
Note: See TracChangeset
for help on using the changeset viewer.