Skip to content

Commit

Permalink
Add AQM Regression Test and documentation for AQM & Update upp submod…
Browse files Browse the repository at this point in the history
…ule to fix in-line post issues for RRFS and HAFS (#1298)
  • Loading branch information
BrianCurtis-NOAA committed Jul 15, 2022
1 parent 3e78c4f commit d3d2565
Show file tree
Hide file tree
Showing 25 changed files with 6,305 additions and 3,716 deletions.
2 changes: 1 addition & 1 deletion AQM
Submodule AQM updated 3 files
+2 −2 .gitmodules
+21 −37 CMakeLists.txt
+1 −1 src/model/CMAQ
2 changes: 1 addition & 1 deletion FV3
Submodule FV3 updated 2 files
+8 −3 io/post_fv3.F90
+1 −1 upp
6 changes: 6 additions & 0 deletions doc/UsersGuide/source/BuildingAndRunning.rst
Original file line number Diff line number Diff line change
Expand Up @@ -176,6 +176,12 @@ For the ufs-weather-model HAFS-ALL app (data/atm/ocean/wave) in 32 bit:
export CMAKE_FLAGS="-DAPP=HAFS-ALL -D32BIT=ON -DCCPP_SUITES=FV3_HAFS_v0_gfdlmp_tedmf_nonsst,FV3_HAFS_v0_gfdlmp_tedmf,FV3_HAFS_v0_hwrf_thompson,FV3_HAFS_v0_hwrf"
For the ufs-weather-model AQM app (atm/aqm):

.. code-block:: console
export CMAKE_FLAGS="-DAPP=ATMAQ -DCCPP_SUITES=FV3_GFS_v15p2"
------------------
Building the model
------------------
Expand Down
8 changes: 8 additions & 0 deletions doc/UsersGuide/source/CodeOverview.rst
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,8 @@ The ufs-weather-model repository supports the short- and medium-range UFS applic
- https://github.com/NOAA-EMC/CMEPS
* - Community Data Models for Earth Prediction Systems (CDEPS)
- https://github.com/NOAA-EMC/CDEPS
* - Air Quality Model (AQM)
- https://github.com/NOAA-EMC/AQM

In the table, the left column contains a description of each repository, and the right column shows the component repositories which are pointing to (or will point to) the authoritative repositories. The ufs-weather-model currently uses git submodule to manage the sub-components.

Expand Down Expand Up @@ -73,6 +75,8 @@ The umbrella repository for the UFS Weather Model is named ufs-weather-model. U
│ └── CMEPS https://github.com/NOAA-EMC/CMEPS
├── CDEPS-interface
│ └── CDEPS https://github.com/NOAA-EMC/CDEPS
├── AQM
│ └── CMAQ https://github.com/NOAA-EMC/AQM
===================
Directory Structure
Expand Down Expand Up @@ -125,6 +129,10 @@ When the ufs-weather-model is cloned, the basic directory structure will be simi
│ └── CDEPS
│ ├── datm --------- CDEPS DATM
│ └── docn --------- CDEPS DOCN
├── AQM
│ └── src
│ ├── model
│ └── CMAQ --------- EPA AQ Model
├── modulefiles -------- system module files for supported HPC systems
├── tests -------- regression test infrastructure
│ └── parm
Expand Down
89 changes: 89 additions & 0 deletions doc/UsersGuide/source/InputsOutputs.rst
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@ The ufs-weather-model can be configured as one of several applications, from a s
- UFSAtm coupled to WW3
* - ATMAERO
- UFSAtm coupled to GOCART
* - ATMAQ
- UFSAtm coupled to CMAQ
* - S2S
- Coupled UFSATM-MOM6-CICE6-CMEPS
* - S2SA
Expand Down Expand Up @@ -874,6 +876,59 @@ Therefore, the most popular method is to take previous aerosol simulation result

The aerosol initial input currently read by GOCART is the same format as the UFSAtm initial input data format of "gfs_data_tile[1-6].nc" in :numref:`Table %s <GridICFiles>`, so the aerosol initial conditions should be combined with the meteorological initial conditions as one initial input file. There are many tools available for this purpose. Ufs-utils in the global workflow that supports UFS models always provides a solution for this.

--------------
AQM (CMAQ)
--------------
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Static datasets (i.e., *fix files*)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

The static input files for AQM configurations are listed and described in :numref:`Table %s <AQM_ControlFiles>`.

.. _AQM_ControlFiles:

.. list-table:: *AQM run control files*
:widths: 40 50
:header-rows: 1

* - Filename
- Description
* - AQM.rc
- NOAA Air Quality Model Parameters

AQM inputs defined in aqm.rc are listed and described in :numref:`Table %s <AQM_InputFiles>`.

.. _AQM_InputFiles:

.. list-table:: *AQM inputs defined in aqm.rc*
:widths: 40 50
:header-rows: 1

* - Filename
- Description
* - AE_cb6r3_ae6_aq.nml
- AE Matrix NML
* - GC_cb6r3_ae6_aq.nml
- GC Matrix NML
* - NR_cb6r3_ae6_aq.nml
- NR Matrix NML
* - Species_Table_TR_0.nml
- TR Matrix NML
* - CSQY_DATA_cb6r3_ae6_aq
- CSQY Data
* - PHOT_OPTICS.dat
- Optics Data
* - omi_cmaq_2015_361X179.dat
- OMI data
* - NEXUS/NEXUS_Expt.nc
- Emissions File
* - BEIS_RRFScmaq_C775.ncf
- Biogenic File
* - gspro_biogenics_1mar2017.txt
- Biogenic Speciation File
* - Hourly_Emissions_regrid_rrfs_13km_20190801_t12z_h72.nc
- File Emissions File

==========================
Model configuration files
==========================
Expand Down Expand Up @@ -1969,6 +2024,40 @@ For the fully coupled S2S application that receives atmosphere-ocean fluxes from

.. note:: The *aoflux_code* option is used to define the algorithm that will be used to calculate atmosphere-ocean fluxes. The possible options are *cesm* and *ccpp*. If *ccpp* is selected then the suite file provided in the *aoflux_ccpp_suite* option is used to calculate atmosphere-ocean fluxes through the use of CCPP host model.

For the ATMAQ application, a sample *nems.configure* is shown below :

.. code-block:: console
EARTH_component_list: ATM AQM
EARTH_attributes::
Verbosity = 0
::
# ATM #
ATM_model: fv3
ATM_petlist_bounds: 0 271
ATM_attributes::
Verbosity = 0
::
# AQM #
AQM_model: aqm
AQM_petlist_bounds: 0 271
AQM_attributes::
Verbosity = 0
::
# Run Sequence #
runSeq::
@180
ATM phase1
ATM -> AQM
AQM
AQM -> ATM
ATM phase2
@
::
---------------------------------------
*The SDF (Suite Definition File) file*
---------------------------------------
Expand Down
Loading

0 comments on commit d3d2565

Please sign in to comment.