-
Notifications
You must be signed in to change notification settings - Fork 171
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
Introduce version files and their usage in develop branch #671
Comments
|
Restores the ability to run in cycled mode. This requires GSI to be built with ncio/1.1.2, so the build script now sets 1.1.2 as the ncio version until either the GSI default version is updated or module version files are added to global-workflow (Issue NOAA-EMC#671). Two new variables, COMIN_OBS and COMIN_GES_OBS, had to be added to the config file in the wake of GSI updates for WCOSS2 to ensure the correct paths are used instead of trying to use the non-functional compath.py. Note that, for now, in order to use cycling, the microphysics setting (imp_physics) must be changed in config.base from Thompson (8) back to GFDL (11), along with a corresponding CCPP suite (like FV3_GFS_v16). Fixes NOAA-EMC#711
Restores the ability to run in cycled mode. This requires GSI to be built with ncio/1.1.2, so the build script now sets 1.1.2 as the ncio version until either the GSI default version is updated or module version files are added to global-workflow (Issue #671). Two new variables, COMIN_OBS and COMIN_GES_OBS, had to be added to the config file in the wake of GSI updates for WCOSS2 to ensure the correct paths are used instead of trying to use the non-functional compath.py. Note that, for now, in order to use cycling, the microphysics setting (imp_physics) must be changed in config.base from Thompson (8) back to GFDL (11), along with a corresponding CCPP suite (like FV3_GFS_v16). Fixes #711
- Replace hardcoded module versions with version variables in runtime and build modulefiles for Hera, Orion, and Jet. - Module versions will be sources from new version files at build or runtime. Refs: NOAA-EMC#671
- Version updates within build.ver, run.ver and target specific ver files for Hera and Orion. Refs: NOAA-EMC#671, NOAA-EMC#419
- Add version file sourcing to load_fv3gfs_module.sh for use at runtime. - Add WCOSS2 block to load_fv3gfs_module.sh. Refs: NOAA-EMC#419, NOAA-EMC#671
- Updated cmake_ver to 3.20.1 - Remove esmf_ver and cdo_ver; build.ver versions good on Hera Refs: NOAA-EMC#671
- Convert workflow_utils.jet.lua to use version variables instead of hardcoded versions Refs: NOAA-EMC#671
- Change references to "png" to "libpng" in modulefiles. - If using 2022 intel modules then it's libpng. Refs: NOAA-EMC#671
- Build errors without loading w3nco, will reevaluate removing the w3nco module load later. Refs: NOAA-EMC#671
Due to complications related to aligning component versions in the |
commit 71a16e84a4ce59869879dd6c20007d0271521e7b Author: Judy.K.Henderson <[email protected]> Date: Fri Nov 18 01:46:14 2022 +0000 Squashed commit of the following: commit a658e75e579ebc4f454377e5a9cf4c1fc54e4e3d Author: Jessica Meixner <[email protected]> Date: Wed Aug 3 18:34:34 2022 +0000 Updates for P8 (#946) These are the final updates for Prototype 8. These changes include: * Updating to the latest ufs-weather-model hash (in progress, waiting for PR) which will update the calculation of 2m T * A small update to the organic carbon coefficients for p8, raises them from 0.3 -> 0.4 for oc1 and oc2 * Uses 10km input files for aerosols * Sets do_gsl_drag_tofd=false by default, which helps with stability of the model Closes #937 commit b2155ad3dc999a2f41aeace58f3b199a8ddde65c Author: Walter Kolczynski - NOAA <[email protected]> Date: Wed Aug 3 10:04:06 2022 -0400 Fix GLDAS j-job link (#954) The cd was misplaced when checking for the existence of gldas.fd to create the link for the j-job, so the directory was never found and the job never linked. commit 395720cef000ef221c49c93d4f68417b7fda64b6 Author: Walter Kolczynski - NOAA <[email protected]> Date: Mon Aug 1 17:38:50 2022 -0400 Add ocean post to archive dependencies (#949) The archive job was not waiting for ocean post to complete because there was no dependency. Fixes #948 commit 145b67f70f44abbb713e19073016bacfbfcb8184 Author: Walter Kolczynski - NOAA <[email protected]> Date: Fri Jul 29 13:42:38 2022 -0400 Initial commit of directory comparison tools (#934) Adds a new `test/` directory to the top level. Inside are miscellaneous scripts I have used to test bitwise identicality of experiments. Main scripts: - `diff_ROTDIR.sh`: Compares two output directories - `diff_UFS_rundir.sh`: Compares two UFS run directories Other scripts and file are helpers to these two main scripts. May eventually form starting point of a global workflow regression test (#267) Refs #267 commit e480093446797e556bc1371f9f80610a7c9a6d4b Author: Walter Kolczynski - NOAA <[email protected]> Date: Fri Jul 29 13:42:02 2022 -0400 Add preamble, convert to bash, and remove env (#929) This is the first in a wave of commits to improve and standardize the scripts within global workflow. In this commit, all scripts run during execution are converted to bash and a preamble is added to every script that is not sourced by another script. Every script executed during a forecast cycle is converted to bash. This was mostly straightforward, though there were a couple Korne-shell conventions (primarily using `typeset` to format strings) that had to be replaced with bash-compatable alternatives like `printf`. This in turn required a few modification to prevent zero-padded numbers from being treated as octals (other may have been pre-existing bugs). The preamble contains a number of feature to standardize code and improve script flow and debugging. - First, it uses two variables, `$STRICT` and `$TRACE` to control the behavior of `set`. When `$STRICT` is `"YES"`, error on undefined variables (`set -u`) and exit on non-zero return (`set -e`) are turned on. When `$TRACE` is `"YES"`, command trace (`set -x`) is turned on and a useful string is set to `$PS4` that gives the name and line number of the script. Both `$STRICT` and `$TRACE` default to `"YES"`. They also set up commands, `$ERR_EXIT_ON` and `$TRACE_ON`, that will restore the setting of each in the event a script needs to temporarily turn them off. - Second, the preamble sets up primative timing of scripts using Posix `date`. - Third, it echos the script is beginning and at what time. - Finally, it also establishes a postamble function and sets it to run as a trap of EXIT. The postamble will use the end time to calculate the run time of the script, then print that the script has ended at what time, how long has elapsed, and the exit code. By setting this up as a trap instead of just calling it at the end of the script, it ensures the postamble is called even if the script exits early because there is an error. - In response to this standardization, parts of scripts that performed these preamble functions (announcing start/end, `set -x`, etc) have been deleted. For some scripts where temporarily turning off `-x` or `-e` is needed, they now use `$ERR_EXIT_ON` and `$TRACE_ON` to return to the correct state afterwards, instead of blindly turning the setting back on. - Additionally, some modifications were needed to comply with `set -eu`. Mostly taking care of undefined variables, but also a couple instances where a non-zero return code had to be dealt with. If users wish to use their own preamble script instead, the default script can be overridden by setting `$PREAMBLE_SCRIPT` before the run begins. Instance where scripts would print the full list of environment variables have been removed. These can be spot added back in to debug as necessary. Alternatively, a future PR will add them back in in a standardized way. `rstprod.sh` is added to the link list from gsi_monitor.fd, as it is needed for the radmon scripts. The placeholders for AWIPS and GEMPAK in the Hera and Orion environment scripts were replaced with the correct definitions. There were also other modifications to AWIPS and GEMPAK scripts to get it working for development (AWIPS still isn't and will be fixed in the future). GSI scripts that were brought in recently had all of their backticks replaced with `$( )` as was done with all other script previously. Refs: #397 commit 949513642d33cb3976d0f8e7dd273aedec505a17 Author: Rahul Mahajan <[email protected]> Date: Thu Jul 28 18:36:58 2022 -0400 minimal intervention to create a data-atmosphere xml (#936) commit e4b01b99f50c674635477ff3e2e962b9d5ed54aa Author: Rahul Mahajan <[email protected]> Date: Thu Jul 28 18:28:28 2022 -0400 Remove Cray, Dell, WCOSS1 from module-setup.sh.inc (#943) This file was missed in the initial cleanup. commit 1ed89c7d202974bd4ccd2b048fedc56382edc9ec Author: Rahul Mahajan <[email protected]> Date: Thu Jul 28 15:35:37 2022 -0400 bring GDASApp jjobs and exscripts to global-workflow (#941) commit f04f3ba4dfd5b358aea425f65f82d40917597776 Author: Rahul Mahajan <[email protected]> Date: Tue Jul 26 22:07:42 2022 -0400 change gdasechgres dependency to just gdasefcs01 instead of gdasefmn (#933) Replaces the dependency of `gdasechgres` on `gdasefmn` with `gdasefcs01`. Presently, `gdasechgres` has 2 dependencies: - `gdasfcst` - deterministic forecast - `gdasefmn` - ensemble forecasts (all of them). The work done in `gdasechgres` actually depends only on the `mem001/atmos/gdas.tHHz.atmf006.nc`. This file is used as a template as well as obtaining `hgtsfc`. As such, there is no reason to depend on the entire ensemble of forecasts to be complete before `gdasechgres` can start. commit 490de7bae1322cbaa8ee3d52406034c8edf62dd3 Author: Rahul Mahajan <[email protected]> Date: Tue Jul 26 22:05:59 2022 -0400 Remove obsolete platforms (WCOSS1, Dell, Cray, Theia) references. (#922) Removes code related to decommissioned HPC platforms WCOSS 1 (Dell & Cray) and Theia. Some references remain in scripts outside the global-workflow repo that are cloned as part of `checkout.sh`. Scripts from the `driver` directory that were hard-wired for one of the WCOSS1 platforms are also removed. Additionally, this commit also switches to using serial netCDF for resolutions C48. C96, C192. Running with parallel netCDF (on Hera) gave errors when testing at C96 for the deterministic forecast. If someone gives a very compelling reason to use parallel netCDF at these resolutions as default, I would be very interested in what they have to say. Closes #680 commit 4eb296f7e82459b1d8188636ca3db60b5fa10091 Author: RussTreadon-NOAA <[email protected]> Date: Tue Jul 26 14:50:30 2022 -0400 Optimize DA clone, build, and link (#931) The PR contains changes to optimize the DA clone, build, and link. Changes are made to `checkout.sh`, `build_all.sh`, and `link_workflow.sh` in the g-w `sorc/` directory. These changes are in g-w branch `feature/clone` Two arguments are added to `checkout.sh` to allow the user to specify which DA package to build the global workflow with. These options are - `-g`: clone from the [GSI](https://github.com/NOAA-EMC/GSI) repo and build the g-w for GSI-based DA - `-u`: clone from the [GDASApp](https://github.com/NOAA-EMC/GDASApp) repo and build the g-w for UFS-based DA If no option is specified, `checkout.sh` does not clone any DA and DA related repos. This is the default behavior of `checkout.sh`. (_DA related_ repos include [GLDAS](https://github.com/NOAA-EMC/GLDAS), [GSI-utils](https://github.com/NOAA-EMC/GSI-utils), and [GSI-Monitor](https://github.com/NOAA-EMC/GSI-Monitor).) `build_all.sh` is modified to detect which repos and have been cloned and to build accordingly. `link_workflow.sh` is modified to detect which directories are present and link/copy accordingly. Closes #930 commit 2cad536551180d25bfcfc2b5d35fe1089de7f3c3 Author: Kate Friedman <[email protected]> Date: Tue Jul 26 13:25:37 2022 -0400 WCOSS2 gempak ush scripts updates and cleanup of old release notes (#920) * WCOSS2 updates to gempak ush scripts - Add /gempak subfolder where needed in gempak ush scripts. - Remove unneeded commented out path settings from older iterations. * Removing older release notes - Cleaning out older GFS version release notes; includes current GFSv16.2.1 release notes, will commit GFSv16.3 release notes with implementation this fall. - Will then keep only the latest release notes moving forward. Refs: #419 commit ffcd5bbde7947902a73eebff7dfe04c2ab045b0a Author: RussTreadon-NOAA <[email protected]> Date: Fri Jul 22 16:00:51 2022 -0400 Add GDASapp (first wave of JEDI changes) (#871) Merge changes associated with g-w issue #521 from g-w branch feature/ufsda_gdasapp into develop. feature/ufsda_gdasapp contains g-w extensions for JEDI based atmospheric DA. Specifically, this PR adds the option to add JEDI based variational and/or ensemble DA jobs to replace GSI based DA jobs. The toggling on/off of JEDI_VAR and JEDI_ENS jobs is controlled via two new variables added to `config.base.emc.dyn` and `config.base.nco.static` ``` # DA engine export DO_JEDIVAR="NO" export DO_JEDIENS="NO" ``` When both variables are `NO`, the global workflow uses GSI based DA jobs. Thus, the PR does not alter the default behavior of the develop global workflow. When `DO_JEDIVAR=YES`, GSI jobs `anal` and `analdiag` are replaced by JEDI_VAR jobs `atmanalprep`, `atmanalrun`, and `atmanalpost`. When `DO_JEDIENS=YES`, GSI jobs `eobs`, `ediag`, and `eupd` are replaced by JEDI_ENS jobs `atmensanalprep`, `atmensanalrun`, and `atmensanalpost`. `checkout.sh`, `build_all.sh`, and `link_workflow.sh` are updated to clone, build, and install the GDASapp in the global workflow. Local directory `sorc/gdas.cd` contains the GDASApp superstructure plus the relevant components of JEDI needed to run GDASApp. Closes #521 commit 98f4d16e9bba86d2c433aa0521d960b566062a1f Author: Walter Kolczynski - NOAA <[email protected]> Date: Thu Jul 21 16:02:31 2022 -0400 Add postsnd job when bufrsnd it on (#926) In the workflow refactoring, the addition of postsnd to the task list when bufrsnd is true was inadvertently left out. It is now added back in. commit e2869a1247ad2ba72c1bfe82f7682323d5128f4c Author: Kate Friedman <[email protected]> Date: Tue Jul 19 16:16:20 2022 -0400 Updated GFS transfer*list files from operations (develop) (#918) Updated transfer list files from WCOSS2 ops. - In move to WCOSS2 the transfer*list files were moved into a new transfer folder under the upper-level parm folder. - The transfer*list files were updated to clean out unneeded paths and the beginning of the paths were updated from: `com/gfs/_ENVIR_` to: `_COMROOT_/gfs/_SHORTVER_` Refs: #419 commit 1651014250a748c8c2e2878663c3e8376639044a Author: ChunxiZhang-NOAA <[email protected]> Date: Tue Jul 19 11:18:33 2022 -0400 Fix history type of cldfra in the diag_tables (#915) The history type of the new cloud fraction field (cldfra) is changed so it is written to the correct output file. Fixes #914 commit 5c9639dba419ef51608aa8962b54ae69c8ad8c60 Author: Rahul Mahajan <[email protected]> Date: Tue Jul 19 11:11:38 2022 -0400 Combine ecflow and rocoto workflow generation (#916) Consolidates the workflow generation systems for ecflow and rocoto. Further unification will be made to make a choice to use one or the other. At this time, they are separate and need separate input criteria. Moves `ush/rocoto` to `workflow/` at the top level. Further refining will be performed as needed based on use and need. commit b690ed6c7c1a250171484aba267d0724d8c12d11 Author: Walter Kolczynski - NOAA <[email protected]> Date: Mon Jul 18 19:33:36 2022 -0400 Remove new GSI scripts from gitignore (#917) When the scripts were moved over from GSI into global workflow, they were never removed from the .gitignore. This has now been addressed. Follow-up to PR #904 commit aa2542eb4c95827bc1fc7a4a76d4d0f5bc701f74 Author: Rahul Mahajan <[email protected]> Date: Mon Jul 18 13:49:09 2022 -0400 Add ecFlow generator to `develop` (#912) * merge workflow_generator from dev_v16 at 7b7947e2 and move workflow_generator to ush/ecflow commit 5a58fa8a2f75590a671b45bf75a431f2acf2340b Author: Rahul Mahajan <[email protected]> Date: Mon Jul 18 13:02:59 2022 -0400 Update gsi-utils hash to include bugfix in handling 3D sfc files (#913) Update GSI-Utils hash to include bugfix that processed 3D fields in surface netCDF files. Fixes #909 commit e8361cc343743bb5087e75f89406c1265404e359 Author: Rahul Mahajan <[email protected]> Date: Mon Jul 18 12:44:25 2022 -0400 Combine setup_workflows scripts (#859) `setup_workflow.py` and `setup_workflow_fcstonly.py` are used for setting up the XML for cycled and forecast only configurations. They share large parts of the tasks and dependencies. This PR unifies the ones listed above and makes room for extending for incoming applications. The above two scripts are being replaced by `setup_xml.py`. The usage is: ``` $> setup_xml.py /path/to/experiment_directory ``` This PR also removes the handicap of defining hundreds of entities for task resources. Instead the task resources are placed with the task itself. This PR also does the following: - moves the declaration of `DOBNDPNT_WAVE="NO"` from `config.wave` to `config.base` - reduces timestep at `C48` from `1200s` to `450s` in `config.fv3`. Several ensemble members failed. Inspecting `config.fv3.nco.static`, the value there is `450s` - `eobs` job times out with a wallclock time of `15m`. It is increased to `45m` to play it safe. commit 13385d9c9018def1fbce6772e53665ccb90b2a2a Author: Rahul Mahajan <[email protected]> Date: Fri Jul 15 14:02:12 2022 -0400 Load `ncdiag` module instead of building it in the GSI, use UFSWM build system, pull sfcanl out from anal. (#905) `ncdiag` is no longer being built within the GSI. It is available as a module on all systems; Hera, Orion and WCOSS2. This PR: - loads ncdiag module - finds the `ncdiag_cat_serial.x` executable from that module (once loaded) - updates hashes for GSI, GSI-utils and GSI-monitor. No code changes were made in these repos. Only location of `ncdiag` changed. In addition, this PR: - Uses the ufs-weather-model compilation script. The global workflow is duplicating and missing configuration options set in the ufs-weather-model. This also enables a "debug" mode of compiling the model (#300). - Fixes #906 - Fixes an improper link to `fix_gsi`. It was being linked to a non-existing directory. - separates out the creation of Gaussian surface analysis from the GSI atmospheric analysis. This capability is pulled from PR #871. It was necessary to pull these changes from PR #871 since the `j-jobs`, `ex-scripts` from the GSI have been brought to global-workflow and the companion PR for PR #871 in the [GSI PR 415](https://github.com/NOAA-EMC/GSI/pull/415) were already merged prior to the updates needed for `ncio` and `ncdiag`. I realize all these changes could have been streamlined into smaller atomic PR's. **Note:** This PR also requires a documentation update as a new job `sfcanl` has been added to the workflow. commit b61c2375a05daff20805d0216ade8201192c0199 Author: Fanglin Yang <[email protected]> Date: Thu Jul 14 20:07:54 2022 -0400 Update ice climo, fix option for non-fractional grid, and add cloud fraction for Thompson (#902) Updates the ice climatology from CFSR to IMS_NIC blended. Fixes issue in the diag table where the cloud fraction entry for Thompson was not included. Adds new coupled mode setting for when fractional grid is not used. Fixes #886 Co-authored-by: Chunxi.Zhang-NOAA <[email protected]> commit 680270975e2eb2f09c58a6112a87c0ecaec9e2a5 Author: Barry Baker <[email protected]> Date: Thu Jul 14 17:03:34 2022 -0400 Update aerosol variable names and dust alpha (#888) The names of some aerosol fields have changed and needed to be updated. The dust alpha parameter is updated to improve model performance. A typo in the scavenging parameter definition where a string was terminated with a 'smart-quote' instead of a standard one is corrected. commit 06b25267b7839808508eed9e91dcd2b76a33c3ca Author: Jessica Meixner <[email protected]> Date: Thu Jul 14 18:52:56 2022 +0000 Allow for wave mesh to be different than the ocean/ice mesh (#897) This PR updates the configuration to allow for the wave mesh to be different from the ocean/ice mesh. This PR also changes the default wave grid back to gwes_30m and updates the load-balancing for this change. The ufs-weather-model is updated to use the code that allows for the wave mesh to be different from the ocean/ice mesh. commit 4f3e14b59ff6c83fbaaf6888c3a3068eae3d77d7 Author: Rahul Mahajan <[email protected]> Date: Wed Jul 13 15:53:18 2022 -0400 Migrate `jobs/`, `scripts/` and `ush/` from GSI to global-workflow (#904) This PR moves the `jobs/`, `scripts/` and `ush/` from NOAA-EMC/GSI into the global-workflow. History is preserved. Corresponding GSI PR https://github.com/NOAA-EMC/GSI/pull/436 commit 46f7589807bcb070c8f86601b74f1a84701b669a Author: Rahul Mahajan <[email protected]> Date: Wed Jul 13 15:51:56 2022 -0400 build GSI utilities from GSI-utils repo (#889) **Description** The GSI Utilities have been moved to https://github.com/NOAA-EMC/GSI-utils This PR: - checks out GSI utilities from the above repo - builds the utilities from the above repo - does not build the utilities from the GSI repo. In a subsequent PR when the GSI removes the utilities, that option will become redundant. - updates gsi-monitor hash and uses `build.sh` from that repository - creates links appropriately. commit aac2f3a6980cb61a0dbe272b667f602e3051cb16 Author: Jessica Meixner <[email protected]> Date: Mon Jul 11 06:57:25 2022 +0000 Replace print_esmf with esmf_logkind (#898) Removes print_esmf as it no longer a variable and add the esmf_logkind variable to config.fcst instead which is the equivalent new variable. The change has already been made in nems_configure.sh, so the setting only needed to be changed in the config file. commit 4448dd48b2aeebdf4257a2ab08bd147fcb511f92 Author: Walter Kolczynski - NOAA <[email protected]> Date: Fri Jul 8 13:03:29 2022 -0400 Restore cycling capability (#895) Restores the ability to run in cycled mode. This requires GSI to be built with ncio/1.1.2, so the build script now sets 1.1.2 as the ncio version until either the GSI default version is updated or module version files are added to global-workflow (Issue #671). Two new variables, COMIN_OBS and COMIN_GES_OBS, had to be added to the config file in the wake of GSI updates for WCOSS2 to ensure the correct paths are used instead of trying to use the non-functional compath.py. Note that, for now, in order to use cycling, the microphysics setting (imp_physics) must be changed in config.base from Thompson (8) back to GFDL (11), along with a corresponding CCPP suite (like FV3_GFS_v16). Fixes #711 commit a39bd6364971894eee4349b028ebf54ab496dee0 Author: Rahul Mahajan <[email protected]> Date: Tue Jul 5 16:10:46 2022 -0400 Merge `ecf` changes from `WCOSS2` into `develop` (#885) * moved ecflow/ecf to ecf and with updates from feature/ops-wcoss2 commit 3076e13ca5976206f1cdab58cca1b6f80fbb7716 Author: Fanglin Yang <[email protected]> Date: Fri Jul 1 10:33:39 2022 -0400 Fix settings of dt_inner and lheatstrg (#883) For Thompson microphysics, currently dt_inner is set to half of physics timestep. It should be set to the same as the physics timestep if semi-Lag sedimentation is applied to rain and graupel. Canopy heat storage is incorrectly turned off for NOAH LSM, and on for NOAH-MP LSM. This setting needs to be reversed. Fixes #884 commit 3b9636c4eadc8c31548e170baeefd358483ec71c Author: Ali.Abdolali <[email protected]> Date: Wed Jun 29 18:22:06 2022 +0000 Update buoy locations (#881) Updates buoy locations for those that were incorrect or have been moved. commit f0f1025d07a1af216e2125111ae7bd9ac43213c2 Author: Barry Baker <[email protected]> Date: Tue Jun 28 12:05:31 2022 -0400 Update dust input files to not include _FillValue = NaN (#873) There is an issue with the FENGSHA dust inputs and having the netcdf attribute _FillValue == NaN. This is in relation to ufs-community/ufs-weather-model#1259, ufs-community/ufs-weather-model#1192 and #872 Some dust emissions files have also been updated. File changes only include the netcdf attribute _FillValue changing from NaN -> something appropriate for each variable. Fixes #873 commit 4c8b388ae4fd1fb618021b5c11d5e9c82c2ee2f7 Author: Walter Kolczynski - NOAA <[email protected]> Date: Mon Jun 27 18:14:39 2022 -0400 Replace --aerosols with new apps (#854) Removes the --aerosols option for setup_expt and replaces it with new apps for aerosols to match the idiom for other components. Currently, ATMA and S2SWA are supported. commit 65cdcce2f841f5e3e4926d4dab73fd5a8a97bd84 Author: Walter Kolczynski - NOAA <[email protected]> Date: Mon Jun 27 17:47:46 2022 -0400 Update component versions (#851) Updates the version of components except UFS and verify to the current tip of their respective develop branches. Verify is not yet updated because we are currently on a branch that hasn't been merged to develop yet in order to use the module/py environment fix. GSI will still need to be updated further before use after the resolution of NOAA-EMC/GSI/issues/348 Also updated the GSI and UPP build scripts to take in debug (`-d`), operations (`-o`), and verbose (`-v`) options and apply them as appropriate to the component build scripts. The ops flag for GSI still needs work, as I encountered issues using the [build_4nco_global.sh](https://github.com/NOAA-EMC/GSI/blob/develop/ush/build_4nco_global.sh) or [prune_4nco_global.sh](https://github.com/NOAA-EMC/GSI/blob/develop/ush/prune_4nco_global.sh) scripts. Also fixes a typo in the `parm/post` file list. Updates are in preparation for the [COM reorg](https://github.com/NOAA-EMC/global-workflow/issues/761) commit 2dc2af0e84f52864a719d71d3dbf14f6368f4c0f Author: Jessica Meixner <[email protected]> Date: Fri Jun 24 18:49:39 2022 +0000 Update caculation of restart based on if a wave IC exists (#875) Inspect and assert wave initial conditions exist during a RERUN. Take appropriate action. commit b41a36a10b2f949b0c005e48b978261b3d66eb12 Author: Rahul Mahajan <[email protected]> Date: Thu Jun 16 22:38:28 2022 -0400 update from dev_v16 utils.f90. See issue #713 (#868) commit a2b9f483c4aaad37e5d26362186b28a782c0541f Author: Barry Baker <[email protected]> Date: Tue Jun 14 23:51:47 2022 -0400 Update GOCART settings for p8/p81 (#818) Wet scavenging coefficients for GOCART are updated. Fixes a bug where when running atm-aerosol, aerosol settings were not properly read. Changes the location of aerosol emissions data on Hera now that Raffaele has moved to a new position. Dust inputs for the fengsha dust emission scheme are updated. These updates include a newer soil database (SOILGRIDSv2) and updates for the drag partition and threshold velocity. It also appropriately scales the emissions by modifying the alpha value found in the dust component configuration file. Fixes #814 Fixes #815 Fixes #816 Fixes #816 commit 027eab90e2cb94a1055f9bc54245e7d5979aca3b Author: Kate Friedman <[email protected]> Date: Fri Jun 10 09:10:24 2022 -0400 Retire VSDB (#848) Remove VSDB variables, script blocks, and scripts from global-workflow develop. Refs: #844 commit d6705e2564a698eeddf2424bd580482546658788 Author: Kate Friedman <[email protected]> Date: Fri Jun 10 09:05:36 2022 -0400 Add "atmos" COMPONENT subfolder to DMPDIR paths (develop) (#847) - add atmos to WAVICEFILE DMPDIR path in JGLOBAL_WAVE_PREP - add COMPONENT to all DMPDIR paths (COMPONENT=atmos already set) - add "atmos" to all DMPDIR paths in config.anal - add COMPONENT to COMIN_OBS default that uses DMPDIR in drive_makeprepbufr.sh - add COMPONENT to SOURCE_DIR default that uses DMPDIR in getdump.sh - add "atmos" to prep job dependency on updated.status.tm00.bufr_d in setup_workflow.py Refs: #802 commit 59604d60a787fc758380a1ef513601d6ffa97566 Author: Walter Kolczynski - NOAA <[email protected]> Date: Fri Jun 10 03:29:16 2022 -0400 Move remaining global post scripts over from UPP (#771) Several scripts currently located under NOAA-EMC/UPP are only used for global, so they have been moved within global-workflow so they can be managed by the global-workflow team. Scripts are just copied from the current tip of UPP develop, other than some changes to standardize style and indentation. Also coming over are four parm files that are used to produce GFS products. As a result, we are no longer linking the entire upp parm directory; instead we are creating individual links for the files we use that still reside in upp. Fixes #630 Fixes #769 commit d78c942a271e669b1fd5adf4f99af108c9f884fe Author: Jessica Meixner <[email protected]> Date: Tue Jun 7 14:56:26 2022 +0000 update readme for new linking procedure (#843) commit 3194f52d1625379e067fd16e84016d45ba5560fc Author: Walter Kolczynski - NOAA <[email protected]> Date: Tue Jun 7 01:35:15 2022 -0400 Consolidate post scripts to eliminate coupled mode of link script (#766) The two scripts that had modified versions for the coupled model have been joined with changes to the original scripts, eliminating the need for a special coupled mode for the link script. As part of this, those two scripts are no longer copied from UPP and are now part of the global-workflow repository. Fixes: #679 Fixes: #746 Refs: #270 commit d1d2606406aa2deb8d95f348b471770f4388777c Author: Jessica Meixner <[email protected]> Date: Mon Jun 6 04:49:38 2022 +0000 Updates for wave mesh cap (#831) Updates to work with the new WW3 mesh cap, including pointing to the new ufs-weather-model tag for p8c slong with associated namelist changes. There is a new setting in config.ww3, `waveMULTIGRID`, that controls whether WW3 uses generic shell (shel) or multigrid. The build script for WW3 pre/post has been updated to use the app to determine whether the regular switch file (for ATMW) or the meshcap version (other) is used. In light of this, `build_all.sh` now passes the app to WW3 pre/post as it does with the UFS build. A large section of the wave prep script that was a hold-over from running WW3 offline from the atmosphere dealing with pre-processing winds was removed. Another large section was moved out of prep and into a new `parsing_namelists_WW3.sh` script that is called during the forecast job (similar to those for some other components). The ability to set `esmf_logkind` for the UFS model is restored (defaults to ESMF_LOGKIND_MULTI). The jlog files were removed for the non-pdgen wave script and ush files. Resources for the coupled model are rebalanced. Fixes #736 commit 7173fa58f0da831ad181a3afdaf3c861afa49e49 Author: Rahul Mahajan <[email protected]> Date: Wed Jun 1 17:05:21 2022 -0400 Extend `rocoto.py` for handling offsets in data dependencies. (#835) Extend rocoto.py data_dep to handle offset to cyclestr in any number of instances. Remove hack in aerosol_init dependency generation. commit a9998af41cb8c2825f34745091a41ea400815d8d Author: Walter Kolczynski - NOAA <[email protected]> Date: Wed Jun 1 14:11:49 2022 -0400 Refactor checkout script (#809) The checkout script is refactored. First, the repetitive checkout code is abstracted into a function that is called for each component. Second, if the clone already exists, checkout will still checkout the requested commit. Third, a new option (-c) is added that will delete any existing clones a create a fresh clone. These last two options allow updating of versions without needing to manually delete directories (and remembering which are created by checkout) Additionally, a usage statement and code documentation are added. There is no change to the existing command-line options, only new options. No change is necessary by users (although the checkout order and print messages have changed). The new syntax is as follows: ``` checkout.sh [-c][-h][-m ufs_hash][-o] -c: Create a fresh clone (delete existing directories) -h: Print this help message and exit -m ufs_hash: Check out this UFS hash instead of the default -o: Check out operational-only code (GTG and WAFS). Only authorized users can check out GTG. ``` Fixes #808 commit 85bca2479420927d29a1a9db41b542568d527c13 Author: Jessica Meixner <[email protected]> Date: Wed Jun 1 15:05:07 2022 +0000 Update IC location for hera because climate moved from (#829) The location of the coupled ICs on Hera is changing, so need to update the path in the config. commit dbd9fa93ced07f39accf7ff4eec2859f0ed5d35f Author: ChunxiZhang-NOAA <[email protected]> Date: Mon May 30 21:50:56 2022 -0400 Updated SDFs and namelist settings for P8c (#795) Updates the model version in preparation for prototype 8c, along with commensurate setting updates. Some CCPP suites are removed from the UFS build as they are no longer available. Also updates the coupled initial conditions, and there is a simultaneous update to fixed orography files. Refs: #736 commit 05accc1c72b1311ae9689bef5e7a1291dc12a96a Author: RussTreadon-NOAA <[email protected]> Date: Mon May 23 17:36:51 2022 -0400 Correct incorrect increment prefix variable (#805) One instance of the increment prefix variable in `ush/forecast_postdet.sh` used `PREFIX_INC` instead of the `PREFIX_ATMINC` used elsewhere. Fixes #804 commit ac7cb1000d5c1d31babd36f4c3e17f643f30fd4d Author: Walter Kolczynski - NOAA <[email protected]> Date: Sun May 22 16:50:30 2022 -0400 Remove separate UPP clone (#803) Now that UPP is cloned within UFS, there is no need to create an independent clone in global-workflow. Scripts are updated to use the UPP within UFS. In addition to removing redundancy, this will avoid version mismatch issues when UFS and global-workflow checkout different versions. The upp directory is now linked from within UFS to sorc as upp.fd (instead of the gfs_post.fd the clone was placed in). Additionally, the build script is renamed to build_upp.sh. Fixes #770 Moots #797 commit 58728fb2c689c11335f4bf8ac371e18070c6fbd2 Author: Walter Kolczynski - NOAA <[email protected]> Date: Fri May 20 10:14:58 2022 -0400 Fix build script options (#801) There was an issue where if build_all.sh was called with only options that are not used by partial_build.sh, partial_build.sh would see those options because $@ was not overwritten. The script have been updated to consume those options so they are no longer present if $@ isn't overwritten in the new script call. Also fixed the getopts statement in partial_build.sh so we handle errors instead of bash (bash would report the wrong script if the script is sourced) Fixes #800 commit fa12db279cf829b861d08c06e3e3534a335e9fd7 Author: Walter Kolczynski - NOAA <[email protected]> Date: Wed May 18 01:04:32 2022 -0400 Refactor some build scripts (#794) Refactors the build_ufs script to allow the build of any UFS app to support future expansion of global-workflow capability. The default should be sufficient for most users, as S2SWA can be used for ATM, ATMA, S2S, and S2SW as well. The new format of the command is now: ``` build_ufs.sh [-a UFS_app][-v] -a UFS_app: Specify the UFS application to build. The default if none is provided is S2SWA -v: Turn on verbose mode (BUILD_VERBOSE) ``` build_all.sh is similarly refactored to include the same options. Also, a new `-c build_config` option is added to specify an alternative list of programs to build. ``` build_all.sh [-a UFS_app][-c build_config][-h][-v] -a UFS_app: Build a specific UFS app instead of the default -c build_config: Selectively build based on the provided config instead of the default config -h: Print usage message and exit -v: Run all scripts in verbose mode ``` partial_build.sh is also updated to take the new `-c` option to specify a build config. ``` partial_build.sh [-c config_file][-h][-v] -c config_file: Selectively build based on the provided config. The default if none is specified is gfs_build.cfg -h: Print usage message and exit -v: Run in verbose mode ``` In addition to the above, build_all and partial_build had their indentation redone and their usage/help statement updated/added. Also, the build configuration file was renamed to from fv3gfs_build.cfg to gfs_build.cfg. Fixes #745 Fixes #751 commit 2abee02765a3bae48f2b4e6a900400d6731eda06 Author: Walter Kolczynski - NOAA <[email protected]> Date: Wed May 18 01:02:57 2022 -0400 Add continuous aerosols support (#693) Adds support for continuous aerosols when running with GOCART (using the forecast aerosol tracers from the previous cycle as initial tracer fields). This adds a new task to the workflow mesh in forecast-only mode. The new task does not run in the first cycle, though it will appear in rocotostat/rocotoviewer. In subsequent cycles, the task will launch as soon as the needed restart files from the previous cycle are available and gfs_init has completed. There is currently no mechanism to have aerosol_init run for the first cycle (for instance, continuing from a previous experiment); users would have to run the scripts off-line to add aerosols to the initial conditions. To support the introduction of the necessary python scripts, a new python environment is added to provide necessary libraries. This virtual environment is temporarily being housed in personal space, but an issue has been opened with hpc-stack to add it to the standard stack installations. The introduction of miniconda also caused the conversion of all of the rocoto entry scripts (the ones rocoto calls to run the job) to bash. Most of them had been in korne. To make sure the needed restart files are produced, config.fcst now makes sure the forecast cadence is included in the list of restart times. This may need more testing to ensure it works properly with other restart lists. As part of this, STEP_GFS was updated to properly determine the step from gfs_cyc instead of being a set value. Closes #366 Fixes #516 Fixes #630 commit 69b39ee5af8cfbb5cbf5cf62c92d01958b697652 Author: Kate Friedman <[email protected]> Date: Thu May 12 12:18:50 2022 -0400 Add --init to GSI submodule command (#781) Needed to obtain libsrc submodule during checkout and allows the GSI to build correctly since this GSI hash still needs the libsrc submodule during build. Refs: #780 commit b09f92c21028ea37e4663ce4c304935a2dc45b33 Author: lgannoaa <[email protected]> Date: Thu May 12 08:20:16 2022 -0400 Update field_table to be consistent with UFS (#778) Changes the fixed surface value of hydrometeor number concentrations and sub-grid TKE to 0. Also renames the field table. Both changes are consistent with changes made in UFS. Fixes #676 commit d72a62d6c0ab2e9f53ca3e6133148f29982f9d32 Author: lgannoaa <[email protected]> Date: Thu May 12 08:15:23 2022 -0400 Remove special MOD_PATH from build scripts (#775) We always use pre-installed libraries and special MOD_PATHs are no longer necessary, so these are removed from build scripts. MOD_PATH. This also moots MOD_PATHs that were hard-coded to Hera locations in some scripts. The MOD_PATH in build_ufs.sh remains as it is still needed and is a relative path into the UFS repo. Fixes #298 commit 2adf123814a2f29e9cca54a11fbb2807b3f6cf1b Author: Kate Friedman <[email protected]> Date: Wed May 4 12:31:20 2022 -0400 Revert g2tmpl back to 1.10.0 (#773) Resolves bug with mismatch between hpc-ips and g2tmpl versions on the WCOSS-Dells. Also revert back to 1.10.0 on Hera and Orion to be consistent. Refs: #772 commit b90f4e99bc42f9a8afbeaa9479e674fb75e096ea Author: lgannoaa <[email protected]> Date: Tue May 3 09:45:19 2022 -0400 Remove git submodule update for upp checkout (#768) UPP no longer has a CMakeModules submodule, so the submodule update is removed from the checkout script. Fixes: #767 commit ad2b14d9b1ed0fe89fe59bfb96cc03630e8457de Author: lgannoaa <[email protected]> Date: Tue May 3 09:44:57 2022 -0400 Remove duplicate file linking for Thompson MP (#765) Files for Thompson MP were being copied twice by the link script: once by checking imp_physics, then again checking the CCPP Suite. This is now reduced to one check. Fixes: #675 commit a9fc0033b908aefb42d5b2d191c65af5cb7660c4 Author: Kate Friedman <[email protected]> Date: Thu Apr 28 15:17:22 2022 -0400 Remove unneeded/outdated modulefiles (#762) Remove unneeded modulefiles for WCOSS-Cray and GSI monitoring. commit 3333dee304b6b53d3d716c60d0c87ad06d629c1c Author: lgannoaa <[email protected]> Date: Thu Apr 28 14:35:57 2022 -0400 Remove prepbufr_pre-qc from archive lists (#753) The prepbuft_pre-qc file does not need to be archived, so it no longer is. Fixes #361 commit 88b1b1591d3201709f5f981908aaf7890d3021bd Author: Walter Kolczynski - NOAA <[email protected]> Date: Tue Apr 26 20:40:41 2022 -0400 Convert module files from Tcl to Lua (#756) Converts all module files from Tcl format to Lua. As a side effect, this change enforces using the files as modules rather than improperly sourcing them instead of loading. Fixes #670 commit ca80aeb86cb221263611605ba23858448bce0bad Author: lgannoaa <[email protected]> Date: Mon Apr 25 06:23:06 2022 -0400 Ensure hourly files when GLDAS is on (#740) GLDAS requires hourly output, so make sure FHOUT is 1 when GLDAS is on. Fixes #695 commit 9d00239088651b73a9667b70bd6247b34e35046f Author: lgannoaa <[email protected]> Date: Tue Apr 19 21:22:22 2022 -0400 Update cyclone tracker to handle return code correctly #642 Updates the cyclone tracker call to correctly exit with an error code if the tracker script reports one. Fixes #507 commit 33d3dd14d6df8109274dde4606bb7a50e4638fa2 Author: Jessica Meixner <[email protected]> Date: Tue Apr 19 21:18:56 2022 -0400 Update ww3 pre and post exe build to use cmake (#731) Updates the WW3 pre/post build system to use cmake. Fixes #688 commit 39facec1e03a404f84fd05b8739cd8e4010a0779 Author: Kate Friedman <[email protected]> Date: Tue Apr 12 11:36:30 2022 -0400 Add WCOSS2 GFSv16.2 operational def files into develop (#717) Add WCOSS2 operational GFS def files. Refs: #399 commit 0a85223e48a1a8dcced163791d8e7ae5a42a4fab Author: Xianwu Xue - NOAA <[email protected]> Date: Tue Apr 12 11:34:17 2022 -0400 Initialize "err" to avoid potential task fail (#715) If not initialize err, and change "set -x" to "set -xue", then the waveinit task will fail with error message: "line 234: err: unbound variable" On branch bugfix/issue_714 Changes to be committed: modified: scripts/exgfs_wave_init.sh Refs: #714 commit fc6e1c3316397432d2da218b3c4fc0ea1fe70644 Author: Rahul Mahajan <[email protected]> Date: Tue Apr 5 11:07:21 2022 -0400 config.base should not exist in the repository unless it is in ops. template only exists in the repo, the experiment directory should not contain the templated config.base.emc.dyn (#707) commit cabf437044cb937caf7a7830068fd9e413c5921f Author: Jessica Meixner <[email protected]> Date: Wed Mar 30 21:28:50 2022 -0400 Update model and settings for Prototype P8b (#681) Updates model and setting defaults for prototype 8b. The UFS version is updated to a recent version of UFS (tag Prototype-P8b). As part of this, the print_esmf option is removed from the model configure file and replaced with a new setting in nems.configure. We have not made this option user-configurable at this point, but that may come in the future. The default CCPP suites have been updated for all modes to either FV3_GFS_v17_p8 or FV3_GFS_v17_coupled_p8. This involves changing the microphysics to Thompson and changes the gravity wave drag version (knob_ugwp_version) to 0. This change breaks cycled mode for the time being. A future PR will revert the defaults to ones that allow cycled to run along with a more robust system for changing settings. Tiled fix files are now used for all modes instead of just coupled. Cellular automata now defaults on ON. There are also other miscellaneous settings that have had their defaults changed. Fixes #641, #687 commit e3f707cb9c05b45e9d4019679e406f54008279a5 Author: XuLi-NOAA <[email protected]> Date: Thu Mar 24 05:43:31 2022 -0400 Modify eobs for EnKF thinning In the Hybrid EnKF GSI, the thinning box size, dmesh, is different for the full resolution analysis and EnKF respectively. There are set in GSI scripts for the full resolution analysis, and reset in global workflow in config.eobs. Only two thinning box sizes, dmesh(1) & dmesh(2), are defined in GSI scripts before, recently, two more, dmesh(3) & dmesh(4) are added. Accordingly, these two need to be added in config.eobs as well. Specifically, add dmesh(3)=225.0,demsh(4)=100.0 to config.eobs. Fixes #595 commit c32eea459af3177cee28e151b43fe5e12bdfc412 Author: Walter Kolczynski - NOAA <[email protected]> Date: Tue Mar 22 11:18:10 2022 -0400 Update ocean resolution for C48 (#651) The ocean resolution for C48 was set as 1-deg, but the fractional grid fix files available at C48 are for a 4-deg ocean grid. The ocean resolution is now set to this value when FV3 is C48. Also commented out a currently redundant block setting OCNRES in config.ocn. The one in ecfs has to stay as it recalculates the ocean resolution based on the EnKF resolution. Fixes #650 commit d758e8b227fca7b5a3320adc43c29ba492c3bfe9 Author: Walter Kolczynski - NOAA <[email protected]> Date: Thu Mar 10 05:54:49 2022 -0500 Add single forecast GOCART support (#659) Adds support for running single coupled free forecasts with GOCART aerosols. Support for continuous aerosol fields from cycle to cycle will be added in a future PR. To turn on aerosols, there is a new --aerosols option for setup_expt.py. The option takes no arguments. When it is used, aerosols will be turned on by setting DO_AERO="YES" in config.base. GOCART output files are placed in the chem directory in COM. There is a new tarball archived, chem.tar, that contains the GOCART output. Partially addresses #516 Fixes #403 commit a0e23e254c7c881b20d66c1c53cd36de509e6d69 Author: Walter Kolczynski - NOAA <[email protected]> Date: Tue Mar 1 10:50:39 2022 -0500 Specify memory for init job (#669) The init job has been failing on HPC using slurm due to out-of-memory errors. Now the init job specifies the amount of memory needed. Fixes #631 commit 6874e8939211fdc07143450bfd1b6a2863172e10 Author: arun chawla <[email protected]> Date: Fri Feb 25 16:39:45 2022 -0500 Cleanup of utils directory (#660) Removes all of the old, unused GSM scripts and code from the utils directory. Those codes that might still be used have been moved to a new GSM-utils repo. Fixes #618 commit e3d64abc9c02aecb9d5d38755f6524bf9e277e66 Author: Walter Kolczynski - NOAA <[email protected]> Date: Thu Feb 24 22:49:45 2022 -0500 Fix bug with partition_batch on WCOSS (#668) partition_batch was not being defined for WCOSS machines, but was being used in a substitution for config.base. Fixes #667 commit 9d75d8d78037c7a74d1a9c61a88d9d6a7e9b3be9 Author: Walter Kolczynski - NOAA <[email protected]> Date: Mon Feb 21 02:10:00 2022 -0500 Split output filetype variable into atm and sfc (#602) The determination of the FV3 output filetype was a bit unwieldy as it contained two different settings (one for the atmosphere and one for the surface) that were not necessarily changed at the same time. They were also being determined in a different location than other settings based on the model resolution. Now the old OUTPUT_FILETYPES variable has been split into two different variables, OUTPUT_FILETYPES_ATM and OUTPUT_FILETYPES_SFC. The determi- nation was also moved into the config.fv3 file, where other resolution- dependent computational settings are set. This has resulted in some functional change on WCOSS Dell, as the EnKF was using different chunking settings and never used parallel output for the surface likely because wasn't being run at a low enough resolu- tion to consider it. However, there is no reason to believe the two forecast modes should have different chunk or output settings. So, I've used the EnKF chunking settings and the free forecast switchover point for the surface output mode. The new filetype settings are now also divorced from the OUTPUT_FILE setting. However, that setting will soon be unnecessary as nemsio is removed from the code as an option (see Issue #601). Fixes #600 Refs #601 commit cb8b5adf16200e7b01b8236a960efce5b6d8ce5d Author: Walter Kolczynski - NOAA <[email protected]> Date: Thu Feb 17 15:55:24 2022 -0500 Correct MODE comparisons for forecast only (#658) When the setup_expt scripts were combined, the forecast mode became a mandatory argument. The value of this option is then directly used for the MODE variable, but the argument name (forecast-only) does not match what was previously used for MODE in the forecast-only script (free) and some scripts were still testing against the old value instead of the new one. Those comparisons have now been updated to use the new MODE name. Fixes #657 commit f8867d3f0b1f3b5d238dced412996c56e30d31a1 Author: David Huber <[email protected]> Date: Thu Feb 10 20:23:54 2022 -0500 Add LOCALARCH option (#628) Adds the option to archive output locally during archive jobs. This is intended for systems that do not have access to HPSS (e.g. Orion and soon S4), but can be used on any machine. To enable, the LOCALARCH setting in config.base should be set to "YES" (HPSSARCH must be "NO"). When enabled, the tarballs normally created on HPSS will instead be created in the local directory specified by $ATARDIR. Defaults have been added to setup_expt.py to point to a local ATARDIR and LOCALARCH (currently =NO). Fixes #624. commit 2950c7b97f99341caa738526138022987f665627 Author: Jessica Meixner <[email protected]> Date: Thu Feb 10 18:07:43 2022 -0500 Turn on fractional grid by default for uncoupled forecasts (#638) Updates input.nml so that there is more consistency between the cpl and standalone atm input.nml. In particular this addresses the fact that frac_grid was only being set if cpl was true. Fixes #571 commit 64b1c1e5ce37fba48dd717bd11356a6f57d9def4 Author: David Huber <[email protected]> Date: Wed Feb 9 17:02:39 2022 -0500 Specify warm start as .true. or .false. (#644) Corrects the assignment of EXP_WARM_START to either .true. or .false. depending on the value passed to setup_expt.py via `--start`. Fixes #643 commit e537f0cecabc8e16e26b14e606558de906b19e3f Author: David Huber <[email protected]> Date: Tue Feb 8 23:33:21 2022 -0500 Archive TC tracking logs if produced (#627) The archive job was failing if there were no tropical cyclone files (such as when there are no cyclones). This adds a check for the TC tracking logs in case they are not produced to prevent the gfsarch job from failing on cycles when there were no TCs to track. Fixes #625. commit 32f93becde5ffa07c162252b95417845f2ab5159 Author: David Huber <[email protected]> Date: Tue Feb 8 20:59:37 2022 -0500 Fix separate threading for GFS and GDAS forecasts. (#621) Fix separate threading options for GDAS and GFS forecasts (#610). This is performed by keeping nth_fcst_gfs separate from nth_fcst and declaring the new variable npe_node_fcst_gfs. Fixes #610 commit 9bb09a92c55d4534feca5d521fbbd1c664730317 Author: David Huber <[email protected]> Date: Tue Feb 8 20:58:05 2022 -0500 Updated the RadMon and OznMon links. #596 (#597) commit 97ebc4d4e6483b135468d85cd9ed974f88955914 Author: Rahul Mahajan <[email protected]> Date: Thu Feb 3 02:56:34 2022 -0500 Unify `setup_expt.py` and `setup_expt_fcstonly.py` (#537) `setup_expt.py` and `setup_expt_fcstonly.py` are unified under the former name. The user is now required to provide a `mode` as the first positional argument to `setup.py`. Valid options are `cycled` and `forecast-only`. ``` ❯ python3 setup_expt.py -h usage: setup_expt.py [-h] {cycled,forecast-only} ... Setup files and directories to start a GFS parallel. Create EXPDIR, copy config files. Create COMROT experiment directory structure, link initial condition files from $ICSDIR to $COMROT positional arguments: {cycled,forecast-only} cycled arguments for cycled mode forecast-only arguments for forecast-only mode optional arguments: -h, --help show this help message and exit ``` Upon choosing one of these modes, options specific to the mode can be realized as follows for the `forecast-only` and `cycled` modes respectively. ``` ❯ python3 setup_expt.py forecast-only -h feature/unify-setups usage: setup_expt.py forecast-only [-h] [--pslot PSLOT] [--resdet RESDET] [--comrot COMROT] [--expdir EXPDIR] --idate IDATE --edate EDATE [--icsdir ICSDIR] [--configdir CONFIGDIR] [--cdump CDUMP] [--gfs_cyc {0,1,2,4}] [--start {warm,cold}] [--app {ATM,ATMW,S2S,S2SW}] optional arguments: -h, --help show this help message and exit --pslot PSLOT parallel experiment name --resdet RESDET resolution of the deterministic model forecast --comrot COMROT full path to COMROT --expdir EXPDIR full path to EXPDIR --idate IDATE starting date of experiment, initial conditions must exist! --edate EDATE end date experiment --icsdir ICSDIR full path to initial condition directory --configdir CONFIGDIR full path to directory containing the config files --cdump CDUMP CDUMP to start the experiment --gfs_cyc {0,1,2,4} GFS cycles to run --start {warm,cold} restart mode: warm or cold --app {ATM,ATMW,S2S,S2SW} UFS application ``` ``` ❯ python3 setup_expt.py cycled -h feature/unify-setups usage: setup_expt.py cycled [-h] [--pslot PSLOT] [--resdet RESDET] [--comrot COMROT] [--expdir EXPDIR] --idate IDATE --edate EDATE [--icsdir ICSDIR] [--configdir CONFIGDIR] [--cdump CDUMP] [--gfs_cyc {0,1,2,4}] [--start {warm,cold}] [--resens RESENS] [--nens NENS] [--app {ATM,ATMW}] optional arguments: -h, --help show this help message and exit --pslot PSLOT parallel experiment name --resdet RESDET resolution of the deterministic model forecast --comrot COMROT full path to COMROT --expdir EXPDIR full path to EXPDIR --idate IDATE starting date of experiment, initial conditions must exist! --edate EDATE end date experiment --icsdir ICSDIR full path to initial condition directory --configdir CONFIGDIR full path to directory containing the config files --cdump CDUMP CDUMP to start the experiment --gfs_cyc {0,1,2,4} GFS cycles to run --start {warm,cold} restart mode: warm or cold --resens RESENS resolution of the ensemble model forecast --nens NENS number of ensemble members --app {ATM,ATMW} UFS application ``` Note, `cycled` mode presents some extra options e.g. `nens` as well as a reduced list of the UFS weather model applications. The functionality of `--icsdir` had been broken for cycled and was hard-coded in free forecast. The functionality has now been repaired for cycled. If you provide one, $COMROT will be populated with appropriate links. If none is specified, no links will be created in $COMROT. In coupled mode free-forecast, ICs are copied *to* icsdir from the central maintained prototype location. Coupled users will now need to set this explicitly. For non-coupled forecast-only, this setting currently does nothing. The default value for `--configdir` has been updated to the appropriate location in the workflow. Most users will no longer need to set it unless they want to point to a different config source. The default values for `--comrot` and `--expdir` are updated from None to $HOME to facilitate offline testing of workflow creation. There are some irrelevant sections such as `gfs_cyc` in forecast-only that is still preserved in this PR. It will be cleaned up in subsequent PR's. Another unnecessary complication is the argument of `--start`. The logic presented here would ideally be selected at runtime based on the type of IC's populated in comrot. It is left unchanged. commit d7319f19aceca6ae6d7ce9b06c6eb731832d1de1 Author: Walter Kolczynski - NOAA <[email protected]> Date: Wed Feb 2 11:19:43 2022 -0500 Stop archiving gfsarch.log as it is being written (#581) The gfs archive job was failing because it was attempting to archive its own log file into gfsa.tar while it was being written. To exclude that file pattern, bash extended globbing is turned on, which allows the use of a negating group. Fixes: #558 commit 1b300dbf98eccdf03117b3795a2d8da3310a6126 Author: Walter Kolczynski - NOAA <[email protected]> Date: Wed Feb 2 11:18:55 2022 -0500 Fix build on non-WCOSS2 machines (#612) The UFS_UTILS and GLDAS versions are updated to correct build problems on development machines. Each had been using a beta version of ESMF that was removed from the hpc-stack installation without warning. Additionally, GLDAS had introduced bugs into their build scripts during the WCOSS2 port. These issues are now all corrected in the new versions. Also updates the UFS_UTILS repository to its new location under UFS instead of EMC. Fixes #476, #561 commit d3028b9d8268028226f9c27800fcd6655e9e4bb8 Author: David Huber <[email protected]> Date: Wed Jan 19 14:29:51 2022 -0500 Fix setting of OUTPUT_FILETYPES (#589) The setting of OUTPUT_FILETYPES was being overwritten by the FV3 model configure parsing script, so the settings determined in the config.fcst file was being ignored. Now that block is removed and config.fcst is updated to make sure it is set for any machine. Fixes #588 commit 13421b01a07e5d1cca32ee7579a4094d8209b072 Author: Rahul Mahajan <[email protected]> Date: Wed Jan 19 12:16:29 2022 -0500 Update PR template commit 322a61a61238e8486cb42d7d26282b2728d0c32f Author: Rahul Mahajan <[email protected]> Date: Wed Jan 19 12:13:33 2022 -0500 Move PR template MD file. Update issue templates commit 7a52fc8d8bbfc5896b7d03004d5189b2a6b24013 Author: Rahul Mahajan <[email protected]> Date: Wed Jan 19 11:32:51 2022 -0500 rename pull_request_template.md commit 88ec66eb834e9a78c94feae4f37f774c7807aa3c Author: Rahul Mahajan <[email protected]> Date: Wed Jan 19 10:34:54 2022 -0500 make changes to the templates commit 66d84e21ad7ae3fafb4ad5097faf86dfa1b99b60 Author: Walter Kolczynski - NOAA <[email protected]> Date: Wed Jan 19 10:08:45 2022 -0500 Fix lfrac entry in diag table (#570) Land fraction was listed in the wrong module, keeping it from being written to output. Refs: #562 commit e2657adbdadaac7089591390428324c6aec260a9 Author: Rahul Mahajan <[email protected]> Date: Tue Jan 18 17:04:04 2022 -0500 Update NCO_bug_report.md commit a9d6851a0c3b6051cb1c7c7ec482fc50d762bef4 Author: Rahul Mahajan <[email protected]> Date: Tue Jan 18 16:59:18 2022 -0500 Update bug report issue template commit 2fab8b4213645b79b3fea8127e7d4ab21044188e Author: Rahul Mahajan <[email protected]> Date: Tue Jan 18 15:13:53 2022 -0500 Add templates for Github (#560) Adds GitHub templates for new issues and PRs to standardize and make sure all the needed information is included. commit 03be05309b184421c473f1b43082b766b114fd46 Author: Walter Kolczynski - NOAA <[email protected]> Date: Tue Jan 18 10:02:02 2022 -0500 Fix toggle for building workflow_utils (#580) The fv3gfs_build.cfg did not have a space between the periods and the setting for workflow_utils, which means the setting was ignored and the default of yes was always used. Fixes: #577 commit aadd3bae3d4fdc7827a93ab51b336a7f6b2fdb02 Author: Walter Kolczynski - NOAA <[email protected]> Date: Tue Jan 18 10:01:24 2022 -0500 Remove redundant toggle for gldas build (#579) The build cfg files controlling which components are built and the partial_build.sh script all have two instances trying to set the value for gldas. This means one of the settings did nothing when changed. Fixes: #578 commit 86d4b305a070c080dcfd44a3f9a31ca2280759fa Author: Walter Kolczynski - NOAA <[email protected]> Date: Fri Jan 14 01:05:59 2022 -0500 Update config missed in last GSI update (#569) When the GSI version was updated in PR #530, updates to the config.anal file were mistakenly omitted. That file is now updated following ops (PR #451, #489). Refs: PR #530 commit 33308ea3b477db17a5db455a4c4887e3d5cbc711 Author: Jessica Meixner <[email protected]> Date: Thu Jan 6 00:44:43 2022 -0500 Updates for P8a (#538) Updates ufs-weather-model to the 2021 Dec 23 commit and the matching UPP hash. Coupled settings are updated to run the P8a mini prototype. Updates include: …
- Comment out lines in build_all.sh for invoking build.ver. - Will uncomment when we are ready to force build versions down into components. Likely after move to EPIC stack complete. Refs NOAA-EMC#671
- Using wgrib2 v2.0.8 on R&Ds, will also now use on WCOSS2. Refs NOAA-EMC#671 NOAA-EMC#1625
- Will update to intel 2022 with EPIC stack changes. Refs NOAA-EMC#671
- The v1.2.3 grib_util isn't available on Orion so use v1.2.2 Refs NOAA-EMC#671
@aerorahul @WalterKolczynski-NOAA Question about g2tmpl versions....on WCOSS2 we're currently using g2tmpl Any objections to moving to I ran with Reminder, the first round PR for introducing version files into |
Fine with me |
- Align version with runtime version Refs NOAA-EMC#671
- Remove anaconda_ver (may add back in for build support?) - Add cdo_ver and grib_util_ver Refs NOAA-EMC#671
Tests run on Hera, Orion, and WCOSS2 using Heradevelop:
Test using
Oriondevelop:
Test using
WCOSS2develop:
Test using
Unable to test on S4. Have not tested on Jet. Review of changes to those machine modulefiles shows that versions should be left the same in this work. |
- Rename machine-specific version files to run.MACHINE.ver - Rename build.ver to build.wcoss2.ver ahead of making new build.MACHINE.ver files Refs NOAA-EMC#671
- Update sorc/link_workflow.sh to copy the machine-specific copy of build.MACHINE.ver and run.MACHINE.ver into the versions folder as build.ver and run.ver - Add the copied build.ver and run.ver to .gitignore - Remove sourcing of MACHINE.ver in ush/load_fv3gfs_modules.sh; now just source run.ver copied by sorc/link_workflow.sh Refs NOAA-EMC#671
- Remove default when fcst and efcs jobs return to running ush/load_fv3gfs_modules.sh and thus sourcing run.ver. Refs NOAA-EMC#671
- Change COMINsyn to use "v16.3" for path on WCOSS2 in workflow/hosts/wcoss2.yaml. - Need to update later to use compath.py instead of hardcoding. Refs NOAA-EMC#671
Introduces the use of version files in the `develop` branch. This initial introduction will use version files for runtime only. The ability to force version files for build is included but commented out for now. A follow-up PR will turn on build version forcing when ready. Changes include: 1. Update `module_base.*.lua` modulefiles to use module version variables and remove hardcoded versions. 2. Introduce `build.<platform>.ver`, `run.<platform>.ver` files in the `/versions` folder. 3. Update `sorc/link_workflow.sh` to create `build.ver` and `run.ver` under `/versions` folder based on `build.<platform>.ver` and `run.<platform>.ver`. 4. Introduce sourcing of `run.ver` in `ush/load_fv3gfs_modules.sh` 5. Introduce sourcing of `build.ver` in `sorc/build_all.sh` but commented out for now. Components will continue setting their module versions for the time being. 6. Update `HOMEens_tracker` in `config.vrfy` to use `tracker_ver` from version files. 7. Replace obsproc version in `HOMEobsproc` setting in `parm/config/gfs/config.base.emc.dyn` to use `obsproc_run_ver` from version files. Resolves #671 Resolves #1625
Description
Introduce versions (
.ver
) files in a new/versions
folder and update modulefiles to use module version variables when loading modules. This is related to work that occurred for the operations branch during the WCOSS2 port. See issues #639 and #398.Will also take care of issue #1625 in the initial PR for this.
Requirements
Acceptance Criteria (Definition of Done)
/versions
folder exists and contains.ver
filesbuild.ver
andrun.ver
exist and support loading correct module versions at buildtime/runtime$target.ver
files for supported tier-1 platforms created and override need module versions on those platformsenv/gfs.ver
)Dependencies
Other TO-DOs
develop
.obsproc_ver
andobsproc_run_ver
fromdevelop
(v1.2.0).The text was updated successfully, but these errors were encountered: