Skip to content
Closed
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
12 changes: 8 additions & 4 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,12 +1,16 @@
[submodule "atmos_cubed_sphere"]
path = atmos_cubed_sphere
url = https://github.com/NOAA-EMC/GFDL_atmos_cubed_sphere
branch = dev/emc
#url = https://github.com/NOAA-EMC/GFDL_atmos_cubed_sphere
#branch = dev/emc
url = https://github.com/junwang-noaa/GFDL_atmos_cubed_sphere
branch = gfsv16_dzmin
[submodule "ccpp/framework"]
path = ccpp/framework
url = https://github.com/NCAR/ccpp-framework
branch = master
[submodule "ccpp/physics"]
path = ccpp/physics
url = https://github.com/NCAR/ccpp-physics
branch = master
#url = https://github.com/NCAR/ccpp-physics
#branch = master
url = https://github.com/climbfuji/ccpp-physics
branch = gfsv16-update-ccpp
15 changes: 10 additions & 5 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,14 +1,19 @@
if(CCPP)

if(DEBUG)
set(_ccpp_debug_arg "--debug")
endif()
if(DEFINED CCPP_SUITES)
set(_ccpp_suites_arg "--suites=${CCPP_SUITES}")
message("Calling CCPP code generator (ccpp_prebuild.py) for suites ${_ccpp_suites_arg} ...")
else()
message("Calling CCPP code generator (ccpp_prebuild.py) for all available suites ...")
endif()
message("Calling CCPP code generator (ccpp_prebuild.py) ... ${_ccpp_suites_arg}")
execute_process(COMMAND ${Python_EXECUTABLE}
"ccpp/framework/scripts/ccpp_prebuild.py"
"--config=ccpp/config/ccpp_prebuild_config.py"
"--builddir=${CMAKE_CURRENT_BINARY_DIR}" ${_ccpp_suites_arg}
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
"FV3/ccpp/framework/scripts/ccpp_prebuild.py"
"--config=FV3/ccpp/config/ccpp_prebuild_config.py"
"--builddir=${CMAKE_CURRENT_BINARY_DIR}" ${_ccpp_suites_arg} ${_ccpp_debug_arg}
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/..
OUTPUT_FILE ${CMAKE_CURRENT_BINARY_DIR}/ccpp_prebuild.out
ERROR_FILE ${CMAKE_CURRENT_BINARY_DIR}/ccpp_prebuild.err
RESULT_VARIABLE RC)
Expand Down
2 changes: 1 addition & 1 deletion atmos_cubed_sphere
234 changes: 117 additions & 117 deletions ccpp/config/ccpp_prebuild_config.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,17 +15,17 @@
# dependencies of these files to the list.
VARIABLE_DEFINITION_FILES = [
# actual variable definition files
'ccpp/physics/physics/machine.F',
'ccpp/physics/physics/radsw_param.f',
'ccpp/physics/physics/radlw_param.f',
'gfsphysics/CCPP_layer/CCPP_typedefs.F90',
'gfsphysics/GFS_layer/GFS_typedefs.F90',
'gfsphysics/CCPP_layer/CCPP_data.F90',
'ccpp/physics/physics/rte-rrtmgp/rrtmgp/mo_gas_optics_rrtmgp.F90',
'ccpp/physics/physics/rte-rrtmgp/rrtmgp/mo_gas_concentrations.F90',
'ccpp/physics/physics/rte-rrtmgp/rte/mo_optical_props.F90',
'ccpp/physics/physics/rte-rrtmgp/extensions/cloud_optics/mo_cloud_optics.F90',
'ccpp/physics/physics/rte-rrtmgp/rte/mo_source_functions.F90',
'FV3/ccpp/physics/physics/machine.F',
'FV3/ccpp/physics/physics/radsw_param.f',
'FV3/ccpp/physics/physics/radlw_param.f',
'FV3/gfsphysics/CCPP_layer/CCPP_typedefs.F90',
'FV3/gfsphysics/GFS_layer/GFS_typedefs.F90',
'FV3/gfsphysics/CCPP_layer/CCPP_data.F90',
'FV3/ccpp/physics/physics/rte-rrtmgp/rrtmgp/mo_gas_optics_rrtmgp.F90',
'FV3/ccpp/physics/physics/rte-rrtmgp/rrtmgp/mo_gas_concentrations.F90',
'FV3/ccpp/physics/physics/rte-rrtmgp/rte/mo_optical_props.F90',
'FV3/ccpp/physics/physics/rte-rrtmgp/extensions/cloud_optics/mo_cloud_optics.F90',
'FV3/ccpp/physics/physics/rte-rrtmgp/rte/mo_source_functions.F90',
]

TYPEDEFS_NEW_METADATA = {
Expand Down Expand Up @@ -92,113 +92,113 @@
# Relative path to source (from where ccpp_prebuild.py is called) : [ list of physics sets in which scheme may be called ];
# current restrictions are that each scheme can only belong to one physics set, and all schemes within one group in the
# suite definition file have to belong to the same physics set
'ccpp/physics/physics/GFS_DCNV_generic.F90',
'ccpp/physics/physics/GFS_GWD_generic.F90',
'ccpp/physics/physics/GFS_MP_generic.F90',
'ccpp/physics/physics/GFS_PBL_generic.F90',
'ccpp/physics/physics/GFS_SCNV_generic.F90',
'ccpp/physics/physics/GFS_debug.F90',
'ccpp/physics/physics/GFS_phys_time_vary.fv3.F90',
'ccpp/physics/physics/GFS_rad_time_vary.fv3.F90',
'ccpp/physics/physics/GFS_rrtmg_post.F90',
'ccpp/physics/physics/GFS_rrtmg_pre.F90',
'ccpp/physics/physics/GFS_rrtmg_setup.F90',
'ccpp/physics/physics/GFS_stochastics.F90',
'ccpp/physics/physics/GFS_suite_interstitial.F90',
'ccpp/physics/physics/GFS_surface_generic.F90',
'ccpp/physics/physics/GFS_surface_composites.F90',
'ccpp/physics/physics/GFS_surface_loop_control.F90',
'ccpp/physics/physics/GFS_time_vary_pre.fv3.F90',
'ccpp/physics/physics/cires_ugwp.F90',
'ccpp/physics/physics/cires_ugwp_post.F90',
'ccpp/physics/physics/cnvc90.f',
'ccpp/physics/physics/cs_conv.F90',
'ccpp/physics/physics/cs_conv_aw_adj.F90',
'ccpp/physics/physics/cu_ntiedtke_pre.F90',
'ccpp/physics/physics/cu_ntiedtke.F90',
'ccpp/physics/physics/cu_ntiedtke_post.F90',
'ccpp/physics/physics/dcyc2.f',
'ccpp/physics/physics/drag_suite.F90',
'ccpp/physics/physics/gcm_shoc.F90',
'ccpp/physics/physics/get_prs_fv3.F90',
'ccpp/physics/physics/gfdl_cloud_microphys.F90',
'ccpp/physics/physics/gfdl_fv_sat_adj.F90',
'ccpp/physics/physics/gscond.f',
'ccpp/physics/physics/gwdc.f',
'ccpp/physics/physics/gwdps.f',
'ccpp/physics/physics/h2ophys.f',
'ccpp/physics/physics/samfdeepcnv.f',
'ccpp/physics/physics/samfshalcnv.f',
'ccpp/physics/physics/sascnvn.F',
'ccpp/physics/physics/shalcnv.F',
'ccpp/physics/physics/maximum_hourly_diagnostics.F90',
'ccpp/physics/physics/m_micro.F90',
'ccpp/physics/physics/m_micro_interstitial.F90',
'ccpp/physics/physics/cu_gf_driver_pre.F90',
'ccpp/physics/physics/cu_gf_driver.F90',
'ccpp/physics/physics/cu_gf_driver_post.F90',
'ccpp/physics/physics/moninedmf.f',
'ccpp/physics/physics/moninedmf_hafs.f',
'ccpp/physics/physics/moninshoc.f',
'ccpp/physics/physics/satmedmfvdif.F',
'ccpp/physics/physics/satmedmfvdifq.F',
'ccpp/physics/physics/shinhongvdif.F90',
'ccpp/physics/physics/ysuvdif.F90',
'ccpp/physics/physics/module_MYNNPBL_wrapper.F90',
'ccpp/physics/physics/module_MYNNSFC_wrapper.F90',
'ccpp/physics/physics/module_SGSCloud_RadPre.F90',
'ccpp/physics/physics/module_SGSCloud_RadPost.F90',
'ccpp/physics/physics/module_MYJSFC_wrapper.F90',
'ccpp/physics/physics/module_MYJPBL_wrapper.F90',
'ccpp/physics/physics/mp_thompson_pre.F90',
'ccpp/physics/physics/mp_thompson.F90',
'ccpp/physics/physics/mp_thompson_post.F90',
'ccpp/physics/physics/ozphys.f',
'ccpp/physics/physics/ozphys_2015.f',
'ccpp/physics/physics/precpd.f',
'ccpp/physics/physics/phys_tend.F90',
'ccpp/physics/physics/radlw_main.f',
'ccpp/physics/physics/radsw_main.f',
'ccpp/physics/physics/rascnv.F90',
'ccpp/physics/physics/rayleigh_damp.f',
'ccpp/physics/physics/rrtmg_lw_post.F90',
'ccpp/physics/physics/rrtmg_lw_pre.F90',
'ccpp/physics/physics/rrtmg_sw_post.F90',
'ccpp/physics/physics/rrtmg_sw_pre.F90',
'ccpp/physics/physics/sfc_diag.f',
'ccpp/physics/physics/sfc_diag_post.F90',
'ccpp/physics/physics/sfc_drv_ruc.F90',
'ccpp/physics/physics/lsm_ruc_sfc_sice_interstitial.F90',
'ccpp/physics/physics/sfc_cice.f',
'ccpp/physics/physics/sfc_diff.f',
'ccpp/physics/physics/sfc_drv.f',
'ccpp/physics/physics/sfc_noahmp_drv.f',
'ccpp/physics/physics/flake_driver.F90',
'ccpp/physics/physics/sfc_nst.f',
'ccpp/physics/physics/sfc_ocean.F',
'ccpp/physics/physics/sfc_sice.f',
'FV3/ccpp/physics/physics/GFS_DCNV_generic.F90',
'FV3/ccpp/physics/physics/GFS_GWD_generic.F90',
'FV3/ccpp/physics/physics/GFS_MP_generic.F90',
'FV3/ccpp/physics/physics/GFS_PBL_generic.F90',
'FV3/ccpp/physics/physics/GFS_SCNV_generic.F90',
'FV3/ccpp/physics/physics/GFS_debug.F90',
'FV3/ccpp/physics/physics/GFS_phys_time_vary.fv3.F90',
'FV3/ccpp/physics/physics/GFS_rad_time_vary.fv3.F90',
'FV3/ccpp/physics/physics/GFS_rrtmg_post.F90',
'FV3/ccpp/physics/physics/GFS_rrtmg_pre.F90',
'FV3/ccpp/physics/physics/GFS_rrtmg_setup.F90',
'FV3/ccpp/physics/physics/GFS_stochastics.F90',
'FV3/ccpp/physics/physics/GFS_suite_interstitial.F90',
'FV3/ccpp/physics/physics/GFS_surface_generic.F90',
'FV3/ccpp/physics/physics/GFS_surface_composites.F90',
'FV3/ccpp/physics/physics/GFS_surface_loop_control.F90',
'FV3/ccpp/physics/physics/GFS_time_vary_pre.fv3.F90',
'FV3/ccpp/physics/physics/cires_ugwp.F90',
'FV3/ccpp/physics/physics/cires_ugwp_post.F90',
'FV3/ccpp/physics/physics/cnvc90.f',
'FV3/ccpp/physics/physics/cs_conv.F90',
'FV3/ccpp/physics/physics/cs_conv_aw_adj.F90',
'FV3/ccpp/physics/physics/cu_ntiedtke_pre.F90',
'FV3/ccpp/physics/physics/cu_ntiedtke.F90',
'FV3/ccpp/physics/physics/cu_ntiedtke_post.F90',
'FV3/ccpp/physics/physics/dcyc2.f',
'FV3/ccpp/physics/physics/drag_suite.F90',
'FV3/ccpp/physics/physics/gcm_shoc.F90',
'FV3/ccpp/physics/physics/get_prs_fv3.F90',
'FV3/ccpp/physics/physics/gfdl_cloud_microphys.F90',
'FV3/ccpp/physics/physics/gfdl_fv_sat_adj.F90',
'FV3/ccpp/physics/physics/gscond.f',
'FV3/ccpp/physics/physics/gwdc.f',
'FV3/ccpp/physics/physics/gwdps.f',
'FV3/ccpp/physics/physics/h2ophys.f',
'FV3/ccpp/physics/physics/samfdeepcnv.f',
'FV3/ccpp/physics/physics/samfshalcnv.f',
'FV3/ccpp/physics/physics/sascnvn.F',
'FV3/ccpp/physics/physics/shalcnv.F',
'FV3/ccpp/physics/physics/maximum_hourly_diagnostics.F90',
'FV3/ccpp/physics/physics/m_micro.F90',
'FV3/ccpp/physics/physics/m_micro_interstitial.F90',
'FV3/ccpp/physics/physics/cu_gf_driver_pre.F90',
'FV3/ccpp/physics/physics/cu_gf_driver.F90',
'FV3/ccpp/physics/physics/cu_gf_driver_post.F90',
'FV3/ccpp/physics/physics/moninedmf.f',
'FV3/ccpp/physics/physics/moninedmf_hafs.f',
'FV3/ccpp/physics/physics/moninshoc.f',
'FV3/ccpp/physics/physics/satmedmfvdif.F',
'FV3/ccpp/physics/physics/satmedmfvdifq.F',
'FV3/ccpp/physics/physics/shinhongvdif.F90',
'FV3/ccpp/physics/physics/ysuvdif.F90',
'FV3/ccpp/physics/physics/module_MYNNPBL_wrapper.F90',
'FV3/ccpp/physics/physics/module_MYNNSFC_wrapper.F90',
'FV3/ccpp/physics/physics/module_SGSCloud_RadPre.F90',
'FV3/ccpp/physics/physics/module_SGSCloud_RadPost.F90',
'FV3/ccpp/physics/physics/module_MYJSFC_wrapper.F90',
'FV3/ccpp/physics/physics/module_MYJPBL_wrapper.F90',
'FV3/ccpp/physics/physics/mp_thompson_pre.F90',
'FV3/ccpp/physics/physics/mp_thompson.F90',
'FV3/ccpp/physics/physics/mp_thompson_post.F90',
'FV3/ccpp/physics/physics/ozphys.f',
'FV3/ccpp/physics/physics/ozphys_2015.f',
'FV3/ccpp/physics/physics/precpd.f',
'FV3/ccpp/physics/physics/phys_tend.F90',
'FV3/ccpp/physics/physics/radlw_main.f',
'FV3/ccpp/physics/physics/radsw_main.f',
'FV3/ccpp/physics/physics/rascnv.F90',
'FV3/ccpp/physics/physics/rayleigh_damp.f',
'FV3/ccpp/physics/physics/rrtmg_lw_post.F90',
'FV3/ccpp/physics/physics/rrtmg_lw_pre.F90',
'FV3/ccpp/physics/physics/rrtmg_sw_post.F90',
'FV3/ccpp/physics/physics/rrtmg_sw_pre.F90',
'FV3/ccpp/physics/physics/sfc_diag.f',
'FV3/ccpp/physics/physics/sfc_diag_post.F90',
'FV3/ccpp/physics/physics/sfc_drv_ruc.F90',
'FV3/ccpp/physics/physics/lsm_ruc_sfc_sice_interstitial.F90',
'FV3/ccpp/physics/physics/sfc_cice.f',
'FV3/ccpp/physics/physics/sfc_diff.f',
'FV3/ccpp/physics/physics/sfc_drv.f',
'FV3/ccpp/physics/physics/sfc_noahmp_drv.f',
'FV3/ccpp/physics/physics/flake_driver.F90',
'FV3/ccpp/physics/physics/sfc_nst.f',
'FV3/ccpp/physics/physics/sfc_ocean.F',
'FV3/ccpp/physics/physics/sfc_sice.f',
# HAFSFER_HIRES
'ccpp/physics/physics/mp_fer_hires.F90',
'FV3/ccpp/physics/physics/mp_fer_hires.F90',
# RRTMGP
'ccpp/physics/physics/rrtmgp_lw_gas_optics.F90',
'ccpp/physics/physics/rrtmgp_lw_cloud_optics.F90',
'ccpp/physics/physics/rrtmgp_sw_gas_optics.F90',
'ccpp/physics/physics/rrtmgp_sw_cloud_optics.F90',
'ccpp/physics/physics/rrtmgp_sw_aerosol_optics.F90',
'ccpp/physics/physics/rrtmgp_lw_rte.F90',
'ccpp/physics/physics/rrtmgp_sw_rte.F90',
'ccpp/physics/physics/rrtmgp_lw_aerosol_optics.F90',
'ccpp/physics/physics/GFS_rrtmgp_setup.F90',
'ccpp/physics/physics/GFS_rrtmgp_pre.F90',
'ccpp/physics/physics/rrtmgp_lw_pre.F90',
'ccpp/physics/physics/GFS_rrtmgp_sw_pre.F90',
'ccpp/physics/physics/GFS_rrtmgp_lw_post.F90',
'ccpp/physics/physics/rrtmgp_lw_cloud_sampling.F90',
'ccpp/physics/physics/rrtmgp_sw_cloud_sampling.F90',
'ccpp/physics/physics/GFS_cloud_diagnostics.F90',
'ccpp/physics/physics/GFS_rrtmgp_gfdlmp_pre.F90',
'ccpp/physics/physics/GFS_rrtmgp_zhaocarr_pre.F90',
'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/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 All @@ -224,7 +224,7 @@
CAPS_DIR = '{build_dir}/ccpp/physics'

# Directory where the suite definition files are stored
SUITES_DIR = 'ccpp/suites'
SUITES_DIR = 'FV3/ccpp/suites'

# Optional arguments - only required for schemes that use
# optional arguments. ccpp_prebuild.py will throw an exception
Expand Down