-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Reorganize code for MPAS dycore. Isolate FV3 and MPAS pieces. #129
Reorganize code for MPAS dycore. Isolate FV3 and MPAS pieces. #129
Conversation
… in the GFS physics suite (NOAA-EMC#851) * Output updraft value of convective cloud condensate in CCPP * update xkinv1 to 0.15 * add check if progsigma is true * address seg fault if progsigma=F --------- Co-authored-by: Grant Firl <[email protected]>
* Land surface upgrades for HR4
* Update diagnose_cplFields routine to use FieldBundleWrite. Needs esmf v8.6.0 * Fixed bug in aux2d dimensions for GFS meta file. * Pass return code from diagnose_cplFields back to caller * Skip 'cpl_scalars' field when dumping export state * fix fhzero for GEFS * fix cpl_scalars (NCAR#6) * fix issues w/ cplscalars * error out of all 3 spatial indices are not present * add check for scalar_id = 0 * modify for timeslices and times (NCAR#7)
…ture for CCPP. More CMake modifications
endif() | ||
|
||
if (MPAS) | ||
add_library(${DYCORE_TARGET} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Naming the add_library target ${DYCORE_TARGET}
means we can't have both MPAS and FV3 build at the same time. At least my CMake v3.26.3 was complaining. Maybe not a big deal for now since we are just spinning up but might be good to give them unique names for the future?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great point. Giving them unique names will also keep the hope alive of "piggy backing" the other dycore in a diagnostic mode. I will make this change.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@scrasmussen I added new variables for each dycore target, but didn't go as far as implementing them. I need to think about this a bit more.
This is a great start and is looking pretty good! Right now I am mainly just trying to build this PR and am having a build issue. I tried building the feature/mpas-dycore-reorg on Derecho with the instructions from the slides.
@dustinswales, I'm getting the following error, did you change the MPAS submodule at all? Thanks!
|
Sorry, I forgot to include the changes needed to MPAS.. |
…ow also includes NOAA-EMC#752) (NOAA-EMC#798) * Convert GFS_grid DDT: use contiguous arrays instead of blocked data structures * Add GCC-based CI build --------- Co-authored-by: Alex Richert <[email protected]> Co-authored-by: Dustin Swales <[email protected]>
Nice! This builds for me now. Just had to make slight changes to work with the GNU software stack on Derecho. I changed |
* atmos_cube_sphere: heat_source is allocated when SKEB is true and d_con is zero
@DusanJovic-NOAA Thanks for the comments. I incorporated your suggestions, and grouped all the FV3 and MPAS pieces together. |
* send CCPP ebu_smoke to UPP ebb * upp: remove GSD_NC synonyms and rename GSD_NC fields instead * update upp hash: g2, g2tmpl, etc. * upp: correct pressure levels for hafs-ar postxconfig files * bugfix: fixed_sfc2_type defaults to fixed_sfc1_type * Add aerosol fix from Li Pan. --------- Co-authored-by: Wen Meng <[email protected]>
@@ -1,8 +1,49 @@ | |||
cmake_minimum_required(VERSION 3.0) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Minor point, can we update this required version to 3.19 since other CMakeLists.txt require it?
…-EMC#837) * Add namelist parameter, ncrement_file_on_native_grid
…e refactor and C3/SAS/MYNN fix) (NOAA-EMC#865) * Host side changes for h2o photochemistry scheme * A fix for the issue to run C3 or SAS convection with the prognostic area fraction closure, and MYNN PBL: tendency_of_vertically_diffused_tracer_concentration from MYNN PBL --------- Co-authored-by: Dustin Swales <[email protected]> Co-authored-by: Lisa Bengtsson <[email protected]>
* add fire_behavior smoke coupling and flags and export variables for fire behavior * added: inst_pres_levels, inst_geop_levels, inst_zonal_wind_levels, inst_merid_wind_levels, inst_surface_roughness, inst_temp_height2m, inst_spec_humid_height2m, inst_pres_height_surface, mean_prec_rate, inst_rainfall_amount * add fire behavior tendencies to physics * add hflx_fire and evap_fire to FV3 imports * added surface emissions fire_smoke imports and initialized the variables and fsmoke tracer index --------- Co-authored-by: masih <[email protected]> Co-authored-by: Grant Firl <[email protected]>
* Add support for IntelLLVM compiler: only sub modules (atmos_cubed_sphere, ccpp/physics and upp) are updated. * Update atmos_cubed_sphere, ccpp/physics and upp
…ture/mpas-dycore-reorg
@scrasmussen @mkavulich @grantfirl |
endif() | ||
if(MULTI_GASES) | ||
list(APPEND _ufsatm_defs_private MULTI_GASES) | ||
endif() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am not sure why these if statements here are under the MOVING_NEST if statement. May need further check when merging in EMC's repo
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@junwang-noaa Thanks. I'm running the UFS RTs now to ensure everything is working before opening PRs into the UFS repositories. (I will make sure to move this statement out of the MOVING_NEST logic.)
This pull request contains changes to generalize atmospheric component of the UFS Weather Model:
This is outlined in Figure 1 of the "Tiger Team" report.
Refactor the CMakeLists to build an atmospheric component with either an FV3
or MPAS dynamical core.
Add CMakeLists.txt to build MPAS core_atmosphere component. The CMake recipes from the "MPAS atmospheric core" were adapted to work in the UFS build system.
Modify CCPP physics CmakeLists.txt to build independent MPAS/FV3 couplings to the physics.
Create "stub" mpas infrastructure. This includes stubs for the MPAS atmospheric component driver and overlaying NUOPC cap.
With these changes, the MPAS dynamical core build within UFS.
Next steps, build atmospheric driver for MPAS, which includes creating new typedefs for coupling between the CCPP and MPAS.
@junwang-noaa @DusanJovic-NOAA