Skip to content

Commit

Permalink
modify stateout update of FA scheme
Browse files Browse the repository at this point in the history
  • Loading branch information
mzhangw committed Mar 16, 2020
1 parent 05c5331 commit 25b3f66
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 5 deletions.
8 changes: 5 additions & 3 deletions physics/GFS_suite_interstitial.F90
Original file line number Diff line number Diff line change
Expand Up @@ -409,7 +409,8 @@ end subroutine GFS_suite_stateout_update_finalize
!!
subroutine GFS_suite_stateout_update_run (im, levs, ntrac, dtp, &
tgrs, ugrs, vgrs, qgrs, dudt, dvdt, dtdt, dqdt, &
gt0, gu0, gv0, gq0, ntiw, nqrimef, epsq, errmsg, errflg)
gt0, gu0, gv0, gq0, ntiw, nqrimef, imp_physics, &
imp_physics_fer_hires, epsq, errmsg, errflg)

use machine, only: kind_phys

Expand All @@ -419,7 +420,8 @@ subroutine GFS_suite_stateout_update_run (im, levs, ntrac, dtp, &
integer, intent(in) :: im
integer, intent(in) :: levs
integer, intent(in) :: ntrac
integer, optional, intent(in) :: ntiw, nqrimef
integer, intent(in) :: imp_physics,imp_physics_fer_hires
integer, intent(in) :: ntiw, nqrimef
real(kind=kind_phys), intent(in) :: dtp, epsq

real(kind=kind_phys), dimension(im,levs), intent(in) :: tgrs, ugrs, vgrs
Expand All @@ -442,7 +444,7 @@ subroutine GFS_suite_stateout_update_run (im, levs, ntrac, dtp, &
gv0(:,:) = vgrs(:,:) + dvdt(:,:) * dtp
gq0(:,:,:) = qgrs(:,:,:) + dqdt(:,:,:) * dtp

if(present(ntiw) .and. present(nqrimef))then
if (imp_physics == imp_physics_fer_hires) then
do k=1,levs
do i=1,im
if(gq0(i,k,ntiw) > epsq) then
Expand Down
20 changes: 18 additions & 2 deletions physics/GFS_suite_interstitial.meta
Original file line number Diff line number Diff line change
Expand Up @@ -1050,15 +1050,31 @@
dimensions = ()
type = integer
intent = in
optional = T
optional = F
[nqrimef]
standard_name = index_for_mass_weighted_rime_factor
long_name = tracer index for mass weighted rime factor
units = index
dimensions = ()
type = integer
intent = in
optional = T
optional = F
[imp_physics]
standard_name = flag_for_microphysics_scheme
long_name = choice of microphysics scheme
units = flag
dimensions = ()
type = integer
intent = in
optional = F
[imp_physics_fer_hires]
standard_name = flag_for_fer_hires_microphysics_scheme
long_name = choice of Ferrier-Aligo microphysics scheme
units = flag
dimensions = ()
type = integer
intent = in
optional = F
[epsq]
standard_name = minimum_value_of_specific_humidity
long_name = floor value for specific humidity
Expand Down

0 comments on commit 25b3f66

Please sign in to comment.