Skip to content

Commit

Permalink
Merge remote-tracking branch 'upstream/develop' into develop
Browse files Browse the repository at this point in the history
  • Loading branch information
yali mao committed Mar 8, 2024
2 parents eb731ec + 0d438f4 commit 8153083
Show file tree
Hide file tree
Showing 222 changed files with 26,910 additions and 65,466 deletions.
13 changes: 6 additions & 7 deletions .github/workflows/intel.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ defaults:

# Set I_MPI_CC/F90 so Intel MPI wrapper uses icc/ifort instead of gcc/gfortran
env:
cache_key: intel2 # The number (#) following the cache_key "intel" is to flush Action cache.
cache_key: intel3 # The number (#) following the cache_key "intel" is to flush Action cache.
CC: icc
FC: ifort
CXX: icpc
Expand All @@ -33,7 +33,7 @@ env:

jobs:
setup:
runs-on: ubuntu-latest
runs-on: ubuntu-20.04

steps:
- name: checkout-upp # This is for getting spack.yaml
Expand All @@ -45,7 +45,7 @@ jobs:
# Cache spack, compiler and dependencies
- name: cache-env
id: cache-env
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: |
spack
Expand All @@ -59,14 +59,13 @@ jobs:
sudo apt-key add GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB
echo "deb https://apt.repos.intel.com/oneapi all main" | sudo tee /etc/apt/sources.list.d/oneAPI.list
sudo apt-get update
sudo apt-get install intel-oneapi-dev-utilities intel-oneapi-mpi-devel intel-oneapi-openmp intel-oneapi-compiler-fortran intel-oneapi-compiler-dpcpp-cpp-and-cpp-classic
sudo apt-get install intel-oneapi-dev-utilities intel-oneapi-mpi-devel intel-oneapi-openmp intel-oneapi-compiler-fortran-2023.2.1 intel-oneapi-compiler-dpcpp-cpp-and-cpp-classic-2023.2.1
echo "source /opt/intel/oneapi/setvars.sh" >> ~/.bash_profile
# Install dependencies using Spack
- name: install-dependencies-with-spack
if: steps.cache-env.outputs.cache-hit != 'true'
run: |
sudo mv /usr/local/ /usr_local_mv
git clone -c feature.manyFiles=true https://github.com/NOAA-EMC/spack.git
source spack/share/spack/setup-env.sh
spack env create upp-env UPP/ci/spack.yaml
Expand All @@ -81,7 +80,7 @@ jobs:
build:
needs: setup
runs-on: ubuntu-latest
runs-on: ubuntu-20.04

steps:
- name: checkout-upp
Expand All @@ -95,7 +94,7 @@ jobs:
- name: cache-env
id: cache-env
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: |
spack
Expand Down
13 changes: 8 additions & 5 deletions .readthedocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,14 @@

# Required
version: 2
build:
os: ubuntu-20.04
tools:
python: "3.9"

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

# Build documentation with MkDocs
#mkdocs:
Expand All @@ -17,8 +21,7 @@ sphinx:
formats: all

# Optionally set the version of Python and requirements required to build your docs
#python:
python:
# version: 3.7
# install:

# - requirements: docs/requirements.txt
install:
- requirements: docs/UserGuide/requirements.txt
44 changes: 26 additions & 18 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,33 +1,32 @@

# Unified Post-Processing (UPP)
# Unified Post Processor (UPP)

The Unified Post Processor (UPP) software package is a software
package designed to generate useful products from raw model
output.

The UPP is currently used in operations with the Global Forecast
System (GFS), GFS Ensemble Forecast System (GEFS), North American
Mesoscale (NAM), Rapid Refresh (RAP), High Resolution Rapid Refresh
Mesoscale (NAM), Rapid Refresh (RAP), High-Resolution Rapid Refresh
(HRRR), Short Range Ensemble Forecast (SREF), and Hurricane WRF (HWRF)
applications. It is also used in the Unified Forecasting System (UFS),
including the Rapid Refresh Forecast System (RRFS), Hurricane Application
Forecasting System (HAFS), and the Medium Range Weather (MRW) and Short
applications. It is also used in the Unified Forecast System (UFS),
including the Rapid Refresh Forecast System (RRFS), Hurricane Analysis and
Forecast System (HAFS), and the Medium-Range Weather (MRW) and Short-
Range Weather (SRW) Applications.

The UPP provides the capability to compute a variety of diagnostic
fields and interpolate to pressure levels or other vertical
coordinates.

UPP also incorporates the Joint Center for Satellite Data Assimilation
(JCSDA) Community Radiative Transfer Model (CRTM) to compute model
derived brightness temperature (TB) for various instruments and
(JCSDA) Community Radiative Transfer Model (CRTM) to compute model-derived brightness temperature (TB) for various instruments and
channels. This additional feature enables the generation of a number
of simulated satellite products including GOES products.

Output from the UPP is in National Weather Service (NWS) and World
Meteorological Organization (WMO) GRIB2 format and can be used
directly by visualization, plotting, or verification packages, or for
further downstream post-processing, e.g. statistical post-processing
directly by visualization, plotting, or verification packages or for
further downstream post-processing, e.g., statistical post-processing
techniques.

Examples of UPP products include:
Expand All @@ -48,31 +47,35 @@ Examples of UPP products include:
Support for the UFS UPP is provided through [GitHub Discussions](https://github.com/NOAA-EMC/UPP/discussions).

## Documentation
User Guide for latest public release: https://upp.readthedocs.io/en/latest/.
User Guide for latest standalone public release: https://upp.readthedocs.io/en/latest/.

Technical code-level documentation: https://noaa-emc.github.io/UPP/.

## Developer Information
Please see review the [wiki](https://github.com/NOAA-EMC/UPP/wiki)
Please review the [wiki](https://github.com/NOAA-EMC/UPP/wiki)

## Authors

NCEP/EMC Developers

Code Managers: Wen Meng, Huiya Chuang, Kate Fossell
Code Managers: Wen Meng, Huiya Chuang, Fernando Andrade-Maldonado

## Prerequisites

The UPP requires certain NCEPLIB packages to be installed via
the HPC-Stack project.
The UPP requires certain NCEPLIBS packages to be installed via the
spack-stack project. For instructions on installing these packages as a
bundle via spack-stack, see: https://spack-stack.readthedocs.io/en/latest/.
The `UPP/modulefiles` directory indicates which package versions are
used and supported on Level 1 systems.

Required NCEPLIBS packages:

- [NCEPLIBS-g2](https://github.com/NOAA-EMC/NCEPLIBS-g2)
- [NCEPLIBS-g2tmpl](https://github.com/NOAA-EMC/NCEPLIBS-g2tmpl)
- [NCEPLIBS-sp](https://github.com/NOAA-EMC/NCEPLIBS-sp)
- [NCEPLIBS-ip](https://github.com/NOAA-EMC/NCEPLIBS-ip)
- [NCEPLIBS-bacio](https://github.com/NOAA-EMC/NCEPLIBS-bacio)
- [NCEPLIBS-w3emc](https://github.com/NOAA-EMC/NCEPLIBS-w3emc)
- [NCEPLIBS-w3nco](https://github.com/NOAA-EMC/NCEPLIBS-w3nco)
- [CRTM](https://github.com/noaa-emc/emc_crtm)

Also required to build NCEPpost executable (cmake option
Expand All @@ -81,19 +84,20 @@ BUILD_POSTEXEC):
- [NCEPLIBS-sigio](https://github.com/NOAA-EMC/NCEPLIBS-sigio)
- [NCEPLIBS-sfcio](https://github.com/NOAA-EMC/NCEPLIBS-sfcio)
- [NCEPLIBS-nemsio](https://github.com/NOAA-EMC/NCEPLIBS-nemsio)
- [NCEPLIBS-gfsio](https://github.com/NOAA-EMC/NCEPLIBS-gfsio)

The [NCEPLIBS-wrf_io](https://github.com/NOAA-EMC/NCEPLIBS-wrf_io)
library is required to build with NCEPpost with WRF-IO library (cmake
option BUILD_WITH_WRFIO).

The following third-party libraries are required:

- [netcdf](https://github.com/Unidata/netcdf)
- [netcdf-c](https://github.com/Unidata/netcdf-c)
- [netcdf-fortran](https://github.com/Unidata/netcdf-fortran)
- [Jasper](https://github.com/jasper-software/jasper)
- [libpng](http://www.libpng.org/pub/png/libpng.html)
- [libz](https://zlib.net/)
- [zlib](https://zlib.net/)
- [hdf5](https://github.com/HDFGroup/hdf5)

## Building

Expand All @@ -102,7 +106,7 @@ Builds include:
- Inline post (UPP library): Currently only supported for the GFS, RRFS,
HAFS, and the UFS-MRW Application.

- Offline post (UPP executable): Supported for Regional applications
- Offline post (UPP executable): Supported for regional applications
including SRW, RRFS, HAFS, and standalone applications of UPP.


Expand All @@ -128,3 +132,7 @@ Commerce. The Department of Commerce seal and logo, or the seal and
logo of a DOC bureau, shall not be used in any manner to imply
endorsement of any commercial product or activity by DOC or the United
States Government.

## UPP Terms of Use Notice

The UPP Terms of Use Notice is available at: https://github.com/NOAA-EMC/UPP/wiki/UPP-Terms-of-Use-Notice
Loading

0 comments on commit 8153083

Please sign in to comment.