-
Notifications
You must be signed in to change notification settings - Fork 117
Air Quality Modeling
The standard SRW App distribution uses the uncoupled version of the UFS Weather Model (atmosphere-only), while this page shows how to use a coupled version of the SRW App that includes the standard distribution (atmospheric model) plus the Air Quality Model (AQM).
The AQM is a UFS Application that dynamically couples the Community Multiscale Air Quality (CMAQ) model with the UFS Weather Model through the NUOPC Layer to simulate temporal and spatial variations of atmospheric compositions (e.g., ozone and aerosol compositions). The CMAQ, treated as a column chemistry model, updates concentrations of chemical species (e.g., ozone and aerosol compositions) at each integration time step. The transport terms (e.g., advection and diffusion) of all chemical species are handled by the UFS Weather Model as tracers.
- Clone the "online-cmaq" branch of the authoritative repository:
git clone -b online-cmaq https://github.com/ufs-community/ufs-srweather-app
cd ufs-srweather-app
- Check the hashes of the external components in
ufs-srweather-app/Externals.cfg
:
vim Externals.cfg
- As can be seen in the file, this will check out the following hashes of the external components that are specified in
Externals.cfg
(as of 02/10/2023):
Component | Hash |
---|---|
UFS_UTILS | ca9bed8 |
ufs-weather-model | e051e0e |
NEXUS | 3842818 |
AQM-utils | 5ee63d2 |
- Replace the above hashes if you want to check out different ones.
- If you want to use another branch for development, you can comment out the
hash
line and uncomment thebranch
line with a newrepo_url
address. For example:
repo_url = https://github.com/chan-hoo/ufs-weather-model
branch = feature/for_example
#hash = e051e0e
- Check out the external components:
./manage_externals/checkout_externals
- Build Online-CMAQ:
./devbuild.sh -p=[machine] -a=ATMAQ
where [machine]
is hera
, or wcoss2
.
- Set up the user-specific configuration:
cd ush
cp config.aqm.community.yaml config.yaml
Note that additional sample scripts can be found in chan-hoo's github repo for online-cmaq.
Set the following parameters in
config.yaml
for the automatic initial-submission and re-submission bycron
:
workflow:
USE_CRON_TO_RELAUNCH: true
CRON_RELAUNCH_INTVL_MNTS: 3
This means that cron
will submit the launch script every 3 minutes. Note that you should create your crontab with "crontab -e" first if this is your first time to use cron
.
- Load the python environment for the workflow:
- On WCOSS2:
source ../versions/run.ver.wcoss2
module use ../modulefiles
module load wflow_wcoss2
- On Hera:
module use ../modulefiles
module load wflow_[machine]
conda activate regional_workflow
where [machine]
is hera
.
- Generate the workflow:
python3 generate_FV3LAM_wflow.py
- Run the workflow only if
USE_CRON_TO_RELAUNCH: true
was not set inconfig.yaml
(see Step 5 for the automatic resubmission by cron):
cd [EXPT_BASEDIR]/[EXPT_SUBDIR]
./launch_FV3LAM_wflow.sh
Repeat this launch command until you have SUCCESS
or FAILURE
on your terminal window.
- UFS SRW App Users' Guide for the develop branch of the UFS SRW App and the online-cmaq branch for Online-CMAQ (Chan-Hoo Jeon, NOAA/NCEP/EMC).
- Getting Started for Developers
- Repository Structure and Submodules
- Contributor's Guide
- Code Reviewer's Guide
- UFS offline Land Data Assimilation (DA) System
- Global Workflow
- UFS Hurricane Analysis and Forecast System
- UFS Medium-Range Weather Application (no longer supported)
- spack-stack - builds bundled library dependencies using a Spack-based package installation method