Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
c2ac20e
increase max ice number, adjust cloud fraction generally lower
gthompsnWRF Apr 13, 2022
bd59240
adjust/tune for slightly lower reflectivities
gthompsnWRF Apr 20, 2022
c2062bb
permit more ice nucleation, adjust constant in zans (reflectivity) calc
gthompsnWRF Apr 20, 2022
ed0a53d
fix for length of lines
gthompsnWRF Apr 26, 2022
a5eae9f
trying to finalize constant in zans calculation
gthompsnWRF May 6, 2022
14bf941
Merge branch 'small_cloud_tuning_GT' into small_cloud_tuning_GT_gjf
Sep 8, 2022
815438c
Merge branch 'main' into small_cloud_tuning_GT_gjf
Sep 9, 2022
8cfde78
move aero_ind_fdb variable in argument list for mp_gt_driver; add che…
Sep 9, 2022
ba43da2
module_sf_ruclsm imprecision workaround
SamuelTrahanNOAA Sep 21, 2022
e9611bd
Merge branch 'ufs/dev' into small_cloud_tuning_GT_gjf
Sep 22, 2022
824d40d
move sanity checks to lsm_ruc and add "snow on ice" check
SamuelTrahanNOAA Sep 26, 2022
15827c1
Merge branch 'main' of https://github.com/NCAR/ccpp-physics into HEAD
Oct 6, 2022
04f4118
Merge branch 'ufs/dev' into small_cloud_tuning_GT_gjf
Oct 6, 2022
9009159
add additional documentation from Anning Cheng's MERRA2 implementatio…
Oct 6, 2022
cb0af04
Merge remote-tracking branch 'ufs/ufs/dev' into bugfix/rrfs-debug-mod…
SamuelTrahanNOAA Oct 10, 2022
cd2cae7
Merge pull request #13 from dustinswales/ncar-main-PR967
Oct 11, 2022
3f63679
Merge remote-tracking branch 'ufs/ufs/dev' into bugfix/rrfs-debug-mod…
SamuelTrahanNOAA Oct 11, 2022
353d0ff
Merge branch 'ufs/dev' into small_cloud_tuning_GT_gjf
Oct 14, 2022
ab220bf
Merge pull request #6 from SamuelTrahanNOAA/bugfix/rrfs-debug-mode-no…
grantfirl Oct 17, 2022
d93ce1a
Merge pull request #1 from grantfirl/small_cloud_tuning_GT_gjf
grantfirl Oct 18, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 5 additions & 5 deletions physics/GFS_MP_generic_pre.F90
Original file line number Diff line number Diff line change
Expand Up @@ -9,14 +9,14 @@ module GFS_MP_generic_pre
!> \section arg_table_GFS_MP_generic_pre_run Argument Table
!! \htmlinclude GFS_MP_generic_pre_run.html
!!
subroutine GFS_MP_generic_pre_run(im, levs, ldiag3d, qdiag3d, do_aw, ntcw, nncl, &
subroutine GFS_MP_generic_pre_run(im, levs, ldiag3d, qdiag3d, do_aw, progsigma, ntcw, nncl, &
ntrac, gt0, gq0, save_t, save_q, num_dfi_radar, errmsg, errflg)
!
use machine, only: kind_phys

implicit none
integer, intent(in) :: im, levs, ntcw, nncl, ntrac, num_dfi_radar
logical, intent(in) :: ldiag3d, qdiag3d, do_aw
logical, intent(in) :: ldiag3d, qdiag3d, do_aw, progsigma
real(kind=kind_phys), dimension(:,:), intent(in) :: gt0
real(kind=kind_phys), dimension(:,:,:), intent(in) :: gq0

Expand All @@ -39,7 +39,7 @@ subroutine GFS_MP_generic_pre_run(im, levs, ldiag3d, qdiag3d, do_aw, ntcw, nncl,
enddo
enddo
endif
if (ldiag3d .or. do_aw) then
if (ldiag3d .or. do_aw .or. progsigma) then
if(qdiag3d) then
do n=1,ntrac
do k=1,levs
Expand All @@ -48,7 +48,7 @@ subroutine GFS_MP_generic_pre_run(im, levs, ldiag3d, qdiag3d, do_aw, ntcw, nncl,
enddo
enddo
enddo
else if(do_aw) then
else if(do_aw .or. progsigma) then
! if qdiag3d, all q are saved already
save_q(1:im,:,1) = gq0(1:im,:,1)
do n=ntcw,ntcw+nncl-1
Expand All @@ -59,4 +59,4 @@ subroutine GFS_MP_generic_pre_run(im, levs, ldiag3d, qdiag3d, do_aw, ntcw, nncl,

end subroutine GFS_MP_generic_pre_run

end module GFS_MP_generic_pre
end module GFS_MP_generic_pre
7 changes: 7 additions & 0 deletions physics/GFS_MP_generic_pre.meta
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,13 @@
dimensions = ()
type = logical
intent = in
[progsigma]
standard_name = do_prognostic_updraft_area_fraction
long_name = flag for prognostic area fraction in cumulus convection
units = flag
dimensions = ()
type = logical
intent = in
[ntcw]
standard_name = index_of_cloud_liquid_water_mixing_ratio_in_tracer_concentration_array
long_name = tracer index for cloud condensate (or liquid water)
Expand Down
27 changes: 27 additions & 0 deletions physics/lsm_ruc.F90
Original file line number Diff line number Diff line change
Expand Up @@ -1043,6 +1043,20 @@ subroutine lsm_ruc_run & ! inputs
z0_lnd(i,j) = z0rl_lnd(i)/100.
znt_lnd(i,j) = z0rl_lnd(i)/100.

! Workaround needed for subnormal numbers. This should be
! done after all other sanity checks, in case a sanity check
! results in subnormal numbers.
!
! This bug was caught by the UFS gfortran debug-mode
! regression tests, and the fix is necessary to pass those
! tests.
if(abs(snowh_lnd(i,j))<1e-20) then
snowh_lnd(i,j)=0
endif
if(abs(sneqv_lnd(i,j))<1e-20) then
sneqv_lnd(i,j)=0
endif

if(debug_print) then
if(me==0 ) then
write (0,*)'before LSMRUC for land'
Expand Down Expand Up @@ -1360,6 +1374,19 @@ subroutine lsm_ruc_run & ! inputs
z0_ice(i,j) = z0rl_ice(i)/100.
znt_ice(i,j) = z0rl_ice(i)/100.

! Workaround needed for subnormal numbers. This should be
! done after all other sanity checks, in case a sanity check
! results in subnormal numbers.
!
! Although this bug has not been triggered yet, it is expected
! to be, like the _lnd variants many lines up from here.
if(abs(snowh_ice(i,j))<1e-20) then
snowh_ice(i,j)=0
endif
if(abs(sneqv_ice(i,j))<1e-20) then
sneqv_ice(i,j)=0
endif

!> - Call RUC LSM lsmruc() for ice.
call lsmruc( &
& delt, flag_init, lsm_cold_start, kdt, iter, nsoil, &
Expand Down
Loading