Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
56 commits
Select commit Hold shift + click to select a range
f2a8df4
Merge pull request #2 from NCAR/master
pjpegion Apr 22, 2020
f60ec02
Merge pull request #3 from NCAR/master
pjpegion May 5, 2020
b934a13
Merge pull request #4 from NCAR/master
pjpegion Dec 2, 2020
8a8056e
add mp perts to GFS_stochastics
pjpegion Dec 2, 2020
3226ffb
add CN perts to GFS_stochastics
pjpegion Dec 2, 2020
ac42e80
additions for MP perturbations
pjpegion Dec 8, 2020
6782e0e
add temporary surface perturbation diagnostic
pjpegion Dec 14, 2020
b33d199
established merra2 and a bug fixed in radiation_aerosols.f
AnningCheng-NOAA Dec 21, 2020
4c7d8ad
merge with upstream NCAR
pjpegion Dec 23, 2020
9ff5e80
Merge branch 'master' into pert_clds_mp
pjpegion Dec 23, 2020
cbe310f
Merge pull request #5 from NCAR/master
pjpegion Jan 6, 2021
f850899
Merge pull request #6 from pjpegion/master
pjpegion Jan 6, 2021
3750b6b
add cloud perturbations and clean up radiation perturbations
pjpegion Jan 6, 2021
2980ce1
Merge branch 'pert_clds_mp' of https://github.com/pjpegion/ccpp-physi…
pjpegion Jan 6, 2021
264fa1b
Merge remote-tracking branch 'upstream/master' into pert_clds_mp
pjpegion Jan 12, 2021
f2bc200
Merge remote-tracking branch 'upstream/master' into pert_clds_mp
pjpegion Jan 22, 2021
79ae254
update merra2 before a new pull request
AnningCheng-NOAA Feb 2, 2021
c148234
add ca_global to radiation tendency logic
pjpegion Feb 2, 2021
f304650
add MP perturbations to ca_global section
pjpegion Feb 2, 2021
4dd3f5e
Merge remote-tracking branch 'upstream/master' into pert_clds_mp
pjpegion Feb 16, 2021
4a164c0
Merge remote-tracking branch 'upstream/master' into pert_clds_mp
pjpegion Feb 26, 2021
eaab868
point to correct branch of rrtmgp
pjpegion Mar 3, 2021
67c46a8
adding updated RAS
SMoorthi-emc Mar 4, 2021
31d99da
Merge remote-tracking branch 'upstream/master' into pert_clds_mp
pjpegion Mar 4, 2021
8b947ba
updating MGx routines and SW main for some potential issues and fixes
SMoorthi-emc Mar 5, 2021
1f664cf
update GFS_phys_time_vary.scm for NoahMP init changes and UGWP v1
grantfirl Mar 5, 2021
a483369
fixing radsw_main
SMoorthi-emc Mar 8, 2021
958aaae
resolved conflicts when push merra2
AnningCheng-NOAA Mar 8, 2021
b55e382
resolved the conflicts in GFS_phys_time_vary.fv3.F90
AnningCheng-NOAA Mar 9, 2021
22f45dd
modify check for missing NoahMP input to initiate cold start in GFS_p…
grantfirl Mar 9, 2021
fd8f925
make cires_ugwpv1_module.F90/cires_ugwp1_init use the passed-in namelist
grantfirl Mar 9, 2021
c7e1b1d
Merge branch 'SCM_surface_update_20210305' into fix_UGWPv1_namelist
grantfirl Mar 10, 2021
51a6327
updating RAS with some minor modifications
SMoorthi-emc Mar 11, 2021
8d3ed1d
Turn on mass flux diagnostics
climbfuji Mar 15, 2021
daca231
Address Dom code review
pjpegion Mar 15, 2021
7adf202
remove a space in aerinterp.F90 and aerclm_def.f
AnningCheng-NOAA Mar 16, 2021
f34b1b0
remove aerclm_def.F in IPD and add it in CCPP
AnningCheng-NOAA Mar 16, 2021
7242a6d
Merge pull request #585 from SMoorthi-emc/ccpp-physics-ras-update
climbfuji Mar 17, 2021
55f84f6
Merge remote-tracking branch 'upstream/master' into pert_clds_mp
pjpegion Mar 18, 2021
bb0839e
change declaration of dtdtnp in GFS_stochastics
pjpegion Mar 18, 2021
96bb85e
update GFDL_MP based on the FV3dycore 202101 upgrade
XiaqiongZhou-NOAA Mar 18, 2021
0f9b52d
Merge pull request #553 from pjpegion/pert_clds_mp
climbfuji Mar 19, 2021
b6ef6c3
Merge remote-tracking branch 'upstream/master' into merra2
AnningCheng-NOAA Mar 22, 2021
935a3f7
Merge remote-tracking branch 'NCAR/master' into 202101
XiaqiongZhou-NOAA Mar 26, 2021
affd4a6
Merge pull request #594 from AnningCheng-NOAA/merra2
climbfuji Mar 26, 2021
a65b5f0
Merge remote-tracking branch 'NCAR/master' into 202101
XiaqiongZhou-NOAA Mar 27, 2021
02ee433
Comment out public statements not used
XiaqiongZhou-NOAA Mar 27, 2021
08b72bc
Merge pull request #597 from XiaqiongZhou-NOAA/202101
climbfuji Mar 29, 2021
48db7fb
Merge branch 'gsl/develop' of https://github.com/NOAA-GSL/ccpp-physic…
climbfuji Mar 30, 2021
e47c6ac
Add logic to convert dry/moist mixing ratios based on flag to GFS_sui…
climbfuji Mar 30, 2021
92e0702
Revert CODEOWNERS change
climbfuji Mar 30, 2021
baa3413
Merge branch 'master' of https://github.com/NCAR/ccpp-physics into up…
climbfuji Mar 30, 2021
4407a4c
Merge branch 'fix_UGWPv1_namelist' of https://github.com/grantfirl/cc…
climbfuji Mar 30, 2021
252d0d3
Bugfix in cires_ugwpv1_module.F90: add missing INTERNAL_FILE_NML logic
climbfuji Mar 30, 2021
5dbb259
Cleanup: use con_eps = con_rd/con_rv instead of 0.622 in many places
climbfuji Mar 30, 2021
e09c3b2
Merge pull request #600 from climbfuji/update_thompson_mp_from_gsl_de…
climbfuji Mar 31, 2021
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 CODEOWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

# These owners will be the default owners for everything in the repo.
#* @defunkt
* @DomHeinzeller
* @climbfuji @llpcarson @grantfirl @JulieSchramm

# Order is important. The last matching pattern has the most precedence.
# So if a pull request only touches javascript files, only these owners
Expand Down
8 changes: 4 additions & 4 deletions physics/GFS_DCNV_generic.F90
Original file line number Diff line number Diff line change
Expand Up @@ -169,10 +169,10 @@ 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

! 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)
! 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
Expand Down
10 changes: 1 addition & 9 deletions physics/GFS_MP_generic.F90
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@ subroutine GFS_MP_generic_post_run(im, levs, kdt, nrcm, ncld, nncl, ntcw, ntrac,
rann, xlat, xlon, gt0, gq0, prsl, prsi, phii, tsfc, ice, snow, graupel, save_t, save_qv, rain0, ice0, snow0, &
graupel0, del, rain, domr_diag, domzr_diag, domip_diag, doms_diag, tprcp, srflag, sr, cnvprcp, totprcp, totice, &
totsnw, totgrp, cnvprcpb, totprcpb, toticeb, totsnwb, totgrpb, dt3dt, dq3dt, rain_cpl, rainc_cpl, snow_cpl, pwat, &
do_sppt, ca_global, dtdtr, dtdtc, drain_cpl, dsnow_cpl, lsm, lsm_ruc, lsm_noahmp, raincprv, rainncprv, iceprv, snowprv, &
drain_cpl, dsnow_cpl, lsm, lsm_ruc, lsm_noahmp, raincprv, rainncprv, iceprv, snowprv, &
graupelprv, draincprv, drainncprv, diceprv, dsnowprv, dgraupelprv, dtp, errmsg, errflg)
!
use machine, only: kind_phys
Expand Down Expand Up @@ -119,9 +119,6 @@ subroutine GFS_MP_generic_post_run(im, levs, kdt, nrcm, ncld, nncl, ntcw, ntrac,
real(kind=kind_phys), dimension(:,:), intent(inout) :: dq3dt ! only if ldiag3d and qdiag3d

! Stochastic physics / surface perturbations
logical, intent(in) :: do_sppt, ca_global
real(kind=kind_phys), dimension(im,levs), intent(inout) :: dtdtr
real(kind=kind_phys), dimension(im,levs), intent(in) :: dtdtc
real(kind=kind_phys), dimension(im), intent(inout) :: drain_cpl
real(kind=kind_phys), dimension(im), intent(inout) :: dsnow_cpl

Expand Down Expand Up @@ -391,11 +388,6 @@ subroutine GFS_MP_generic_post_run(im, levs, kdt, nrcm, ncld, nncl, ntcw, ntrac,
pwat(i) = pwat(i) * onebg
enddo

! Stochastic physics / surface perturbations
if (do_sppt .or. ca_global) then
!--- radiation heating rate
dtdtr(1:im,:) = dtdtr(1:im,:) + dtdtc(1:im,:)*dtf
endif

end subroutine GFS_MP_generic_post_run
!> @}
Expand Down
34 changes: 0 additions & 34 deletions physics/GFS_MP_generic.meta
Original file line number Diff line number Diff line change
Expand Up @@ -728,40 +728,6 @@
kind = kind_phys
intent = inout
optional = F
[do_sppt]
standard_name = flag_for_stochastic_physics_perturbations
long_name = flag for stochastic physics perturbations
units = flag
dimensions = ()
type = logical
intent = in
optional = F
[ca_global]
standard_name = flag_for_global_cellular_automata
long_name = switch for global ca
units = flag
dimensions = ()
type = logical
intent = in
optional = F
[dtdtr]
standard_name = tendency_of_air_temperature_due_to_radiative_heating_on_physics_time_step
long_name = temp. change due to radiative heating per time step
units = K
dimensions = (horizontal_loop_extent,vertical_dimension)
type = real
kind = kind_phys
intent = inout
optional = F
[dtdtc]
standard_name = tendency_of_air_temperature_due_to_radiative_heating_assuming_clear_sky
long_name = clear sky radiative (shortwave + longwave) heating rate at current time
units = K s-1
dimensions = (horizontal_loop_extent,vertical_dimension)
type = real
kind = kind_phys
intent = in
optional = F
[drain_cpl]
standard_name = tendency_of_lwe_thickness_of_precipitation_amount_for_coupling
long_name = change in rain_cpl (coupling_type)
Expand Down
2 changes: 1 addition & 1 deletion physics/GFS_debug.F90
Original file line number Diff line number Diff line change
Expand Up @@ -535,7 +535,7 @@ subroutine GFS_diagtoscreen_run (Model, Statein, Stateout, Sfcprop, Coupling,
call print_var(mpirank, omprank, blkno, Grid%xlat_d, Grid%xlon_d, 'Tbd%acvt' , Tbd%acvt)
call print_var(mpirank, omprank, blkno, Grid%xlat_d, Grid%xlon_d, 'Tbd%hpbl' , Tbd%hpbl)
if (Model%do_sppt) then
call print_var(mpirank, omprank, blkno, Grid%xlat_d, Grid%xlon_d, 'Tbd%dtdtr' , Tbd%dtdtr)
call print_var(mpirank, omprank, blkno, Grid%xlat_d, Grid%xlon_d, 'Tbd%dtdtnp' , Tbd%dtdtnp)
call print_var(mpirank, omprank, blkno, Grid%xlat_d, Grid%xlon_d, 'Tbd%dtotprcp' , Tbd%dtotprcp)
call print_var(mpirank, omprank, blkno, Grid%xlat_d, Grid%xlon_d, 'Tbd%dcnvprcp' , Tbd%dcnvprcp)
end if
Expand Down
32 changes: 21 additions & 11 deletions physics/GFS_phys_time_vary.fv3.F90
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ module GFS_phys_time_vary
use h2ointerp, only : read_h2odata, setindxh2o, h2ointerpol

use aerclm_def, only : aerin, aer_pres, ntrcaer, ntrcaerm
use aerinterp, only : read_aerdata, setindxaer, aerinterpol
use aerinterp, only : read_aerdata, setindxaer, aerinterpol, read_aerdataf

use iccn_def, only : ciplin, ccnin, ci_pres
use iccninterp, only : read_cidata, setindxci, ciinterpol
Expand Down Expand Up @@ -166,7 +166,7 @@ subroutine GFS_phys_time_vary_init (
integer, intent(out) :: errflg

! Local variables
integer :: i, j, ix, vegtyp
integer :: i, j, ix, vegtyp, iamin, iamax, jamin, jamax
real(kind_phys) :: rsnow

!--- Noah MP
Expand All @@ -182,12 +182,17 @@ subroutine GFS_phys_time_vary_init (
errflg = 0

if (is_initialized) return
iamin=999
iamax=-999
jamin=999
jamax=-999

!$OMP parallel num_threads(nthrds) default(none) &
!$OMP shared (me,master,ntoz,h2o_phys,im,nx,ny,idate) &
!$OMP shared (xlat_d,xlon_d,imap,jmap,errmsg,errflg) &
!$OMP shared (levozp,oz_coeff,oz_pres,ozpl) &
!$OMP shared (levh2o,h2o_coeff,h2o_pres,h2opl) &
!$OMP shared (iamin, iamax, jamin, jamax) &
!$OMP shared (iaerclm,ntrcaer,aer_nm,iflip,iccn) &
!$OMP shared (jindx1_o3,jindx2_o3,ddy_o3,jindx1_h,jindx2_h,ddy_h) &
!$OMP shared (jindx1_aer,jindx2_aer,ddy_aer,iindx1_aer,iindx2_aer,ddx_aer) &
Expand Down Expand Up @@ -300,16 +305,20 @@ subroutine GFS_phys_time_vary_init (
call setindxh2o (im, xlat_d, jindx1_h, jindx2_h, ddy_h)
endif

!$OMP section
!> - Call setindxaer() to initialize aerosols data
!$OMP section
if (iaerclm) then
call setindxaer (im, xlat_d, jindx1_aer, &
jindx2_aer, ddy_aer, xlon_d, &
iindx1_aer, iindx2_aer, ddx_aer, &
me, master)
iamin=min(minval(iindx1_aer), iamin)
iamax=max(maxval(iindx2_aer), iamax)
jamin=min(minval(jindx1_aer), jamin)
jamax=max(maxval(jindx2_aer), jamax)
endif

!$OMP section

!> - Call setindxci() to initialize IN and CCN data
if (iccn == 1) then
call setindxci (im, xlat_d, jindx1_ci, &
Expand Down Expand Up @@ -367,6 +376,10 @@ subroutine GFS_phys_time_vary_init (
!$OMP end sections

!$OMP end parallel
if (iaerclm) then
call read_aerdataf (iamin, iamax, jamin, jamax, me,master,iflip, &
idate,errmsg,errflg)
endif

if (lsm == lsm_noahmp) then
if (all(tvxy < zero)) then
Expand Down Expand Up @@ -433,9 +446,6 @@ subroutine GFS_phys_time_vary_init (

eahxy(ix) = 2000.0_kind_phys

! eahxy = psfc*qv/(0.622+qv); qv is mixing ratio, converted from sepcific
! humidity specific humidity /(1.0 - specific humidity)

cmxy(ix) = zero
chxy(ix) = zero
fwetxy(ix) = zero
Expand Down Expand Up @@ -804,10 +814,10 @@ subroutine GFS_phys_time_vary_timestep_init (

!> - Call ciinterpol() to make IN and CCN data interpolation
if (iccn == 1) then
call ciinterpol (me, im, idate, fhour, &
jindx1_ci, jindx2_ci, &
ddy_ci, iindx1_ci, &
iindx2_ci, ddx_ci, &
call ciinterpol (me, im, idate, fhour, &
jindx1_ci, jindx2_ci, &
ddy_ci, iindx1_ci, &
iindx2_ci, ddx_ci, &
levs, prsl, in_nm, ccn_nm)
endif

Expand Down
Loading