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
87 changes: 52 additions & 35 deletions ccpp/config/ccpp_prebuild_config.py
Original file line number Diff line number Diff line change
Expand Up @@ -187,6 +187,7 @@
'FV3/ccpp/physics/physics/rte-rrtmgp/rte/mo_rte_kind.F90',
'FV3/ccpp/physics/physics/rte-rrtmgp/rte/mo_rte_lw.F90',
'FV3/ccpp/physics/physics/rte-rrtmgp/rte/mo_rte_sw.F90',
'FV3/ccpp/physics/physics/rte-rrtmgp/rte/mo_rte_config.F90',
'FV3/ccpp/physics/physics/rte-rrtmgp/rte/mo_source_functions.F90',
'FV3/ccpp/physics/physics/rte-rrtmgp/rte/kernels/mo_fluxes_broadband_kernels.F90',
'FV3/ccpp/physics/physics/rte-rrtmgp/rte/kernels/mo_optical_props_kernels.F90',
Expand All @@ -198,7 +199,9 @@
'FV3/ccpp/physics/physics/rte-rrtmgp/extensions/mo_heating_rates.F90',
'FV3/ccpp/physics/physics/rte-rrtmgp/extensions/mo_rrtmgp_clr_all_sky.F90',
'FV3/ccpp/physics/physics/rte-rrtmgp/extensions/cloud_optics/mo_cloud_optics.F90',
'FV3/ccpp/physics/physics/rte-rrtmgp/extensions/cloud_optics/mo_cloud_sampling.F90',
'FV3/ccpp/physics/physics/rrtmg_lw_cloud_optics.F90' ,
'FV3/ccpp/physics/physics/rrtmg_sw_cloud_optics.F90' ,
'FV3/ccpp/physics/physics/rrtmgp_aux.F90' ,
# derived data type definitions
'FV3/gfsphysics/GFS_layer/GFS_typedefs.F90',
'FV3/gfsphysics/CCPP_layer/CCPP_typedefs.F90',
Expand Down Expand Up @@ -297,25 +300,26 @@
# HAFSFER_HIRES
'FV3/ccpp/physics/physics/mp_fer_hires.F90',
# RRTMGP
'FV3/ccpp/physics/physics/rrtmg_lw_cloud_optics.F90',
'FV3/ccpp/physics/physics/rrtmg_sw_cloud_optics.F90',
'FV3/ccpp/physics/physics/rrtmgp_aux.F90',
'FV3/ccpp/physics/physics/rrtmgp_lw_gas_optics.F90',
'FV3/ccpp/physics/physics/rrtmgp_lw_cloud_optics.F90',
'FV3/ccpp/physics/physics/rrtmgp_sw_gas_optics.F90',
'FV3/ccpp/physics/physics/rrtmgp_sw_cloud_optics.F90',
'FV3/ccpp/physics/physics/rrtmgp_sw_aerosol_optics.F90',
'FV3/ccpp/physics/physics/rrtmgp_lw_rte.F90',
'FV3/ccpp/physics/physics/rrtmgp_lw_cloud_sampling.F90',
'FV3/ccpp/physics/physics/rrtmgp_sw_rte.F90',
'FV3/ccpp/physics/physics/rrtmgp_sw_cloud_sampling.F90',
'FV3/ccpp/physics/physics/rrtmgp_lw_aerosol_optics.F90',
'FV3/ccpp/physics/physics/GFS_rrtmgp_setup.F90',
'FV3/ccpp/physics/physics/GFS_rrtmgp_pre.F90',
'FV3/ccpp/physics/physics/rrtmgp_lw_pre.F90',
'FV3/ccpp/physics/physics/GFS_rrtmgp_sw_pre.F90',
'FV3/ccpp/physics/physics/GFS_rrtmgp_lw_post.F90',
'FV3/ccpp/physics/physics/GFS_rrtmgp_sw_post.F90',
'FV3/ccpp/physics/physics/rrtmgp_lw_gas_optics.F90' ,
'FV3/ccpp/physics/physics/rrtmgp_lw_cloud_optics.F90' ,
'FV3/ccpp/physics/physics/rrtmgp_sw_gas_optics.F90' ,
'FV3/ccpp/physics/physics/rrtmgp_sw_cloud_optics.F90' ,
'FV3/ccpp/physics/physics/rrtmgp_sw_aerosol_optics.F90' ,
'FV3/ccpp/physics/physics/rrtmgp_lw_rte.F90' ,
'FV3/ccpp/physics/physics/rrtmgp_sw_rte.F90' ,
'FV3/ccpp/physics/physics/rrtmgp_lw_aerosol_optics.F90' ,
'FV3/ccpp/physics/physics/GFS_rrtmgp_setup.F90' ,
'FV3/ccpp/physics/physics/GFS_rrtmgp_pre.F90' ,
'FV3/ccpp/physics/physics/rrtmgp_lw_pre.F90' ,
'FV3/ccpp/physics/physics/GFS_rrtmgp_sw_pre.F90' ,
'FV3/ccpp/physics/physics/GFS_rrtmgp_lw_post.F90' ,
'FV3/ccpp/physics/physics/rrtmgp_lw_cloud_sampling.F90' ,
'FV3/ccpp/physics/physics/rrtmgp_sw_cloud_sampling.F90' ,
'FV3/ccpp/physics/physics/GFS_cloud_diagnostics.F90' ,
'FV3/ccpp/physics/physics/mo_cloud_sampling.F90' ,
'FV3/ccpp/physics/physics/GFS_rrtmgp_gfdlmp_pre.F90' ,
'FV3/ccpp/physics/physics/GFS_rrtmgp_zhaocarr_pre.F90' ,
'FV3/ccpp/physics/physics/GFS_rrtmgp_sw_post.F90'
]

# Default build dir, relative to current working directory,
Expand Down Expand Up @@ -356,20 +360,6 @@
# if no entry is made here. Possible values are: 'all', 'none',
# or a list of standard_names: [ 'var1', 'var3' ].
OPTIONAL_ARGUMENTS = {
'rrtmgp_sw_rte' : {
'rrtmgp_sw_rte_run' : [
'components_of_surface_downward_shortwave_fluxes',
],
},
'GFS_rrtmgp_sw_post' : {
'GFS_rrtmgp_sw_post_run' : 'none',
},
'rrtmgp_lw_rte' : {
'rrtmgp_lw_rte_run' : 'none',
},
'GFS_rrtmgp_lw_post' : {
'GFS_rrtmgp_lw_post_run' : 'none',
},
'rrtmg_sw' : {
'rrtmg_sw_run' : [
'tendency_of_air_temperature_due_to_shortwave_heating_assuming_clear_sky_on_radiation_time_step_and_radiation_levels',
Expand Down Expand Up @@ -430,7 +420,34 @@
'rime_factor',
],
},

'rrtmgp_lw_rte' : {
'rrtmgp_lw_rte_run' : [
'RRTMGP_jacobian_of_lw_flux_profile_upward',
'RRTMGP_jacobian_of_lw_flux_profile_downward',
],
},
'rrtmgp_sw_rte' : {
'rrtmgp_sw_rte_run' : [
'components_of_surface_downward_shortwave_fluxes',
],
},
'GFS_rrtmgp_sw_post' : {
'GFS_rrtmgp_sw_post_run' : [
'tendency_of_air_temperature_due_to_shortwave_heating_assuming_clear_sky_on_radiation_time_step',
'components_of_surface_downward_shortwave_fluxes',
],
},
'GFS_rrtmgp_lw_post' : {
'GFS_rrtmgp_lw_post_run' : [
'tendency_of_air_temperature_due_to_longwave_heating_assuming_clear_sky_on_radiation_time_step',
],
},
'GFS_suite_interstitial_2' : {
'GFS_suite_interstitial_2_run' : [
'RRTMGP_jacobian_of_lw_flux_profile_upward',
'RRTMGP_lw_flux_profile_upward_allsky',
],
},
#'subroutine_name_1' : 'all',
#'subroutine_name_2' : 'none',
#'subroutine_name_2' : [ 'var1', 'var3'],
Expand Down
2 changes: 1 addition & 1 deletion ccpp/physics
Submodule physics updated 41 files
+596 −0 physics/GFS_cloud_diagnostics.F90
+159 −0 physics/GFS_cloud_diagnostics.meta
+234 −0 physics/GFS_rrtmgp_gfdlmp_pre.F90
+385 −0 physics/GFS_rrtmgp_gfdlmp_pre.meta
+116 −132 physics/GFS_rrtmgp_lw_post.F90
+100 −46 physics/GFS_rrtmgp_lw_post.meta
+98 −547 physics/GFS_rrtmgp_pre.F90
+179 −189 physics/GFS_rrtmgp_pre.meta
+45 −21 physics/GFS_rrtmgp_setup.F90
+61 −13 physics/GFS_rrtmgp_setup.meta
+174 −159 physics/GFS_rrtmgp_sw_post.F90
+210 −66 physics/GFS_rrtmgp_sw_post.meta
+54 −43 physics/GFS_rrtmgp_sw_pre.F90
+247 −48 physics/GFS_rrtmgp_sw_pre.meta
+253 −0 physics/GFS_rrtmgp_zhaocarr_pre.F90
+406 −0 physics/GFS_rrtmgp_zhaocarr_pre.meta
+73 −7 physics/GFS_suite_interstitial.F90
+45 −1 physics/GFS_suite_interstitial.meta
+1 −0 physics/drag_suite.F90
+398 −0 physics/mo_cloud_sampling.F90
+2 −0 physics/module_sf_noahmp_glacier.f90
+4 −0 physics/physcons.F90
+9 −1 physics/physparam.f
+200 −1 physics/radiation_clouds.f
+9 −162 physics/rrtmg_lw_cloud_optics.F90
+42 −174 physics/rrtmg_sw_cloud_optics.F90
+104 −75 physics/rrtmgp_lw_cloud_optics.F90
+63 −14 physics/rrtmgp_lw_cloud_optics.meta
+150 −29 physics/rrtmgp_lw_cloud_sampling.F90
+43 −0 physics/rrtmgp_lw_cloud_sampling.meta
+11 −4 physics/rrtmgp_lw_gas_optics.F90
+51 −52 physics/rrtmgp_lw_rte.F90
+34 −18 physics/rrtmgp_lw_rte.meta
+151 −68 physics/rrtmgp_sw_cloud_optics.F90
+61 −12 physics/rrtmgp_sw_cloud_optics.meta
+197 −51 physics/rrtmgp_sw_cloud_sampling.F90
+43 −0 physics/rrtmgp_sw_cloud_sampling.meta
+26 −9 physics/rrtmgp_sw_gas_optics.F90
+20 −22 physics/rrtmgp_sw_rte.F90
+8 −9 physics/rrtmgp_sw_rte.meta
+1 −1 physics/rte-rrtmgp
Original file line number Diff line number Diff line change
@@ -1,7 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>

<suite name="FV3_GFS_2017_RRTMGP" lib="ccppphys" ver="4">
<suite name="FV3_GFS_v15p2_RRTMGP" lib="ccppphys" ver="4">
<!-- <init></init> -->
<group name="fast_physics">
<subcycle loop="1">
<scheme>fv_sat_adj</scheme>
</subcycle>
</group>
<group name="time_vary">
<subcycle loop="1">
<scheme>GFS_time_vary_pre</scheme>
Expand All @@ -14,6 +19,8 @@
<subcycle loop="1">
<scheme>GFS_suite_interstitial_rad_reset</scheme>
<scheme>GFS_rrtmgp_pre</scheme>
<scheme>GFS_rrtmgp_gfdlmp_pre</scheme>
<scheme>GFS_cloud_diagnostics</scheme>
<scheme>GFS_rrtmgp_sw_pre</scheme>
<scheme>rrtmgp_sw_gas_optics</scheme>
<scheme>rrtmgp_sw_aerosol_optics</scheme>
Expand Down Expand Up @@ -68,7 +75,8 @@
<scheme>GFS_GWD_generic_post</scheme>
<scheme>rayleigh_damp</scheme>
<scheme>GFS_suite_stateout_update</scheme>
<scheme>ozphys</scheme>
<scheme>ozphys_2015</scheme>
<scheme>h2ophys</scheme>
<scheme>get_phi_fv3</scheme>
<scheme>GFS_suite_interstitial_3</scheme>
<scheme>GFS_DCNV_generic_pre</scheme>
Expand All @@ -80,15 +88,15 @@
<scheme>GFS_suite_interstitial_4</scheme>
<scheme>cnvc90</scheme>
<scheme>GFS_MP_generic_pre</scheme>
<scheme>zhaocarr_gscond</scheme>
<scheme>zhaocarr_precpd</scheme>
<scheme>gfdl_cloud_microphys</scheme>
<scheme>GFS_MP_generic_post</scheme>
<scheme>maximum_hourly_diagnostics</scheme>
</subcycle>
</group>
<group name="stochastics">
<subcycle loop="1">
<scheme>GFS_stochastics</scheme>
<scheme>phys_tend</scheme>
</subcycle>
</group>
<!-- <finalize></finalize> -->
Expand Down
103 changes: 103 additions & 0 deletions ccpp/suites/suite_FV3_GFS_v16beta_RRTMGP.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,103 @@
<?xml version="1.0" encoding="UTF-8"?>

<suite name="FV3_GFS_v16beta_RRTMGP" lib="ccppphys" ver="4">
<!-- <init></init> -->
<group name="fast_physics">
<subcycle loop="1">
<scheme>fv_sat_adj</scheme>
</subcycle>
</group>
<group name="time_vary">
<subcycle loop="1">
<scheme>GFS_time_vary_pre</scheme>
<scheme>GFS_rrtmgp_setup</scheme>
<scheme>GFS_rad_time_vary</scheme>
<scheme>GFS_phys_time_vary</scheme>
</subcycle>
</group>
<group name="radiation">
<subcycle loop="1">
<scheme>GFS_suite_interstitial_rad_reset</scheme>
<scheme>GFS_rrtmgp_pre</scheme>
<scheme>GFS_rrtmgp_gfdlmp_pre</scheme>
<scheme>GFS_cloud_diagnostics</scheme>
<scheme>GFS_rrtmgp_sw_pre</scheme>
<scheme>rrtmgp_sw_gas_optics</scheme>
<scheme>rrtmgp_sw_aerosol_optics</scheme>
<scheme>rrtmgp_sw_cloud_optics</scheme>
<scheme>rrtmgp_sw_cloud_sampling</scheme>
<scheme>rrtmgp_sw_rte</scheme>
<scheme>GFS_rrtmgp_sw_post</scheme>
<scheme>rrtmgp_lw_pre</scheme>
<scheme>rrtmgp_lw_gas_optics</scheme>
<scheme>rrtmgp_lw_aerosol_optics</scheme>
<scheme>rrtmgp_lw_cloud_optics</scheme>
<scheme>rrtmgp_lw_cloud_sampling</scheme>
<scheme>rrtmgp_lw_rte</scheme>
<scheme>GFS_rrtmgp_lw_post</scheme>
</subcycle>
</group>
<group name="physics">
<subcycle loop="1">
<scheme>GFS_suite_interstitial_phys_reset</scheme>
<scheme>GFS_suite_stateout_reset</scheme>
<scheme>get_prs_fv3</scheme>
<scheme>GFS_suite_interstitial_1</scheme>
<scheme>GFS_surface_generic_pre</scheme>
<scheme>GFS_surface_composites_pre</scheme>
<scheme>dcyc2t3</scheme>
<scheme>GFS_surface_composites_inter</scheme>
<scheme>GFS_suite_interstitial_2</scheme>
</subcycle>
<!-- Surface iteration loop -->
<subcycle loop="2">
<scheme>sfc_diff</scheme>
<scheme>GFS_surface_loop_control_part1</scheme>
<scheme>sfc_nst_pre</scheme>
<scheme>sfc_nst</scheme>
<scheme>sfc_nst_post</scheme>
<scheme>lsm_noah</scheme>
<scheme>sfc_sice</scheme>
<scheme>GFS_surface_loop_control_part2</scheme>
</subcycle>
<!-- End of surface iteration loop -->
<subcycle loop="1">
<scheme>GFS_surface_composites_post</scheme>
<scheme>sfc_diag</scheme>
<scheme>sfc_diag_post</scheme>
<scheme>GFS_surface_generic_post</scheme>
<scheme>GFS_PBL_generic_pre</scheme>
<scheme>satmedmfvdifq</scheme>
<scheme>GFS_PBL_generic_post</scheme>
<scheme>GFS_GWD_generic_pre</scheme>
<scheme>cires_ugwp</scheme>
<scheme>cires_ugwp_post</scheme>
<scheme>GFS_GWD_generic_post</scheme>
<scheme>rayleigh_damp</scheme>
<scheme>GFS_suite_stateout_update</scheme>
<scheme>ozphys_2015</scheme>
<scheme>h2ophys</scheme>
<scheme>get_phi_fv3</scheme>
<scheme>GFS_suite_interstitial_3</scheme>
<scheme>GFS_DCNV_generic_pre</scheme>
<scheme>samfdeepcnv</scheme>
<scheme>GFS_DCNV_generic_post</scheme>
<scheme>GFS_SCNV_generic_pre</scheme>
<scheme>samfshalcnv</scheme>
<scheme>GFS_SCNV_generic_post</scheme>
<scheme>GFS_suite_interstitial_4</scheme>
<scheme>cnvc90</scheme>
<scheme>GFS_MP_generic_pre</scheme>
<scheme>gfdl_cloud_microphys</scheme>
<scheme>GFS_MP_generic_post</scheme>
<scheme>maximum_hourly_diagnostics</scheme>
</subcycle>
</group>
<group name="stochastics">
<subcycle loop="1">
<scheme>GFS_stochastics</scheme>
<scheme>phys_tend</scheme>
</subcycle>
</group>
<!-- <finalize></finalize> -->
</suite>
Loading