Skip to content

Commit

Permalink
Merge pull request #641 from climbfuji/collect_various_prs_20210422
Browse files Browse the repository at this point in the history
Collect PRs #613, #628, #634, #635 / update long names and vertical dimension for atmosphere_heat_diffusivity and atmosphere_momentum_diffusivity
  • Loading branch information
climbfuji authored Apr 28, 2021
2 parents b578157 + f360464 commit ead39d1
Show file tree
Hide file tree
Showing 17 changed files with 169 additions and 487 deletions.
8 changes: 4 additions & 4 deletions physics/GFS_DCNV_generic.F90
Original file line number Diff line number Diff line change
Expand Up @@ -169,16 +169,16 @@ subroutine GFS_DCNV_generic_post_run (im, levs, lssav, ldiag3d, qdiag3d, ras, cs
dt3dt(i,k) = dt3dt(i,k) + (gt0(i,k)-save_t(i,k)) * frain
du3dt(i,k) = du3dt(i,k) + (gu0(i,k)-save_u(i,k)) * frain
dv3dt(i,k) = dv3dt(i,k) + (gv0(i,k)-save_v(i,k)) * frain
! convective mass fluxes
upd_mf(i,k) = upd_mf(i,k) + ud_mf(i,k) * (con_g*frain)
dwn_mf(i,k) = dwn_mf(i,k) + dd_mf(i,k) * (con_g*frain)
det_mf(i,k) = det_mf(i,k) + dt_mf(i,k) * (con_g*frain)
enddo
enddo
if(qdiag3d) then
do k=1,levs
do i=1,im
dq3dt(i,k) = dq3dt(i,k) + (gq0_water_vapor(i,k)-save_qv(i,k)) * frain
! convective mass fluxes
upd_mf(i,k) = upd_mf(i,k) + ud_mf(i,k) * (con_g*frain)
dwn_mf(i,k) = dwn_mf(i,k) + dd_mf(i,k) * (con_g*frain)
det_mf(i,k) = det_mf(i,k) + dt_mf(i,k) * (con_g*frain)
enddo
enddo
endif
Expand Down
3 changes: 1 addition & 2 deletions physics/GFS_PBL_generic.F90
Original file line number Diff line number Diff line change
Expand Up @@ -538,8 +538,7 @@ subroutine GFS_PBL_generic_post_run (im, levs, nvdiff, ntrac,
tem = prsl(i,1) / (rd*t1(i)*(one+fvirt*max(q1(i), qmin)))
ushfsfci(i) = -cp * tem * hflx(i) ! upward sensible heat flux
enddo
! dkt_cpl has dimensions (1:im,1:levs), but dkt has (1:im,1:levs-1)
dkt_cpl(1:im,1:levs-1) = dkt(1:im,1:levs-1)
dkt_cpl(1:im,1:levs) = dkt(1:im,1:levs)
endif


Expand Down
4 changes: 2 additions & 2 deletions physics/GFS_PBL_generic.meta
Original file line number Diff line number Diff line change
Expand Up @@ -1327,9 +1327,9 @@
optional = F
[dkt]
standard_name = atmosphere_heat_diffusivity
long_name = diffusivity for heat
long_name = atmospheric heat diffusivity
units = m2 s-1
dimensions = (horizontal_loop_extent,vertical_dimension_minus_one)
dimensions = (horizontal_loop_extent,vertical_dimension)
type = real
kind = kind_phys
intent = in
Expand Down
20 changes: 10 additions & 10 deletions physics/GFS_rrtmg_pre.F90
Original file line number Diff line number Diff line change
Expand Up @@ -204,7 +204,7 @@ subroutine GFS_rrtmg_pre_run (im, levs, lm, lmk, lmp, n_var_lndp, &
real(kind=kind_phys), dimension(im,lm+LTP,NF_VGAS) :: gasvmr
real(kind=kind_phys), dimension(im,lm+LTP,NBDSW,NF_AESW) :: faersw
real(kind=kind_phys), dimension(im,lm+LTP,NBDLW,NF_AELW) :: faerlw

! for stochastic cloud perturbations
real(kind=kind_phys), dimension(im) :: cldp1d
real (kind=kind_phys) :: alpha0,beta0,m,s,cldtmp,tmp_wt,cdfz
Expand Down Expand Up @@ -352,7 +352,7 @@ subroutine GFS_rrtmg_pre_run (im, levs, lm, lmk, lmp, n_var_lndp, &
if ( plvl(i,lla) <= prsmin ) plvl(i,lla) = 2.0*prsmin
plyr(i,lyb) = 0.5 * plvl(i,lla)
tlyr(i,lyb) = tlyr(i,lya)
prslk1(i,lyb) = (plyr(i,lyb)*0.001) ** rocp ! plyr in Pa
prslk1(i,lyb) = (plyr(i,lyb)*0.001) ** rocp ! plyr in hPa
rhly(i,lyb) = rhly(i,lya)
qstl(i,lyb) = qstl(i,lya)
enddo
Expand Down Expand Up @@ -638,12 +638,12 @@ subroutine GFS_rrtmg_pre_run (im, levs, lm, lmk, lmp, n_var_lndp, &
enddo
enddo
! for Thompson MP - prepare variables for calc_effr
if (imp_physics == imp_physics_thompson .and. ltaerosol) then
if_thompson: if (imp_physics == imp_physics_thompson .and. ltaerosol) then
do k=1,LMK
do i=1,IM
qvs = qgrs(i,k,ntqv)
qvs = qlyr(i,k)
qv_mp (i,k) = qvs/(1.-qvs)
rho (i,k) = con_eps*prsl(i,k)/(con_rd*tgrs(i,k)*(qv_mp(i,k)+con_eps))
rho (i,k) = con_eps*plyr(i,k)*100./(con_rd*tlyr(i,k)*(qv_mp(i,k)+con_eps))
orho (i,k) = 1.0/rho(i,k)
qc_mp (i,k) = tracer1(i,k,ntcw)/(1.-qvs)
qi_mp (i,k) = tracer1(i,k,ntiw)/(1.-qvs)
Expand All @@ -656,9 +656,9 @@ subroutine GFS_rrtmg_pre_run (im, levs, lm, lmk, lmp, n_var_lndp, &
elseif (imp_physics == imp_physics_thompson) then
do k=1,LMK
do i=1,IM
qvs = qgrs(i,k,ntqv)
qvs = qlyr(i,k)
qv_mp (i,k) = qvs/(1.-qvs)
rho (i,k) = con_eps*prsl(i,k)/(con_rd*tgrs(i,k)*(qv_mp(i,k)+con_eps))
rho (i,k) = con_eps*plyr(i,k)*100./(con_rd*tlyr(i,k)*(qv_mp(i,k)+con_eps))
orho (i,k) = 1.0/rho(i,k)
qc_mp (i,k) = tracer1(i,k,ntcw)/(1.-qvs)
qi_mp (i,k) = tracer1(i,k,ntiw)/(1.-qvs)
Expand All @@ -667,7 +667,7 @@ subroutine GFS_rrtmg_pre_run (im, levs, lm, lmk, lmp, n_var_lndp, &
ni_mp (i,k) = tracer1(i,k,ntinc)/(1.-qvs)
enddo
enddo
endif
endif if_thompson
endif
do n=1,ncndl
do k=1,LMK
Expand Down Expand Up @@ -903,8 +903,8 @@ subroutine GFS_rrtmg_pre_run (im, levs, lm, lmk, lmp, n_var_lndp, &

do i =1, im
do k =1, lmk
qc_save(i,k) = ccnd(i,k,1)
qi_save(i,k) = ccnd(i,k,2)
qc_save(i,k) = ccnd(i,k,1)
qi_save(i,k) = ccnd(i,k,2)
qs_save(i,k) = ccnd(i,k,4)
enddo
enddo
Expand Down
Loading

0 comments on commit ead39d1

Please sign in to comment.