Skip to content

Commit 45add79

Browse files
brandon.reichlHallberg-NOAA
brandon.reichl
authored andcommitted
Updates to use EPBL_BBL_EFFIC
- The present code only tests BBL_EFFIC when deciding whether to set the bottom TKE and ustar, but this means they are all zero when EPBL_BBL_EFFIC is non-zero and BBL_EFFIC is zero. - Adds logic to also check EPBL_BBL_EFFIC, thereby allowing non-zero ustar and TKE for EPBL_BBL_EFFIC>0.0 - Fixed BBL_TKE diagnostic in EPBL that was not populated. - Will change answers when EPBL_BBL_EFFIC>0.0, but won't change answers in any of our existing configurations.
1 parent 9564493 commit 45add79

File tree

2 files changed

+8
-2
lines changed

2 files changed

+8
-2
lines changed

src/parameterizations/vertical/MOM_energetic_PBL.F90

+2
Original file line numberDiff line numberDiff line change
@@ -699,6 +699,8 @@ subroutine energetic_PBL(h_3d, u_3d, v_3d, tv, fluxes, visc, dt, Kd_int, G, GV,
699699
if (CS%debug .or. (CS%id_BBL_Vel_Scale>0)) then ; do k=1,nz
700700
BBL_Vel_Scale(i,j,k) = mixvel_BBL(k)
701701
enddo ; endif
702+
if (CS%id_TKE_BBL>0) &
703+
diag_TKE_BBL(i,j) = diag_TKE_BBL(i,j) + BBL_TKE
702704
endif
703705
if (CS%id_MSTAR_MIX > 0) diag_mStar_mix(i,j) = eCD%mstar
704706
if (CS%id_MSTAR_LT > 0) diag_mStar_lt(i,j) = eCD%mstar_LT

src/parameterizations/vertical/MOM_set_diffusivity.F90

+6-2
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,9 @@ module MOM_set_diffusivity
7676
real :: Von_Karm !< The von Karman constant as used in the BBL diffusivity calculation
7777
!! [nondim]. See (http://en.wikipedia.org/wiki/Von_Karman_constant)
7878
real :: BBL_effic !< efficiency with which the energy extracted
79-
!! by bottom drag drives BBL diffusion [nondim]
79+
!! by bottom drag drives BBL diffusion in the original BBL scheme [nondim]
80+
real :: ePBL_BBL_effic !< efficiency with which the energy extracted
81+
!! by bottom drag drives BBL diffusion in the ePBL BBL scheme [nondim]
8082
real :: cdrag !< quadratic drag coefficient [nondim]
8183
real :: dz_BBL_avg_min !< A minimal distance over which to average to determine the average
8284
!! bottom boundary layer density [Z ~> m]
@@ -1943,7 +1945,7 @@ subroutine set_BBL_TKE(u, v, h, tv, fluxes, visc, G, GV, US, CS, OBC)
19431945
if (.not.CS%initialized) call MOM_error(FATAL,"set_BBL_TKE: "//&
19441946
"Module must be initialized before it is used.")
19451947

1946-
if (.not.CS%bottomdraglaw .or. (CS%BBL_effic<=0.0)) then
1948+
if (.not.CS%bottomdraglaw .or. (CS%BBL_effic<=0.0 .and. CS%ePBL_BBL_effic<=0.0)) then
19471949
if (allocated(visc%ustar_BBL)) then
19481950
do j=js,je ; do i=is,ie ; visc%ustar_BBL(i,j) = 0.0 ; enddo ; enddo
19491951
endif
@@ -2359,6 +2361,8 @@ subroutine set_diffusivity_init(Time, G, GV, US, param_file, diag, CS, int_tide_
23592361
"The efficiency with which the energy extracted by "//&
23602362
"bottom drag drives BBL diffusion. This is only "//&
23612363
"used if BOTTOMDRAGLAW is true.", units="nondim", default=0.20)
2364+
call get_param(param_file, mdl, "EPBL_BBL_EFFIC", CS%ePBL_BBL_effic, &
2365+
units="nondim", default=0.0,do_not_log=.true.)
23622366
call get_param(param_file, mdl, "BBL_MIXING_MAX_DECAY", decay_length, &
23632367
"The maximum decay scale for the BBL diffusion, or 0 to allow the mixing "//&
23642368
"to penetrate as far as stratification and rotation permit. The default "//&

0 commit comments

Comments
 (0)