Skip to content

Commit

Permalink
Merge branch 'NOAA-EMC:develop' into feature/postamble-cmd
Browse files Browse the repository at this point in the history
  • Loading branch information
KateFriedman-NOAA authored May 11, 2023
2 parents 0f72d05 + 8544015 commit 5f37371
Show file tree
Hide file tree
Showing 206 changed files with 3,712 additions and 4,018 deletions.
21 changes: 21 additions & 0 deletions .readthedocs.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# .readthedocs.yaml
# Read the Docs configuration file
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details

# Required
version: 2

# Set the version of Python and other tools you might need
build:
os: ubuntu-22.04
tools:
python: "3.11"

# Build documentation in the docs/ directory with Sphinx
sphinx:
configuration: docs/source/conf.py

python:
install:
- requirements: docs/requirements.txt
system_packages: true
11 changes: 2 additions & 9 deletions Externals.cfg
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# External sub-modules of global-workflow

[UFS]
tag = c22aaad
tag = 2247060
local_path = sorc/ufs_model.fd
repo_url = https://github.com/ufs-community/ufs-weather-model.git
protocol = git
Expand All @@ -15,7 +15,7 @@ protocol = git
required = True

[UFS-Utils]
hash = 5b67e4d
hash = 72a0471
local_path = sorc/ufs_utils.fd
repo_url = https://github.com/ufs-community/UFS_UTILS.git
protocol = git
Expand Down Expand Up @@ -56,13 +56,6 @@ repo_url = https://github.com/NOAA-EMC/GDASApp.git
protocol = git
required = False

[GLDAS]
tag = fd8ba62
local_path = sorc/gldas.fd
repo_url = https://github.com/NOAA-EMC/GLDAS.git
protocol = git
required = False

[EMC-gfs_wafs]
hash = 014a0b8
local_path = sorc/gfs_wafs.fd
Expand Down
15 changes: 7 additions & 8 deletions docs/source/components.rst
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
###########################
Global Workflow Components
Global Workflow Components
###########################

The global-workflow is a combination of several components working together to prepare, analyze, produce, and post-process forecast data.
Expand All @@ -13,20 +13,19 @@ The major components of the system are:
* Post-processing
* Verification

The Global Workflow repository contains the workflow and script layers. After running the checkout script, the code and additional offline scripts for the analysis, forecast, and post-processing components will be present. Any non-workflow component is known as a sub-module. All of the sub-modules of the system reside in their respective repositories on GitHub. The global-workflow sub-modules are obtained by running the checkout script found under the /sorc folder.
The Global Workflow repository contains the workflow and script layers. After running the checkout script, the code and additional offline scripts for the analysis, forecast, and post-processing components will be present. Any non-workflow component is known as a sub-module. All of the sub-modules of the system reside in their respective repositories on GitHub. The global-workflow sub-modules are obtained by running the checkout script found under the /sorc folder.

======================
Component repositories
======================

Components checked out via sorc/checkout.sh:

* **GFS UTILS** (https://github.com/ufs-community/gfs_utils): Utility codes needed by Global Workflow to run the GFS configuration
* **UFS-Weather-Model** (https://github.com/ufs-community/ufs-weather-model): This is the core model used by the Global-Workflow to provide forecasts. The UFS-weather-model repository is an umbrella repository consisting of cooupled component earth systeme that are all checked out when we check out the code at the top level of the repoitory
* **GFS UTILS** (https://github.com/ufs-community/gfs_utils): Utility codes needed by Global Workflow to run the GFS configuration
* **UFS-Weather-Model** (https://github.com/ufs-community/ufs-weather-model): This is the core model used by the Global-Workflow to provide forecasts. The UFS-weather-model repository is an umbrella repository consisting of cooupled component earth systeme that are all checked out when we check out the code at the top level of the repoitory
* **GSI** (https://github.com/NOAA-EMC/GSI): This is the core code base for atmospheric Data Assimilation
* **GSI UTILS** (https://github.com/NOAA-EMC/GSI-Utils): Utility codes needed by GSI to create analysis
* **GSI Monitor** (https://github.com/NOAA-EMC/GSI-Monitor): These tools monitor the GSI package's data assimilation, detecting and reporting missing data sources, low observation counts, and high penalty values
* **GLDAS** (https://github.com/NOAA-EMC/GLDAS): Code base for Land Data Assimiation
* **GSI UTILS** (https://github.com/NOAA-EMC/GSI-Utils): Utility codes needed by GSI to create analysis
* **GSI Monitor** (https://github.com/NOAA-EMC/GSI-Monitor): These tools monitor the GSI package's data assimilation, detecting and reporting missing data sources, low observation counts, and high penalty values
* **GDAS** (https://github.com/NOAA-EMC/GDASApp): Jedi based Data Assimilation system. This system is currently being developed for marine Data Assimilation and in time will replace GSI for atmospheric data assimilation as well
* **UFS UTILS** (https://github.com/ufs-community/UFS_UTILS): Utility codes needed for UFS-weather-model
* **Verif global** (https://github.com/NOAA-EMC/EMC_verif-global): Verification package to evaluate GFS parallels. It uses MET and METplus. At this moment the verification package is limited to providing atmospheric metrics only
Expand All @@ -43,7 +42,7 @@ External dependencies
Libraries
^^^^^^^^^

All the libraries that are needed to run the end to end Global Workflow are built using a package manager. Currently these are served via HPC-STACK but will soon be available via SPACK-STACK. These libraries are already available on supported NOAA HPC platforms
All the libraries that are needed to run the end to end Global Workflow are built using a package manager. Currently these are served via HPC-STACK but will soon be available via SPACK-STACK. These libraries are already available on supported NOAA HPC platforms

Find information on official installations of HPC-STACK here:

Expand Down
8 changes: 1 addition & 7 deletions docs/source/configure.rst
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ The global-workflow configs contain switches that change how the system runs. Ma
| APP | Model application | ATM | YES | See case block in config.base for options |
+----------------+------------------------------+---------------+-------------+---------------------------------------------------+
| DOIAU | Enable 4DIAU for control | YES | NO | Turned off for cold-start first half cycle |
| | with 3 increments | | | |
| | with 3 increments | | | |
+----------------+------------------------------+---------------+-------------+---------------------------------------------------+
| DOHYBVAR | Run EnKF | YES | YES | Don't recommend turning off |
+----------------+------------------------------+---------------+-------------+---------------------------------------------------+
Expand All @@ -26,9 +26,6 @@ The global-workflow configs contain switches that change how the system runs. Ma
| DO_GEMPAK | Run job to produce GEMPAK | NO | YES | downstream processing, ops only |
| | products | | | |
+----------------+------------------------------+---------------+-------------+---------------------------------------------------+
| DO_GLDAS | Run GLDAS to spin up land | YES | YES | Spins up for 84hrs if sflux files not available |
| | ICs | | | |
+----------------+------------------------------+---------------+-------------+---------------------------------------------------+
| DO_VRFY | Run vrfy job | NO | YES | Whether to include vrfy job (GSI monitoring, |
| | | | | tracker, VSDB, fit2obs) |
+----------------+------------------------------+---------------+-------------+---------------------------------------------------+
Expand All @@ -48,9 +45,6 @@ The global-workflow configs contain switches that change how the system runs. Ma
| QUILTING | Use I/O quilting | .true. | NO | If .true. choose OUTPUT_GRID as cubed_sphere_grid |
| | | | | in netcdf or gaussian_grid |
+----------------+------------------------------+---------------+-------------+---------------------------------------------------+
| RETRO | Use retrospective parallel | NO | NO | Default of NO will tell getic job to pull from |
| | for ICs | | | production tapes. |
+----------------+------------------------------+---------------+-------------+---------------------------------------------------+
| WAFSF | Run jobs to produce WAFS | NO | YES | downstream processing, ops only |
| | products | | | |
+----------------+------------------------------+---------------+-------------+---------------------------------------------------+
Expand Down
14 changes: 7 additions & 7 deletions docs/source/development.rst
Original file line number Diff line number Diff line change
Expand Up @@ -92,21 +92,21 @@ All new code after 2022 Sep 1 will be required to meet these standards. We will

.. _commit-standards:

========================
Commit message standards
========================
======================
Pull request standards
======================

**ALL** commits must follow best practices for commit messages: https://chris.beams.io/posts/git-commit/
Pull requests should follow the pre-filled template provided when you open the PR. PR titles and descriptions become the commit message when the PR is squashed and merged, so we ask that they follow best practices for commit messages:

* Separate subject from body with a blank line
* Limit the subject line to 50 characters
* Limit the subject line (PR title) to 50 characters
* Capitalize the subject line
* Do not end the subject line with a period
* Use the `imperative mood <https://en.wikipedia.org/wiki/Imperative_mood>`_ in the subject line
* Wrap the body at 72 characters
* Use the body to explain what and why vs. how
* The final line of the commit message should include tags to relevant issues (e.g. ``Refs: #217, #300``)

This list is a modified version of the one provided at https://chris.beams.io/posts/git-commit/ with a couple removed that are not relevant to GitHub PRs. That source also provides the motivation for making sure we have good commit messages.

Here is the example commit message from the article linked above; it includes descriptions of what would be in each part of the commit message for guidance:

::
Expand Down
Loading

0 comments on commit 5f37371

Please sign in to comment.