Changeset 10995
- Timestamp:
- 2019-05-17T16:43:44+02:00 (5 years ago)
- Location:
- branches/UKMO/dev_r5518_GO6_fix_zemp_ice/NEMOGCM/NEMO/OPA_SRC/SBC
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/UKMO/dev_r5518_GO6_fix_zemp_ice/NEMOGCM/NEMO/OPA_SRC/SBC/sbccpl.F90
r10920 r10995 184 184 LOGICAL :: ln_usecplmask ! use a coupling mask file to merge data received from several models 185 185 ! -> file cplmask.nc with the float variable called cplmask (jpi,jpj,nn_cplmodel) 186 LOGICAL, PUBLIC :: ln_fix_sublimation_botmelt ! Apply sublimation bug fixes (GMED#449) 187 186 188 TYPE :: DYNARR 187 189 REAL(wp), POINTER, DIMENSION(:,:,:) :: z3 … … 259 261 & ln_usecplmask, nn_coupled_iceshelf_fluxes, ln_iceshelf_init_atmos, & 260 262 & rn_greenland_total_fw_flux, rn_greenland_calving_fraction, & 261 & rn_antarctica_total_fw_flux, rn_antarctica_calving_fraction, rn_iceshelf_fluxes_tolerance 263 & rn_antarctica_total_fw_flux, rn_antarctica_calving_fraction, rn_iceshelf_fluxes_tolerance, & 264 & ln_fix_sublimation_botmelt 262 265 !!--------------------------------------------------------------------- 263 266 … … 329 332 WRITE(numout,*)' nn_cplmodel = ', nn_cplmodel 330 333 WRITE(numout,*)' ln_usecplmask = ', ln_usecplmask 334 WRITE(numout,*)' ln_fix_sublimation_botmelt = ', ln_fix_sublimation_botmelt 331 335 WRITE(numout,*)' nn_coupled_iceshelf_fluxes = ', nn_coupled_iceshelf_fluxes 332 336 WRITE(numout,*)' ln_iceshelf_init_atmos = ', ln_iceshelf_init_atmos … … 1770 1774 IF ( TRIM(sn_rcv_emp%clcat) == 'yes' ) THEN 1771 1775 ! zemp_ice is the sum of frcv(jpr_ievp)%z3(:,:,1) over all layers - snow 1772 zemp_ice(:,:) = - frcv(jpr_snow)%z3(:,:,1) * zicefr(:,:) 1776 IF ( ln_fix_sublimation_botmelt ) THEN 1777 zemp_ice(:,:) = - frcv(jpr_snow)%z3(:,:,1) * zicefr(:,:) 1778 ELSE 1779 zemp_ice(:,:) = - frcv(jpr_snow)%z3(:,:,1) 1780 ENDIF 1773 1781 DO jl=1,jpl 1774 zemp_ice(:,: ) = zemp_ice(:,:) + frcv(jpr_ievp)%z3(:,:,jl) * a_i_last_couple(:,:,jl) 1782 IF ( ln_fix_sublimation_botmelt ) THEN 1783 zemp_ice(:,: ) = zemp_ice(:,:) + frcv(jpr_ievp)%z3(:,:,jl) * a_i_last_couple(:,:,jl) 1784 ELSE 1785 zemp_ice(:,: ) = zemp_ice(:,:) + frcv(jpr_ievp)%z3(:,:,jl) 1786 ENDIF 1775 1787 ENDDO 1776 1788 ! latent heat coupled for each category in CICE -
branches/UKMO/dev_r5518_GO6_fix_zemp_ice/NEMOGCM/NEMO/OPA_SRC/SBC/sbcice_cice.F90
r10920 r10995 395 395 ELSE IF (ksbc == jp_purecpl) THEN 396 396 DO jl=1,ncat 397 ztmpn(:,:,jl)=qla_ice(:,:,jl)*a_i_last_couple(:,:,jl) 397 IF ( ln_fix_sublimation_botmelt ) THEN 398 ztmpn(:,:,jl)=qla_ice(:,:,jl)*a_i_last_couple(:,:,jl) 399 ELSE 400 ztmpn(:,:,jl)=qla_ice(:,:,jl)*a_i(:,:,jl) 401 ENDIF 398 402 ENDDO 399 403 ELSE … … 408 412 ! Convert to GBM 409 413 IF (ksbc == jp_flx .OR. ksbc == jp_purecpl) THEN 410 ztmp(:,:) = botmelt(:,:,jl)*a_i_last_couple(:,:,jl) 414 IF ( ln_fix_sublimation_botmelt ) THEN 415 ztmp(:,:) = botmelt(:,:,jl)*a_i_last_couple(:,:,jl) 416 ELSE 417 ztmp(:,:) = botmelt(:,:,jl)*a_i(:,:,jl) 418 ENDIF 411 419 ELSE 412 420 ztmp(:,:) = botmelt(:,:,jl) … … 417 425 ! Convert to GBM 418 426 IF (ksbc == jp_flx .OR. ksbc == jp_purecpl) THEN 419 ztmp(:,:) = (topmelt(:,:,jl)+botmelt(:,:,jl))*a_i_last_couple(:,:,jl) 427 IF ( ln_fix_sublimation_botmelt ) THEN 428 ztmp(:,:) = (topmelt(:,:,jl)+botmelt(:,:,jl))*a_i_last_couple(:,:,jl) 429 ELSE 430 ztmp(:,:) = (topmelt(:,:,jl)+botmelt(:,:,jl))*a_i(:,:,jl) 431 ENDIF 420 432 ELSE 421 433 ztmp(:,:) = (topmelt(:,:,jl)+botmelt(:,:,jl))
Note: See TracChangeset
for help on using the changeset viewer.