diff --git a/dyn_em/module_diffusion_em.F b/dyn_em/module_diffusion_em.F index 57fd621e7a..3615943682 100644 --- a/dyn_em/module_diffusion_em.F +++ b/dyn_em/module_diffusion_em.F @@ -2160,9 +2160,18 @@ SUBROUTINE tke_km( config_flags, xkmh, xkmv, xkhh, xkhv, & ! tke_seed if the drag and flux are off. c_k = config_flags%c_k - tke_seed = tke_seed_value - if( (config_flags%tke_drag_coefficient .gt. epsilon) .or. & - (config_flags%tke_heat_flux .gt. epsilon) ) tke_seed = 0. + tke_seed = 0. + IF (config_flags%isfflx .eq. 0) THEN + IF ((config_flags%diff_opt .eq. 2) .and. (config_flags%bl_pbl_physics .eq. 0)) THEN + IF( (config_flags%tke_drag_coefficient .lt. epsilon) .and. & + (config_flags%tke_heat_flux .lt. epsilon) ) THEN + tke_seed = tke_seed_value + ENDIF + ELSE + !tke_drag_coefficient and tke_heat_flux are irrelevant here + tke_seed = tke_seed_value + ENDIF + ENDIF DO j = j_start, j_end DO k = kts+1, ktf-1 diff --git a/wrftladj/module_diffusion_em_ad.F b/wrftladj/module_diffusion_em_ad.F index 10f3dbc3c1..3e9d9e404d 100644 --- a/wrftladj/module_diffusion_em_ad.F +++ b/wrftladj/module_diffusion_em_ad.F @@ -6711,11 +6711,20 @@ SUBROUTINE a_tke_km(config_flags,xkmh,a_xkmh,xkmv,a_xkmv,xkhh,a_xkhh,xkhv, & !LPB[12] c_k = config_flags%c_k - tke_seed = tke_seed_value + tke_seed = 0. !LPB[13] - if( (config_flags%tke_drag_coefficient .gt. epsilon) .or. & - (config_flags%tke_heat_flux .gt. epsilon) ) tke_seed = 0. + IF (config_flags%isfflx .eq. 0) THEN + IF ((config_flags%diff_opt .eq. 2) .and. (config_flags%bl_pbl_physics .eq. 0)) THEN + IF( (config_flags%tke_drag_coefficient .lt. epsilon) .and. & + (config_flags%tke_heat_flux .lt. epsilon) ) THEN + tke_seed = tke_seed_value + ENDIF + ELSE + !tke_drag_coefficient and tke_heat_flux are irrelevant here + tke_seed = tke_seed_value + ENDIF + ENDIF !LPB[14] DO j = j_start, j_end diff --git a/wrftladj/module_diffusion_em_tl.F b/wrftladj/module_diffusion_em_tl.F index b07a832579..ff4014ffa2 100644 --- a/wrftladj/module_diffusion_em_tl.F +++ b/wrftladj/module_diffusion_em_tl.F @@ -2645,10 +2645,19 @@ SUBROUTINE g_tke_km(config_flags,xkmh,g_xkmh,xkmv,g_xkmv,xkhh,g_xkhh, & g_c_k =0.0 c_k =config_flags%c_k - tke_seed =tke_seed_value - - if( (config_flags%tke_drag_coefficient .gt. epsilon) .or. & - (config_flags%tke_heat_flux .gt. epsilon) ) tke_seed =0. + tke_seed = 0. + + IF (config_flags%isfflx .eq. 0) THEN + IF ((config_flags%diff_opt .eq. 2) .and. (config_flags%bl_pbl_physics .eq. 0)) THEN + IF( (config_flags%tke_drag_coefficient .lt. epsilon) .and. & + (config_flags%tke_heat_flux .lt. epsilon) ) THEN + tke_seed = tke_seed_value + ENDIF + ELSE + !tke_drag_coefficient and tke_heat_flux are irrelevant here + tke_seed = tke_seed_value + ENDIF + ENDIF DO j =j_start,j_end DO k =kts+1,ktf-1