Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
103 commits
Select commit Hold shift + click to select a range
6695d8e
removed gfdl mp v1 files from orginal directory and moved to newly ad…
RuiyuSun Jan 22, 2024
8559367
change the .gitmodules to use my ccpp/physics branch
RuiyuSun Jan 22, 2024
d77fdef
Merge remote-tracking branch 'origin/develop' into feature_gfdlmpv3
RuiyuSun Jan 22, 2024
ce28fae
add GFDLMP v3
RuiyuSun Feb 1, 2024
1efbd92
add two suites for gfdlmp v3
RuiyuSun Feb 1, 2024
1ee57b9
Merge branch 'develop' of https://github.com/NOAA-EMC/fv3atm into HEAD
dustinswales Mar 18, 2024
cbdf74c
GFDLv3
dustinswales Mar 18, 2024
0934d97
Merge branch 'develop' of https://github.com/NOAA-EMC/fv3atm into fea…
dustinswales Mar 18, 2024
3cb2e52
refactor gfdlmp. work in progress
dustinswales Mar 19, 2024
32d7d52
Update physics
dustinswales Mar 20, 2024
7b110d7
Update physics
dustinswales Mar 20, 2024
70782b3
Merge branch 'develop' of https://github.com/NOAA-EMC/fv3atm into fea…
dustinswales Mar 20, 2024
d0f8a40
Synced physics
dustinswales Apr 3, 2024
58e33c8
Merge branch 'develop' of https://github.com/NOAA-EMC/fv3atm into fea…
dustinswales Apr 3, 2024
6b5ec48
Additional cleanup
dustinswales Apr 3, 2024
1013041
Reverted some changes in physics
dustinswales Apr 3, 2024
2688c15
Update physics
dustinswales Apr 11, 2024
3ef708d
Merge branch 'develop' of https://github.com/NOAA-EMC/fv3atm into fea…
dustinswales Apr 11, 2024
14ba971
Some housekeeping in physics
dustinswales Apr 12, 2024
02cd74f
Revert "add GFDLMP v3"
dustinswales Apr 12, 2024
62be093
Update submodules in FV3
dustinswales Apr 12, 2024
bf9efa4
Some more changes
dustinswales Apr 12, 2024
e2ea427
Some reorg
dustinswales Apr 12, 2024
d766a64
Some more cleanup. Nearly done
dustinswales Apr 22, 2024
a609ad7
Move gfdlmp init call to fv_sat_adj init().
dustinswales May 23, 2024
0bf9698
Merge branch 'develop' of https://github.com/NOAA-EMC/fv3atm into fea…
dustinswales May 23, 2024
e42e1ce
Revert mp init move.
dustinswales May 23, 2024
f8ac2da
Revert "Move gfdlmp init call to fv_sat_adj init()."
dustinswales May 23, 2024
c162e03
Some more changes.
dustinswales Aug 26, 2024
2c3ef02
Merge branch 'develop' of https://github.com/NOAA-EMC/fv3atm into fea…
dustinswales Aug 26, 2024
1c2df6b
Some mroe changes
dustinswales Oct 22, 2024
cdca580
Merge branch 'develop' of https://github.com/NOAA-EMC/fv3atm into fea…
dustinswales Oct 22, 2024
20de3c6
Remove unecessary changes
dustinswales Oct 22, 2024
d2cf08a
Update GFDLMPV3 based SDFs
dustinswales Oct 22, 2024
2f91520
Some of the last changes
dustinswales Nov 7, 2024
bfeff8f
More changes!
dustinswales Nov 7, 2024
a7d4c3a
Merge branch 'develop' of https://github.com/NOAA-EMC/fv3atm into fea…
dustinswales Nov 7, 2024
cf0c776
Add call the GFDLMP register in FV3
dustinswales Nov 13, 2024
311bf52
Updated physics
dustinswales Nov 13, 2024
c2e0978
Merge branch 'develop' of https://github.com/NOAA-EMC/fv3atm into fea…
dustinswales Nov 13, 2024
0f7d5e0
Bugfix in physics
dustinswales Nov 18, 2024
7c46b87
Updated physics
dustinswales Nov 18, 2024
7193dbd
Updated physics
dustinswales Nov 18, 2024
4a19ef6
Merge branch 'develop' of https://github.com/NOAA-EMC/fv3atm into fea…
dustinswales Nov 18, 2024
0c4529c
Bug fix from GNU compile. Bug fix from merge.
dustinswales Nov 19, 2024
59164a6
Doh!
dustinswales Nov 21, 2024
dd0c88a
Update physics
dustinswales Dec 16, 2024
21d1609
Merge branch 'develop' of https://github.com/NOAA-EMC/fv3atm into fea…
dustinswales Dec 16, 2024
d92b604
Update physics
dustinswales Jan 24, 2025
780a236
Merge branch 'develop' of https://github.com/NOAA-EMC/fv3atm into fea…
dustinswales Jan 24, 2025
c510d82
Address reviewers comments
dustinswales Jan 24, 2025
2b9dbcf
Initial TEMPO commit
AndersJensen-NOAA Jan 31, 2025
7db11e7
Changes for TEMPO to be called with imp_physics option 88
AndersJensen-NOAA Feb 1, 2025
d0f0753
Support for TEMPO aerosol-aware in CCPP
AndersJensen-NOAA Feb 2, 2025
858ac84
Couple TEMPO to radiation
AndersJensen-NOAA Feb 3, 2025
41350c1
TEMPO radiation buxfix
AndersJensen-NOAA Feb 3, 2025
a64b4b0
Support for TEMPO hail-aware
AndersJensen-NOAA Feb 3, 2025
9373e48
hail-aware variables and renamed module variables
AndersJensen-NOAA Feb 4, 2025
6fb354c
Update pointer to ccpp
AndersJensen-NOAA Feb 4, 2025
034fa88
update to NCAR TEMPO repo
AndersJensen-NOAA Feb 4, 2025
1281c53
Sync physics
AndersJensen-NOAA Feb 4, 2025
fc81449
Update physics
dustinswales Feb 14, 2025
9566a56
Merge branch 'develop' of https://github.com/NOAA-EMC/fv3atm into fea…
dustinswales Feb 14, 2025
3a7cd3c
Sync physics
dustinswales Feb 27, 2025
c14e084
Merge branch 'develop' of https://github.com/NOAA-EMC/fv3atm into fea…
dustinswales Feb 27, 2025
5fd8e5b
Bugfix for name conflict in physics
dustinswales Feb 28, 2025
ff65682
Add import reassignments to avoid error
dustinswales Mar 3, 2025
8308ec3
Synced physics w/ origin
dustinswales Mar 7, 2025
354fcf7
Merge branch 'develop' of https://github.com/NOAA-EMC/fv3atm into fea…
dustinswales Mar 7, 2025
a68b6d9
Updated physics
dustinswales Mar 12, 2025
36395d9
Merge branch 'develop' of https://github.com/NOAA-EMC/fv3atm into fea…
dustinswales Mar 12, 2025
ca0825e
Merge branch 'develop' of https://github.com/NOAA-EMC/fv3atm into fea…
dustinswales Mar 14, 2025
82db094
Merge branch 'develop' into tempo_dev
grantfirl Mar 25, 2025
752558c
Merge branch 'develop' into tempo_dev
grantfirl Mar 26, 2025
312fa69
point back to Anders branch in ccpp-physics
grantfirl Mar 26, 2025
2d63607
update ccpp/physics submodule
grantfirl Mar 28, 2025
f2163fc
Merge branch 'develop' into feature/gfdlmpv3
grantfirl Mar 28, 2025
2db909c
sync physics
dustinswales Apr 18, 2025
32d66fc
Merge branch 'develop' of https://github.com/NOAA-EMC/fv3atm into fea…
dustinswales Apr 18, 2025
1fc6e43
Merge branch 'feature/gfdlmpv3' of https://github.com/dustinswales/fv…
dustinswales Apr 18, 2025
461b90c
Remove old pieces from new SDFs
dustinswales Apr 18, 2025
de99c54
Update SDFs
dustinswales Apr 23, 2025
a5165bb
Merge branch 'develop' of https://github.com/NOAA-EMC/fv3atm into fea…
dustinswales Apr 23, 2025
d95ef98
Update physics
dustinswales Apr 25, 2025
02a7af1
Merge branch 'develop' of https://github.com/NOAA-EMC/fv3atm into fea…
dustinswales Apr 25, 2025
a1184d5
Merge branch 'develop' into tempo_dev
grantfirl May 2, 2025
7c81bb4
Synced physics
dustinswales May 2, 2025
0060094
Merge branch 'develop' of https://github.com/NOAA-EMC/fv3atm into fea…
dustinswales May 2, 2025
65cca07
Merge branch 'develop' of https://github.com/NOAA-EMC/fv3atm into fea…
dustinswales May 8, 2025
700f39d
Merge branch 'develop' of https://github.com/NOAA-EMC/fv3atm into fea…
dustinswales May 9, 2025
a389bcd
Remove PP directive
May 15, 2025
aa20374
Merge branch 'develop' of https://github.com/NOAA-EMC/fv3atm into HEAD
May 15, 2025
f9f773e
Merge branch 'develop' into feature/gfdlmpv3
grantfirl Jun 26, 2025
5bc3104
Update physics
dustinswales Jun 30, 2025
6f03d40
Merge branch 'develop' of https://github.com/NOAA-EMC/fv3atm into fea…
dustinswales Jun 30, 2025
ff08721
Sync physics. Update TEMPO hash
dustinswales Jul 2, 2025
e47a5d2
Merge branch 'develop' of https://github.com/NOAA-EMC/fv3atm into HEAD
dustinswales Jul 2, 2025
7a971df
Update TEMPO SDF
dustinswales Jul 2, 2025
479740a
ccpp-physics TEMPO
dustinswales Jul 2, 2025
fed8783
Merge branch 'tempo_dev' of https://github.com/AndersJensen-NOAA/fv3a…
dustinswales Jul 2, 2025
6fb811d
Merge branch 'develop' into feature/gfdlmpv3
grantfirl Jul 9, 2025
ba45896
Merge branch 'develop' into feature/gfdlmpv3
grantfirl Jul 11, 2025
258d367
update ccpp/physics after merge
grantfirl Jul 14, 2025
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
11 changes: 10 additions & 1 deletion ccpp/config/ccpp_prebuild_config.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
'physics/physics/Radiation/RRTMG/radsw_param.f',
'physics/physics/Radiation/RRTMG/radlw_param.f',
'physics/physics/photochem/module_ozphys.F90',
'physics/physics/MP/TEMPO/TEMPO/module_mp_tempo_params.F90',
'physics/physics/photochem/module_h2ophys.F90',
'physics/physics/SFC_Models/Land/Noahmp/lnd_iau_mod.F90',
'../ccpp/data/CCPP_typedefs.F90',
Expand All @@ -46,6 +47,10 @@
'module_ozphys' : '',
'ty_ozphys' : '',
},
'module_mp_tempo_params' : {
'module_mp_tempo_params' : '',
'ty_tempo_cfg' : '',
},
'module_h2ophys' : {
'module_h2ophys' : '',
'ty_h2ophys' : '',
Expand Down Expand Up @@ -163,15 +168,19 @@
'physics/physics/photochem/module_h2ophys.F90',
'physics/physics/photochem/module_ozphys.F90',
'physics/physics/MP/Ferrier_Aligo/mp_fer_hires.F90',
'physics/physics/MP/GFDL/gfdl_cloud_microphys.F90',
'physics/physics/MP/GFDL/v1_2019/gfdl_cloud_microphys.F90',
'physics/physics/MP/GFDL/fv_sat_adj.F90',
'physics/physics/MP/GFDL/v3_2022/gfdl_cloud_microphys_v3.F90',
'physics/physics/MP/Morrison_Gettelman/m_micro.F90',
'physics/physics/MP/Morrison_Gettelman/m_micro_pre.F90',
'physics/physics/MP/Morrison_Gettelman/m_micro_post.F90',
'physics/physics/MP/NSSL/mp_nssl.F90',
'physics/physics/MP/Thompson/mp_thompson_pre.F90',
'physics/physics/MP/Thompson/mp_thompson.F90',
'physics/physics/MP/Thompson/mp_thompson_post.F90',
'physics/physics/MP/TEMPO/mp_tempo_pre.F90',
'physics/physics/MP/TEMPO/mp_tempo.F90',
'physics/physics/MP/TEMPO/mp_tempo_post.F90',
'physics/physics/MP/Zhao_Carr/zhaocarr_gscond.f',
'physics/physics/MP/Zhao_Carr/zhaocarr_precpd.f',
'physics/physics/PBL/HEDMF/hedmf.f',
Expand Down
13 changes: 8 additions & 5 deletions ccpp/data/CCPP_typedefs.F90
Original file line number Diff line number Diff line change
Expand Up @@ -820,7 +820,7 @@ subroutine gfs_interstitial_create (Interstitial, IM, Model)
!
! Allocate arrays that are conditional on physics choices
if (Model%imp_physics == Model%imp_physics_gfdl .or. Model%imp_physics == Model%imp_physics_thompson &
.or. Model%imp_physics == Model%imp_physics_nssl &
.or. Model%imp_physics == Model%imp_physics_tempo .or. Model%imp_physics == Model%imp_physics_nssl &
) then
allocate (Interstitial%graupelmp (IM))
allocate (Interstitial%icemp (IM))
Expand Down Expand Up @@ -908,7 +908,8 @@ subroutine gfs_interstitial_setup_tracers(Interstitial, Model)
! perform aerosol convective transport and PBL diffusion
Interstitial%trans_aero = Model%cplchm .and. Model%trans_trac

if (Model%imp_physics == Model%imp_physics_thompson) then
if (Model%imp_physics == Model%imp_physics_thompson .or. &
Model%imp_physics == Model%imp_physics_tempo) then
if (Model%ltaerosol) then
Interstitial%nvdiff = 12
else if (Model%mraerosol) then
Expand Down Expand Up @@ -961,7 +962,8 @@ subroutine gfs_interstitial_setup_tracers(Interstitial, Model)
if (Model%imp_physics == Model%imp_physics_wsm6) then
Interstitial%ntcwx = 2
Interstitial%ntiwx = 3
elseif (Model%imp_physics == Model%imp_physics_thompson) then
elseif (Model%imp_physics == Model%imp_physics_thompson .or. &
Model%imp_physics == Model%imp_physics_tempo) then
Interstitial%ntcwx = 2
Interstitial%ntiwx = 3
Interstitial%ntrwx = 4
Expand Down Expand Up @@ -999,7 +1001,8 @@ subroutine gfs_interstitial_setup_tracers(Interstitial, Model)
endif
elseif (Model%imp_physics == Model%imp_physics_gfdl) then
Interstitial%nvdiff = 7
elseif (Model%imp_physics == Model%imp_physics_thompson) then
elseif (Model%imp_physics == Model%imp_physics_thompson .or. &
Model%imp_physics == Model%imp_physics_tempo) then
if (Model%ltaerosol) then
Interstitial%nvdiff = 12
else if (Model%mraerosol) then
Expand Down Expand Up @@ -1421,7 +1424,7 @@ subroutine gfs_interstitial_phys_reset (Interstitial, Model)
!
! Reset fields that are conditional on physics choices
if (Model%imp_physics == Model%imp_physics_gfdl .or. Model%imp_physics == Model%imp_physics_thompson &
.or. Model%imp_physics == Model%imp_physics_nssl &
.or. Model%imp_physics == Model%imp_physics_tempo .or. Model%imp_physics == Model%imp_physics_nssl &
) then
Interstitial%graupelmp = clear_val
Interstitial%icemp = clear_val
Expand Down
8 changes: 4 additions & 4 deletions ccpp/data/CCPP_typedefs.meta
Original file line number Diff line number Diff line change
Expand Up @@ -1128,7 +1128,7 @@
dimensions = (horizontal_loop_extent)
type = real
kind = kind_phys
active = (control_for_microphysics_scheme == identifier_for_gfdl_microphysics_scheme .or. control_for_microphysics_scheme == identifier_for_thompson_microphysics_scheme .or. control_for_microphysics_scheme == identifier_for_nssl_microphysics_scheme)
active = (control_for_microphysics_scheme == identifier_for_gfdl_microphysics_scheme .or. control_for_microphysics_scheme == identifier_for_thompson_microphysics_scheme .or. control_for_microphysics_scheme == identifier_for_nssl_microphysics_scheme .or. control_for_microphysics_scheme == identifier_for_tempo_microphysics_scheme)
[gwdcu]
standard_name = tendency_of_x_wind_due_to_convective_gravity_wave_drag
long_name = zonal wind tendency due to convective gravity wave drag
Expand Down Expand Up @@ -1220,7 +1220,7 @@
dimensions = (horizontal_loop_extent)
type = real
kind = kind_phys
active = (control_for_microphysics_scheme == identifier_for_gfdl_microphysics_scheme .or. control_for_microphysics_scheme == identifier_for_thompson_microphysics_scheme .or. control_for_microphysics_scheme == identifier_for_nssl_microphysics_scheme)
active = (control_for_microphysics_scheme == identifier_for_gfdl_microphysics_scheme .or. control_for_microphysics_scheme == identifier_for_thompson_microphysics_scheme .or. control_for_microphysics_scheme == identifier_for_nssl_microphysics_scheme .or. control_for_microphysics_scheme == identifier_for_tempo_microphysics_scheme)
[dry]
standard_name = flag_nonzero_land_surface_fraction
long_name = flag indicating presence of some land surface area fraction
Expand Down Expand Up @@ -1711,7 +1711,7 @@
dimensions = (horizontal_loop_extent)
type = real
kind = kind_phys
active = (control_for_microphysics_scheme == identifier_for_gfdl_microphysics_scheme .or. control_for_microphysics_scheme == identifier_for_thompson_microphysics_scheme .or. control_for_microphysics_scheme == identifier_for_nssl_microphysics_scheme)
active = (control_for_microphysics_scheme == identifier_for_gfdl_microphysics_scheme .or. control_for_microphysics_scheme == identifier_for_thompson_microphysics_scheme .or. control_for_microphysics_scheme == identifier_for_nssl_microphysics_scheme .or. control_for_microphysics_scheme == identifier_for_tempo_microphysics_scheme)
[rainp]
standard_name = tendency_of_rain_water_mixing_ratio_due_to_microphysics
long_name = tendency of rain water mixing ratio due to microphysics
Expand Down Expand Up @@ -1967,7 +1967,7 @@
dimensions = (horizontal_loop_extent)
type = real
kind = kind_phys
active = (control_for_microphysics_scheme == identifier_for_gfdl_microphysics_scheme .or. control_for_microphysics_scheme == identifier_for_thompson_microphysics_scheme .or. control_for_microphysics_scheme == identifier_for_nssl_microphysics_scheme)
active = (control_for_microphysics_scheme == identifier_for_gfdl_microphysics_scheme .or. control_for_microphysics_scheme == identifier_for_thompson_microphysics_scheme .or. control_for_microphysics_scheme == identifier_for_nssl_microphysics_scheme .or. control_for_microphysics_scheme == identifier_for_tempo_microphysics_scheme)
[snowmt]
standard_name = surface_snow_melt
long_name = snow melt during timestep
Expand Down
44 changes: 34 additions & 10 deletions ccpp/data/GFS_typedefs.F90
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,12 @@ module GFS_typedefs
con_omega, con_rerth, con_psat, karman, rainmin,&
con_c, con_plnk, con_boltz, con_solr_2008, &
con_solr_2002, con_thgni, con_1ovg, con_rgas, &
con_avgd, con_amd, con_amw
con_avgd, con_amd, con_amw, con_one, con_p001, &
con_secinday

use module_radsw_parameters, only: topfsw_type, sfcfsw_type
use module_radlw_parameters, only: topflw_type, sfcflw_type
use module_mp_tempo_params, only: ty_tempo_cfg
use module_ozphys, only: ty_ozphys
use module_h2ophys, only: ty_h2ophys
use land_iau_mod, only: land_iau_external_data_type, land_iau_control_type, &
Expand Down Expand Up @@ -950,6 +952,7 @@ module GFS_typedefs
integer :: imp_physics !< choice of microphysics scheme
integer :: imp_physics_gfdl = 11 !< choice of GFDL microphysics scheme
integer :: imp_physics_thompson = 8 !< choice of Thompson microphysics scheme
integer :: imp_physics_tempo = 88 !< choice of TEMPO microphysics scheme
integer :: imp_physics_wsm6 = 6 !< choice of WSMG microphysics scheme
integer :: imp_physics_zhao_carr = 99 !< choice of Zhao-Carr microphysics scheme
integer :: imp_physics_zhao_carr_pdf = 98 !< choice of Zhao-Carr microphysics scheme with PDF clouds
Expand Down Expand Up @@ -1034,6 +1037,7 @@ module GFS_typedefs
!--- Thompson's microphysical parameters
logical :: ltaerosol !< flag for aerosol version
logical :: mraerosol !< flag for merra2_aerosol_aware
logical :: lthailaware !< flag for TEMPO hail-aware
logical :: lradar !< flag for radar reflectivity
real(kind=kind_phys) :: nsfullradar_diag!< seconds between resetting radar reflectivity calculation
real(kind=kind_phys) :: ttendlim !< temperature tendency limiter per time step in K/s
Expand All @@ -1042,6 +1046,7 @@ module GFS_typedefs
real(kind=kind_phys) :: dt_inner !< time step for the inner loop in s
logical :: sedi_semi !< flag for semi Lagrangian sedi of rain
integer :: decfl !< deformed CFL factor
type(ty_tempo_cfg) :: tempo_cfg !< Thompson MP configuration information.
logical :: thompson_mp_is_init=.false. !< Local scheme initialization flag

!--- GFDL microphysical paramters
Expand Down Expand Up @@ -3292,7 +3297,9 @@ subroutine coupling_create (Coupling, Model)
endif

!--- needed for Thompson's aerosol option
if(Model%imp_physics == Model%imp_physics_thompson .and. (Model%ltaerosol .or. Model%mraerosol)) then
if((Model%imp_physics == Model%imp_physics_thompson .or. &
Model%imp_physics == Model%imp_physics_tempo) .and. &
(Model%ltaerosol .or. Model%mraerosol)) then
allocate (Coupling%nwfa2d (IM))
allocate (Coupling%nifa2d (IM))
Coupling%nwfa2d = clear_val
Expand Down Expand Up @@ -3618,6 +3625,7 @@ subroutine control_initialize (Model, nlunit, fn_nml, me, master, &
!--- Thompson microphysical parameters
logical :: ltaerosol = .false. !< flag for aerosol version
logical :: mraerosol = .false. !< flag for merra2_aerosol_aware
logical :: lthailaware = .false. !< flag for TEMPO hail-aware
logical :: lradar = .false. !< flag for radar reflectivity
real(kind=kind_phys) :: nsfullradar_diag = -999.0 !< seconds between resetting radar reflectivity calculation, set to <0 for every time step
real(kind=kind_phys) :: ttendlim = -999.0 !< temperature tendency limiter, set to <0 to deactivate
Expand Down Expand Up @@ -4130,8 +4138,8 @@ subroutine control_initialize (Model, nlunit, fn_nml, me, master, &
mg_do_graupel, mg_do_hail, mg_nccons, mg_nicons, mg_ngcons, &
mg_ncnst, mg_ninst, mg_ngnst, sed_supersat, do_sb_physics, &
mg_alf, mg_qcmin, mg_do_ice_gmao, mg_do_liq_liu, &
ltaerosol, lradar, nsfullradar_diag, lrefres, ttendlim, &
ext_diag_thompson, dt_inner, lgfdlmprad, &
ltaerosol, lthailaware, lradar, nsfullradar_diag, lrefres, &
ttendlim, ext_diag_thompson, dt_inner, lgfdlmprad, &
sedi_semi, decfl, &
nssl_cccn, nssl_alphah, nssl_alphahl, &
nssl_alphar, nssl_ehw0, nssl_ehlw0, &
Expand Down Expand Up @@ -4793,6 +4801,7 @@ subroutine control_initialize (Model, nlunit, fn_nml, me, master, &
!--- Thompson MP parameters
Model%ltaerosol = ltaerosol
Model%mraerosol = mraerosol
Model%lthailaware = lthailaware
if (Model%ltaerosol .and. Model%mraerosol) then
write(0,*) 'Logic error: Only one Thompson aerosol option can be true, either ltaerosol or mraerosol)'
stop
Expand All @@ -4808,6 +4817,16 @@ subroutine control_initialize (Model, nlunit, fn_nml, me, master, &
endif
Model%sedi_semi = sedi_semi
Model%decfl = decfl

!--- TEMPO MP parameters
! DJS to Anders: Maybe we put more of these nml options into the TEMPO configuration type?
Model%tempo_cfg%aerosol_aware = (ltaerosol .or. mraerosol)
Model%tempo_cfg%hail_aware = lthailaware
if (Model%ltaerosol .and. Model%mraerosol) then
write(0,*) 'Logic error: Only one TEMPO aerosol option can be true, either ltaerosol or mraerosol)'
stop
end if

!--- F-A MP parameters
Model%rhgrd = rhgrd
Model%spec_adv = spec_adv
Expand Down Expand Up @@ -4911,7 +4930,7 @@ subroutine control_initialize (Model, nlunit, fn_nml, me, master, &
Model%exticeden = exticeden
if (Model%exticeden .and. &
(Model%imp_physics /= Model%imp_physics_gfdl .and. Model%imp_physics /= Model%imp_physics_thompson .and. &
Model%imp_physics /= Model%imp_physics_nssl )) then
Model%imp_physics /= Model%imp_physics_nssl .and. Model%imp_physics /= Model%imp_physics_tempo)) then
!see GFS_MP_generic_post.F90; exticeden is only compatible with GFDL,
!Thompson, or NSSL MP
print *,' Using exticeden = T is only valid when using GFDL, Thompson, or NSSL microphysics.'
Expand Down Expand Up @@ -5840,8 +5859,9 @@ subroutine control_initialize (Model, nlunit, fn_nml, me, master, &
!--- BEGIN CODE FROM COMPNS_PHYSICS
!--- shoc scheme
if (do_shoc) then
if (Model%imp_physics == Model%imp_physics_thompson) then
print *,'SHOC is not currently compatible with Thompson MP -- shutting down'
if ((Model%imp_physics == Model%imp_physics_thompson) .or. &
(Model%imp_physics == Model%imp_physics_tempo)) then
print *,'SHOC is not currently compatible with Thompson/TEMPO MP -- shutting down'
stop
endif
Model%nshoc_3d = 3
Expand Down Expand Up @@ -6201,7 +6221,8 @@ subroutine control_initialize (Model, nlunit, fn_nml, me, master, &
' num_p2d =',Model%num_p2d


elseif (Model%imp_physics == Model%imp_physics_thompson) then !Thompson microphysics
elseif (Model%imp_physics == Model%imp_physics_thompson .or. &
Model%imp_physics == Model%imp_physics_tempo) then !Thompson/TEMPO microphysics
Model%npdf3d = 0
Model%num_p3d = 3
Model%num_p2d = 1
Expand All @@ -6218,9 +6239,10 @@ subroutine control_initialize (Model, nlunit, fn_nml, me, master, &
print *,' Thompson MP requires effr_in to be set to .true. - job aborted'
stop
end if
if (Model%me == Model%master) print *,' Using Thompson double moment microphysics', &
if (Model%me == Model%master) print *,' Using Thompson/TEMPO double moment microphysics', &
' ltaerosol = ',Model%ltaerosol, &
' mraerosol = ',Model%mraerosol, &
' lthailaware = ',Model%lthailaware, &
' ttendlim =',Model%ttendlim, &
' ext_diag_thompson =',Model%ext_diag_thompson, &
' dt_inner =',Model%dt_inner, &
Expand Down Expand Up @@ -6768,10 +6790,12 @@ subroutine control_print(Model)
print *, ' wminco : ', Model%wminco
print *, ' '
endif
if (Model%imp_physics == Model%imp_physics_wsm6 .or. Model%imp_physics == Model%imp_physics_thompson) then
if ((Model%imp_physics == Model%imp_physics_wsm6) .or. (Model%imp_physics == Model%imp_physics_thompson) .or. &
(Model%imp_physics == Model%imp_physics_tempo)) then
print *, ' Thompson microphysical parameters'
print *, ' ltaerosol : ', Model%ltaerosol
print *, ' mraerosol : ', Model%mraerosol
print *, ' lthailaware : ', Model%lthailaware
print *, ' lradar : ', Model%lradar
print *, ' nsfullradar_diag : ', Model%nsfullradar_diag
print *, ' lrefres : ', Model%lrefres
Expand Down
Loading