- Timestamp:
- 2019-12-11T09:53:24+01:00 (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2019/dev_r12072_MERGE_OPTION2_2019/src/OCE/TRA/tranxt.F90
r10425 r12166 28 28 USE sbc_oce ! surface boundary condition: ocean 29 29 USE sbcrnf ! river runoffs 30 USE sbcisf! ice shelf melting30 USE isf_oce ! ice shelf melting 31 31 USE zdf_oce ! ocean vertical mixing 32 32 USE domvvl ! variable volume … … 312 312 ztc_f = ztc_n + atfp * ztc_d 313 313 ! 314 IF( jk == mikt(ji,jj) ) THEN ! first level 315 ze3t_f = ze3t_f - zfact2 * ( (emp_b(ji,jj) - emp(ji,jj) ) & 316 & + (fwfisf_b(ji,jj) - fwfisf(ji,jj)) ) 314 IF( jk == 1 ) THEN ! first level 315 ze3t_f = ze3t_f - zfact2 * ( emp_b(ji,jj) - emp(ji,jj) ) 317 316 ztc_f = ztc_f - zfact1 * ( psbc_tc(ji,jj,jn) - psbc_tc_b(ji,jj,jn) ) 318 317 ENDIF 318 ! 319 ! river runoff 319 320 IF( ln_rnf_depth ) THEN 320 321 ! Rivers are not just at the surface must go down to nk_rnf(ji,jj) 321 IF( mikt(ji,jj) <=jk .and.jk <= nk_rnf(ji,jj) ) THEN322 IF( jk <= nk_rnf(ji,jj) ) THEN 322 323 ze3t_f = ze3t_f - zfact2 * ( - (rnf_b(ji,jj) - rnf(ji,jj) ) ) & 323 324 & * ( e3t_n(ji,jj,jk) / h_rnf(ji,jj) ) 324 325 ENDIF 325 326 ELSE 326 IF( jk == mikt(ji,jj)) THEN ! first level327 IF( jk == 1 ) THEN ! first level 327 328 ze3t_f = ze3t_f - zfact2 * ( - (rnf_b(ji,jj) - rnf(ji,jj) ) ) 328 329 ENDIF 329 330 ENDIF 330 331 ! 332 IF( ll_rnf .AND. jk <= nk_rnf(ji,jj) ) & 333 & ztc_f = ztc_f - zfact1 * ( rnf_tsc(ji,jj,jn) - rnf_tsc_b(ji,jj,jn) ) & 334 & * e3t_n(ji,jj,jk) / h_rnf(ji,jj) 331 335 ! 332 336 ! solar penetration (temperature only) 333 337 IF( ll_traqsr .AND. jn == jp_tem .AND. jk <= nksr ) & 334 338 & ztc_f = ztc_f - zfact1 * ( qsr_hc(ji,jj,jk) - qsr_hc_b(ji,jj,jk) ) 335 ! 336 ! river runoff 337 IF( ll_rnf .AND. jk <= nk_rnf(ji,jj) ) & 338 & ztc_f = ztc_f - zfact1 * ( rnf_tsc(ji,jj,jn) - rnf_tsc_b(ji,jj,jn) ) & 339 & * e3t_n(ji,jj,jk) / h_rnf(ji,jj) 340 ! 339 ! 341 340 ! ice shelf 342 341 IF( ll_isf ) THEN 343 ! level fully include in the Losch_2008 ice shelf boundary layer 344 IF ( jk >= misfkt(ji,jj) .AND. jk < misfkb(ji,jj) ) & 345 ztc_f = ztc_f - zfact1 * ( risf_tsc(ji,jj,jn) - risf_tsc_b(ji,jj,jn) ) & 346 & * e3t_n(ji,jj,jk) * r1_hisf_tbl (ji,jj) 347 ! level partially include in Losch_2008 ice shelf boundary layer 348 IF ( jk == misfkb(ji,jj) ) & 349 ztc_f = ztc_f - zfact1 * ( risf_tsc(ji,jj,jn) - risf_tsc_b(ji,jj,jn) ) & 350 & * e3t_n(ji,jj,jk) * r1_hisf_tbl (ji,jj) * ralpha(ji,jj) 342 ! 343 ! melt in the cavity 344 IF ( ln_isfcav_mlt ) THEN 345 ! level fully include in the Losch_2008 ice shelf boundary layer 346 IF ( jk >= misfkt_cav(ji,jj) .AND. jk < misfkb_cav(ji,jj) ) THEN 347 ztc_f = ztc_f - zfact1 * ( risf_cav_tsc(ji,jj,jn) - risf_cav_tsc_b(ji,jj,jn) ) & 348 & * e3t_n(ji,jj,jk) / rhisf_tbl_cav(ji,jj) 349 ze3t_f = ze3t_f - zfact2 * ( fwfisf_cav_b(ji,jj) - fwfisf_cav(ji,jj) ) & 350 & * e3t_n(ji,jj,jk) / rhisf_tbl_cav(ji,jj) 351 END IF 352 ! level partially include in Losch_2008 ice shelf boundary layer 353 IF ( jk == misfkb_cav(ji,jj) ) THEN 354 ztc_f = ztc_f - zfact1 * ( risf_cav_tsc(ji,jj,jn) - risf_cav_tsc_b(ji,jj,jn) ) & 355 & * e3t_n(ji,jj,jk) / rhisf_tbl_cav(ji,jj) * rfrac_tbl_cav(ji,jj) 356 ze3t_f = ze3t_f - zfact2 * ( fwfisf_cav_b(ji,jj) - fwfisf_cav(ji,jj) ) & 357 & * e3t_n(ji,jj,jk) / rhisf_tbl_cav(ji,jj) * rfrac_tbl_cav(ji,jj) 358 END IF 359 END IF 360 ! 361 ! parametrised melt (cavity closed) 362 IF ( ln_isfpar_mlt ) THEN 363 ! level fully include in the Losch_2008 ice shelf boundary layer 364 IF ( jk >= misfkt_par(ji,jj) .AND. jk < misfkb_par(ji,jj) ) THEN 365 ztc_f = ztc_f - zfact1 * ( risf_par_tsc(ji,jj,jn) - risf_par_tsc_b(ji,jj,jn) ) & 366 & * e3t_n(ji,jj,jk) / rhisf_tbl_par(ji,jj) 367 ze3t_f = ze3t_f - zfact2 * ( fwfisf_par_b(ji,jj) - fwfisf_par(ji,jj) ) & 368 & * e3t_n(ji,jj,jk) / rhisf_tbl_par(ji,jj) 369 END IF 370 ! level partially include in Losch_2008 ice shelf boundary layer 371 IF ( jk == misfkb_par(ji,jj) ) THEN 372 ztc_f = ztc_f - zfact1 * ( risf_par_tsc(ji,jj,jn) - risf_par_tsc_b(ji,jj,jn) ) & 373 & * e3t_n(ji,jj,jk) / rhisf_tbl_par(ji,jj) * rfrac_tbl_par(ji,jj) 374 ze3t_f = ze3t_f - zfact2 * ( fwfisf_par_b(ji,jj) - fwfisf_par(ji,jj) ) & 375 & * e3t_n(ji,jj,jk) / rhisf_tbl_par(ji,jj) * rfrac_tbl_par(ji,jj) 376 END IF 377 END IF 378 ! 379 ! ice sheet coupling correction 380 IF ( ln_isfcpl ) THEN 381 ! 382 ! at kt = nit000, risfcpl_vol_n = 0 and risfcpl_vol_b = risfcpl_vol so contribution nul 383 IF ( ln_rstart .AND. kt == nit000+1 ) THEN 384 ztc_f = ztc_f + zfact1 * risfcpl_tsc(ji,jj,jk,jn) * r1_e1e2t(ji,jj) 385 ze3t_f = ze3t_f - zfact1 * risfcpl_vol(ji,jj,jk ) * r1_e1e2t(ji,jj) 386 END IF 387 ! 388 END IF 389 ! 351 390 END IF 352 391 !
Note: See TracChangeset
for help on using the changeset viewer.