Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
2 changes: 1 addition & 1 deletion .github/workflows/ci_fv3_ccpp_prebuild.yml
Original file line number Diff line number Diff line change
Expand Up @@ -54,4 +54,4 @@ jobs:
run: |
cd /home/runner/work/ccpp-physics/ccpp-physics/fv3atm/ccpp/
mkdir -p /home/runner/work/ccpp-physics/ccpp-physics/fv3atm/bin/ccpp/physics/physics/
./framework/scripts/ccpp_prebuild.py --config config/ccpp_prebuild_config.py
./framework/scripts/ccpp_prebuild.py --config config/ccpp_prebuild_config_fv3.py
18 changes: 5 additions & 13 deletions physics/CONV/SAMF/samfdeepcnv.f
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ subroutine samfdeepcnv_run (im,km,first_time_step,restart, &
& islimsk,garea,dot,ncloud,hpbl,ud_mf,dd_mf,dt_mf,cnvw,cnvc, &
& QLCN, QICN, w_upi, cf_upi, CNV_MFD, &
& CNV_DQLDT,CLCN,CNV_FICE,CNV_NDROP,CNV_NICE,mp_phys,mp_phys_mg,&
& clam,c0s,c1,betal,betas,evef,pgcon,asolfac, &
& clam,c0s,c1,betal,betas,evef,pgcon,asolfac,cscale, &
& do_ca, ca_closure, ca_entr, ca_trigger, nthresh,ca_deep, &
& rainevap,sigmain,sigmaout,omegain,omegaout,betadcu,betamcu, &
& betascu,maxMF,do_mynnedmf,sigmab_coldstart,errmsg,errflg)
Expand All @@ -97,7 +97,7 @@ subroutine samfdeepcnv_run (im,km,first_time_step,restart, &
integer, intent(in) :: islimsk(:)
real(kind=kind_phys), intent(in) :: cliq, cp, cvap, eps, epsm1, &
& fv, grav, hvap, rd, rv, t0c
real(kind=kind_phys), intent(in) :: delt
real(kind=kind_phys), intent(in) :: delt, cscale
real(kind=kind_phys), intent(in) :: psp(:), delp(:,:), &
& prslp(:,:), garea(:), hpbl(:), dot(:,:), phil(:,:)
real(kind=kind_phys), dimension(:), intent(in) :: fscav
Expand Down Expand Up @@ -219,7 +219,7 @@ subroutine samfdeepcnv_run (im,km,first_time_step,restart, &
! parameters for prognostic sigma closure
real(kind=kind_phys) omega_u(im,km),zdqca(im,km),tmfq(im,km),
& omegac(im),zeta(im,km),dbyo1(im,km),sigmab(im),qadv(im,km),
& sigmaoutx(im),tentr(im,km)
& tentr(im,km)
real(kind=kind_phys) gravinv,invdelt,sigmind,sigminm,sigmins
parameter(sigmind=0.01,sigmins=0.03,sigminm=0.01)
logical flag_shallow, flag_mid
Expand Down Expand Up @@ -3467,24 +3467,16 @@ subroutine samfdeepcnv_run (im,km,first_time_step,restart, &
endif
enddo
c
!
if(progsigma)then
do i = 1, im
sigmaoutx(i)=max(sigmaout(i,1),0.0)
sigmaoutx(i)=min(sigmaoutx(i),1.0)
enddo
endif
c
!> - Calculate convective cloud water.
do k = 1, km
do i = 1, im
if (cnvflg(i) .and. rn(i) > 0.) then
if (k >= kbcon(i) .and. k < ktcon(i)) then
cnvw(i,k) = cnvwt(i,k) * xmb(i) * dt2
if(progsigma)then
cnvw(i,k) = cnvw(i,k) * sigmaoutx(i)
cnvw(i,k) = cnvw(i,k) * cscale
else
cnvw(i,k) = cnvw(i,k) * sigmagfm(i)
cnvw(i,k) = cnvw(i,k) * cscale
endif
endif
endif
Expand Down
8 changes: 8 additions & 0 deletions physics/CONV/SAMF/samfdeepcnv.meta
Original file line number Diff line number Diff line change
Expand Up @@ -188,6 +188,14 @@
type = real
kind = kind_phys
intent = in
[cscale]
standard_name = multiplicative_tuning_parameter_for_convective_cloud_water
long_name = multiplicative tuning parameter for convective cloud_water
units = none
dimensions = ()
type = real
kind = kind_phys
intent = in
[delt]
standard_name = timestep_for_physics
long_name = physics time step
Expand Down
17 changes: 5 additions & 12 deletions physics/CONV/SAMF/samfshalcnv.f
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ subroutine samfshalcnv_run(im,km,itc,ntc,cliq,cp,cvap, &
& t0c,delt,ntk,ntr,delp,first_time_step,restart, &
& tmf,qmicro,progsigma,progomega, &
& prslp,psp,phil,tkeh,qtr,prevsq,q,q1,t1,u1,v1,fscav, &
& rn,kbot,ktop,kcnv,islimsk,garea, &
& rn,kbot,ktop,kcnv,islimsk,garea,cscale, &
& dot,ncloud,hpbl,ud_mf,dt_mf,cnvw,cnvc, &
& clam,c0s,c1,evef,pgcon,asolfac,hwrf_samfshal, &
& sigmain,sigmaout,omegain,omegaout,betadcu,betamcu,betascu, &
Expand All @@ -71,7 +71,7 @@ subroutine samfshalcnv_run(im,km,itc,ntc,cliq,cp,cvap, &
real(kind=kind_phys), intent(in) :: cliq, cp, cvap, &
& eps, epsm1, fv, grav, hvap, rd, rv, t0c, betascu, betadcu, &
& betamcu
real(kind=kind_phys), intent(in) :: delt
real(kind=kind_phys), intent(in) :: delt, cscale
real(kind=kind_phys), intent(in) :: psp(:), delp(:,:), &
& prslp(:,:), garea(:), hpbl(:), dot(:,:), phil(:,:), &
& tmf(:,:,:), q(:,:)
Expand Down Expand Up @@ -167,7 +167,7 @@ subroutine samfshalcnv_run(im,km,itc,ntc,cliq,cp,cvap, &
! parameters for prognostic sigma closure
real(kind=kind_phys) omega_u(im,km),zdqca(im,km),tmfq(im,km),
& omegac(im),zeta(im,km),dbyo1(im,km),
& sigmab(im),qadv(im,km),sigmaoutx(im)
& sigmab(im),qadv(im,km)
real(kind=kind_phys) gravinv,dxcrtas,invdelt,sigmind,sigmins,
& sigminm
logical flag_shallow,flag_mid
Expand Down Expand Up @@ -2441,23 +2441,16 @@ subroutine samfshalcnv_run(im,km,itc,ntc,cliq,cp,cvap, &
endif
enddo
c
if(progsigma)then
do i = 1, im
sigmaoutx(i)=max(sigmaout(i,1),0.0)
sigmaoutx(i)=min(sigmaoutx(i),1.0)
enddo
endif

c convective cloud water
do k = 1, km
do i = 1, im
if (cnvflg(i)) then
if (k >= kbcon(i) .and. k < ktcon(i)) then
cnvw(i,k) = cnvwt(i,k) * xmb(i) * dt2
if (progsigma) then
cnvw(i,k) = cnvw(i,k) * sigmaoutx(i)
cnvw(i,k) = cnvw(i,k) * cscale
else
cnvw(i,k) = cnvw(i,k) * sigmagfm(i)
cnvw(i,k) = cnvw(i,k) * cscale
endif
endif
endif
Expand Down
8 changes: 8 additions & 0 deletions physics/CONV/SAMF/samfshalcnv.meta
Original file line number Diff line number Diff line change
Expand Up @@ -188,6 +188,14 @@
type = real
kind = kind_phys
intent = in
[cscale]
standard_name = multiplicative_tuning_parameter_for_convective_cloud_water
long_name = multiplicative tuning parameter for convective cloud water
units = none
dimensions = ()
type = real
kind = kind_phys
intent = in
[delt]
standard_name = timestep_for_physics
long_name = physics time step
Expand Down