Air Quality Modeling - ufs-community/ufs-srweather-app GitHub Wiki

This page is for the main_aqm branch to support Air Quality Modeling (AQM) and Smoke and Dust (SD). This is available on Hera, Orion, and Hercules as of 10/31/2024.

Quick Start Guide

  1. Clone the "main_aqm" branch of the authoritative repository:

    git clone -b main_aqm https://github.com/ufs-community/ufs-srweather-app.git
    cd ufs-srweather-app/sorc
    
  2. Build the app:

    • Air Quality Modeling (coupled):
    ./manage_externals/checkout_externals -e Externals_aqm.cfg
    ./app_build.sh -a=ATMAQ
    
    • Smoke and Dust (uncoupled):
    ./manage_externals/checkout_externals -e Externals_smoke_dust.cfg
    ./app_build.sh
    
  3. Set up the user-specific configuration:

    cd ../parm
    cp config.[application].yaml config.yaml
    

    Where [application] is aqm for air quality modeling, orsmoke_dust for smoke/dust modeling.

    Set the following parameters in config.yaml for the automatic initial-submission and re-submission by cron:

    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 using cron.

  4. Load the Python environment for the workflow:

    module purge
    source ../versions/run.ver_[machine]
    module use ../modulefiles
    module load wflow_[machine]
    

    Where [machine] is hera, orion, or hercules.

  5. Generate the workflow:

    ./generate_FV3LAM_wflow.py
    
  6. Run the workflow only if USE_CRON_TO_RELAUNCH: true was not set in config.yaml(see Step 3 for the automatic resubmission by cron):

    cd ../../expt_dirs/[EXPT_SUBDIR]
    ./launch_FV3LAM_wflow.sh
    

    Repeat this launch command until you have SUCCESS or FAILURE on your terminal window.