Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
111 commits
Select commit Hold shift + click to select a range
7271136
Issue 886
dustinswales Aug 11, 2022
8329e07
Issue 764
dustinswales Aug 11, 2022
a282821
Issue 672
dustinswales Aug 11, 2022
7c37906
Cleanup to radiation_aerosols. Related to #923. Made changes to made …
dustinswales Aug 12, 2022
11f1ef0
Remove dependency on physcons and physparam in radiation_aerosols.f. …
dustinswales Aug 15, 2022
063e15d
bug fix in argument list.
dustinswales Aug 15, 2022
225f5b5
Remove dependency on physcons and physparam in radiation_astronomy.f.…
dustinswales Aug 15, 2022
da57e02
Replaced stop statements with ccpp error handling
dustinswales Aug 15, 2022
1dbed67
Replaced all remaing stop statements with ccpp error handling.
dustinswales Aug 16, 2022
1d907a2
Merge branch 'main' of https://github.com/NCAR/ccpp-physics into HEAD
dustinswales Aug 16, 2022
e02f1dd
Bug fix in html include location.
dustinswales Aug 16, 2022
f885b9c
Remove dependency on physcons and physparam in radiation_surface.f. …
dustinswales Aug 17, 2022
9f9ed2a
Remove dependency on physcons and physparam in radiation_gases.f. Pro…
dustinswales Aug 17, 2022
c0d2d20
Remove dependency on physparam in radlw_main/radsw_main.F90. Provided…
dustinswales Aug 18, 2022
98cf6d2
Adios physparam.f
dustinswales Aug 18, 2022
1d8998d
Revert change to CMakeLists.txt
dustinswales Aug 31, 2022
82bcd67
Omission from previous commit
dustinswales Sep 6, 2022
2f9e604
Adress reviewers comments
dustinswales Sep 7, 2022
0650bae
Fix bug in metadata.
Sep 12, 2022
2fe654e
Address reviewers comments. Bug found in seeding for cloud-sampling i…
Sep 21, 2022
3b3ecf2
Merge branch 'main' of https://github.com/NCAR/ccpp-physics into HEAD
Sep 21, 2022
51b9243
Update CODEOWNERS file
Sep 22, 2022
f5ca603
Update CODEOWNERS
Sep 22, 2022
d0e5b30
Merge pull request #19 from dustinswales/update_codeowners
Sep 22, 2022
62079c1
Merge branch 'main' of https://github.com/NCAR/ccpp-physics into HEAD
Oct 3, 2022
5cf7176
Merge branch 'ufs/dev' into small_cloud_tuning_GT_gjf
Oct 17, 2022
d0d7d50
Update CODEOWNERS
dustinswales Oct 17, 2022
15e44c8
Merge branch 'bugfix/rrfs-debug-mode-no-smoke' into ufs-dev-PR6
Oct 18, 2022
8e9eecb
Merge branch 'small_cloud_tuning_GT_gjf' into ufs-dev-PR1
Oct 19, 2022
a089102
Merge pull request #973 from grantfirl/ufs-dev-PR6
Oct 26, 2022
297cf32
Merge branch 'main' of https://github.com/NCAR/ccpp-physics into HEAD
Oct 27, 2022
469ef08
Update CODEOWNERS
Oct 27, 2022
b366011
Merge branch 'main' into ufs-dev-PR1
Oct 27, 2022
6d74eaf
Changes to metadata to accommodate standard_name rules.
Oct 27, 2022
8f6f1a0
Merge pull request #972 from dustinswales/add_ci_tests
Oct 27, 2022
f90350a
Merge pull request #974 from grantfirl/ufs-dev-PR1
Nov 1, 2022
751d5c7
Set fv3atm fork used in CI to NCAR, from NOAA-EMC
Nov 1, 2022
e7fdd76
Merge branch 'main' of https://github.com/NCAR/ccpp-physics into HEAD
Nov 2, 2022
4900b30
Omission from previous commit.
Nov 2, 2022
35f5e89
Merge branch 'feature/lnd_noahmp_new' into ufs-dev-PR10
Nov 3, 2022
97034ed
Merge branch 'delta_srw210' into ufs-dev-PR14
Nov 3, 2022
c348f3e
Merge pull request #977 from grantfirl/ufs-dev-PR10
grantfirl Nov 8, 2022
a733073
Merge branch 'main' into ufs-dev-PR14
Nov 8, 2022
a015160
Merge branch 'feature/mp_cloud' into ufs-dev-PR19
Nov 8, 2022
6374c88
Merge pull request #978 from grantfirl/ufs-dev-PR14
grantfirl Nov 15, 2022
c65aa90
Merge branch 'main' into ufs-dev-PR19
Nov 15, 2022
c3f2d05
Merge branch 'bug/aod550' into ufs-dev-PR16
Nov 16, 2022
312f63e
Merge pull request #982 from grantfirl/ufs-dev-PR19
grantfirl Nov 21, 2022
f21b760
Merge branch 'main' of https://github.com/NCAR/ccpp-physics into HEAD
Nov 22, 2022
786cd20
Omission from previous commit
Nov 22, 2022
fb6fdb9
Move declaration to init.
Nov 22, 2022
7a5b081
Merge pull request #9 from dustinswales/add_cnvcldcnd_mp2rad_cplng
grantfirl Nov 22, 2022
c078109
Merge branch 'main' into ufs-dev-PR16
Nov 30, 2022
ca2a3d9
Merge commit '18d3fd' into ufs-dev-PR23
Dec 2, 2022
827685f
Merge commit '9d45cd' into ufs-dev-PR25
Dec 2, 2022
86e0b79
Merge pull request #984 from grantfirl/ufs-dev-PR16
grantfirl Dec 13, 2022
cb2993e
Merge branch 'main' of https://github.com/NCAR/ccpp-physics into ufs-…
Dec 13, 2022
fc1d621
Merge pull request #987 from dustinswales/ufs-dev-PR9
Dec 14, 2022
c0e416d
Merge branch 'main' into ufs-dev-PR23
Dec 14, 2022
05b1682
Merge pull request #988 from grantfirl/ufs-dev-PR23
grantfirl Dec 16, 2022
6a961ba
Merge branch 'main' into ufs-dev-PR25
Dec 16, 2022
b855d2b
Merge branch 'main' of https://github.com/NCAR/ccpp-physics into HEAD
Dec 19, 2022
d083f87
Bugfox in argument list
Dec 20, 2022
4fb7ef9
Merge branch 'progc_update' into ufs-dev-PR18
Dec 20, 2022
4f85dfb
Merge branch 'ufs/dev' into ufs-dev-PR27
Dec 20, 2022
abe7dd6
Merge pull request #989 from grantfirl/ufs-dev-PR25
grantfirl Dec 20, 2022
dc46ccb
Merge branch 'main' into ufs-dev-PR18
Dec 20, 2022
a0cd923
Merge pull request #991 from grantfirl/ufs-dev-PR18
grantfirl Dec 26, 2022
394cd7b
Merge branch 'main' into ufs-dev-PR27
Dec 26, 2022
0c79a08
Merge pull request #992 from grantfirl/ufs-dev-PR27
grantfirl Jan 3, 2023
b3c208f
Merge branch 'ufs/dev' into ufs-dev-PR22
Jan 3, 2023
4742757
Merge commit '431591' into ufs-dev-PR28
Jan 9, 2023
cbcf09d
Merge pull request #994 from grantfirl/ufs-dev-PR22
grantfirl Jan 17, 2023
cbcb11a
Merge branch 'main' into ufs-dev-PR28
grantfirl Jan 17, 2023
ae82e1a
Merge branch 'main' of https://github.com/NCAR/ccpp-physics into HEAD
dustinswales Jan 18, 2023
f50b0bd
Merge pull request #995 from grantfirl/ufs-dev-PR28
grantfirl Jan 23, 2023
0f687f8
Merge branch 'main' of https://github.com/NCAR/ccpp-physics into HEAD
Jan 31, 2023
2ffa0f5
Merge pull request #34 from dustinswales/rrtmgp_refactor
ChunxiZhang-NOAA Feb 7, 2023
818298c
Merge pull request #956 from dustinswales/accumulated_cleanup
Feb 8, 2023
df852e6
Merge branch 'main' of https://github.com/NCAR/ccpp-physics into ufs-…
Feb 8, 2023
6760693
Merge pull request #35 from ChunxiZhang-NOAA/bugfix/cloud_rad
grantfirl Jan 30, 2023
14b56d4
Merge pull request #998 from dustinswales/ufs-dev-PR35
Feb 23, 2023
06b22d9
Merge branch 'main' of https://github.com/NCAR/ccpp-physics into ufs-…
Feb 23, 2023
e167925
Merge pull request #40 from mdtoyNOAA/ufs/dev_drag_suite_intent_mods
grantfirl Feb 22, 2023
fb0a90f
Merge pull request #997 from dustinswales/ufs-dev-PR34
Mar 2, 2023
3f89866
Merge commit '336285206d19f06bde4b37a741ac9bc0e15f05e1' into main
Mar 16, 2023
2b504ec
Fix missed change in merge.
Mar 16, 2023
8bce327
Merge pull request #1004 from dustinswales/ufs-dev-PR30a
Mar 17, 2023
f02bac7
Merge remote-tracking branch 'origin/main' into ufs-dev-PR40
Mar 20, 2023
88ec3ca
Merge pull request #1002 from dustinswales/ufs-dev-PR40
Mar 27, 2023
b0ad8d8
Merge branch '20230313_combo' into ufs-dev-PR53
grantfirl Mar 31, 2023
40b582f
Merge branch 'lightning' into ufs-dev-PR42
grantfirl Mar 31, 2023
c2b0653
Merge branch 'ufs/dev-rrfs-sd' into ufs-dev-PR54
grantfirl Mar 31, 2023
1003d15
Merge pull request #1006 from grantfirl/ufs-dev-PR53
grantfirl Apr 6, 2023
fdb5b05
Merge branch 'main' into ufs-dev-PR42
grantfirl Apr 6, 2023
76df8de
Merge branch 'ufsdev_ruclsm' into ufs-dev-PR49
grantfirl Apr 7, 2023
55850de
Merge branch 'ufs/dev' into ufs-dev-PR57
grantfirl Apr 7, 2023
ce0a2cf
Merge pull request #1007 from grantfirl/ufs-dev-PR42
grantfirl Apr 12, 2023
24c1548
Merge branch 'main' into ufs-dev-PR54
grantfirl Apr 12, 2023
ec115b8
Merge pull request #1008 from grantfirl/ufs-dev-PR54
grantfirl Apr 14, 2023
aaf97e8
Merge branch 'main' into ufs-dev-PR49
grantfirl Apr 17, 2023
b7dc3ec
Merge pull request #1009 from grantfirl/ufs-dev-PR49
grantfirl Apr 18, 2023
42509d0
Merge branch 'main' into ufs-dev-PR57
grantfirl Apr 19, 2023
ae12bd5
Merge pull request #1010 from grantfirl/ufs-dev-PR57
grantfirl Apr 20, 2023
4ef1f1a
Merge branch 'unified_conv' into ufs-dev-PR56
grantfirl Apr 25, 2023
833b990
Merge branch 'ufs/dev-gf' into ufs-dev-PR64
grantfirl May 4, 2023
3dc962c
Merge pull request #1013 from grantfirl/ufs-dev-PR56
grantfirl May 8, 2023
3ba2924
Merge branch 'main' into ufs-dev-PR64
grantfirl May 8, 2023
244bb43
fixed stratosphere warm bias and code optimization for MERRA2
AnningCheng-NOAA Jun 2, 2023
d8a5b1f
Merge pull request #1015 from grantfirl/ufs-dev-PR64
grantfirl Jun 13, 2023
5ce05c2
Merge remote-tracking branch 'upstream/main' into maie
AnningCheng-NOAA Jun 27, 2023
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 @@ -24,7 +24,7 @@ jobs:
run: echo "GIT_REMOTE_HASH=`git rev-parse HEAD`" >> $GITHUB_ENV

- name: Checkout latest fv3atm
run: git clone https://github.com/NOAA-EMC/fv3atm.git
run: git clone https://github.com/NCAR/fv3atm.git

- name: Initialize submodules
run: |
Expand Down
7 changes: 1 addition & 6 deletions physics/GFS_rrtmgp_cloud_mp.F90
Original file line number Diff line number Diff line change
Expand Up @@ -875,17 +875,12 @@ subroutine cmp_reff_Thompson(nLev, nCol, i_cldliq, i_cldice, i_cldsnow, i_cldice
qi_mp(iCol,iLay) = tracer(iCol,iLay,i_cldice) / (1.-q_lay(iCol,iLay))
qs_mp(iCol,iLay) = tracer(iCol,iLay,i_cldsnow) / (1.-q_lay(iCol,iLay))
ni_mp(iCol,iLay) = tracer(iCol,iLay,i_cldice_nc) / (1.-q_lay(iCol,iLay))
if (ltaerosol) then
if (ltaerosol .or. mraerosol) then
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is fine, but probably not needed.
The RRTMGP-ThompsonMP coupling is in a state of disarray and needs to be updated with many changes that have occurred in RRTMG, but were not ported to RRTMGP. (It's on my list to do this at somepoint...)

nc_mp(iCol,iLay) = tracer(iCol,iLay,i_cldliq_nc) / (1.-q_lay(iCol,iLay))
nwfa(iCol,iLay) = tracer(iCol,iLay,i_twa)
if (qc_mp(iCol,iLay) > 1.e-12 .and. nc_mp(iCol,iLay) < 100.) then
nc_mp(iCol,iLay) = make_DropletNumber(qc_mp(iCol,iLay)*rho, nwfa(iCol,iLay)*rho) * orho
endif
elseif (mraerosol) then
nc_mp(iCol,iLay) = tracer(iCol,iLay,i_cldliq_nc) / (1.-q_lay(iCol,iLay))
if (qc_mp(iCol,iLay) > 1.e-12 .and. nc_mp(iCol,iLay) < 100.) then
nc_mp(iCol,iLay) = make_DropletNumber(qc_mp(iCol,iLay)*rho, nwfa(iCol,iLay)*rho) * orho
endif
else
if (nint(lsmask(iCol)) == 1) then !land
nc_mp(iCol,iLay) = nt_c_l*orho
Expand Down
20 changes: 12 additions & 8 deletions physics/module_mp_thompson.F90
Original file line number Diff line number Diff line change
Expand Up @@ -3400,8 +3400,8 @@ subroutine mp_thompson (qv1d, qc1d, qi1d, qr1d, qs1d, qg1d, ni1d, &
tcond(k) = (5.69 + 0.0168*tempc)*1.0E-5 * 418.936
ocp(k) = 1./(Cp*(1.+0.887*qv(k)))
lvt2(k)=lvap(k)*lvap(k)*ocp(k)*oRv*otemp*otemp

nwfa(k) = MAX(11.1E6*rho(k), (nwfa1d(k) + nwfaten(k)*DT)*rho(k))
if (is_aerosol_aware) &
nwfa(k) = MAX(11.1E6*rho(k), (nwfa1d(k) + nwfaten(k)*DT)*rho(k))
enddo

do k = kts, kte
Expand Down Expand Up @@ -3654,7 +3654,8 @@ subroutine mp_thompson (qv1d, qc1d, qi1d, qr1d, qs1d, qg1d, ni1d, &
qvten(k) = qvten(k) - prw_vcd(k)
qcten(k) = qcten(k) + prw_vcd(k)
ncten(k) = ncten(k) + pnc_wcd(k)
nwfaten(k) = nwfaten(k) - pnc_wcd(k)
if (is_aerosol_aware) &
nwfaten(k) = nwfaten(k) - pnc_wcd(k)
tten(k) = tten(k) + lvap(k)*ocp(k)*prw_vcd(k)*(1-IFDRY)
rc(k) = MAX(R1, (qc1d(k) + DT*qcten(k))*rho(k))
if (rc(k).eq.R1) L_qc(k) = .false.
Expand Down Expand Up @@ -3743,7 +3744,8 @@ subroutine mp_thompson (qv1d, qc1d, qi1d, qr1d, qs1d, qg1d, ni1d, &
qrten(k) = qrten(k) - prv_rev(k)
qvten(k) = qvten(k) + prv_rev(k)
nrten(k) = nrten(k) - pnr_rev(k)
nwfaten(k) = nwfaten(k) + pnr_rev(k)
if (is_aerosol_aware) &
nwfaten(k) = nwfaten(k) + pnr_rev(k)
tten(k) = tten(k) - lvap(k)*ocp(k)*prv_rev(k)*(1-IFDRY)

rr(k) = MAX(R1, (qr1d(k) + DT*qrten(k))*rho(k))
Expand Down Expand Up @@ -4232,10 +4234,12 @@ subroutine mp_thompson (qv1d, qc1d, qi1d, qr1d, qs1d, qg1d, ni1d, &
qv1d(k) = MAX(1.E-10, qv1d(k) + qvten(k)*DT)
qc1d(k) = qc1d(k) + qcten(k)*DT
nc1d(k) = MAX(2./rho(k), MIN(nc1d(k) + ncten(k)*DT, Nt_c_max))
nwfa1d(k) = MAX(11.1E6, MIN(9999.E6, &
(nwfa1d(k)+nwfaten(k)*DT)))
nifa1d(k) = MAX(naIN1*0.01, MIN(9999.E6, &
(nifa1d(k)+nifaten(k)*DT)))
if (is_aerosol_aware) then
nwfa1d(k) = MAX(11.1E6, MIN(9999.E6, &
(nwfa1d(k)+nwfaten(k)*DT)))
nifa1d(k) = MAX(naIN1*0.01, MIN(9999.E6, &
(nifa1d(k)+nifaten(k)*DT)))
end if
if (qc1d(k) .le. R1) then
qc1d(k) = 0.0
nc1d(k) = 0.0
Expand Down
20 changes: 11 additions & 9 deletions physics/mp_thompson.F90
Original file line number Diff line number Diff line change
Expand Up @@ -151,6 +151,10 @@ subroutine mp_thompson_init(ncol, nlev, con_g, con_rd, con_eps, &
!> - Convert specific humidity to water vapor mixing ratio.
!> - Also, hydrometeor variables are mass or number mixing ratio
!> - either kg of species per kg of dry air, or per kg of (dry + vapor).
if (merra2_aerosol_aware) then
call get_niwfa(aerfld, nifa, nwfa, ncol, nlev)
end if


qv = spechum/(1.0_kind_phys-spechum)

Expand All @@ -163,7 +167,7 @@ subroutine mp_thompson_init(ncol, nlev, con_g, con_rd, con_eps, &

ni = ni/(1.0_kind_phys-spechum)
nr = nr/(1.0_kind_phys-spechum)
if (is_aerosol_aware) then
if (is_aerosol_aware .or. merra2_aerosol_aware) then
nc = nc/(1.0_kind_phys-spechum)
nwfa = nwfa/(1.0_kind_phys-spechum)
nifa = nifa/(1.0_kind_phys-spechum)
Expand Down Expand Up @@ -208,8 +212,6 @@ subroutine mp_thompson_init(ncol, nlev, con_g, con_rd, con_eps, &
nwfa(i,k) = naCCN1+naCCN0*exp(-((hgt(i,k)-hgt(i,1))/1000.)*niCCN3)
enddo
enddo
else if (merra2_aerosol_aware) then
call get_niwfa(aerfld, nifa, nwfa, ncol, nlev)
else
if (mpirank==mpiroot) write(*,*) ' Apparently initial CCN aerosols are present.'
if (MAXVAL(nwfa2d) .lt. eps) then
Expand Down Expand Up @@ -555,6 +557,9 @@ subroutine mp_thompson_run(ncol, nlev, con_g, con_rd, &
else
dtstep = dtp
end if
if (merra2_aerosol_aware) then
call get_niwfa(aerfld, nifa, nwfa, ncol, nlev)
end if

!> - Convert specific humidity to water vapor mixing ratio.
!> - Also, hydrometeor variables are mass or number mixing ratio
Expand All @@ -574,7 +579,7 @@ subroutine mp_thompson_run(ncol, nlev, con_g, con_rd, &

ni = ni/(1.0_kind_phys-spechum)
nr = nr/(1.0_kind_phys-spechum)
if (is_aerosol_aware) then
if (is_aerosol_aware .or. merra2_aerosol_aware) then
nc = nc/(1.0_kind_phys-spechum)
nwfa = nwfa/(1.0_kind_phys-spechum)
nifa = nifa/(1.0_kind_phys-spechum)
Expand Down Expand Up @@ -681,9 +686,6 @@ subroutine mp_thompson_run(ncol, nlev, con_g, con_rd, &
ncten3 => diag3d(:,:,36:36)
qcten3 => diag3d(:,:,37:37)
end if set_extended_diagnostic_pointers
if (merra2_aerosol_aware) then
call get_niwfa(aerfld, nifa, nwfa, ncol, nlev)
end if
!> - Call mp_gt_driver() with or without aerosols, with or without effective radii, ...
if (is_aerosol_aware .or. merra2_aerosol_aware) then
call mp_gt_driver(qv=qv, qc=qc, qr=qr, qi=qi, qs=qs, qg=qg, ni=ni, nr=nr, &
Expand Down Expand Up @@ -921,8 +923,8 @@ subroutine get_niwfa(aerfld, nifa, nwfa, ncol, nlev)
aerfld(:,:,4)/1011.5142+ aerfld(:,:,5)/5683.3501)*1.e15

nwfa=((aerfld(:,:,6)/0.0045435214+aerfld(:,:,7)/0.2907854+aerfld(:,:,8)/12.91224+ &
aerfld(:,:,9)/206.2216+ aerfld(:,:,10)/4326.23)*1.+aerfld(:,:,11)/0.3053104*5+ &
aerfld(:,:,15)/0.3232698*1)*1.e15
aerfld(:,:,9)/206.2216+ aerfld(:,:,10)/4326.23)*9.+aerfld(:,:,11)/0.3053104*5+ &
aerfld(:,:,15)/0.3232698*8)*1.e15
end subroutine get_niwfa

end module mp_thompson
4 changes: 2 additions & 2 deletions physics/rrtmgp_lw_main.meta
Original file line number Diff line number Diff line change
Expand Up @@ -150,7 +150,7 @@
intent = in
[top_at_1]
standard_name = flag_for_vertical_ordering_in_radiation
long_name = flag for vertical ordering in radiaiton
long_name = flag for vertical ordering in radiation
units = flag
dimensions = ()
type = logical
Expand Down Expand Up @@ -638,4 +638,4 @@
units = 1
dimensions = ()
type = integer
intent = out
intent = out