From cb658fc0e40908ba9ca70234c1ac01d76d24eda3 Mon Sep 17 00:00:00 2001 From: gspetro-NOAA Date: Tue, 10 Sep 2024 23:05:07 -0400 Subject: [PATCH 01/24] add RRFS-SD chapter to SRW App docs --- .../BuildingRunningTesting/RRFS-SD.rst | 268 ++++++++++++++++++ .../BuildingRunningTesting/index.rst | 1 + 2 files changed, 269 insertions(+) create mode 100644 doc/UsersGuide/BuildingRunningTesting/RRFS-SD.rst diff --git a/doc/UsersGuide/BuildingRunningTesting/RRFS-SD.rst b/doc/UsersGuide/BuildingRunningTesting/RRFS-SD.rst new file mode 100644 index 0000000000..56bb406f98 --- /dev/null +++ b/doc/UsersGuide/BuildingRunningTesting/RRFS-SD.rst @@ -0,0 +1,268 @@ +.. _rrfs-sd: + +============================================================== +Rapid Refresh Forecast System Smoke & Dust (RRFS-SD) Features +============================================================== + +.. attention:: + + RRFS-SD capabilities are a new SRW App feature supported only on Hera. User support is available for users on Hera; on other systems, users can expect only limited support. + +This chapter provides instructions for running a sample six-hour forecast for July, 22, 2019 at 0z using RRFS-SD features. This forecast uses RAP data for :term:`ICs` and :term:`LBCs`, the ``RRFS_CONUS_3km`` predefined grid, and the ``FV3_HRRR_gf`` physics suite. This pysics suite is similar to the NOAA operational HRRR v4 suite (Dowell et al., 2022), with the addition of the Grell-Freitas deep convective parameterization. `Scientific documentation for the HRRR_gf suite `_ and `technical documentation `_ are available with the CCPP v7.0.0 release but may differ slightly from the version available in the SRW App. + +.. note:: + + Although this chapter is the primary documentation resource for running the RRFS-SD configuration, users may need to refer to :numref:`Chapter %s ` and :numref:`Chapter %s ` for additional information on building and running the SRW App, respectively. + +Quick Start Guide (RRFS-SD) +============================= + +.. attention:: + + These instructions should work smoothly on Hera, but users on other systems may need to make additional adjustments. + +Download the Code +------------------- + +Clone the |branch| branch of the authoritative SRW App repository: + +.. code-block:: console + + git clone -b smoke_dust https://github.com/chan-hoo/ufs-srweather-app + cd ufs-srweather-app + +.. COMMENT: Update clone command to reflect authoritative branch once features are merged in. + +Checkout Externals +--------------------- + +Users must run the ``checkout_externals`` script to collect (or "check out") the individual components of the SRW App (AQM version) from their respective GitHub repositories. + +.. code-block:: console + + ./manage_externals/checkout_externals -e Externals_smoke_dust.cfg + +Build the SRW App with AQM +----------------------------- + +On Hera, users can build the SRW App AQM binaries with the smoke argument: + +.. code-block:: console + + ./devbuild.sh -p= --smoke + +where ```` is ``hera``. The ``--smoke`` argument indicates the configuration/version of the application to build (i.e., RRFS-SD). + +Building the SRW App with RRFS-SD on other machines, including other :srw-wiki:`Level 1 ` platforms, is not currently guaranteed to work, and users may have to make adjustments to the modulefiles for their system. + +If RRFS-SD builds correctly, users should see the standard executables listed in :numref:`Table %s ` in the ``ufs-srweather-app/exec`` directory. + +Load the |wflow_env| Environment +-------------------------------------------- + +Load the Python environment for the workflow: + +.. code-block:: console + + module use /path/to/ufs-srweather-app/modulefiles + module load wflow_ + conda activate srw_app + +where ```` is ``hera``. The workflow should load on other platforms listed under the ``MACHINE`` variable in :numref:`Section %s `, but users may need to adjust other elements of the process when running on those platforms. + +.. _rrfs-sd-config: + +Configure an Experiment +--------------------------- + +Users will need to configure their experiment by setting parameters in the ``config.yaml`` file. To start, users can copy a default experiment setting into ``config.yaml``: + +.. code-block:: console + + cd ush + cp config.smoke_dust.yaml config.yaml + +Users will need to change the ``ACCOUNT`` variable in ``config.yaml`` to an account they have access to. They may also wish to adjust other experiment settings. For more information on each task and variable, see :numref:`Section %s `. + +On Level 1 systems, users can find :term:`ICs/LBCs` for the RRFS-SD sample case in the usual :ref:`input data locations ` under ``RAP/2019072200``. Users will need to add the following lines to ``task_get_extrn_*:`` in their ``config.yaml`` file, adjusting the file path to point to the correct data locations: + +.. code-block:: console + + task_get_extrn_ics: + USE_USER_STAGED_EXTRN_FILES: true + EXTRN_MDL_SOURCE_BASEDIR_ICS: /scratch1/NCEPDEV/nems/role.epic/UFS_SRW_data/develop/input_model_data/RAP/${yyyymmddhh} + task_get_extrn_lbcs: + USE_USER_STAGED_EXTRN_FILES: true + EXTRN_MDL_SOURCE_BASEDIR_LBCS: /scratch1/NCEPDEV/nems/role.epic/UFS_SRW_data/develop/input_model_data/RAP/${yyyymmddhh} + +Note that users on other systems will need to use the correct data path for their system. Currently, Hera is the only system supported, but the data is available on other Level 1 systems for those interested in tinkering with the workflow. + +.. COMMENT: Data not in bucket yet. Path needs changing. + Users can also download the data required for the community experiment from the `UFS SRW App Data Bucket `_. + +Users may also wish to change :term:`cron`-related parameters in ``config.yaml``. In the ``config.smoke_dust.yaml`` file, which was copied into ``config.yaml``, cron is used for automatic submission and resubmission of the workflow: + +.. code-block:: console + + workflow: + USE_CRON_TO_RELAUNCH: true + CRON_RELAUNCH_INTVL_MNTS: 3 + +This means that cron will submit the launch script every 3 minutes. Users may choose not to submit using cron or to submit at a different frequency. Note that users should create a crontab by running ``crontab -e`` the first time they use cron. + +When using the basic ``config.smoke_dust.yaml`` experiment, the usual pre-processing and colstart forecast tasks are used, because ``"parm/wflow/prep.yaml"`` appears in the list of workflow files in the ``rocoto: tasks: taskgroups:`` section of ``config.yaml`` (see :numref:`Section %s ` for task descriptions). To turn on AQM *post*-processing tasks in the workflow, include ``"parm/wflow/aqm_post.yaml"`` in the ``rocoto: tasks: taskgroups:`` section, too (see :numref:`Section %s ` for task descriptions). + +.. COMMENT: Update wflow info above! + + +.. _rrfs-sd-more-tasks: + +Additional RRFS-SD Tasks +-------------------------- + +.. COMMENT: + :numref:`Figure %s ` illustrates the full non-:term:`DA ` RRFS-SD workflow using a flowchart. + +Compared to the typical SRW App workflow, the RRFS-SD has slightly different tasks for pre- and post-processing. As in the SRW App default workflow, the RRFS-SD workflow uses the preprocessing tasks from ``prep.yaml``, but it adds smoke-and-dust-specific tasks from ``smoke_dust.yaml``. For post-processing, it uses the NCO-compliant ``upp_post.yaml`` instead of the usual ``post.yaml``. + +.. COMMENT: + .. _rrfs-sd-wflow: + + .. figure:: https://github.com/ufs-community/ufs-srweather-app/wiki/WorkflowImages/*.png + :alt: Flowchart of the RRFS-SD tasks. + + *Workflow Structure of RRFS-SD* + + +The new tasks for RRFS-SD are shown in :numref:`Table %s `. + +.. _pre-rrfs-sd: + +.. list-table:: *Tasks for RRFS-SD Pre- and Post-Processing* + :widths: 20 50 30 + :header-rows: 1 + + * - Task Name + - Description + - File + * - smoke_dust + - Generates the input data file for smoke and dust to be used in the UFS Weather Model. + - ``parm/wflow/smoke_dust.yaml`` + * - prepstart + - Adds the smoke and dust fields to the ICs file from the restart file in the previous cycle. + - ``parm/wflow/smoke_dust.yaml`` + * - upp_post + - Performs post-processing with UPP. + - ``parm/wflow/upp_post.yaml`` + + +.. COMMENT: Add info about Python scripts + Python scripts: + * ush/generate_fire_emissions.py + * ush/HWP_tools.py + * ush/interp_tools.py + * ush/add_smoke.py + + +Generate the Workflow +------------------------ + +Generate the workflow: + +.. code-block:: console + + ./generate_FV3LAM_wflow.py + +Run the Workflow +------------------ + +If ``USE_CRON_TO_RELAUNCH`` is set to true in ``config.yaml`` (see :numref:`Section %s `), the workflow will run automatically. If it was set to false, users must submit the workflow manually from the experiment directory: + +.. code-block:: console + + cd ../../expt_dirs/smoke_dust_conus3km + ./launch_FV3LAM_wflow.sh + +Repeat the launch command regularly until a SUCCESS or FAILURE message appears on the terminal window. + +Users may check experiment status from the experiment directory with either of the following commands: + +.. code-block:: console + + # Check the experiment status (for cron jobs) + rocotostat -w FV3LAM_wflow.xml -d FV3LAM_wflow.db -v 10 + + # Check the experiment status and relaunch the workflow (for manual jobs) + ./launch_FV3LAM_wflow.sh; tail -n 40 log.launch_FV3LAM_wflow + +To see a description of each of the AQM workflow tasks, see :numref:`Section %s `. + +.. _rrfs-sd-success: + +Experiment Output +-------------------- + +The workflow run is complete when all tasks display a "SUCCEEDED" message. If everything goes smoothly, users will eventually see a workflow status table similar to the following: + +.. code-block:: console + + CYCLE TASK JOBID STATE EXIT STATUS TRIES DURATION + ============================================================================================ + 201907220000 make_grid 66218006 SUCCEEDED 0 1 45.0 + 201907220000 make_orog 66218340 SUCCEEDED 0 1 372.0 + 201907220000 make_sfc_climo 66218575 SUCCEEDED 0 1 90.0 + 201907220000 smoke_dust 66218715 SUCCEEDED 0 1 38.0 + 201907220000 prepstart 66219117 SUCCEEDED 0 1 37.0 + 201907220000 get_extrn_ics 66218007 SUCCEEDED 0 1 63.0 + 201907220000 get_extrn_lbcs 66218008 SUCCEEDED 0 1 58.0 + 201907220000 make_ics_mem000 66218716 SUCCEEDED 0 1 152.0 + 201907220000 make_lbcs_mem000 66218717 SUCCEEDED 0 1 79.0 + 201907220000 run_fcst_mem000 66225732 SUCCEEDED 0 1 4462.0 + 201907220000 post_mem000_f000 66229719 SUCCEEDED 0 1 197.0 + 201907220000 post_mem000_f001 66229724 SUCCEEDED 0 1 198.0 + 201907220000 post_mem000_f002 66229720 SUCCEEDED 0 1 202.0 + 201907220000 post_mem000_f003 66229721 SUCCEEDED 0 1 208.0 + 201907220000 post_mem000_f004 66229722 SUCCEEDED 0 1 214.0 + 201907220000 post_mem000_f005 66229726 SUCCEEDED 0 1 216.0 + 201907220000 post_mem000_f006 66229723 SUCCEEDED 0 1 222.0 + =========================================================================================== + 201907220600 smoke_dust 66229725 SUCCEEDED 0 1 171.0 + 201907220600 prepstart 66230255 SUCCEEDED 0 1 102.0 + 201907220600 get_extrn_ics 66218009 SUCCEEDED 0 1 63.0 + 201907220600 get_extrn_lbcs 66218010 SUCCEEDED 0 1 58.0 + 201907220600 make_ics_mem000 66218718 SUCCEEDED 0 1 155.0 + 201907220600 make_lbcs_mem000 66218719 SUCCEEDED 0 1 79.0 + 201907220600 run_fcst_mem000 66230376 SUCCEEDED 0 1 4520.0 + 201907220600 post_mem000_f000 66330901 SUCCEEDED 0 1 198.0 + 201907220600 post_mem000_f001 66330897 SUCCEEDED 0 1 208.0 + 201907220600 post_mem000_f002 66330898 SUCCEEDED 0 1 216.0 + 201907220600 post_mem000_f003 66330899 SUCCEEDED 0 1 221.0 + 201907220600 post_mem000_f004 66330902 SUCCEEDED 0 1 216.0 + 201907220600 post_mem000_f005 66330903 SUCCEEDED 0 1 214.0 + 201907220600 post_mem000_f006 66330900 SUCCEEDED 0 1 216.0 + +If something goes wrong, users can check the log files, which are located by default in ``nco_dirs/test_smoke_dust/com/output/logs/20190722``. + + +WE2E Test for RRFS-SD +======================= + +Build the app for RRFS-SD: + +.. code-block:: console + + ./devbuild.sh -p=hera --smoke + +Add the WE2E test for RRFS-SD to the list file: + +.. code-block:: console + + cd /path/to/ufs-srweather-app/tests/WE2E + echo "smoke_dust_grid_RRFS_CONUS_3km_suite_HRRR_gf" >> my_tests.txt + +Run the WE2E test: + +.. code-block:: console + + $ ./run_WE2E_tests.py -t my_tests.txt -m hera -a gsd-fv3 -q + diff --git a/doc/UsersGuide/BuildingRunningTesting/index.rst b/doc/UsersGuide/BuildingRunningTesting/index.rst index 5c0efc3c64..8a7c239852 100644 --- a/doc/UsersGuide/BuildingRunningTesting/index.rst +++ b/doc/UsersGuide/BuildingRunningTesting/index.rst @@ -13,3 +13,4 @@ Building, Running, and Testing the SRW App Tutorial VXCases AQM + RRFS-SD From 3f4a6c0887d1fd2e40e3dc65605d6d924acfe8c3 Mon Sep 17 00:00:00 2001 From: gspetro-NOAA Date: Wed, 11 Sep 2024 13:07:45 -0400 Subject: [PATCH 02/24] change RRFS-SD to SRW-SD --- .../BuildingRunningTesting/RRFS-SD.rst | 268 ------------------ .../BuildingRunningTesting/index.rst | 2 +- 2 files changed, 1 insertion(+), 269 deletions(-) delete mode 100644 doc/UsersGuide/BuildingRunningTesting/RRFS-SD.rst diff --git a/doc/UsersGuide/BuildingRunningTesting/RRFS-SD.rst b/doc/UsersGuide/BuildingRunningTesting/RRFS-SD.rst deleted file mode 100644 index 56bb406f98..0000000000 --- a/doc/UsersGuide/BuildingRunningTesting/RRFS-SD.rst +++ /dev/null @@ -1,268 +0,0 @@ -.. _rrfs-sd: - -============================================================== -Rapid Refresh Forecast System Smoke & Dust (RRFS-SD) Features -============================================================== - -.. attention:: - - RRFS-SD capabilities are a new SRW App feature supported only on Hera. User support is available for users on Hera; on other systems, users can expect only limited support. - -This chapter provides instructions for running a sample six-hour forecast for July, 22, 2019 at 0z using RRFS-SD features. This forecast uses RAP data for :term:`ICs` and :term:`LBCs`, the ``RRFS_CONUS_3km`` predefined grid, and the ``FV3_HRRR_gf`` physics suite. This pysics suite is similar to the NOAA operational HRRR v4 suite (Dowell et al., 2022), with the addition of the Grell-Freitas deep convective parameterization. `Scientific documentation for the HRRR_gf suite `_ and `technical documentation `_ are available with the CCPP v7.0.0 release but may differ slightly from the version available in the SRW App. - -.. note:: - - Although this chapter is the primary documentation resource for running the RRFS-SD configuration, users may need to refer to :numref:`Chapter %s ` and :numref:`Chapter %s ` for additional information on building and running the SRW App, respectively. - -Quick Start Guide (RRFS-SD) -============================= - -.. attention:: - - These instructions should work smoothly on Hera, but users on other systems may need to make additional adjustments. - -Download the Code -------------------- - -Clone the |branch| branch of the authoritative SRW App repository: - -.. code-block:: console - - git clone -b smoke_dust https://github.com/chan-hoo/ufs-srweather-app - cd ufs-srweather-app - -.. COMMENT: Update clone command to reflect authoritative branch once features are merged in. - -Checkout Externals ---------------------- - -Users must run the ``checkout_externals`` script to collect (or "check out") the individual components of the SRW App (AQM version) from their respective GitHub repositories. - -.. code-block:: console - - ./manage_externals/checkout_externals -e Externals_smoke_dust.cfg - -Build the SRW App with AQM ------------------------------ - -On Hera, users can build the SRW App AQM binaries with the smoke argument: - -.. code-block:: console - - ./devbuild.sh -p= --smoke - -where ```` is ``hera``. The ``--smoke`` argument indicates the configuration/version of the application to build (i.e., RRFS-SD). - -Building the SRW App with RRFS-SD on other machines, including other :srw-wiki:`Level 1 ` platforms, is not currently guaranteed to work, and users may have to make adjustments to the modulefiles for their system. - -If RRFS-SD builds correctly, users should see the standard executables listed in :numref:`Table %s ` in the ``ufs-srweather-app/exec`` directory. - -Load the |wflow_env| Environment --------------------------------------------- - -Load the Python environment for the workflow: - -.. code-block:: console - - module use /path/to/ufs-srweather-app/modulefiles - module load wflow_ - conda activate srw_app - -where ```` is ``hera``. The workflow should load on other platforms listed under the ``MACHINE`` variable in :numref:`Section %s `, but users may need to adjust other elements of the process when running on those platforms. - -.. _rrfs-sd-config: - -Configure an Experiment ---------------------------- - -Users will need to configure their experiment by setting parameters in the ``config.yaml`` file. To start, users can copy a default experiment setting into ``config.yaml``: - -.. code-block:: console - - cd ush - cp config.smoke_dust.yaml config.yaml - -Users will need to change the ``ACCOUNT`` variable in ``config.yaml`` to an account they have access to. They may also wish to adjust other experiment settings. For more information on each task and variable, see :numref:`Section %s `. - -On Level 1 systems, users can find :term:`ICs/LBCs` for the RRFS-SD sample case in the usual :ref:`input data locations ` under ``RAP/2019072200``. Users will need to add the following lines to ``task_get_extrn_*:`` in their ``config.yaml`` file, adjusting the file path to point to the correct data locations: - -.. code-block:: console - - task_get_extrn_ics: - USE_USER_STAGED_EXTRN_FILES: true - EXTRN_MDL_SOURCE_BASEDIR_ICS: /scratch1/NCEPDEV/nems/role.epic/UFS_SRW_data/develop/input_model_data/RAP/${yyyymmddhh} - task_get_extrn_lbcs: - USE_USER_STAGED_EXTRN_FILES: true - EXTRN_MDL_SOURCE_BASEDIR_LBCS: /scratch1/NCEPDEV/nems/role.epic/UFS_SRW_data/develop/input_model_data/RAP/${yyyymmddhh} - -Note that users on other systems will need to use the correct data path for their system. Currently, Hera is the only system supported, but the data is available on other Level 1 systems for those interested in tinkering with the workflow. - -.. COMMENT: Data not in bucket yet. Path needs changing. - Users can also download the data required for the community experiment from the `UFS SRW App Data Bucket `_. - -Users may also wish to change :term:`cron`-related parameters in ``config.yaml``. In the ``config.smoke_dust.yaml`` file, which was copied into ``config.yaml``, cron is used for automatic submission and resubmission of the workflow: - -.. code-block:: console - - workflow: - USE_CRON_TO_RELAUNCH: true - CRON_RELAUNCH_INTVL_MNTS: 3 - -This means that cron will submit the launch script every 3 minutes. Users may choose not to submit using cron or to submit at a different frequency. Note that users should create a crontab by running ``crontab -e`` the first time they use cron. - -When using the basic ``config.smoke_dust.yaml`` experiment, the usual pre-processing and colstart forecast tasks are used, because ``"parm/wflow/prep.yaml"`` appears in the list of workflow files in the ``rocoto: tasks: taskgroups:`` section of ``config.yaml`` (see :numref:`Section %s ` for task descriptions). To turn on AQM *post*-processing tasks in the workflow, include ``"parm/wflow/aqm_post.yaml"`` in the ``rocoto: tasks: taskgroups:`` section, too (see :numref:`Section %s ` for task descriptions). - -.. COMMENT: Update wflow info above! - - -.. _rrfs-sd-more-tasks: - -Additional RRFS-SD Tasks --------------------------- - -.. COMMENT: - :numref:`Figure %s ` illustrates the full non-:term:`DA ` RRFS-SD workflow using a flowchart. - -Compared to the typical SRW App workflow, the RRFS-SD has slightly different tasks for pre- and post-processing. As in the SRW App default workflow, the RRFS-SD workflow uses the preprocessing tasks from ``prep.yaml``, but it adds smoke-and-dust-specific tasks from ``smoke_dust.yaml``. For post-processing, it uses the NCO-compliant ``upp_post.yaml`` instead of the usual ``post.yaml``. - -.. COMMENT: - .. _rrfs-sd-wflow: - - .. figure:: https://github.com/ufs-community/ufs-srweather-app/wiki/WorkflowImages/*.png - :alt: Flowchart of the RRFS-SD tasks. - - *Workflow Structure of RRFS-SD* - - -The new tasks for RRFS-SD are shown in :numref:`Table %s `. - -.. _pre-rrfs-sd: - -.. list-table:: *Tasks for RRFS-SD Pre- and Post-Processing* - :widths: 20 50 30 - :header-rows: 1 - - * - Task Name - - Description - - File - * - smoke_dust - - Generates the input data file for smoke and dust to be used in the UFS Weather Model. - - ``parm/wflow/smoke_dust.yaml`` - * - prepstart - - Adds the smoke and dust fields to the ICs file from the restart file in the previous cycle. - - ``parm/wflow/smoke_dust.yaml`` - * - upp_post - - Performs post-processing with UPP. - - ``parm/wflow/upp_post.yaml`` - - -.. COMMENT: Add info about Python scripts - Python scripts: - * ush/generate_fire_emissions.py - * ush/HWP_tools.py - * ush/interp_tools.py - * ush/add_smoke.py - - -Generate the Workflow ------------------------- - -Generate the workflow: - -.. code-block:: console - - ./generate_FV3LAM_wflow.py - -Run the Workflow ------------------- - -If ``USE_CRON_TO_RELAUNCH`` is set to true in ``config.yaml`` (see :numref:`Section %s `), the workflow will run automatically. If it was set to false, users must submit the workflow manually from the experiment directory: - -.. code-block:: console - - cd ../../expt_dirs/smoke_dust_conus3km - ./launch_FV3LAM_wflow.sh - -Repeat the launch command regularly until a SUCCESS or FAILURE message appears on the terminal window. - -Users may check experiment status from the experiment directory with either of the following commands: - -.. code-block:: console - - # Check the experiment status (for cron jobs) - rocotostat -w FV3LAM_wflow.xml -d FV3LAM_wflow.db -v 10 - - # Check the experiment status and relaunch the workflow (for manual jobs) - ./launch_FV3LAM_wflow.sh; tail -n 40 log.launch_FV3LAM_wflow - -To see a description of each of the AQM workflow tasks, see :numref:`Section %s `. - -.. _rrfs-sd-success: - -Experiment Output --------------------- - -The workflow run is complete when all tasks display a "SUCCEEDED" message. If everything goes smoothly, users will eventually see a workflow status table similar to the following: - -.. code-block:: console - - CYCLE TASK JOBID STATE EXIT STATUS TRIES DURATION - ============================================================================================ - 201907220000 make_grid 66218006 SUCCEEDED 0 1 45.0 - 201907220000 make_orog 66218340 SUCCEEDED 0 1 372.0 - 201907220000 make_sfc_climo 66218575 SUCCEEDED 0 1 90.0 - 201907220000 smoke_dust 66218715 SUCCEEDED 0 1 38.0 - 201907220000 prepstart 66219117 SUCCEEDED 0 1 37.0 - 201907220000 get_extrn_ics 66218007 SUCCEEDED 0 1 63.0 - 201907220000 get_extrn_lbcs 66218008 SUCCEEDED 0 1 58.0 - 201907220000 make_ics_mem000 66218716 SUCCEEDED 0 1 152.0 - 201907220000 make_lbcs_mem000 66218717 SUCCEEDED 0 1 79.0 - 201907220000 run_fcst_mem000 66225732 SUCCEEDED 0 1 4462.0 - 201907220000 post_mem000_f000 66229719 SUCCEEDED 0 1 197.0 - 201907220000 post_mem000_f001 66229724 SUCCEEDED 0 1 198.0 - 201907220000 post_mem000_f002 66229720 SUCCEEDED 0 1 202.0 - 201907220000 post_mem000_f003 66229721 SUCCEEDED 0 1 208.0 - 201907220000 post_mem000_f004 66229722 SUCCEEDED 0 1 214.0 - 201907220000 post_mem000_f005 66229726 SUCCEEDED 0 1 216.0 - 201907220000 post_mem000_f006 66229723 SUCCEEDED 0 1 222.0 - =========================================================================================== - 201907220600 smoke_dust 66229725 SUCCEEDED 0 1 171.0 - 201907220600 prepstart 66230255 SUCCEEDED 0 1 102.0 - 201907220600 get_extrn_ics 66218009 SUCCEEDED 0 1 63.0 - 201907220600 get_extrn_lbcs 66218010 SUCCEEDED 0 1 58.0 - 201907220600 make_ics_mem000 66218718 SUCCEEDED 0 1 155.0 - 201907220600 make_lbcs_mem000 66218719 SUCCEEDED 0 1 79.0 - 201907220600 run_fcst_mem000 66230376 SUCCEEDED 0 1 4520.0 - 201907220600 post_mem000_f000 66330901 SUCCEEDED 0 1 198.0 - 201907220600 post_mem000_f001 66330897 SUCCEEDED 0 1 208.0 - 201907220600 post_mem000_f002 66330898 SUCCEEDED 0 1 216.0 - 201907220600 post_mem000_f003 66330899 SUCCEEDED 0 1 221.0 - 201907220600 post_mem000_f004 66330902 SUCCEEDED 0 1 216.0 - 201907220600 post_mem000_f005 66330903 SUCCEEDED 0 1 214.0 - 201907220600 post_mem000_f006 66330900 SUCCEEDED 0 1 216.0 - -If something goes wrong, users can check the log files, which are located by default in ``nco_dirs/test_smoke_dust/com/output/logs/20190722``. - - -WE2E Test for RRFS-SD -======================= - -Build the app for RRFS-SD: - -.. code-block:: console - - ./devbuild.sh -p=hera --smoke - -Add the WE2E test for RRFS-SD to the list file: - -.. code-block:: console - - cd /path/to/ufs-srweather-app/tests/WE2E - echo "smoke_dust_grid_RRFS_CONUS_3km_suite_HRRR_gf" >> my_tests.txt - -Run the WE2E test: - -.. code-block:: console - - $ ./run_WE2E_tests.py -t my_tests.txt -m hera -a gsd-fv3 -q - diff --git a/doc/UsersGuide/BuildingRunningTesting/index.rst b/doc/UsersGuide/BuildingRunningTesting/index.rst index 8a7c239852..4c23f39cb0 100644 --- a/doc/UsersGuide/BuildingRunningTesting/index.rst +++ b/doc/UsersGuide/BuildingRunningTesting/index.rst @@ -13,4 +13,4 @@ Building, Running, and Testing the SRW App Tutorial VXCases AQM - RRFS-SD + SRW-SD From 6289b30f14b8638af1d1bab5351efaa57bdabe4a Mon Sep 17 00:00:00 2001 From: gspetro-NOAA Date: Wed, 11 Sep 2024 13:20:57 -0400 Subject: [PATCH 03/24] add info on SRW-SD to Intro --- doc/UsersGuide/BackgroundInfo/Introduction.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/doc/UsersGuide/BackgroundInfo/Introduction.rst b/doc/UsersGuide/BackgroundInfo/Introduction.rst index f1a384e025..46511b522b 100644 --- a/doc/UsersGuide/BackgroundInfo/Introduction.rst +++ b/doc/UsersGuide/BackgroundInfo/Introduction.rst @@ -58,6 +58,7 @@ Building, Running, and Testing the SRW App * :numref:`Section %s: Tutorials ` walks users through different SRW App experiment cases and analysis of results. * :numref:`Section %s: METplus Verification Sample Cases ` explains how to run METplus verification as part of the workflow. * :numref:`Section %s: Air Quality Modeling ` provides information specific to air quality modeling (AQM). This feature is currently unsupported, so documentation may be behind the current state of development, which is progressing rapidly. However, this section is a starting point for those interested in AQM. + * :numref:`Section %s: SRW Smoke & Dust ` provides information specific to smoke and dust modeling. This feature is currently only supported on Hera, but it is a starting point for those interested in regional smoke & dust modeling. .. hint:: * To get started with the SRW App, it is recommended that users try one of the following options: From f00ea852ed20cc6fca46b539d4bc1a4649acb7e4 Mon Sep 17 00:00:00 2001 From: gspetro-NOAA Date: Wed, 11 Sep 2024 13:48:01 -0400 Subject: [PATCH 04/24] add -W flag to fail doc build on warning --- doc/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/Makefile b/doc/Makefile index c91f2f147b..9663ba3996 100644 --- a/doc/Makefile +++ b/doc/Makefile @@ -1,6 +1,6 @@ # Makefile for Sphinx documentation -SPHINXOPTS = -a -n #-W +SPHINXOPTS = -a -n -W SPHINXBUILD = sphinx-build SOURCEDIR = . BUILDDIR = build From 5105ed329ceb2114b71a2cba4ed963823acab3a5 Mon Sep 17 00:00:00 2001 From: gspetro-NOAA Date: Wed, 30 Oct 2024 12:25:40 -0400 Subject: [PATCH 05/24] add srw-sd rst --- .../BuildingRunningTesting/SRW-SD.rst | 268 ++++++++++++++++++ 1 file changed, 268 insertions(+) create mode 100644 doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst diff --git a/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst b/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst new file mode 100644 index 0000000000..e5740a625e --- /dev/null +++ b/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst @@ -0,0 +1,268 @@ +.. _srw-sd: + +===================================== +SRW Smoke & Dust (SRW-SD) Features +===================================== + +.. attention:: + + SRW-SD capabilities are a new SRW App feature supported only on Hera; on other systems, users can expect only limited support. + +This chapter provides instructions for running a sample six-hour forecast for July, 22, 2019 at 0z using SRW Smoke & Dust (SRW-SD) features. These features have been merged into the SRW App repository from the Rapid Refresh Forecast System (RRFS) repository. This forecast uses RAP data for :term:`ICs` and :term:`LBCs`, the ``RRFS_CONUS_3km`` predefined grid, and the ``FV3_HRRR_gf`` physics suite. This pysics suite is similar to the NOAA operational HRRR v4 suite (Dowell et al., 2022), with the addition of the Grell-Freitas deep convective parameterization. `Scientific documentation for the HRRR_gf suite `_ and `technical documentation `_ are available with the CCPP v7.0.0 release but may differ slightly from the version available in the SRW App. + +.. note:: + + Although this chapter is the primary documentation resource for running the SRW-SD configuration, users may need to refer to :numref:`Chapter %s ` and :numref:`Chapter %s ` for additional information on building and running the SRW App, respectively. + +Quick Start Guide (SRW-SD) +============================= + +.. attention:: + + These instructions should work smoothly on Hera, but users on other systems may need to make additional adjustments. + +Download the Code +------------------- + +Clone the |branch| branch of the authoritative SRW App repository: + +.. code-block:: console + + git clone -b smoke_dust https://github.com/chan-hoo/ufs-srweather-app + cd ufs-srweather-app + +.. COMMENT: Update clone command to reflect authoritative branch once features are merged in. + +Checkout Externals +--------------------- + +Users must run the ``checkout_externals`` script to collect (or "check out") the individual components of the SRW App (AQM version) from their respective GitHub repositories. + +.. code-block:: console + + ./manage_externals/checkout_externals -e Externals_smoke_dust.cfg + +Build the SRW App with AQM +----------------------------- + +On Hera, users can build the SRW App AQM binaries with the smoke argument: + +.. code-block:: console + + ./devbuild.sh -p= --smoke + +where ```` is ``hera``. The ``--smoke`` argument indicates the configuration/version of the application to build (i.e., SRW-SD). + +Building the SRW App with SRW-SD on other machines, including other :srw-wiki:`Level 1 ` platforms, is not currently guaranteed to work, and users may have to make adjustments to the modulefiles for their system. + +If SRW-SD builds correctly, users should see the standard executables listed in :numref:`Table %s ` in the ``ufs-srweather-app/exec`` directory. + +Load the |wflow_env| Environment +-------------------------------------------- + +Load the Python environment for the workflow: + +.. code-block:: console + + module use /path/to/ufs-srweather-app/modulefiles + module load wflow_ + conda activate srw_app + +where ```` is ``hera``. The workflow should load on other platforms listed under the ``MACHINE`` variable in :numref:`Section %s `, but users may need to adjust other elements of the process when running on those platforms. + +.. _srw-sd-config: + +Configure an Experiment +--------------------------- + +Users will need to configure their experiment by setting parameters in the ``config.yaml`` file. To start, users can copy a default experiment setting into ``config.yaml``: + +.. code-block:: console + + cd ush + cp config.smoke_dust.yaml config.yaml + +Users will need to change the ``ACCOUNT`` variable in ``config.yaml`` to an account they have access to. They may also wish to adjust other experiment settings. For more information on each task and variable, see :numref:`Section %s `. + +On Level 1 systems, users can find :term:`ICs/LBCs` for the SRW-SD sample case in the usual :ref:`input data locations ` under ``RAP/2019072200``. Users will need to add the following lines to ``task_get_extrn_*:`` in their ``config.yaml`` file, adjusting the file path to point to the correct data locations: + +.. code-block:: console + + task_get_extrn_ics: + USE_USER_STAGED_EXTRN_FILES: true + EXTRN_MDL_SOURCE_BASEDIR_ICS: /scratch1/NCEPDEV/nems/role.epic/UFS_SRW_data/develop/input_model_data/RAP/${yyyymmddhh} + task_get_extrn_lbcs: + USE_USER_STAGED_EXTRN_FILES: true + EXTRN_MDL_SOURCE_BASEDIR_LBCS: /scratch1/NCEPDEV/nems/role.epic/UFS_SRW_data/develop/input_model_data/RAP/${yyyymmddhh} + +Note that users on other systems will need to use the correct data path for their system. Currently, Hera is the only system supported, but the data is available on other Level 1 systems for those interested in tinkering with the workflow. + +.. COMMENT: Data not in bucket yet. Path needs changing. + Users can also download the data required for the community experiment from the `UFS SRW App Data Bucket `_. + +Users may also wish to change :term:`cron`-related parameters in ``config.yaml``. In the ``config.smoke_dust.yaml`` file, which was copied into ``config.yaml``, cron is used for automatic submission and resubmission of the workflow: + +.. code-block:: console + + workflow: + USE_CRON_TO_RELAUNCH: true + CRON_RELAUNCH_INTVL_MNTS: 3 + +This means that cron will submit the launch script every 3 minutes. Users may choose not to submit using cron or to submit at a different frequency. Note that users should create a crontab by running ``crontab -e`` the first time they use cron. + +When using the basic ``config.smoke_dust.yaml`` experiment, the usual pre-processing and colstart forecast tasks are used, because ``"parm/wflow/prep.yaml"`` appears in the list of workflow files in the ``rocoto: tasks: taskgroups:`` section of ``config.yaml`` (see :numref:`Section %s ` for task descriptions). To turn on AQM *post*-processing tasks in the workflow, include ``"parm/wflow/aqm_post.yaml"`` in the ``rocoto: tasks: taskgroups:`` section, too (see :numref:`Section %s ` for task descriptions). + +.. COMMENT: Update wflow info above! + + +.. _srw-sd-more-tasks: + +Additional SRW-SD Tasks +-------------------------- + +.. COMMENT: + :numref:`Figure %s ` illustrates the full non-:term:`DA ` SRW-SD workflow using a flowchart. + +Compared to the typical SRW App workflow, the SRW-SD has slightly different tasks for pre- and post-processing. As in the SRW App default workflow, the SRW-SD workflow uses the preprocessing tasks from ``prep.yaml``, but it adds smoke-and-dust-specific tasks from ``smoke_dust.yaml``. For post-processing, it uses the NCO-compliant ``upp_post.yaml`` instead of the usual ``post.yaml``. + +.. COMMENT: + .. _srw-sd-wflow: + + .. figure:: https://github.com/ufs-community/ufs-srweather-app/wiki/WorkflowImages/*.png + :alt: Flowchart of the SRW-SD tasks. + + *Workflow Structure of SRW-SD* + + +The new tasks for SRW-SD are shown in :numref:`Table %s `. + +.. _pre-srw-sd: + +.. list-table:: *Tasks for SRW-SD Pre- and Post-Processing* + :widths: 20 50 30 + :header-rows: 1 + + * - Task Name + - Description + - File + * - smoke_dust + - Generates the input data file for smoke and dust to be used in the UFS Weather Model. + - ``parm/wflow/smoke_dust.yaml`` + * - prepstart + - Adds the smoke and dust fields to the ICs file from the restart file in the previous cycle. + - ``parm/wflow/smoke_dust.yaml`` + * - upp_post + - Performs post-processing with UPP. + - ``parm/wflow/upp_post.yaml`` + + +.. COMMENT: Add info about Python scripts + Python scripts: + * ush/generate_fire_emissions.py + * ush/HWP_tools.py + * ush/interp_tools.py + * ush/add_smoke.py + + +Generate the Workflow +------------------------ + +Generate the workflow: + +.. code-block:: console + + ./generate_FV3LAM_wflow.py + +Run the Workflow +------------------ + +If ``USE_CRON_TO_RELAUNCH`` is set to true in ``config.yaml`` (see :numref:`Section %s `), the workflow will run automatically. If it was set to false, users must submit the workflow manually from the experiment directory: + +.. code-block:: console + + cd ../../expt_dirs/smoke_dust_conus3km + ./launch_FV3LAM_wflow.sh + +Repeat the launch command regularly until a SUCCESS or FAILURE message appears on the terminal window. + +Users may check experiment status from the experiment directory with either of the following commands: + +.. code-block:: console + + # Check the experiment status (for cron jobs) + rocotostat -w FV3LAM_wflow.xml -d FV3LAM_wflow.db -v 10 + + # Check the experiment status and relaunch the workflow (for manual jobs) + ./launch_FV3LAM_wflow.sh; tail -n 40 log.launch_FV3LAM_wflow + +To see a description of each of the AQM workflow tasks, see :numref:`Section %s `. + +.. _srw-sd-success: + +Experiment Output +-------------------- + +The workflow run is complete when all tasks display a "SUCCEEDED" message. If everything goes smoothly, users will eventually see a workflow status table similar to the following: + +.. code-block:: console + + CYCLE TASK JOBID STATE EXIT STATUS TRIES DURATION + ============================================================================================ + 201907220000 make_grid 66218006 SUCCEEDED 0 1 45.0 + 201907220000 make_orog 66218340 SUCCEEDED 0 1 372.0 + 201907220000 make_sfc_climo 66218575 SUCCEEDED 0 1 90.0 + 201907220000 smoke_dust 66218715 SUCCEEDED 0 1 38.0 + 201907220000 prepstart 66219117 SUCCEEDED 0 1 37.0 + 201907220000 get_extrn_ics 66218007 SUCCEEDED 0 1 63.0 + 201907220000 get_extrn_lbcs 66218008 SUCCEEDED 0 1 58.0 + 201907220000 make_ics_mem000 66218716 SUCCEEDED 0 1 152.0 + 201907220000 make_lbcs_mem000 66218717 SUCCEEDED 0 1 79.0 + 201907220000 run_fcst_mem000 66225732 SUCCEEDED 0 1 4462.0 + 201907220000 post_mem000_f000 66229719 SUCCEEDED 0 1 197.0 + 201907220000 post_mem000_f001 66229724 SUCCEEDED 0 1 198.0 + 201907220000 post_mem000_f002 66229720 SUCCEEDED 0 1 202.0 + 201907220000 post_mem000_f003 66229721 SUCCEEDED 0 1 208.0 + 201907220000 post_mem000_f004 66229722 SUCCEEDED 0 1 214.0 + 201907220000 post_mem000_f005 66229726 SUCCEEDED 0 1 216.0 + 201907220000 post_mem000_f006 66229723 SUCCEEDED 0 1 222.0 + =========================================================================================== + 201907220600 smoke_dust 66229725 SUCCEEDED 0 1 171.0 + 201907220600 prepstart 66230255 SUCCEEDED 0 1 102.0 + 201907220600 get_extrn_ics 66218009 SUCCEEDED 0 1 63.0 + 201907220600 get_extrn_lbcs 66218010 SUCCEEDED 0 1 58.0 + 201907220600 make_ics_mem000 66218718 SUCCEEDED 0 1 155.0 + 201907220600 make_lbcs_mem000 66218719 SUCCEEDED 0 1 79.0 + 201907220600 run_fcst_mem000 66230376 SUCCEEDED 0 1 4520.0 + 201907220600 post_mem000_f000 66330901 SUCCEEDED 0 1 198.0 + 201907220600 post_mem000_f001 66330897 SUCCEEDED 0 1 208.0 + 201907220600 post_mem000_f002 66330898 SUCCEEDED 0 1 216.0 + 201907220600 post_mem000_f003 66330899 SUCCEEDED 0 1 221.0 + 201907220600 post_mem000_f004 66330902 SUCCEEDED 0 1 216.0 + 201907220600 post_mem000_f005 66330903 SUCCEEDED 0 1 214.0 + 201907220600 post_mem000_f006 66330900 SUCCEEDED 0 1 216.0 + +If something goes wrong, users can check the log files, which are located by default in ``nco_dirs/test_smoke_dust/com/output/logs/20190722``. + + +WE2E Test for SRW-SD +======================= + +Build the app for SRW-SD: + +.. code-block:: console + + ./devbuild.sh -p=hera --smoke + +Add the WE2E test for SRW-SD to the list file: + +.. code-block:: console + + cd /path/to/ufs-srweather-app/tests/WE2E + echo "smoke_dust_grid_RRFS_CONUS_3km_suite_HRRR_gf" >> my_tests.txt + +Run the WE2E test: + +.. code-block:: console + + $ ./run_WE2E_tests.py -t my_tests.txt -m hera -a gsd-fv3 -q + From d09b2e29318eb744f27c5075aaa097c38ecdfd93 Mon Sep 17 00:00:00 2001 From: Ben Koziol Date: Thu, 31 Oct 2024 10:41:44 -0600 Subject: [PATCH 06/24] initial set of doc changes to align with main_aqm branch approach --- .../BuildingRunningTesting/SRW-SD.rst | 113 +++++++++--------- 1 file changed, 55 insertions(+), 58 deletions(-) diff --git a/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst b/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst index e5740a625e..88238d9da2 100644 --- a/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst +++ b/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst @@ -6,9 +6,9 @@ SRW Smoke & Dust (SRW-SD) Features .. attention:: - SRW-SD capabilities are a new SRW App feature supported only on Hera; on other systems, users can expect only limited support. + SRW-SD capabilities are a new SRW App feature supported on Hera and Orion/Hercules; on other systems, users can expect only limited support. -This chapter provides instructions for running a sample six-hour forecast for July, 22, 2019 at 0z using SRW Smoke & Dust (SRW-SD) features. These features have been merged into the SRW App repository from the Rapid Refresh Forecast System (RRFS) repository. This forecast uses RAP data for :term:`ICs` and :term:`LBCs`, the ``RRFS_CONUS_3km`` predefined grid, and the ``FV3_HRRR_gf`` physics suite. This pysics suite is similar to the NOAA operational HRRR v4 suite (Dowell et al., 2022), with the addition of the Grell-Freitas deep convective parameterization. `Scientific documentation for the HRRR_gf suite `_ and `technical documentation `_ are available with the CCPP v7.0.0 release but may differ slightly from the version available in the SRW App. +This chapter provides instructions for running a sample six-hour forecast for July, 22, 2019 at 0z using SRW Smoke & Dust (SRW-SD) features. These features have been merged into an SRW App feature branch from a UFS-WM Rapid Refresh Forecast System (RRFS) production branch. This forecast uses RAP data for :term:`ICs` and :term:`LBCs`, the ``RRFS_CONUS_3km`` predefined grid, and the ``FV3_HRRR_gf`` physics suite. This pysics suite is similar to the NOAA operational HRRR v4 suite (Dowell et al., 2022), with the addition of the Grell-Freitas deep convective parameterization. `Scientific documentation for the HRRR_gf suite `_ and `technical documentation `_ are available with the CCPP v7.0.0 release but may differ slightly from the version available in the SRW App. .. note:: @@ -19,7 +19,7 @@ Quick Start Guide (SRW-SD) .. attention:: - These instructions should work smoothly on Hera, but users on other systems may need to make additional adjustments. + These instructions should work smoothly on Hera and Orion/Hercules, but users on other systems may need to make additional adjustments. Download the Code ------------------- @@ -28,11 +28,9 @@ Clone the |branch| branch of the authoritative SRW App repository: .. code-block:: console - git clone -b smoke_dust https://github.com/chan-hoo/ufs-srweather-app + git clone -b main_aqm https://github.com/ufs-community/ufs-srweather-app cd ufs-srweather-app -.. COMMENT: Update clone command to reflect authoritative branch once features are merged in. - Checkout Externals --------------------- @@ -45,13 +43,11 @@ Users must run the ``checkout_externals`` script to collect (or "check out") the Build the SRW App with AQM ----------------------------- -On Hera, users can build the SRW App AQM binaries with the smoke argument: - .. code-block:: console - ./devbuild.sh -p= --smoke + ./app_build.sh -p= -where ```` is ``hera``. The ``--smoke`` argument indicates the configuration/version of the application to build (i.e., SRW-SD). +where ```` is ``hera``, ``orion``, or ``hercules``. Building the SRW App with SRW-SD on other machines, including other :srw-wiki:`Level 1 ` platforms, is not currently guaranteed to work, and users may have to make adjustments to the modulefiles for their system. @@ -60,15 +56,16 @@ If SRW-SD builds correctly, users should see the standard executables listed in Load the |wflow_env| Environment -------------------------------------------- -Load the Python environment for the workflow: +Load the workflow environment: .. code-block:: console + module purge + source /path/to/ufs-srweather-app/modulefiles/versions/run.ver_orion module use /path/to/ufs-srweather-app/modulefiles module load wflow_ - conda activate srw_app -where ```` is ``hera``. The workflow should load on other platforms listed under the ``MACHINE`` variable in :numref:`Section %s `, but users may need to adjust other elements of the process when running on those platforms. +where ```` is ``hera``, ``orion``, or ``hercules``. The workflow should load on other platforms listed under the ``MACHINE`` variable in :numref:`Section %s `, but users may need to adjust other elements of the process when running on those platforms. .. _srw-sd-config: @@ -84,18 +81,18 @@ Users will need to configure their experiment by setting parameters in the ``con Users will need to change the ``ACCOUNT`` variable in ``config.yaml`` to an account they have access to. They may also wish to adjust other experiment settings. For more information on each task and variable, see :numref:`Section %s `. -On Level 1 systems, users can find :term:`ICs/LBCs` for the SRW-SD sample case in the usual :ref:`input data locations ` under ``RAP/2019072200``. Users will need to add the following lines to ``task_get_extrn_*:`` in their ``config.yaml`` file, adjusting the file path to point to the correct data locations: +On Level 1 systems, users can find :term:`ICs/LBCs` for the SRW-SD sample case in the usual :ref:`input data locations ` under ``RAP/2019072200``. Users will need to switch the data directory for :term:`ICs/LBCs` if running on Orion or Hercules, on the following lines in ``config.yaml/task_get_extrn_*:``: .. code-block:: console task_get_extrn_ics: - USE_USER_STAGED_EXTRN_FILES: true - EXTRN_MDL_SOURCE_BASEDIR_ICS: /scratch1/NCEPDEV/nems/role.epic/UFS_SRW_data/develop/input_model_data/RAP/${yyyymmddhh} + EXTRN_MDL_SOURCE_BASEDIR_ICS: /scratch2/NCEPDEV/naqfc/Chan-hoo.Jeon/aqm_sample_data/RAP_DATA_SD/${yyyymmddhh} # hera +# EXTRN_MDL_SOURCE_BASEDIR_ICS: /work/noaa/epic/SRW-AQM_DATA/input_model_data/RAP/${yyyymmddhh} # orion/hercules task_get_extrn_lbcs: - USE_USER_STAGED_EXTRN_FILES: true - EXTRN_MDL_SOURCE_BASEDIR_LBCS: /scratch1/NCEPDEV/nems/role.epic/UFS_SRW_data/develop/input_model_data/RAP/${yyyymmddhh} + EXTRN_MDL_SOURCE_BASEDIR_LBCS: /scratch2/NCEPDEV/naqfc/Chan-hoo.Jeon/aqm_sample_data/RAP_DATA_SD/${yyyymmddhh} # hera +# EXTRN_MDL_SOURCE_BASEDIR_LBCS: /work/noaa/epic/SRW-AQM_DATA/input_model_data/RAP/${yyyymmddhh} # orion/hercules -Note that users on other systems will need to use the correct data path for their system. Currently, Hera is the only system supported, but the data is available on other Level 1 systems for those interested in tinkering with the workflow. +Note that users on other systems will need to use the correct data path for their system. Data is available on other Level 1 systems for those interested in tinkering with the workflow. .. COMMENT: Data not in bucket yet. Path needs changing. Users can also download the data required for the community experiment from the `UFS SRW App Data Bucket `_. @@ -110,7 +107,7 @@ Users may also wish to change :term:`cron`-related parameters in ``config.yaml`` This means that cron will submit the launch script every 3 minutes. Users may choose not to submit using cron or to submit at a different frequency. Note that users should create a crontab by running ``crontab -e`` the first time they use cron. -When using the basic ``config.smoke_dust.yaml`` experiment, the usual pre-processing and colstart forecast tasks are used, because ``"parm/wflow/prep.yaml"`` appears in the list of workflow files in the ``rocoto: tasks: taskgroups:`` section of ``config.yaml`` (see :numref:`Section %s ` for task descriptions). To turn on AQM *post*-processing tasks in the workflow, include ``"parm/wflow/aqm_post.yaml"`` in the ``rocoto: tasks: taskgroups:`` section, too (see :numref:`Section %s ` for task descriptions). +When using the basic ``config.smoke_dust.yaml`` experiment, the usual pre-processing and coldstart forecast tasks are used, because ``"parm/wflow/prep.yaml"`` appears in the list of workflow files in the ``rocoto: tasks: taskgroups:`` section of ``config.yaml`` (see :numref:`Section %s ` for task descriptions). To turn on AQM *post*-processing tasks in the workflow, include ``"parm/wflow/aqm_post.yaml"`` in the ``rocoto: tasks: taskgroups:`` section, too (see :numref:`Section %s ` for task descriptions). .. COMMENT: Update wflow info above! @@ -206,43 +203,43 @@ The workflow run is complete when all tasks display a "SUCCEEDED" message. If ev .. code-block:: console - CYCLE TASK JOBID STATE EXIT STATUS TRIES DURATION - ============================================================================================ - 201907220000 make_grid 66218006 SUCCEEDED 0 1 45.0 - 201907220000 make_orog 66218340 SUCCEEDED 0 1 372.0 - 201907220000 make_sfc_climo 66218575 SUCCEEDED 0 1 90.0 - 201907220000 smoke_dust 66218715 SUCCEEDED 0 1 38.0 - 201907220000 prepstart 66219117 SUCCEEDED 0 1 37.0 - 201907220000 get_extrn_ics 66218007 SUCCEEDED 0 1 63.0 - 201907220000 get_extrn_lbcs 66218008 SUCCEEDED 0 1 58.0 - 201907220000 make_ics_mem000 66218716 SUCCEEDED 0 1 152.0 - 201907220000 make_lbcs_mem000 66218717 SUCCEEDED 0 1 79.0 - 201907220000 run_fcst_mem000 66225732 SUCCEEDED 0 1 4462.0 - 201907220000 post_mem000_f000 66229719 SUCCEEDED 0 1 197.0 - 201907220000 post_mem000_f001 66229724 SUCCEEDED 0 1 198.0 - 201907220000 post_mem000_f002 66229720 SUCCEEDED 0 1 202.0 - 201907220000 post_mem000_f003 66229721 SUCCEEDED 0 1 208.0 - 201907220000 post_mem000_f004 66229722 SUCCEEDED 0 1 214.0 - 201907220000 post_mem000_f005 66229726 SUCCEEDED 0 1 216.0 - 201907220000 post_mem000_f006 66229723 SUCCEEDED 0 1 222.0 - =========================================================================================== - 201907220600 smoke_dust 66229725 SUCCEEDED 0 1 171.0 - 201907220600 prepstart 66230255 SUCCEEDED 0 1 102.0 - 201907220600 get_extrn_ics 66218009 SUCCEEDED 0 1 63.0 - 201907220600 get_extrn_lbcs 66218010 SUCCEEDED 0 1 58.0 - 201907220600 make_ics_mem000 66218718 SUCCEEDED 0 1 155.0 - 201907220600 make_lbcs_mem000 66218719 SUCCEEDED 0 1 79.0 - 201907220600 run_fcst_mem000 66230376 SUCCEEDED 0 1 4520.0 - 201907220600 post_mem000_f000 66330901 SUCCEEDED 0 1 198.0 - 201907220600 post_mem000_f001 66330897 SUCCEEDED 0 1 208.0 - 201907220600 post_mem000_f002 66330898 SUCCEEDED 0 1 216.0 - 201907220600 post_mem000_f003 66330899 SUCCEEDED 0 1 221.0 - 201907220600 post_mem000_f004 66330902 SUCCEEDED 0 1 216.0 - 201907220600 post_mem000_f005 66330903 SUCCEEDED 0 1 214.0 - 201907220600 post_mem000_f006 66330900 SUCCEEDED 0 1 216.0 - -If something goes wrong, users can check the log files, which are located by default in ``nco_dirs/test_smoke_dust/com/output/logs/20190722``. - +[orion-login smoke_dust_conus3km]$ rocotostat -w FV3LAM_wflow.xml -d FV3LAM_wflow.db -v 10 + CYCLE TASK JOBID STATE EXIT STATUS TRIES DURATION +================================================================================================================================ +201907220000 make_grid 18984137 SUCCEEDED 0 1 29.0 +201907220000 make_orog 18984148 SUCCEEDED 0 1 419.0 +201907220000 make_sfc_climo 18984184 SUCCEEDED 0 1 82.0 +201907220000 smoke_dust 18984186 SUCCEEDED 0 1 243.0 +201907220000 prepstart 18984324 SUCCEEDED 0 1 24.0 +201907220000 get_extrn_ics 18984138 SUCCEEDED 0 1 11.0 +201907220000 get_extrn_lbcs 18984149 SUCCEEDED 0 1 12.0 +201907220000 make_ics_mem000 18984185 SUCCEEDED 0 1 157.0 +201907220000 make_lbcs_mem000 18984187 SUCCEEDED 0 1 85.0 +201907220000 forecast_mem000 18984328 SUCCEEDED 0 1 6199.0 +201907220000 upp_post_mem000_f000 18988282 SUCCEEDED 0 1 212.0 +201907220000 upp_post_mem000_f001 18988283 SUCCEEDED 0 1 247.0 +201907220000 upp_post_mem000_f002 18988284 SUCCEEDED 0 1 258.0 +201907220000 upp_post_mem000_f003 18988285 SUCCEEDED 0 1 271.0 +201907220000 upp_post_mem000_f004 18988286 SUCCEEDED 0 1 284.0 +201907220000 upp_post_mem000_f005 18988287 SUCCEEDED 0 1 286.0 +201907220000 upp_post_mem000_f006 18988288 SUCCEEDED 0 1 292.0 +================================================================================================================================ +201907220600 smoke_dust 18988289 SUCCEEDED 0 1 225.0 +201907220600 prepstart 18988302 SUCCEEDED 0 1 112.0 +201907220600 get_extrn_ics 18984150 SUCCEEDED 0 1 10.0 +201907220600 get_extrn_lbcs 18984151 SUCCEEDED 0 1 14.0 +201907220600 make_ics_mem000 18984188 SUCCEEDED 0 1 152.0 +201907220600 make_lbcs_mem000 18984189 SUCCEEDED 0 1 79.0 +201907220600 forecast_mem000 18988311 SUCCEEDED 0 1 6191.0 +201907220600 upp_post_mem000_f000 18989105 SUCCEEDED 0 1 212.0 +201907220600 upp_post_mem000_f001 18989106 SUCCEEDED 0 1 283.0 +201907220600 upp_post_mem000_f002 18989107 SUCCEEDED 0 1 287.0 +201907220600 upp_post_mem000_f003 18989108 SUCCEEDED 0 1 284.0 +201907220600 upp_post_mem000_f004 18989109 SUCCEEDED 0 1 289.0 +201907220600 upp_post_mem000_f005 18989110 SUCCEEDED 0 1 294.0 +201907220600 upp_post_mem000_f006 18989111 SUCCEEDED 0 1 294.0 + +If something goes wrong, users can check the log files, which are located by default in ``nco_dirs/test_smoke_dust/com/output/logs/20190722``. WE2E Test for SRW-SD ======================= @@ -251,7 +248,7 @@ Build the app for SRW-SD: .. code-block:: console - ./devbuild.sh -p=hera --smoke + ./app_build.sh -p= Add the WE2E test for SRW-SD to the list file: From da41460cebbef3b4c1211eb7dc42594b1832b339 Mon Sep 17 00:00:00 2001 From: gspetro-NOAA Date: Thu, 31 Oct 2024 13:05:43 -0400 Subject: [PATCH 07/24] fix warnings --- doc/UsersGuide/CustomizingTheWorkflow/DefineWorkflow.rst | 2 +- doc/conf.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/UsersGuide/CustomizingTheWorkflow/DefineWorkflow.rst b/doc/UsersGuide/CustomizingTheWorkflow/DefineWorkflow.rst index 4ea8f7052d..c07238fa23 100644 --- a/doc/UsersGuide/CustomizingTheWorkflow/DefineWorkflow.rst +++ b/doc/UsersGuide/CustomizingTheWorkflow/DefineWorkflow.rst @@ -6,7 +6,7 @@ Defining an SRW App Workflow Many predefined workflows with optional variants exist within the Short-Range Weather Application, but the Application also includes the ability to define a new workflow from scratch. This functionality allows users to add tasks to the workflow to meet their scientific exploration needs. -Rocoto is the primary workflow manager software used by the UFS SRW App. Rocoto workflows are defined in an XML file (``FV3LAM_wflow.xml``) based on parameters set during experiment generation. This section explains how the Rocoto XML is built using a Jinja2 template (`Jinja docs here `__) and structured YAML files. The YAML follows the requirements in the `Rocoto documentation `__ with a few exceptions or additions outlined in this documentation. +Rocoto is the primary workflow manager software used by the UFS SRW App. Rocoto workflows are defined in an XML file (``FV3LAM_wflow.xml``) based on parameters set during experiment generation. This section explains how the Rocoto XML is built using a Jinja2 template (`Jinja docs here `_) and structured YAML files. The YAML follows the requirements in the `Rocoto documentation `_ with a few exceptions or additions outlined in this documentation. The Jinja2 Template =================== diff --git a/doc/conf.py b/doc/conf.py index f1f094d545..ed1be91039 100644 --- a/doc/conf.py +++ b/doc/conf.py @@ -38,7 +38,7 @@ nitpick_ignore = [('py:class', 'obj'),('py:class', 'yaml.dumper.Dumper'),('py:class', - 'xml.etree.ElementTree'),] + 'xml.etree.ElementTree'), ('py:class', 'Basemap')] # -- General configuration --------------------------------------------------- From 6a901a54c75e113ac296cfd5c9f86bd9daaaa715 Mon Sep 17 00:00:00 2001 From: Ben Koziol Date: Thu, 31 Oct 2024 11:16:09 -0600 Subject: [PATCH 08/24] fix type --- doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst b/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst index 88238d9da2..4f1545547c 100644 --- a/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst +++ b/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst @@ -8,7 +8,7 @@ SRW Smoke & Dust (SRW-SD) Features SRW-SD capabilities are a new SRW App feature supported on Hera and Orion/Hercules; on other systems, users can expect only limited support. -This chapter provides instructions for running a sample six-hour forecast for July, 22, 2019 at 0z using SRW Smoke & Dust (SRW-SD) features. These features have been merged into an SRW App feature branch from a UFS-WM Rapid Refresh Forecast System (RRFS) production branch. This forecast uses RAP data for :term:`ICs` and :term:`LBCs`, the ``RRFS_CONUS_3km`` predefined grid, and the ``FV3_HRRR_gf`` physics suite. This pysics suite is similar to the NOAA operational HRRR v4 suite (Dowell et al., 2022), with the addition of the Grell-Freitas deep convective parameterization. `Scientific documentation for the HRRR_gf suite `_ and `technical documentation `_ are available with the CCPP v7.0.0 release but may differ slightly from the version available in the SRW App. +This chapter provides instructions for running a sample six-hour forecast for July, 22, 2019 at 0z using SRW Smoke & Dust (SRW-SD) features. These features have been merged into an SRW App feature branch from a UFS-WM Rapid Refresh Forecast System (RRFS) production branch. This forecast uses RAP data for :term:`ICs` and :term:`LBCs`, the ``RRFS_CONUS_3km`` predefined grid, and the ``FV3_HRRR_gf`` physics suite. This physics suite is similar to the NOAA operational HRRR v4 suite (Dowell et al., 2022), with the addition of the Grell-Freitas deep convective parameterization. `Scientific documentation for the HRRR_gf suite `_ and `technical documentation `_ are available with the CCPP v7.0.0 release but may differ slightly from the version available in the SRW App. .. note:: From 16566c35682fea87f04226e229660414cdf2f1a2 Mon Sep 17 00:00:00 2001 From: Ben Koziol Date: Fri, 15 Nov 2024 09:09:55 -0700 Subject: [PATCH 09/24] additional documentation for data and ush scripts --- .../BuildingRunningTesting/SRW-SD.rst | 35 +++++++++++-------- 1 file changed, 21 insertions(+), 14 deletions(-) diff --git a/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst b/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst index 4f1545547c..c57e23720c 100644 --- a/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst +++ b/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst @@ -61,7 +61,7 @@ Load the workflow environment: .. code-block:: console module purge - source /path/to/ufs-srweather-app/modulefiles/versions/run.ver_orion + source /path/to/ufs-srweather-app/modulefiles/versions/run.ver_ module use /path/to/ufs-srweather-app/modulefiles module load wflow_ @@ -92,10 +92,12 @@ On Level 1 systems, users can find :term:`ICs/LBCs` for the SRW-SD sample case i EXTRN_MDL_SOURCE_BASEDIR_LBCS: /scratch2/NCEPDEV/naqfc/Chan-hoo.Jeon/aqm_sample_data/RAP_DATA_SD/${yyyymmddhh} # hera # EXTRN_MDL_SOURCE_BASEDIR_LBCS: /work/noaa/epic/SRW-AQM_DATA/input_model_data/RAP/${yyyymmddhh} # orion/hercules -Note that users on other systems will need to use the correct data path for their system. Data is available on other Level 1 systems for those interested in tinkering with the workflow. +In addition to the UFS-SRW fix files, additional data files are required to run the smoke and dust experiment: +* ``fix_smoke``: Contains analysis grids, regridding weights, a vegetation map, and dummy emissions (used when no in-situe emission files are available). +* ``data_smoke_dust/RAVE_fire``: Emission estimates and Fire Radiative Power (FRP) observations derived from `RAVE `_ satellite observations. -.. COMMENT: Data not in bucket yet. Path needs changing. - Users can also download the data required for the community experiment from the `UFS SRW App Data Bucket `_. +.. note:: + Smoke and dust fix file data has not been added to the S3 bucket. If you would like access to the fix file data necessary to run the application, please reach out the UFS-SRW team in a GitHub discussion. Users may also wish to change :term:`cron`-related parameters in ``config.yaml``. In the ``config.smoke_dust.yaml`` file, which was copied into ``config.yaml``, cron is used for automatic submission and resubmission of the workflow: @@ -109,9 +111,6 @@ This means that cron will submit the launch script every 3 minutes. Users may ch When using the basic ``config.smoke_dust.yaml`` experiment, the usual pre-processing and coldstart forecast tasks are used, because ``"parm/wflow/prep.yaml"`` appears in the list of workflow files in the ``rocoto: tasks: taskgroups:`` section of ``config.yaml`` (see :numref:`Section %s ` for task descriptions). To turn on AQM *post*-processing tasks in the workflow, include ``"parm/wflow/aqm_post.yaml"`` in the ``rocoto: tasks: taskgroups:`` section, too (see :numref:`Section %s ` for task descriptions). -.. COMMENT: Update wflow info above! - - .. _srw-sd-more-tasks: Additional SRW-SD Tasks @@ -152,14 +151,22 @@ The new tasks for SRW-SD are shown in :numref:`Table %s `. - Performs post-processing with UPP. - ``parm/wflow/upp_post.yaml`` +.. list-table:: *Python Scripts Used by Smoke and Dust Tasks* + :widths: 20 50 30 + :header-rows: 1 -.. COMMENT: Add info about Python scripts - Python scripts: - * ush/generate_fire_emissions.py - * ush/HWP_tools.py - * ush/interp_tools.py - * ush/add_smoke.py - + * - Script + - Description + * - ``ush/smoke_dust_add_smoke.py`` + - Transfers smoke and dust related variables from FV3 tracer outputs to GFS initial conditions. + * - ``ush/smoke_dust_fire_emiss_tools.py`` + - Calculates fire behavior and emission variables and creates input for the smoke and dust tracers. + * - ``ush/smoke_dust_generate_fire_emissions.py`` + - Entrypoint for the smoke and dust fire-related initial conditions generated during the ``smoke_dust`` task. + * - ``ush/smoke_dust_hwp_tools.py`` + - Utilities for calculating Hourly Wildfire Potential (HWP). + * - ``ush/smoke_dust_interp_tools.py`` + - Regridding utilities using `esmpy `_ that interpolate data from the RAVE observational grid to the RRFS grid. Generate the Workflow ------------------------ From 83bd7284f24c6d0f8e81c7aa4df3421faadc024f Mon Sep 17 00:00:00 2001 From: Gillian Petro <96886803+gspetro-NOAA@users.noreply.github.com> Date: Wed, 20 Nov 2024 00:23:00 -0500 Subject: [PATCH 10/24] Remove dash from UFS WM --- doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst b/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst index c57e23720c..d420a09674 100644 --- a/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst +++ b/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst @@ -8,7 +8,7 @@ SRW Smoke & Dust (SRW-SD) Features SRW-SD capabilities are a new SRW App feature supported on Hera and Orion/Hercules; on other systems, users can expect only limited support. -This chapter provides instructions for running a sample six-hour forecast for July, 22, 2019 at 0z using SRW Smoke & Dust (SRW-SD) features. These features have been merged into an SRW App feature branch from a UFS-WM Rapid Refresh Forecast System (RRFS) production branch. This forecast uses RAP data for :term:`ICs` and :term:`LBCs`, the ``RRFS_CONUS_3km`` predefined grid, and the ``FV3_HRRR_gf`` physics suite. This physics suite is similar to the NOAA operational HRRR v4 suite (Dowell et al., 2022), with the addition of the Grell-Freitas deep convective parameterization. `Scientific documentation for the HRRR_gf suite `_ and `technical documentation `_ are available with the CCPP v7.0.0 release but may differ slightly from the version available in the SRW App. +This chapter provides instructions for running a sample six-hour forecast for July, 22, 2019 at 0z using SRW Smoke & Dust (SRW-SD) features. These features have been merged into an SRW App feature branch from a UFS WM Rapid Refresh Forecast System (RRFS) production branch. This forecast uses RAP data for :term:`ICs` and :term:`LBCs`, the ``RRFS_CONUS_3km`` predefined grid, and the ``FV3_HRRR_gf`` physics suite. This physics suite is similar to the NOAA operational HRRR v4 suite (Dowell et al., 2022), with the addition of the Grell-Freitas deep convective parameterization. `Scientific documentation for the HRRR_gf suite `_ and `technical documentation `_ are available with the CCPP v7.0.0 release but may differ slightly from the version available in the SRW App. .. note:: From c53f2106c6b99d3874d9a225c007b958911993d6 Mon Sep 17 00:00:00 2001 From: Gillian Petro <96886803+gspetro-NOAA@users.noreply.github.com> Date: Wed, 20 Nov 2024 00:28:54 -0500 Subject: [PATCH 11/24] Minor edits --- doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst b/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst index d420a09674..37410bf6b0 100644 --- a/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst +++ b/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst @@ -158,11 +158,11 @@ The new tasks for SRW-SD are shown in :numref:`Table %s `. * - Script - Description * - ``ush/smoke_dust_add_smoke.py`` - - Transfers smoke and dust related variables from FV3 tracer outputs to GFS initial conditions. + - Transfers smoke and dust-related variables from FV3 tracer outputs to GFS initial conditions. * - ``ush/smoke_dust_fire_emiss_tools.py`` - Calculates fire behavior and emission variables and creates input for the smoke and dust tracers. * - ``ush/smoke_dust_generate_fire_emissions.py`` - - Entrypoint for the smoke and dust fire-related initial conditions generated during the ``smoke_dust`` task. + - Entry point for the smoke and dust fire-related initial conditions generated during the ``smoke_dust`` task. * - ``ush/smoke_dust_hwp_tools.py`` - Utilities for calculating Hourly Wildfire Potential (HWP). * - ``ush/smoke_dust_interp_tools.py`` From 686c4356c4076996c144f8e1c3c95be88849d980 Mon Sep 17 00:00:00 2001 From: Ben Koziol Date: Wed, 20 Nov 2024 14:12:59 -0700 Subject: [PATCH 12/24] address MR comments --- doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst b/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst index 37410bf6b0..5111fc2b57 100644 --- a/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst +++ b/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst @@ -81,7 +81,7 @@ Users will need to configure their experiment by setting parameters in the ``con Users will need to change the ``ACCOUNT`` variable in ``config.yaml`` to an account they have access to. They may also wish to adjust other experiment settings. For more information on each task and variable, see :numref:`Section %s `. -On Level 1 systems, users can find :term:`ICs/LBCs` for the SRW-SD sample case in the usual :ref:`input data locations ` under ``RAP/2019072200``. Users will need to switch the data directory for :term:`ICs/LBCs` if running on Orion or Hercules, on the following lines in ``config.yaml/task_get_extrn_*:``: +If running on Orion or Hercules, users will need to change the data paths to :term:`ICs/LBCs` on the following lines in ``config.yaml/task_get_extrn_*:``: .. code-block:: console @@ -92,12 +92,12 @@ On Level 1 systems, users can find :term:`ICs/LBCs` for the SRW-SD sample case i EXTRN_MDL_SOURCE_BASEDIR_LBCS: /scratch2/NCEPDEV/naqfc/Chan-hoo.Jeon/aqm_sample_data/RAP_DATA_SD/${yyyymmddhh} # hera # EXTRN_MDL_SOURCE_BASEDIR_LBCS: /work/noaa/epic/SRW-AQM_DATA/input_model_data/RAP/${yyyymmddhh} # orion/hercules -In addition to the UFS-SRW fix files, additional data files are required to run the smoke and dust experiment: -* ``fix_smoke``: Contains analysis grids, regridding weights, a vegetation map, and dummy emissions (used when no in-situe emission files are available). +In addition to the UFS SRW fixed files, additional data files are required to run the smoke and dust experiment: +* ``fix_smoke``: Contains analysis grids, regridding weights, a vegetation map, and dummy emissions (used when no in situ emission files are available). * ``data_smoke_dust/RAVE_fire``: Emission estimates and Fire Radiative Power (FRP) observations derived from `RAVE `_ satellite observations. .. note:: - Smoke and dust fix file data has not been added to the S3 bucket. If you would like access to the fix file data necessary to run the application, please reach out the UFS-SRW team in a GitHub discussion. + Smoke and dust fixed file data has not been added to the `SRW App data bucket `_. Users and developers who would like access to the fixed file data necessary to run the application should reach out the UFS SRW team in a :srw-repo:`GitHub Discussion `. Users may also wish to change :term:`cron`-related parameters in ``config.yaml``. In the ``config.smoke_dust.yaml`` file, which was copied into ``config.yaml``, cron is used for automatic submission and resubmission of the workflow: From 5593d949f1cd85f534557b32e38dabc766e12b09 Mon Sep 17 00:00:00 2001 From: Ben Koziol Date: Thu, 21 Nov 2024 09:08:18 -0700 Subject: [PATCH 13/24] update path to remove user directory --- doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst b/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst index 5111fc2b57..c3dbd18ce1 100644 --- a/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst +++ b/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst @@ -86,10 +86,10 @@ If running on Orion or Hercules, users will need to change the data paths to :te .. code-block:: console task_get_extrn_ics: - EXTRN_MDL_SOURCE_BASEDIR_ICS: /scratch2/NCEPDEV/naqfc/Chan-hoo.Jeon/aqm_sample_data/RAP_DATA_SD/${yyyymmddhh} # hera + EXTRN_MDL_SOURCE_BASEDIR_ICS: /scratch2/NAGAPE/epic/SRW-AQM_DATA/data_smoke_dust/RAP_DATA_SD/${yyyymmddhh} # hera # EXTRN_MDL_SOURCE_BASEDIR_ICS: /work/noaa/epic/SRW-AQM_DATA/input_model_data/RAP/${yyyymmddhh} # orion/hercules task_get_extrn_lbcs: - EXTRN_MDL_SOURCE_BASEDIR_LBCS: /scratch2/NCEPDEV/naqfc/Chan-hoo.Jeon/aqm_sample_data/RAP_DATA_SD/${yyyymmddhh} # hera + EXTRN_MDL_SOURCE_BASEDIR_LBCS: /scratch2/NAGAPE/epic/SRW-AQM_DATA/data_smoke_dust/RAP_DATA_SD/${yyyymmddhh} # hera # EXTRN_MDL_SOURCE_BASEDIR_LBCS: /work/noaa/epic/SRW-AQM_DATA/input_model_data/RAP/${yyyymmddhh} # orion/hercules In addition to the UFS SRW fixed files, additional data files are required to run the smoke and dust experiment: From 089ac63bc07be4ebe6c90ce5c1b6705bc01cd9c4 Mon Sep 17 00:00:00 2001 From: Gillian Petro <96886803+gspetro-NOAA@users.noreply.github.com> Date: Fri, 22 Nov 2024 17:37:34 -0500 Subject: [PATCH 14/24] fix manage_externals command --- doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst b/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst index c3dbd18ce1..aed619fbf5 100644 --- a/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst +++ b/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst @@ -29,7 +29,7 @@ Clone the |branch| branch of the authoritative SRW App repository: .. code-block:: console git clone -b main_aqm https://github.com/ufs-community/ufs-srweather-app - cd ufs-srweather-app + cd ufs-srweather-app/sorc Checkout Externals --------------------- From 0631acd246b8d26a20a89f756ba3b0a5101389ac Mon Sep 17 00:00:00 2001 From: gspetro-NOAA Date: Mon, 25 Nov 2024 10:32:49 -0500 Subject: [PATCH 15/24] minor updates & formatting --- .../BuildingRunningTesting/SRW-SD.rst | 93 ++++++++++--------- .../BuildingRunningTesting/index.rst | 4 - 2 files changed, 47 insertions(+), 50 deletions(-) diff --git a/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst b/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst index aed619fbf5..8b106cc4ca 100644 --- a/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst +++ b/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst @@ -61,7 +61,7 @@ Load the workflow environment: .. code-block:: console module purge - source /path/to/ufs-srweather-app/modulefiles/versions/run.ver_ + source /path/to/ufs-srweather-app/versions/run.ver_ module use /path/to/ufs-srweather-app/modulefiles module load wflow_ @@ -76,25 +76,26 @@ Users will need to configure their experiment by setting parameters in the ``con .. code-block:: console - cd ush + cd /path/to/ufs-srweather-app/parm cp config.smoke_dust.yaml config.yaml -Users will need to change the ``ACCOUNT`` variable in ``config.yaml`` to an account they have access to. They may also wish to adjust other experiment settings. For more information on each task and variable, see :numref:`Section %s `. +Users will need to change the ``ACCOUNT`` variable in ``config.yaml`` to an account they have access to. They will also need to indicate which ``MACHINE`` they are working on. Users may also wish to adjust other experiment settings. For more information on each task and variable, see :numref:`Section %s `. -If running on Orion or Hercules, users will need to change the data paths to :term:`ICs/LBCs` on the following lines in ``config.yaml/task_get_extrn_*:``: +If running on Orion or Hercules, users will need to change the data paths to :term:`ICs/LBCs` on the following lines in the ``task_get_extrn_*:`` sections of ``config.yaml`` by commenting out the Hera lines and uncommenting the orion/hercules lines: .. code-block:: console task_get_extrn_ics: - EXTRN_MDL_SOURCE_BASEDIR_ICS: /scratch2/NAGAPE/epic/SRW-AQM_DATA/data_smoke_dust/RAP_DATA_SD/${yyyymmddhh} # hera -# EXTRN_MDL_SOURCE_BASEDIR_ICS: /work/noaa/epic/SRW-AQM_DATA/input_model_data/RAP/${yyyymmddhh} # orion/hercules + # EXTRN_MDL_SOURCE_BASEDIR_ICS: /scratch2/NAGAPE/epic/SRW-AQM_DATA/data_smoke_dust/RAP_DATA_SD/${yyyymmddhh} # hera + EXTRN_MDL_SOURCE_BASEDIR_ICS: /work/noaa/epic/SRW-AQM_DATA/input_model_data/RAP/${yyyymmddhh} # orion/hercules task_get_extrn_lbcs: - EXTRN_MDL_SOURCE_BASEDIR_LBCS: /scratch2/NAGAPE/epic/SRW-AQM_DATA/data_smoke_dust/RAP_DATA_SD/${yyyymmddhh} # hera -# EXTRN_MDL_SOURCE_BASEDIR_LBCS: /work/noaa/epic/SRW-AQM_DATA/input_model_data/RAP/${yyyymmddhh} # orion/hercules + # EXTRN_MDL_SOURCE_BASEDIR_LBCS: /scratch2/NAGAPE/epic/SRW-AQM_DATA/data_smoke_dust/RAP_DATA_SD/${yyyymmddhh} # hera + EXTRN_MDL_SOURCE_BASEDIR_LBCS: /work/noaa/epic/SRW-AQM_DATA/input_model_data/RAP/${yyyymmddhh} # orion/hercules In addition to the UFS SRW fixed files, additional data files are required to run the smoke and dust experiment: -* ``fix_smoke``: Contains analysis grids, regridding weights, a vegetation map, and dummy emissions (used when no in situ emission files are available). -* ``data_smoke_dust/RAVE_fire``: Emission estimates and Fire Radiative Power (FRP) observations derived from `RAVE `_ satellite observations. + + * ``fix_smoke``: Contains analysis grids, regridding weights, a vegetation map, and dummy emissions (used when no in situ emission files are available). + * ``data_smoke_dust/RAVE_fire``: Emission estimates and Fire Radiative Power (FRP) observations derived from `RAVE `_ satellite observations. .. note:: Smoke and dust fixed file data has not been added to the `SRW App data bucket `_. Users and developers who would like access to the fixed file data necessary to run the application should reach out the UFS SRW team in a :srw-repo:`GitHub Discussion `. @@ -152,7 +153,7 @@ The new tasks for SRW-SD are shown in :numref:`Table %s `. - ``parm/wflow/upp_post.yaml`` .. list-table:: *Python Scripts Used by Smoke and Dust Tasks* - :widths: 20 50 30 + :widths: 20 50 :header-rows: 1 * - Script @@ -210,41 +211,41 @@ The workflow run is complete when all tasks display a "SUCCEEDED" message. If ev .. code-block:: console -[orion-login smoke_dust_conus3km]$ rocotostat -w FV3LAM_wflow.xml -d FV3LAM_wflow.db -v 10 - CYCLE TASK JOBID STATE EXIT STATUS TRIES DURATION -================================================================================================================================ -201907220000 make_grid 18984137 SUCCEEDED 0 1 29.0 -201907220000 make_orog 18984148 SUCCEEDED 0 1 419.0 -201907220000 make_sfc_climo 18984184 SUCCEEDED 0 1 82.0 -201907220000 smoke_dust 18984186 SUCCEEDED 0 1 243.0 -201907220000 prepstart 18984324 SUCCEEDED 0 1 24.0 -201907220000 get_extrn_ics 18984138 SUCCEEDED 0 1 11.0 -201907220000 get_extrn_lbcs 18984149 SUCCEEDED 0 1 12.0 -201907220000 make_ics_mem000 18984185 SUCCEEDED 0 1 157.0 -201907220000 make_lbcs_mem000 18984187 SUCCEEDED 0 1 85.0 -201907220000 forecast_mem000 18984328 SUCCEEDED 0 1 6199.0 -201907220000 upp_post_mem000_f000 18988282 SUCCEEDED 0 1 212.0 -201907220000 upp_post_mem000_f001 18988283 SUCCEEDED 0 1 247.0 -201907220000 upp_post_mem000_f002 18988284 SUCCEEDED 0 1 258.0 -201907220000 upp_post_mem000_f003 18988285 SUCCEEDED 0 1 271.0 -201907220000 upp_post_mem000_f004 18988286 SUCCEEDED 0 1 284.0 -201907220000 upp_post_mem000_f005 18988287 SUCCEEDED 0 1 286.0 -201907220000 upp_post_mem000_f006 18988288 SUCCEEDED 0 1 292.0 -================================================================================================================================ -201907220600 smoke_dust 18988289 SUCCEEDED 0 1 225.0 -201907220600 prepstart 18988302 SUCCEEDED 0 1 112.0 -201907220600 get_extrn_ics 18984150 SUCCEEDED 0 1 10.0 -201907220600 get_extrn_lbcs 18984151 SUCCEEDED 0 1 14.0 -201907220600 make_ics_mem000 18984188 SUCCEEDED 0 1 152.0 -201907220600 make_lbcs_mem000 18984189 SUCCEEDED 0 1 79.0 -201907220600 forecast_mem000 18988311 SUCCEEDED 0 1 6191.0 -201907220600 upp_post_mem000_f000 18989105 SUCCEEDED 0 1 212.0 -201907220600 upp_post_mem000_f001 18989106 SUCCEEDED 0 1 283.0 -201907220600 upp_post_mem000_f002 18989107 SUCCEEDED 0 1 287.0 -201907220600 upp_post_mem000_f003 18989108 SUCCEEDED 0 1 284.0 -201907220600 upp_post_mem000_f004 18989109 SUCCEEDED 0 1 289.0 -201907220600 upp_post_mem000_f005 18989110 SUCCEEDED 0 1 294.0 -201907220600 upp_post_mem000_f006 18989111 SUCCEEDED 0 1 294.0 + [orion-login smoke_dust_conus3km]$ rocotostat -w FV3LAM_wflow.xml -d FV3LAM_wflow.db -v 10 + CYCLE TASK JOBID STATE EXIT STATUS TRIES DURATION + ============================================================================================== + 201907220000 make_grid 18984137 SUCCEEDED 0 1 29.0 + 201907220000 make_orog 18984148 SUCCEEDED 0 1 419.0 + 201907220000 make_sfc_climo 18984184 SUCCEEDED 0 1 82.0 + 201907220000 smoke_dust 18984186 SUCCEEDED 0 1 243.0 + 201907220000 prepstart 18984324 SUCCEEDED 0 1 24.0 + 201907220000 get_extrn_ics 18984138 SUCCEEDED 0 1 11.0 + 201907220000 get_extrn_lbcs 18984149 SUCCEEDED 0 1 12.0 + 201907220000 make_ics_mem000 18984185 SUCCEEDED 0 1 157.0 + 201907220000 make_lbcs_mem000 18984187 SUCCEEDED 0 1 85.0 + 201907220000 forecast_mem000 18984328 SUCCEEDED 0 1 6199.0 + 201907220000 upp_post_mem000_f000 18988282 SUCCEEDED 0 1 212.0 + 201907220000 upp_post_mem000_f001 18988283 SUCCEEDED 0 1 247.0 + 201907220000 upp_post_mem000_f002 18988284 SUCCEEDED 0 1 258.0 + 201907220000 upp_post_mem000_f003 18988285 SUCCEEDED 0 1 271.0 + 201907220000 upp_post_mem000_f004 18988286 SUCCEEDED 0 1 284.0 + 201907220000 upp_post_mem000_f005 18988287 SUCCEEDED 0 1 286.0 + 201907220000 upp_post_mem000_f006 18988288 SUCCEEDED 0 1 292.0 + ============================================================================================== + 201907220600 smoke_dust 18988289 SUCCEEDED 0 1 225.0 + 201907220600 prepstart 18988302 SUCCEEDED 0 1 112.0 + 201907220600 get_extrn_ics 18984150 SUCCEEDED 0 1 10.0 + 201907220600 get_extrn_lbcs 18984151 SUCCEEDED 0 1 14.0 + 201907220600 make_ics_mem000 18984188 SUCCEEDED 0 1 152.0 + 201907220600 make_lbcs_mem000 18984189 SUCCEEDED 0 1 79.0 + 201907220600 forecast_mem000 18988311 SUCCEEDED 0 1 6191.0 + 201907220600 upp_post_mem000_f000 18989105 SUCCEEDED 0 1 212.0 + 201907220600 upp_post_mem000_f001 18989106 SUCCEEDED 0 1 283.0 + 201907220600 upp_post_mem000_f002 18989107 SUCCEEDED 0 1 287.0 + 201907220600 upp_post_mem000_f003 18989108 SUCCEEDED 0 1 284.0 + 201907220600 upp_post_mem000_f004 18989109 SUCCEEDED 0 1 289.0 + 201907220600 upp_post_mem000_f005 18989110 SUCCEEDED 0 1 294.0 + 201907220600 upp_post_mem000_f006 18989111 SUCCEEDED 0 1 294.0 If something goes wrong, users can check the log files, which are located by default in ``nco_dirs/test_smoke_dust/com/output/logs/20190722``. diff --git a/doc/UsersGuide/BuildingRunningTesting/index.rst b/doc/UsersGuide/BuildingRunningTesting/index.rst index 1989c6d0a0..a370d9d036 100644 --- a/doc/UsersGuide/BuildingRunningTesting/index.rst +++ b/doc/UsersGuide/BuildingRunningTesting/index.rst @@ -3,7 +3,6 @@ Building, Running, and Testing the SRW App .. toctree:: :maxdepth: 3 - Quickstart ContainerQuickstart @@ -13,8 +12,5 @@ Building, Running, and Testing the SRW App Tutorial VXCases AQM -<<<<<<< HEAD SRW-SD -======= FIRE ->>>>>>> a641c94373c501b9a14d297a32686a906a6b5c61 From 72684796b216b71032bc0137e35b0c6749c64ef2 Mon Sep 17 00:00:00 2001 From: gspetro-NOAA Date: Mon, 25 Nov 2024 11:58:41 -0500 Subject: [PATCH 16/24] minor updates --- doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst b/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst index 8b106cc4ca..1d4f0b3886 100644 --- a/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst +++ b/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst @@ -100,7 +100,7 @@ In addition to the UFS SRW fixed files, additional data files are required to ru .. note:: Smoke and dust fixed file data has not been added to the `SRW App data bucket `_. Users and developers who would like access to the fixed file data necessary to run the application should reach out the UFS SRW team in a :srw-repo:`GitHub Discussion `. -Users may also wish to change :term:`cron`-related parameters in ``config.yaml``. In the ``config.smoke_dust.yaml`` file, which was copied into ``config.yaml``, cron is used for automatic submission and resubmission of the workflow: +Users may also wish to change :term:`cron`-related parameters in ``config.yaml``. In the ``config.smoke_dust.yaml`` file, which was copied into ``config.yaml``, cron can be used for automatic submission and resubmission of the workflow by setting the following variables: .. code-block:: console @@ -152,6 +152,10 @@ The new tasks for SRW-SD are shown in :numref:`Table %s `. - Performs post-processing with UPP. - ``parm/wflow/upp_post.yaml`` +The Python scripts listed in :numref:`Table %s ` are used to perform data processing and calculations required for the SRW-SD forecast. + +.. _sd-scripts: + .. list-table:: *Python Scripts Used by Smoke and Dust Tasks* :widths: 20 50 :header-rows: 1 @@ -252,7 +256,7 @@ If something goes wrong, users can check the log files, which are located by def WE2E Test for SRW-SD ======================= -Build the app for SRW-SD: +There is an SRW-SD Workflow End-to-End (WE2E) test in the SRW App repository that tests the configuration described in this chapter. To run the experiment as a WE2E tests, first build the app for SRW-SD: .. code-block:: console From 3e64546cbfc9e1e3ac579ca4060b38608477136f Mon Sep 17 00:00:00 2001 From: gspetro-NOAA Date: Mon, 25 Nov 2024 12:51:49 -0500 Subject: [PATCH 17/24] update we2e test section --- doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst b/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst index 1d4f0b3886..4d046071c1 100644 --- a/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst +++ b/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst @@ -256,7 +256,7 @@ If something goes wrong, users can check the log files, which are located by def WE2E Test for SRW-SD ======================= -There is an SRW-SD Workflow End-to-End (WE2E) test in the SRW App repository that tests the configuration described in this chapter. To run the experiment as a WE2E tests, first build the app for SRW-SD: +There is a SRW-SD Workflow End-to-End (WE2E) test in the SRW App repository that tests the configuration described in this chapter. To run the experiment as a WE2E tests, first build the app for SRW-SD: .. code-block:: console @@ -269,9 +269,8 @@ Add the WE2E test for SRW-SD to the list file: cd /path/to/ufs-srweather-app/tests/WE2E echo "smoke_dust_grid_RRFS_CONUS_3km_suite_HRRR_gf" >> my_tests.txt -Run the WE2E test: +Run the WE2E test, adjusting the command below to use the correct machine (``-m``) and account (``-a``): .. code-block:: console $ ./run_WE2E_tests.py -t my_tests.txt -m hera -a gsd-fv3 -q - From c5eb734cfba5af0aea52cdcbfb117de95da623d1 Mon Sep 17 00:00:00 2001 From: gspetro-NOAA Date: Mon, 25 Nov 2024 13:08:23 -0500 Subject: [PATCH 18/24] fix redirected links --- doc/ContribGuide/contributing.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/ContribGuide/contributing.rst b/doc/ContribGuide/contributing.rst index 0f7231e265..7576d62cfd 100644 --- a/doc/ContribGuide/contributing.rst +++ b/doc/ContribGuide/contributing.rst @@ -12,7 +12,7 @@ Fork and PR Overview Contributions to the ``ufs-srweather-app`` project are made via a :github-docs:`Fork` and :github-docs:`Pull Request (PR)` model. GitHub provides a thorough description of this contribution model in their `Contributing to a project` :github-docs:`Quickstart`, but the steps, with respect to ``ufs-srweather-app`` contributions, can be summarized as: #. :github-docs:`Create an issue ` to document proposed changes. -#. :github-docs:`Fork` the :srw-repo:`ufs-srweather-app repository<>` into your personal GitHub account. +#. :github-docs:`Fork` the :srw-repo:`ufs-srweather-app repository<>` into your personal GitHub account. #. :github-docs:`Clone` your fork onto your development system. #. :github-docs:`Create a branch` in your clone for your changes. All development should take place on a branch, *not* on ``develop``. #. :github-docs:`Make, commit, and push changes` in your clone / to your fork. @@ -25,7 +25,7 @@ Development and Testing Process ================================= #. **Create issue:** Open an :srw-repo:`issue ` in the ``ufs-srweather-app`` to document proposed changes. See :ref:`Opening an Issue ` for detailed instructions. -#. **Fork & Clone the SRW App:** :github-docs:`Fork` the :srw-repo:`ufs-srweather-app repository<>` into your personal GitHub account and :github-docs:`clone` your fork onto your development system if you have not already done so. +#. **Fork & Clone the SRW App:** :github-docs:`Fork` the :srw-repo:`ufs-srweather-app repository<>` into your personal GitHub account and :github-docs:`clone` your fork onto your development system if you have not already done so. #. **Create a branch:** in your clone for your changes. All development should take place on a branch, not on ``develop``. Branches should be named as follows, where ``[name]`` is a one-word description of the branch: * ``bugfix/[name]``: Fixes a demonstrably incorrect portion of code From 4a5ff22908285621c297d4ce6c5c3f2bb69f4e7a Mon Sep 17 00:00:00 2001 From: gspetro-NOAA Date: Mon, 25 Nov 2024 13:59:33 -0500 Subject: [PATCH 19/24] remove srw-sd we2e section --- .../BuildingRunningTesting/SRW-SD.rst | 22 ------------------- 1 file changed, 22 deletions(-) diff --git a/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst b/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst index 4d046071c1..cbd576d322 100644 --- a/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst +++ b/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst @@ -252,25 +252,3 @@ The workflow run is complete when all tasks display a "SUCCEEDED" message. If ev 201907220600 upp_post_mem000_f006 18989111 SUCCEEDED 0 1 294.0 If something goes wrong, users can check the log files, which are located by default in ``nco_dirs/test_smoke_dust/com/output/logs/20190722``. - -WE2E Test for SRW-SD -======================= - -There is a SRW-SD Workflow End-to-End (WE2E) test in the SRW App repository that tests the configuration described in this chapter. To run the experiment as a WE2E tests, first build the app for SRW-SD: - -.. code-block:: console - - ./app_build.sh -p= - -Add the WE2E test for SRW-SD to the list file: - -.. code-block:: console - - cd /path/to/ufs-srweather-app/tests/WE2E - echo "smoke_dust_grid_RRFS_CONUS_3km_suite_HRRR_gf" >> my_tests.txt - -Run the WE2E test, adjusting the command below to use the correct machine (``-m``) and account (``-a``): - -.. code-block:: console - - $ ./run_WE2E_tests.py -t my_tests.txt -m hera -a gsd-fv3 -q From 6ea6c26ec64f08a16ba66991b55a86f74a76dd46 Mon Sep 17 00:00:00 2001 From: gspetro-NOAA Date: Mon, 25 Nov 2024 15:13:11 -0500 Subject: [PATCH 20/24] misc edits --- .../BuildingRunningTesting/SRW-SD.rst | 24 +++++-------------- 1 file changed, 6 insertions(+), 18 deletions(-) diff --git a/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst b/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst index cbd576d322..c25f61c100 100644 --- a/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst +++ b/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst @@ -8,7 +8,7 @@ SRW Smoke & Dust (SRW-SD) Features SRW-SD capabilities are a new SRW App feature supported on Hera and Orion/Hercules; on other systems, users can expect only limited support. -This chapter provides instructions for running a sample six-hour forecast for July, 22, 2019 at 0z using SRW Smoke & Dust (SRW-SD) features. These features have been merged into an SRW App feature branch from a UFS WM Rapid Refresh Forecast System (RRFS) production branch. This forecast uses RAP data for :term:`ICs` and :term:`LBCs`, the ``RRFS_CONUS_3km`` predefined grid, and the ``FV3_HRRR_gf`` physics suite. This physics suite is similar to the NOAA operational HRRR v4 suite (Dowell et al., 2022), with the addition of the Grell-Freitas deep convective parameterization. `Scientific documentation for the HRRR_gf suite `_ and `technical documentation `_ are available with the CCPP v7.0.0 release but may differ slightly from the version available in the SRW App. +This chapter provides instructions for running a sample six-hour forecast for July 22, 2019 at 0z using SRW Smoke & Dust (SRW-SD) features. These features have been merged into an SRW App feature branch from a UFS WM Rapid Refresh Forecast System (RRFS) production branch. This forecast uses RAP data for :term:`ICs` and :term:`LBCs`, the ``RRFS_CONUS_3km`` predefined grid, and the ``FV3_HRRR_gf`` physics suite. This physics suite is similar to the NOAA operational HRRR v4 suite (Dowell et al., 2022), with the addition of the Grell-Freitas deep convective parameterization. `Scientific documentation for the HRRR_gf suite `_ and `technical documentation `_ are available with the CCPP v7.0.0 release but may differ slightly from the version available in the SRW App. .. note:: @@ -40,8 +40,8 @@ Users must run the ``checkout_externals`` script to collect (or "check out") the ./manage_externals/checkout_externals -e Externals_smoke_dust.cfg -Build the SRW App with AQM ------------------------------ +Build the SRW App +------------------ .. code-block:: console @@ -79,9 +79,9 @@ Users will need to configure their experiment by setting parameters in the ``con cd /path/to/ufs-srweather-app/parm cp config.smoke_dust.yaml config.yaml -Users will need to change the ``ACCOUNT`` variable in ``config.yaml`` to an account they have access to. They will also need to indicate which ``MACHINE`` they are working on. Users may also wish to adjust other experiment settings. For more information on each task and variable, see :numref:`Section %s `. +Users will need to change the ``ACCOUNT`` variable in ``config.yaml`` to an account that they have access to. They will also need to indicate which ``MACHINE`` they are working on. Users may also wish to adjust other experiment settings. For more information on each task and variable, see :numref:`Section %s `. -If running on Orion or Hercules, users will need to change the data paths to :term:`ICs/LBCs` on the following lines in the ``task_get_extrn_*:`` sections of ``config.yaml`` by commenting out the Hera lines and uncommenting the orion/hercules lines: +If running on Orion or Hercules, users will need to change the data paths to :term:`ICs/LBCs` on the following lines in the ``task_get_extrn_*:`` sections of ``config.yaml`` by commenting out the Hera lines and uncommenting the Orion/Hercules lines: .. code-block:: console @@ -117,20 +117,10 @@ When using the basic ``config.smoke_dust.yaml`` experiment, the usual pre-proces Additional SRW-SD Tasks -------------------------- -.. COMMENT: - :numref:`Figure %s ` illustrates the full non-:term:`DA ` SRW-SD workflow using a flowchart. +.. COMMENT: Add workflow diagram in the future. Compared to the typical SRW App workflow, the SRW-SD has slightly different tasks for pre- and post-processing. As in the SRW App default workflow, the SRW-SD workflow uses the preprocessing tasks from ``prep.yaml``, but it adds smoke-and-dust-specific tasks from ``smoke_dust.yaml``. For post-processing, it uses the NCO-compliant ``upp_post.yaml`` instead of the usual ``post.yaml``. -.. COMMENT: - .. _srw-sd-wflow: - - .. figure:: https://github.com/ufs-community/ufs-srweather-app/wiki/WorkflowImages/*.png - :alt: Flowchart of the SRW-SD tasks. - - *Workflow Structure of SRW-SD* - - The new tasks for SRW-SD are shown in :numref:`Table %s `. .. _pre-srw-sd: @@ -204,8 +194,6 @@ Users may check experiment status from the experiment directory with either of t # Check the experiment status and relaunch the workflow (for manual jobs) ./launch_FV3LAM_wflow.sh; tail -n 40 log.launch_FV3LAM_wflow -To see a description of each of the AQM workflow tasks, see :numref:`Section %s `. - .. _srw-sd-success: Experiment Output From 42e82bfef40abb4f031ef5cfb96b746aa1607796 Mon Sep 17 00:00:00 2001 From: gspetro-NOAA Date: Mon, 25 Nov 2024 15:16:22 -0500 Subject: [PATCH 21/24] fix logs path --- doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst b/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst index c25f61c100..9c8d426395 100644 --- a/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst +++ b/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst @@ -239,4 +239,4 @@ The workflow run is complete when all tasks display a "SUCCEEDED" message. If ev 201907220600 upp_post_mem000_f005 18989110 SUCCEEDED 0 1 294.0 201907220600 upp_post_mem000_f006 18989111 SUCCEEDED 0 1 294.0 -If something goes wrong, users can check the log files, which are located by default in ``nco_dirs/test_smoke_dust/com/output/logs/20190722``. +If something goes wrong, users can check the log files, which are located by default in ``expt_dirs/smoke_dust_conus3km/nco_logs/20190722``. From 70ecbe2152ab277eb8039e0d078fa82b04699821 Mon Sep 17 00:00:00 2001 From: Gillian Petro <96886803+gspetro-NOAA@users.noreply.github.com> Date: Mon, 25 Nov 2024 15:23:28 -0500 Subject: [PATCH 22/24] Update doc/UsersGuide/BackgroundInfo/Introduction.rst Co-authored-by: BenKoziol-NOAA --- doc/UsersGuide/BackgroundInfo/Introduction.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/UsersGuide/BackgroundInfo/Introduction.rst b/doc/UsersGuide/BackgroundInfo/Introduction.rst index 99d4b5f227..e0295d0225 100644 --- a/doc/UsersGuide/BackgroundInfo/Introduction.rst +++ b/doc/UsersGuide/BackgroundInfo/Introduction.rst @@ -58,7 +58,7 @@ Building, Running, and Testing the SRW App * :numref:`Section %s: Tutorials ` walks users through different SRW App experiment cases and analysis of results. * :numref:`Section %s: METplus Verification Sample Cases ` explains how to run METplus verification as part of the workflow. * :numref:`Section %s: Air Quality Modeling ` provides information specific to air quality modeling (AQM). This feature is currently unsupported, so documentation may be behind the current state of development, which is progressing rapidly. However, this section is a starting point for those interested in AQM. - * :numref:`Section %s: SRW Smoke & Dust ` provides information specific to smoke and dust modeling. This feature is currently only supported on Hera, but it is a starting point for those interested in regional smoke & dust modeling. + * :numref:`Section %s: SRW Smoke & Dust ` provides information specific to smoke and dust modeling. This feature is currently only supported on Hera and Orion/Hercules, but it is a starting point for those interested in regional smoke & dust modeling. .. hint:: * To get started with the SRW App, it is recommended that users try one of the following options: From 5e6f93695f824aa0370379fa8217083b34bce4e8 Mon Sep 17 00:00:00 2001 From: Gillian Petro <96886803+gspetro-NOAA@users.noreply.github.com> Date: Mon, 25 Nov 2024 15:31:05 -0500 Subject: [PATCH 23/24] Update doc/UsersGuide/BackgroundInfo/Introduction.rst Co-authored-by: BenKoziol-NOAA From da4f100d912b053bc2ad5780df5017d942d5e194 Mon Sep 17 00:00:00 2001 From: Gillian Petro <96886803+gspetro-NOAA@users.noreply.github.com> Date: Mon, 25 Nov 2024 15:31:57 -0500 Subject: [PATCH 24/24] Update doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst Co-authored-by: Michael Lueken <63728921+MichaelLueken@users.noreply.github.com> --- doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst b/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst index 9c8d426395..1d990a0bfa 100644 --- a/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst +++ b/doc/UsersGuide/BuildingRunningTesting/SRW-SD.rst @@ -8,7 +8,7 @@ SRW Smoke & Dust (SRW-SD) Features SRW-SD capabilities are a new SRW App feature supported on Hera and Orion/Hercules; on other systems, users can expect only limited support. -This chapter provides instructions for running a sample six-hour forecast for July 22, 2019 at 0z using SRW Smoke & Dust (SRW-SD) features. These features have been merged into an SRW App feature branch from a UFS WM Rapid Refresh Forecast System (RRFS) production branch. This forecast uses RAP data for :term:`ICs` and :term:`LBCs`, the ``RRFS_CONUS_3km`` predefined grid, and the ``FV3_HRRR_gf`` physics suite. This physics suite is similar to the NOAA operational HRRR v4 suite (Dowell et al., 2022), with the addition of the Grell-Freitas deep convective parameterization. `Scientific documentation for the HRRR_gf suite `_ and `technical documentation `_ are available with the CCPP v7.0.0 release but may differ slightly from the version available in the SRW App. +This chapter provides instructions for running a simple, example six-hour forecast for July 22, 2019 at 0z using SRW Smoke & Dust (SRW-SD) features. These features have been merged into an SRW App feature branch from a UFS WM Rapid Refresh Forecast System (RRFS) production branch. This forecast uses RAP data for :term:`ICs` and :term:`LBCs`, the ``RRFS_CONUS_3km`` predefined grid, and the ``FV3_HRRR_gf`` physics suite. This physics suite is similar to the NOAA operational HRRR v4 suite (Dowell et al., 2022), with the addition of the Grell-Freitas deep convective parameterization. `Scientific documentation for the HRRR_gf suite `_ and `technical documentation `_ are available with the CCPP v7.0.0 release but may differ slightly from the version available in the SRW App. .. note::