From 7b826d43b71a9daa74598f65399f7f23b85151ee Mon Sep 17 00:00:00 2001 From: "denise.worthen" Date: Sat, 27 Mar 2021 12:30:58 +0000 Subject: [PATCH 01/36] update FV3 --- FV3 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/FV3 b/FV3 index 0e05075456..3f5b8d4914 160000 --- a/FV3 +++ b/FV3 @@ -1 +1 @@ -Subproject commit 0e05075456800f0c5abd7bfb1ce6f89b26dd7989 +Subproject commit 3f5b8d4914e5bb4e87e0a5f56d95db5cd5fc0bf5 From cea6fc69411248b50142291191fcfc9f0bd04d94 Mon Sep 17 00:00:00 2001 From: "denise.worthen" Date: Sat, 27 Mar 2021 12:34:38 +0000 Subject: [PATCH 02/36] update hera.intel modulefiles for testing --- modulefiles/hera.intel/fv3 | 2 +- modulefiles/hera.intel/fv3_debug | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modulefiles/hera.intel/fv3 b/modulefiles/hera.intel/fv3 index 7b20135794..c9f5e76e7f 100644 --- a/modulefiles/hera.intel/fv3 +++ b/modulefiles/hera.intel/fv3 @@ -28,7 +28,7 @@ module load png/1.6.35 module load hdf5/1.10.6 module load netcdf/4.7.4 module load pio/2.5.1 -module load esmf/8_1_0_beta_snapshot_27 +module load esmf/8_1_0_beta_snapshot_47 module load bacio/2.4.1 module load crtm/2.3.0 diff --git a/modulefiles/hera.intel/fv3_debug b/modulefiles/hera.intel/fv3_debug index dd65fa1b95..8ee2ef433c 100644 --- a/modulefiles/hera.intel/fv3_debug +++ b/modulefiles/hera.intel/fv3_debug @@ -28,7 +28,7 @@ module load png/1.6.35 module load hdf5/1.10.6 module load netcdf/4.7.4 module load pio/2.5.1 -module load esmf/8_1_0_beta_snapshot_27-debug +module load esmf/8_1_0_beta_snapshot_47-debug module load bacio/2.4.1 module load crtm/2.3.0 From 071275bcdb6e2d376aad395266803c10f6ab287e Mon Sep 17 00:00:00 2001 From: "denise.worthen" Date: Sat, 27 Mar 2021 12:37:54 +0000 Subject: [PATCH 03/36] Revert "update hera.intel modulefiles for testing" This reverts commit cea6fc69411248b50142291191fcfc9f0bd04d94. --- modulefiles/hera.intel/fv3 | 2 +- modulefiles/hera.intel/fv3_debug | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modulefiles/hera.intel/fv3 b/modulefiles/hera.intel/fv3 index c9f5e76e7f..7b20135794 100644 --- a/modulefiles/hera.intel/fv3 +++ b/modulefiles/hera.intel/fv3 @@ -28,7 +28,7 @@ module load png/1.6.35 module load hdf5/1.10.6 module load netcdf/4.7.4 module load pio/2.5.1 -module load esmf/8_1_0_beta_snapshot_47 +module load esmf/8_1_0_beta_snapshot_27 module load bacio/2.4.1 module load crtm/2.3.0 diff --git a/modulefiles/hera.intel/fv3_debug b/modulefiles/hera.intel/fv3_debug index 8ee2ef433c..dd65fa1b95 100644 --- a/modulefiles/hera.intel/fv3_debug +++ b/modulefiles/hera.intel/fv3_debug @@ -28,7 +28,7 @@ module load png/1.6.35 module load hdf5/1.10.6 module load netcdf/4.7.4 module load pio/2.5.1 -module load esmf/8_1_0_beta_snapshot_47-debug +module load esmf/8_1_0_beta_snapshot_27-debug module load bacio/2.4.1 module load crtm/2.3.0 From 4db2ff2378ab69fb71b7c91ca6490c8c960b1c75 Mon Sep 17 00:00:00 2001 From: "denise.worthen" Date: Sat, 27 Mar 2021 12:38:33 +0000 Subject: [PATCH 04/36] Revert "update FV3" This reverts commit 7b826d43b71a9daa74598f65399f7f23b85151ee. --- FV3 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/FV3 b/FV3 index 3f5b8d4914..0e05075456 160000 --- a/FV3 +++ b/FV3 @@ -1 +1 @@ -Subproject commit 3f5b8d4914e5bb4e87e0a5f56d95db5cd5fc0bf5 +Subproject commit 0e05075456800f0c5abd7bfb1ce6f89b26dd7989 From 379fbaf45c758c23a503c3d15eedcf203fe30f26 Mon Sep 17 00:00:00 2001 From: "denise.worthen" Date: Wed, 12 May 2021 15:55:42 -0400 Subject: [PATCH 05/36] make clean branch with current changes --- .readthedocs.yml | 23 ++ doc/UsersGuide/source/CodeOverview.rst | 48 ++- doc/UsersGuide/source/InputNML.inc | 15 +- doc/UsersGuide/source/InputsOutputs.rst | 435 ++++++++++++++++++++++- doc/UsersGuide/source/_static/custom.css | 19 + doc/UsersGuide/source/conf.py | 2 +- 6 files changed, 509 insertions(+), 33 deletions(-) create mode 100644 .readthedocs.yml create mode 100644 doc/UsersGuide/source/_static/custom.css diff --git a/.readthedocs.yml b/.readthedocs.yml new file mode 100644 index 0000000000..09ebb7306d --- /dev/null +++ b/.readthedocs.yml @@ -0,0 +1,23 @@ +# .readthedocs.yml +# Read the Docs configuration file +# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details + +# Required +version: 2 + +# Build documentation in the docs/ directory with Sphinx +sphinx: + configuration: doc/UsersGuide/source/conf.py + +# Build documentation with MkDocs +#mkdocs: +# configuration: mkdocs.yml + +# Optionally build your docs in additional formats such as PDF and ePub +formats: all + +# Optionally set the version of Python and requirements required to build your docs +python: + version: 3.7 + install: + - requirements: doc/UsersGuide/requirements.txt diff --git a/doc/UsersGuide/source/CodeOverview.rst b/doc/UsersGuide/source/CodeOverview.rst index 3a4dda312a..5694f1adac 100644 --- a/doc/UsersGuide/source/CodeOverview.rst +++ b/doc/UsersGuide/source/CodeOverview.rst @@ -24,8 +24,6 @@ The ufs-weather-model repository supports the short- and medium-range UFS applic - https://github.com/NOAA-GFDL/FMS * - Infrastructure: NOAA Environmental Modeling System - https://github.com/NOAA-EMC/NEMS - * - Infrastructure: Utilities - - https://github.com/NOAA-EMC/NCEPLIBS-pyprodutil * - Framework to connect the CCPP library to a host model - https://github.com/NCAR/ccpp-framework * - CCPP library of physical parameterizations @@ -36,6 +34,16 @@ The ufs-weather-model repository supports the short- and medium-range UFS applic - https://github.com/NOAA-GFDL/GFDL_atmos_cubed_sphere * - Stochastic physics pattern generator - https://github.com/noaa-psd/stochastic_physics + * - Modular Ocean Model (MOM6) + - https://github.com/NOAA-EMC/MOM6 + * - Los Alamos sea ice model (CICE6) + - https://github.com/NOAA-EMC/CICE + * - EMC WaveWatch III Model (WW3) + - https://github.com/NOAA-EMC/WW3 + * - NUOPC Community Mediator for Earth Prediction Systems (CMEPS) + - https://github.com/NOAA-EMC/CMEPS + * - Community Data Models for Earth Prediction Systems (CDEPS) + - https://github.com/NOAA-EMC/CDEPS In the table, the left column contains a description of each repository, and the right column shows the component repositories which are pointing to (or will point to) the authoritative repositories. The ufs-weather-model currently uses git submodule to manage the sub-components. @@ -51,15 +59,25 @@ The umbrella repository for the UFS Weather Model is named ufs-weather-model. U │ │ ├── framework https://github.com/NCAR/ccpp-framework │ │ ├── physics https://github.com/NCAR/ccpp-physics ├── NEMS https://github.com/NOAA-EMC/NEMS - │ └── tests/produtil/NCEPLIBS-pyprodutil https://github.com/NOAA-EMC/NCEPLIBS-pyprodutil ├── stochastic_physics https://github.com/noaa-psd/stochastic_physics - + ├── MOM6-interface + | └── MOM6 https://github.com/NOAA-EMC/MOM6 + ├── CICE-interface + | └── CICE https://github.com/NOAA-EMC/CICE + ├── WW3 https://github.com/NOAA-EMC/WW3 + ├── CMEPS-interface + | └── CMEPS https://github.com/NOAA-EMC/CMEPS + ├── CDEPS-interface + | └── CDEPS https://github.com/NOAA-EMC/CDEPS + =================== Directory Structure =================== When the ufs-weather-model is cloned, the basic directory structure will be similar to the example below. Files and some directories have been removed for brevity. +.. TODO:: need WW3 details and CDEPS details + .. code-block:: console ufs-weather-model/ @@ -91,13 +109,25 @@ When the ufs-weather-model is cloned, the basic directory structure will be simi ├── log --------- log files from NEMS compset regression tests ├── modulefiles --------- system module files for supported HPC systems ├── NEMS --------- NOAA Earth Modeling System framework - │ ├── exe - │ ├── src - │ └── test - ├── parm --------- regression test configurations ├── stochastic_physics -------- stochastic physics pattern generator ├── tests --------- regression test scripts - + | └── parm --------- regression test configurations + ├── MOM6-interface + | └── MOM6 + │ ├── src --------- MOM6 ocean model + │ └── config_source/drivers/nuopc_cap --------- NUOPC MOM6 cap + ├── CICE-interface + | └── CICE --------- CICE6 sea ice model + │ ├── icepack --------- Sea ice column physics + │ └── cicecore/drivers/nuopc/cmeps --------- NUOPC CICE6 cap + ├── WW3 + │ └── model --------- WW3 model + │ └── esmf --------- NUOPC WW3 cap + ├── CDEPS-interface + | └── CDEPS + | └── datm --------- CDEPS DATM + + The physics subdirectory in the *gfsphysics* directory is not used or supported as part of this release (all physics is available through the :term:`CCPP` using the repository described in :numref:`Table %s `). diff --git a/doc/UsersGuide/source/InputNML.inc b/doc/UsersGuide/source/InputNML.inc index 3c5d94f334..54f0e8d8c3 100644 --- a/doc/UsersGuide/source/InputNML.inc +++ b/doc/UsersGuide/source/InputNML.inc @@ -31,6 +31,7 @@ https://noaa-emc.github.io/FV3_Dycore_ufs-v1.1.0/html/index.html The namelist section ``&interpolator_nml`` is not used in this release, and any modifications to it will have no effect on the model results. +---------- fms_io_nml ---------- @@ -57,7 +58,7 @@ The namelist variables used in ``&fms_io_nml`` are described in :numref:`Table % - logical - .true. * - fms_netcdf_restart - - If true, all modules using restart files will operate under netCDF mode. If false, all modules using restart files will operate under binary mode. This flag is effective only when ``fms_netcdf_override`` is .true. When ``fms_netcdf_override`` is .false., individual module setting takes over. + - If true, all modules using restart files will operate under netCDF mode. If false, all modules using restart files will operate under binary mode. This flag is effective only when ``fms_netcdf_override`` is .true. When ``fms_netcdf_override`` is .false., individual module setting takes over. - logical - .true. * - threading_read @@ -85,7 +86,7 @@ The namelist variables used in ``&fms_io_nml`` are described in :numref:`Table % - integer - 40 * - time_stamp_restart - - If true, ``time_stamp`` will be added to the restart file name as a prefix. + - If true, ``time_stamp`` will be added to the restart file name as a prefix. - logical - .true. * - print_chksum @@ -115,6 +116,7 @@ This release of the UFS Weather Model sets the following variables in the ``&fms max_files_w = 100 / +------ namsfc ------ @@ -126,7 +128,7 @@ The variables used in ``&namsfc`` to set the filenames are described in :numref: .. list-table:: *List of common variables in the *namsfc* namelist section used to set the filenames of static datasets.* - :widths: 15 40 15 20 + :widths: 15 40 15 20 :header-rows: 1 * - Variable Name @@ -234,6 +236,7 @@ A sample subset of this namelist is shown below: Additional variables for the ``&namsfc`` namelist can be found in the ``FV3/ccpp/physics/physics/sfcsub.F`` file. +--------------- atmos_model_nml --------------- @@ -242,7 +245,7 @@ The variables used in ``&atmos_model_nml`` are described in :numref:`Table %s `. Similar files are used for a regional grid but are grid specific and generated by pre-processing utilities. .. _FixFiles: @@ -76,9 +100,9 @@ The static input files for global configurations are listed and described in :nu * - solarconstant_noaa_an.txt - External solar constant data table ---------------------------------------------- +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Grid description and initial condition files ---------------------------------------------- +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ The input files containing grid information and the initial conditions for global configurations are listed and described in :numref:`Table %s `. The input files for a limited area model (LAM) configuration including grid information and initial and lateral boundary conditions are listed and described in :numref:`Table %s `. Note that the regional grid is referred to as Tile 7 here, and are generated by several pre-processing utilities. .. _GridICFiles: @@ -141,9 +165,149 @@ The input files containing grid information and the initial conditions for globa - Surface properties for grid tile 7 - ✔ ------------------------------------- +------- +MOM6 +------- +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +Static datasets (i.e., *fix files*) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. todo:: Information needed + +The static input files for global configurations are listed and described in :numref:`Table %s `. + +.. _MOM6_FixFiles: + +.. list-table:: *Fix files containing climatological information* + :widths: 40 50 + :header-rows: 1 + + * - Filename + - Description + * - + - + +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +Grid description and initial condition files +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. todo:: Information needed + +The input files containing grid information and the initial conditions for global configurations are listed and described in :numref:`Table %s `. + +.. _MOM6_GridICFiles: + +.. list-table:: *Input files containing grid information and initial conditions for global configurations* + :widths: 35 50 15 + :header-rows: 1 + + * - Filename + - Description + - Date-dependent + * - + - + - + +------- +CICE6 +------- +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +Static datasets (i.e., *fix files*) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +No fix files are required for CICE6 + +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +Grid description and initial condition files +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +The input files containing grid information and the initial conditions for global configurations are listed and described in :numref:`Table %s `. + +.. _CICE6_GridICFiles: + +.. list-table:: *Input files containing grid information and initial conditions for global configurations* + :widths: 35 35 25 15 + :header-rows: 1 + + * - Filename + - Description + - Valid RES options + - Date-dependent + * - cice_model_RES.res_YYYYMMDDHH.nc + - cice model IC or restart file + - 1.00, 0.50, 0.25 + - ✔ + * - grid_cice_NEMS_mxRES.nc + - cice model grid at resolution RES + - 100, 050, 025 + - + * - kmtu_cice_NEMS_mxRES.nc + - cice model land mask at resolution RES + - 100, 050, 025 + - + +------- +WW3 +------- +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +Static datasets (i.e., *fix files*) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. todo:: Information needed + +The static input files for global configurations are listed and described in :numref:`Table %s `. + +.. _WW3_FixFiles: + +.. list-table:: *Fix files containing climatological information* + :widths: 40 50 + :header-rows: 1 + + * - Filename + - Description + * - + - + +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +Grid description and initial condition files +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. todo:: Information needed + +The input files containing grid information and the initial conditions for global configurations are listed and described in :numref:`Table %s `. + +.. _WW3_GridICFiles: + +.. list-table:: *Input files containing grid information and initial conditions for global configurations* + :widths: 35 50 15 + :header-rows: 1 + + * - Filename + - Description + - Date-dependent + * - + - + - + +------- +CDEPS +------- +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +Static datasets (i.e., *fix files*) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. todo:: Information needed + +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +Grid description and initial condition files +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. todo:: Information needed + +========================== Model configuration files ------------------------------------- +========================== + The configuration files used by the UFS Weather Model are listed here and described below: - *diag_table* @@ -157,8 +321,9 @@ While the *input.nml* file is also a configuration file used by the UFS Weather .. _diag_tableFile: +------------------- *diag_table* file ------------------------------------- +------------------- There are three sections in file *diag_table*: Header (Global), File, and Field. These are described below. **Header Description** @@ -304,6 +469,8 @@ Comments can be added to the diag_table using the hash symbol (``#``). A brief example of the diag_table is shown below. ``“...”`` denote where lines have been removed. +.. _code-block-fv3-diag-table: + .. code-block:: console 20161003.00Z.C96.64bit.non-mono @@ -376,8 +543,9 @@ More information on the content of this file can be found in ``FMS/diag_manager/ .. note:: None of the lines in the *diag_table* can span multiple lines. +------------------- *field_table* file ------------------------------------- +------------------- The FMS field and tracer managers are used to manage tracers and specify tracer options. All tracers advected by the model must be registered in an ASCII table called *field_table*. The field table consists of entries in the following format: @@ -447,8 +615,9 @@ See ``FMS/field_manager/field_manager.F90`` for more information. .. _model_configureFile: +----------------------- *model_configure* file ------------------------------------- +----------------------- This file contains settings and configurations for the NUOPC/ESMF main component, including the simulation start time, the processor layout/configuration, and the I/O selections. :numref:`Table %s ` @@ -639,10 +808,21 @@ are not usually changed. - integer - 0 +----------------------- *nems.configure* file ------------------------------------- -This file contains information about the various NEMS components and their run sequence. In the current release, -this is an atmosphere-only model, so this file is simple and does not need to be changed. A sample of the file contents is below: +----------------------- + +.. todo:: Add information/organize for ATM, ATMW, S2S, S2SW, CDEPS + +This file contains information about the various NEMS components and their run sequence. The active components for +a particular model configuration are given in the *EARTH_component_list*. For each active component, +the model name, compute tasks assigned to each component are given. A specific component might also require additional configuration +information to be present. The *runSeq* describes the order and +time intervals over which one or more component models integrate in time. Additional *attributes*, if present, provide additional +configuration of the model components when coupled with the CMEPS mediator. + +For the ATM application, since it consists of a single component, the *nems.configure* is simple and does not need to be changed. +A sample of the file contents is below: .. code-block:: console @@ -652,6 +832,100 @@ this is an atmosphere-only model, so this file is simple and does not need to be ATM :: + +.. todo:: use a cpld control wave example + +For the fully coupled S2S application, a sample file configuration is below : + +.. code-block:: console + + # EARTH # + EARTH_component_list: MED ATM OCN ICE + EARTH_attributes:: + :: + + # MED # + MED_model: cmeps + MED_petlist_bounds: 0 287 + :: + + # ATM # + ATM_model: fv3 + ATM_petlist_bounds: 0 311 + ATM_attributes:: + :: + + # OCN # + OCN_model: mom6 + OCN_petlist_bounds: 312 431 + OCN_attributes:: + mesh_ocn = mesh.mx025.nc + :: + + # ICE # + ICE_model: cice6 + ICE_petlist_bounds: 432 479 + ICE_attributes:: + mesh_ice = mesh.mx025.nc + :: + + # CMEPS warm run sequence + runSeq:: + @1800 + MED med_phases_prep_ocn_avg + MED -> OCN :remapMethod=redist + OCN + @225 + MED med_phases_prep_atm + MED med_phases_prep_ice + MED -> ATM :remapMethod=redist + MED -> ICE :remapMethod=redist + ATM + ICE + ATM -> MED :remapMethod=redist + MED med_phases_post_atm + ICE -> MED :remapMethod=redist + MED med_phases_post_ice + MED med_phases_prep_ocn_accum + @ + OCN -> MED :remapMethod=redist + MED med_phases_post_ocn + MED med_phases_restart_write + @ + :: + + # CMEPS variables + + DRIVER_attributes:: + mediator_read_restart = false + :: + MED_attributes:: + ATM_model = fv3 + ICE_model = cice6 + OCN_model = mom6 + history_n = 1 + history_option = nhours + history_ymd = -999 + coupling_mode = nems_frac + :: + ALLCOMP_attributes:: + ScalarFieldCount = 2 + ScalarFieldIdxGridNX = 1 + ScalarFieldIdxGridNY = 2 + ScalarFieldName = cpl_scalars + start_type = startup + restart_dir = RESTART/ + case_name = ufs.cpld + restart_n = 3 + restart_option = nhours + restart_ymd = -999 + dbug_flag = 0 + use_coldstart = false + use_mommesh = false + :: + + +--------------------------------------- *The SDF (Suite Definition File) file* --------------------------------------- There are two SDFs currently supported for the UFS Medium Range Weather App configuration: *suite_FV3_GFS_v15p2.xml* and *suite_FV3_GFS_v16beta.xml*. @@ -673,7 +947,11 @@ Detailed descriptions of the supported suites can be found with the `CCPP v5.0.0 Output files ============= -The output files generated when running *fv3.exe* are defined in the *diag_tabl* file. For the default global configuration, the following files are output (six files of each kind, corresponding to the six tiles of the model grid): +------- +FV3Atm +------- + +The output files generated when running *fv3.exe* are defined in the *diag_table* file. For the default global configuration, the following files are output (six files of each kind, corresponding to the six tiles of the model grid): - *atmos_4xdaily.tile[1-6].nc* - *atmos_static.tile[1-6].nc* @@ -694,13 +972,136 @@ files (controlled by variable print_esmf in the *model_configure* file), called Additional output files include: nemsusage.xml, a timing log file; time_stamp.out, contains the model init time; *RESTART/*nc*, files needed for restart runs. +------- +MOM6 +------- + +.. todo:: Information needed + +MOM6 output is controlled via the FMS diag_manager using the *diag_table*. When MOM6 is present, the *diag_table* shown :ref:`above ` includes the additional MOM6 fields shown here. + +.. code-block:: console + + ###################### + "ocn%4yr%2mo%2dy%2hr", 6, "hours", 1, "hours", "time", 6, "hours", "1901 1 1 0 0 0" + "SST%4yr%2mo%2dy", 1, "days", 1, "days", "time", 1, "days", "1901 1 1 0 0 0" + ############################################## + # static fields + "ocean_model", "geolon", "geolon", "ocn%4yr%2mo%2dy%2hr", "all", .false., "none", 2 + "ocean_model", "geolat", "geolat", "ocn%4yr%2mo%2dy%2hr", "all", .false., "none", 2 + "ocean_model", "geolon_c", "geolon_c", "ocn%4yr%2mo%2dy%2hr", "all", .false., "none", 2 + "ocean_model", "geolat_c", "geolat_c", "ocn%4yr%2mo%2dy%2hr", "all", .false., "none", 2 + "ocean_model", "geolon_u", "geolon_u", "ocn%4yr%2mo%2dy%2hr", "all", .false., "none", 2 + "ocean_model", "geolat_u", "geolat_u", "ocn%4yr%2mo%2dy%2hr", "all", .false., "none", 2 + "ocean_model", "geolon_v", "geolon_v", "ocn%4yr%2mo%2dy%2hr", "all", .false., "none", 2 + "ocean_model", "geolat_v", "geolat_v", "ocn%4yr%2mo%2dy%2hr", "all", .false., "none", 2 + # "ocean_model", "depth_ocean", "depth_ocean", "ocn%4yr%2mo%2dy%2hr", "all", .false., "none", 2 + # "ocean_model", "wet", "wet", "ocn%4yr%2mo%2dy%2hr", "all", .false., "none", 2 + "ocean_model", "wet_c", "wet_c", "ocn%4yr%2mo%2dy%2hr", "all", .false., "none", 2 + "ocean_model", "wet_u", "wet_u", "ocn%4yr%2mo%2dy%2hr", "all", .false., "none", 2 + "ocean_model", "wet_v", "wet_v", "ocn%4yr%2mo%2dy%2hr", "all", .false., "none", 2 + "ocean_model", "sin_rot", "sin_rot", "ocn%4yr%2mo%2dy%2hr", "all", .false., "none", 2 + "ocean_model", "cos_rot", "cos_rot", "ocn%4yr%2mo%2dy%2hr", "all", .false., "none", 2 + + # ocean output TSUV and others + "ocean_model", "SSH", "SSH", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 + "ocean_model", "SST", "SST", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 + "ocean_model", "SSS", "SSS", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 + "ocean_model", "speed", "speed", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 + "ocean_model", "SSU", "SSU", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 + "ocean_model", "SSV", "SSV", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 + "ocean_model", "frazil", "frazil", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 + "ocean_model", "ePBL_h_ML","ePBL", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 + "ocean_model", "MLD_003", "MLD_003", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 + "ocean_model", "MLD_0125", "MLD_0125", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 + + # save daily SST + "ocean_model", "geolon", "geolon", "SST%4yr%2mo%2dy", "all", .false., "none", 2 + "ocean_model", "geolat", "geolat", "SST%4yr%2mo%2dy", "all", .false., "none", 2 + "ocean_model", "SST", "sst", "SST%4yr%2mo%2dy", "all", .true., "none", 2 + + # Z-Space Fields Provided for CMIP6 (CMOR Names): + #=============================================== + "ocean_model_z","uo","uo" ,"ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 + "ocean_model_z","vo","vo" ,"ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 + "ocean_model_z","so","so" ,"ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 + "ocean_model_z","temp","temp" ,"ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 + + # forcing + "ocean_model", "taux", "taux", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 + "ocean_model", "tauy", "tauy", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 + "ocean_model", "latent", "latent", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 + "ocean_model", "sensible", "sensible", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 + "ocean_model", "SW", "SW", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 + "ocean_model", "LW", "LW", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 + "ocean_model", "evap", "evap", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 + "ocean_model", "lprec", "lprec", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 + "ocean_model", "lrunoff", "lrunoff", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 + # "ocean_model", "frunoff", "frunoff", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 + "ocean_model", "fprec", "fprec", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 + "ocean_model", "LwLatSens", "LwLatSens", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 + "ocean_model", "Heat_PmE", "Heat_PmE", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 + + + + +------- +CICE6 +------- + +.. todo:: Information needed---what is the second 'x'?? + +CICE6 output is controlled via the namelist *ice_in*. The relevant configuration settings are + +.. code-block:: console + + ... + histfreq = 'm','d','h','x','x' + histfreq_n = 0 , 0 , 6 , 1 , 1 + hist_avg = .true. + ... + +In this example, *histfreq_n* and *hist_avg* specify that output will be 6-hour means. No monthly (*m*), +daily (*d*), or higher frequency (*secs* or *every timestep*) output will be produced. The *hist_avg* can +also be set *.false.* to produce, for example, instaneous fields every 6 hours. + +The output of any field is set in the appropriate *ice_in* namelist. For example, + +.. code-block:: console + + ... + &icefields_nml + f_aice = 'mdhxx' + f_hi = 'mdhxx' + f_hs = 'mdhxx' + ... + +where the ice concentration (*aice*), ice thickness (*hi*) and snow thickness (*hs*) are set to be output +on the monthly, daily, hourly, seconds or timestep intervals set by the *histfreq_n* setting. + +Further details of the configuration of CICE model output can be found in the CICE documentation `3.1.4 `_ + +------- +WW3 +------- + +.. todo:: Information needed + +------- +CMEPS +------- + +.. todo:: Information needed + +The CMEPS mediator writes general information about the run-time configuration to the file *mediator.log* in the model run directory. In addition, the CMEPS +mediator can be configured to write history files for the purposes of examining the field exchanges at various points in the model run sequence. ============================================================== Additional Information about the FMS Diagnostic Manager ============================================================== -The UFS Weather Model output is managed through the FMS (Flexible Modeling System) diagnostic manager (``FMS/diag_manager``) -and is configured using the *diag_table* file. Data can be written at any number of sampling and/or averaging intervals +The FMS (Flexible Modeling System) diagnostic manager (``FMS/diag_manager``) manages the output for the ATM and, if present, the MOM6 component in the UFS Weather Model. It +is configured using the *diag_table* file. Data can be written at any number of sampling and/or averaging intervals specified at run-time. More information about the FMS diagnostic manager can be found at: https://data1.gfdl.noaa.gov/summer-school/Lectures/July16/03_Seth1_DiagManager.pdf diff --git a/doc/UsersGuide/source/_static/custom.css b/doc/UsersGuide/source/_static/custom.css new file mode 100644 index 0000000000..85a59fca39 --- /dev/null +++ b/doc/UsersGuide/source/_static/custom.css @@ -0,0 +1,19 @@ +@import "default.css"; + +div.admonition-todo { +border-top: 2px solid red; +border-bottom: 2px solid red; +border-left: 2px solid red; +border-right: 2px solid red; +background-color: #ff6347 +} + +p.admonition-title { + display: offline; +} + +/*p.first.admonition-title { +background-color: #aa6347; +width: 100%; +} +*/ diff --git a/doc/UsersGuide/source/conf.py b/doc/UsersGuide/source/conf.py index 38fb298df7..89ad0dfd01 100644 --- a/doc/UsersGuide/source/conf.py +++ b/doc/UsersGuide/source/conf.py @@ -104,7 +104,7 @@ html_static_path = ['_static'] def setup(app): - app.add_stylesheet('custom.css') # may also be an URL + app.add_css_file('custom.css') # may also be an URL # Custom sidebar templates, must be a dictionary that maps document names # to template names. From 7c14a00f803a5b01929fbd4316f0c41ba9a76d74 Mon Sep 17 00:00:00 2001 From: "denise.worthen" Date: Wed, 12 May 2021 16:52:32 -0400 Subject: [PATCH 06/36] add more information * clean up cice and mom6 output sections --- doc/UsersGuide/source/InputsOutputs.rst | 112 +++++++++--------------- 1 file changed, 40 insertions(+), 72 deletions(-) diff --git a/doc/UsersGuide/source/InputsOutputs.rst b/doc/UsersGuide/source/InputsOutputs.rst index e16e6d1e47..7b9e2275d4 100644 --- a/doc/UsersGuide/source/InputsOutputs.rst +++ b/doc/UsersGuide/source/InputsOutputs.rst @@ -467,7 +467,7 @@ These field section entries are described in :numref:`Table %s OCN :remapMethod=redist + OCN -> WAV + WAV -> OCN :srcMaskValues=1 OCN - @225 + @900 MED med_phases_prep_atm MED med_phases_prep_ice MED -> ATM :remapMethod=redist MED -> ICE :remapMethod=redist + WAV -> ATM :srcMaskValues=1 + ATM -> WAV + ICE -> WAV ATM ICE + WAV ATM -> MED :remapMethod=redist MED med_phases_post_atm ICE -> MED :remapMethod=redist @@ -896,8 +902,6 @@ For the fully coupled S2S application, a sample file configuration is below : # CMEPS variables - DRIVER_attributes:: - mediator_read_restart = false :: MED_attributes:: ATM_model = fv3 @@ -906,7 +910,7 @@ For the fully coupled S2S application, a sample file configuration is below : history_n = 1 history_option = nhours history_ymd = -999 - coupling_mode = nems_frac + coupling_mode = nems_orig :: ALLCOMP_attributes:: ScalarFieldCount = 2 @@ -916,15 +920,14 @@ For the fully coupled S2S application, a sample file configuration is below : start_type = startup restart_dir = RESTART/ case_name = ufs.cpld - restart_n = 3 + restart_n = 24 restart_option = nhours restart_ymd = -999 dbug_flag = 0 use_coldstart = false - use_mommesh = false + use_mommesh = true :: - --------------------------------------- *The SDF (Suite Definition File) file* --------------------------------------- @@ -976,9 +979,9 @@ Additional output files include: nemsusage.xml, a timing log file; time_stamp.ou MOM6 ------- -.. todo:: Information needed +MOM6 output is controlled via the FMS diag_manager using the *diag_table*. When MOM6 is present, the *diag_table* shown :ref:`above ` includes additional requested MOM6 fields. -MOM6 output is controlled via the FMS diag_manager using the *diag_table*. When MOM6 is present, the *diag_table* shown :ref:`above ` includes the additional MOM6 fields shown here. +A brief example of the diag_table is shown below. ``“...”`` denotes where lines have been removed. .. code-block:: console @@ -989,32 +992,12 @@ MOM6 output is controlled via the FMS diag_manager using the *diag_table*. When # static fields "ocean_model", "geolon", "geolon", "ocn%4yr%2mo%2dy%2hr", "all", .false., "none", 2 "ocean_model", "geolat", "geolat", "ocn%4yr%2mo%2dy%2hr", "all", .false., "none", 2 - "ocean_model", "geolon_c", "geolon_c", "ocn%4yr%2mo%2dy%2hr", "all", .false., "none", 2 - "ocean_model", "geolat_c", "geolat_c", "ocn%4yr%2mo%2dy%2hr", "all", .false., "none", 2 - "ocean_model", "geolon_u", "geolon_u", "ocn%4yr%2mo%2dy%2hr", "all", .false., "none", 2 - "ocean_model", "geolat_u", "geolat_u", "ocn%4yr%2mo%2dy%2hr", "all", .false., "none", 2 - "ocean_model", "geolon_v", "geolon_v", "ocn%4yr%2mo%2dy%2hr", "all", .false., "none", 2 - "ocean_model", "geolat_v", "geolat_v", "ocn%4yr%2mo%2dy%2hr", "all", .false., "none", 2 - # "ocean_model", "depth_ocean", "depth_ocean", "ocn%4yr%2mo%2dy%2hr", "all", .false., "none", 2 - # "ocean_model", "wet", "wet", "ocn%4yr%2mo%2dy%2hr", "all", .false., "none", 2 - "ocean_model", "wet_c", "wet_c", "ocn%4yr%2mo%2dy%2hr", "all", .false., "none", 2 - "ocean_model", "wet_u", "wet_u", "ocn%4yr%2mo%2dy%2hr", "all", .false., "none", 2 - "ocean_model", "wet_v", "wet_v", "ocn%4yr%2mo%2dy%2hr", "all", .false., "none", 2 - "ocean_model", "sin_rot", "sin_rot", "ocn%4yr%2mo%2dy%2hr", "all", .false., "none", 2 - "ocean_model", "cos_rot", "cos_rot", "ocn%4yr%2mo%2dy%2hr", "all", .false., "none", 2 - + ... # ocean output TSUV and others "ocean_model", "SSH", "SSH", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 "ocean_model", "SST", "SST", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 "ocean_model", "SSS", "SSS", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 - "ocean_model", "speed", "speed", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 - "ocean_model", "SSU", "SSU", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 - "ocean_model", "SSV", "SSV", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 - "ocean_model", "frazil", "frazil", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 - "ocean_model", "ePBL_h_ML","ePBL", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 - "ocean_model", "MLD_003", "MLD_003", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 - "ocean_model", "MLD_0125", "MLD_0125", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 - + ... # save daily SST "ocean_model", "geolon", "geolon", "SST%4yr%2mo%2dy", "all", .false., "none", 2 "ocean_model", "geolat", "geolat", "SST%4yr%2mo%2dy", "all", .false., "none", 2 @@ -1030,27 +1013,12 @@ MOM6 output is controlled via the FMS diag_manager using the *diag_table*. When # forcing "ocean_model", "taux", "taux", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 "ocean_model", "tauy", "tauy", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 - "ocean_model", "latent", "latent", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 - "ocean_model", "sensible", "sensible", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 - "ocean_model", "SW", "SW", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 - "ocean_model", "LW", "LW", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 - "ocean_model", "evap", "evap", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 - "ocean_model", "lprec", "lprec", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 - "ocean_model", "lrunoff", "lrunoff", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 - # "ocean_model", "frunoff", "frunoff", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 - "ocean_model", "fprec", "fprec", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 - "ocean_model", "LwLatSens", "LwLatSens", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 - "ocean_model", "Heat_PmE", "Heat_PmE", "ocn%4yr%2mo%2dy%2hr","all",.true.,"none",2 - - - + ... ------- CICE6 ------- -.. todo:: Information needed---what is the second 'x'?? - CICE6 output is controlled via the namelist *ice_in*. The relevant configuration settings are .. code-block:: console @@ -1062,7 +1030,7 @@ CICE6 output is controlled via the namelist *ice_in*. The relevant configuration ... In this example, *histfreq_n* and *hist_avg* specify that output will be 6-hour means. No monthly (*m*), -daily (*d*), or higher frequency (*secs* or *every timestep*) output will be produced. The *hist_avg* can +daily (*d*), yearly (*x*) or per-timestep (*x*) output will be produced.The *hist_avg* can also be set *.false.* to produce, for example, instaneous fields every 6 hours. The output of any field is set in the appropriate *ice_in* namelist. For example, @@ -1077,7 +1045,9 @@ The output of any field is set in the appropriate *ice_in* namelist. For example ... where the ice concentration (*aice*), ice thickness (*hi*) and snow thickness (*hs*) are set to be output -on the monthly, daily, hourly, seconds or timestep intervals set by the *histfreq_n* setting. +on the monthly, daily, hourly, seconds or timestep intervals set by the *histfreq_n* setting. Since *histfreq_n* is +*0* for both monthly and daily frequencies and neither yearly nor per-timestep output is requested, only 6-hour +mean history files will be produced. Further details of the configuration of CICE model output can be found in the CICE documentation `3.1.4 `_ @@ -1093,15 +1063,13 @@ CMEPS .. todo:: Information needed -The CMEPS mediator writes general information about the run-time configuration to the file *mediator.log* in the model run directory. In addition, the CMEPS -mediator can be configured to write history files for the purposes of examining the field exchanges at various points in the model run sequence. +The CMEPS mediator writes general information about the run-time configuration to the file *mediator.log* in the model run directory. Optionally, the CMEPS mediator can be configured to write history files for the purposes of examining the field exchanges at various points in the model run sequence. ============================================================== Additional Information about the FMS Diagnostic Manager ============================================================== -The FMS (Flexible Modeling System) diagnostic manager (``FMS/diag_manager``) manages the output for the ATM and, if present, the MOM6 component in the UFS Weather Model. It -is configured using the *diag_table* file. Data can be written at any number of sampling and/or averaging intervals +The FMS (Flexible Modeling System) diagnostic manager (``FMS/diag_manager``) manages the output for the ATM and, if present, the MOM6 component in the UFS Weather Model. It is configured using the *diag_table* file. Data can be written at any number of sampling and/or averaging intervals specified at run-time. More information about the FMS diagnostic manager can be found at: https://data1.gfdl.noaa.gov/summer-school/Lectures/July16/03_Seth1_DiagManager.pdf From 39a4fd58ea4ae689f69654988e180b860dabfc7b Mon Sep 17 00:00:00 2001 From: "denise.worthen" Date: Mon, 24 May 2021 09:30:19 -0400 Subject: [PATCH 07/36] update codeoverview and more inputsoutputs --- doc/UsersGuide/source/CodeOverview.rst | 35 +++++++++++-------------- doc/UsersGuide/source/InputsOutputs.rst | 6 +---- 2 files changed, 17 insertions(+), 24 deletions(-) diff --git a/doc/UsersGuide/source/CodeOverview.rst b/doc/UsersGuide/source/CodeOverview.rst index 5694f1adac..ddf83570c6 100644 --- a/doc/UsersGuide/source/CodeOverview.rst +++ b/doc/UsersGuide/source/CodeOverview.rst @@ -81,13 +81,13 @@ When the ufs-weather-model is cloned, the basic directory structure will be simi .. code-block:: console ufs-weather-model/ - ├── cmake --------- cmake configuration files - ├── compsets --------- configurations used by some regression tests - ├── conf --------- compile options for Tier 1 and 2 platforms - ├── doc --------- READMEs with build, reg-test hints - ├── FMS --------- The Flexible Modeling System (FMS),a software framework - ├── FV3 --------- FV3 atmosphere model - │ ├── atmos_cubed_sphere ---- FV3 dynamic core + ├── cmake -------- cmake configuration files + ├── compsets -------- configurations used by some regression tests + ├── conf -------- compile options for Tier 1 and 2 platforms + ├── doc -------- READMEs with build, reg-test hints + ├── FMS -------- The Flexible Modeling System (FMS),a software framework + ├── FV3 -------- UFSAtm atmosphere model + │ ├── atmos_cubed_sphere ------ FV3 dynamic core │ │ ├── docs │ │ ├── driver │ │ ├── model @@ -99,19 +99,16 @@ When the ufs-weather-model is cloned, the basic directory structure will be simi │ │ ├── physics -------- CCPP compliant physics schemes │ │ └── suites -------- CCPP physics suite definition files (SDFs) │ ├── cpl -------- Coupling field data structures - │ ├── gfsphysics - │ │ ├── CCPP_layer - │ │ ├── GFS_layer - │ │ └── physics --------- unused - IPD version of physics codes - │ ├── io --------- FV3 write grid comp code - │ ├── ipd --------- unused - IPD driver/interfaces - | ├── stochastic_physics ----- Cmakefile for stochastic physics code - ├── log --------- log files from NEMS compset regression tests - ├── modulefiles --------- system module files for supported HPC systems - ├── NEMS --------- NOAA Earth Modeling System framework + │ ├── fv3_cap -------- UFSAtm NUOPC cap + │ ├── io -------- UFSAtm write grid comp code + │ ├── ipd -------- unused - IPD driver/interfaces + | ├── stochastic_physics ------ Cmakefile for stochastic physics code + ├── log -------- log files from NEMS compset regression tests + ├── modulefiles -------- system module files for supported HPC systems + ├── NEMS -------- NOAA Earth Modeling System framework ├── stochastic_physics -------- stochastic physics pattern generator - ├── tests --------- regression test scripts - | └── parm --------- regression test configurations + ├── tests -------- regression test scripts + | └── parm -------- regression test configurations ├── MOM6-interface | └── MOM6 │ ├── src --------- MOM6 ocean model diff --git a/doc/UsersGuide/source/InputsOutputs.rst b/doc/UsersGuide/source/InputsOutputs.rst index 7b9e2275d4..a666232377 100644 --- a/doc/UsersGuide/source/InputsOutputs.rst +++ b/doc/UsersGuide/source/InputsOutputs.rst @@ -812,8 +812,6 @@ are not usually changed. *nems.configure* file ----------------------- -.. todo:: Add information/organize for ATM, ATMW, S2S, S2SW, CDEPS - This file contains information about the various NEMS components and their run sequence. The active components for a particular model configuration are given in the *EARTH_component_list*. For each active component, the model name and compute tasks assigned to the component are given. A specific component might also require additional configuration information to be present. The *runSeq* describes the order and time intervals over which one or more component models integrate in time. Additional *attributes*, if present, provide additional configuration of the model components when coupled with the CMEPS mediator. For the ATM application, since it consists of a single component, the *nems.configure* is simple and does not need to be changed. @@ -1045,7 +1043,7 @@ The output of any field is set in the appropriate *ice_in* namelist. For example ... where the ice concentration (*aice*), ice thickness (*hi*) and snow thickness (*hs*) are set to be output -on the monthly, daily, hourly, seconds or timestep intervals set by the *histfreq_n* setting. Since *histfreq_n* is +on the monthly, daily, hourly, yearly or timestep intervals set by the *histfreq_n* setting. Since *histfreq_n* is *0* for both monthly and daily frequencies and neither yearly nor per-timestep output is requested, only 6-hour mean history files will be produced. @@ -1061,8 +1059,6 @@ WW3 CMEPS ------- -.. todo:: Information needed - The CMEPS mediator writes general information about the run-time configuration to the file *mediator.log* in the model run directory. Optionally, the CMEPS mediator can be configured to write history files for the purposes of examining the field exchanges at various points in the model run sequence. ============================================================== From 5ae586743d0316084ee4e7a4250071502dccc7db Mon Sep 17 00:00:00 2001 From: "denise.worthen" Date: Wed, 14 Jul 2021 13:32:40 -0400 Subject: [PATCH 08/36] update yaml file and inputsoutputs.rst * .yml extension is deprecated --- .readthedocs.yml => .readthedocs.yaml | 0 doc/UsersGuide/source/InputsOutputs.rst | 41 ++++++++++++++++++++++--- 2 files changed, 37 insertions(+), 4 deletions(-) rename .readthedocs.yml => .readthedocs.yaml (100%) diff --git a/.readthedocs.yml b/.readthedocs.yaml similarity index 100% rename from .readthedocs.yml rename to .readthedocs.yaml diff --git a/doc/UsersGuide/source/InputsOutputs.rst b/doc/UsersGuide/source/InputsOutputs.rst index a666232377..dfa4b9b8ac 100644 --- a/doc/UsersGuide/source/InputsOutputs.rst +++ b/doc/UsersGuide/source/InputsOutputs.rst @@ -184,9 +184,15 @@ The static input files for global configurations are listed and described in :nu * - Filename - Description - * - - - - + * - runoff.daitren.clim.1440x1080.v20180328.nc + - climatological runoff + * - seawifs-clim-1997-2010.1440x1080.v20180328.nc + - climatological chlorophyll concentration in sea water + * - tidal_amplitude.v20140616.nc + - climatological tide amplitude + * - geothermal_davies2013_v1.nc + - climatological geothermal heat flow + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Grid description and initial condition files ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -204,8 +210,35 @@ The input files containing grid information and the initial conditions for globa * - Filename - Description - Date-dependent - * - + * - ocean_hgrid.nc + - horizonal grid information + - + * - ocean_mosaic.nc + - specify horizonal starting and ending points index + - + * - ocean_topog.nc + - ocean topography + - + * - ocean_mask.nc + - lans/sea mask + - + * - hycom1_75_800m.nc + - vertical coordinate level thickness + - + * - layer_coord.nc + - vertical layer target potential density + - + * - All_edits.nc + - specify grid points where topography are manually modified to adjust throughflow strength for narrow channels + - + * - MOM_channels_global_025 + - specifies restricted channel widths + - + * - interpolate_zgrid_40L.nc + - specify target depth for output - + * - MOM.res*nc + - ocean initial conditions - ------- From 6b4ca33253bc1712f0d01987353f845f9c0d50b3 Mon Sep 17 00:00:00 2001 From: BinLi-NOAA Date: Thu, 15 Jul 2021 13:11:23 -0400 Subject: [PATCH 09/36] Update CDEPS documentation (#10) Add CDEPS section --- doc/UsersGuide/source/InputsOutputs.rst | 265 +++++++++++++++++++++++- 1 file changed, 263 insertions(+), 2 deletions(-) diff --git a/doc/UsersGuide/source/InputsOutputs.rst b/doc/UsersGuide/source/InputsOutputs.rst index dfa4b9b8ac..ae81bb180f 100644 --- a/doc/UsersGuide/source/InputsOutputs.rst +++ b/doc/UsersGuide/source/InputsOutputs.rst @@ -329,13 +329,35 @@ CDEPS Static datasets (i.e., *fix files*) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -.. todo:: Information needed +No fix files are required for CDEPS ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Grid description and initial condition files ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +The input files containing grid information and the time-varying forcing files for global configurations are listed and described in :numref:`Table %s `. + +.. _CDEPS_Files: + +.. list-table:: *Input files containing grid information and forcing files for global configurations* + :widths: 35 50 15 + :header-rows: 1 + + * - Filename + - Description + - Date-dependent + * - cfsr_mesh.nc + - ESMF mesh file for CFSR data source + - + * - gefs_mesh.nc + - ESMF mesh file for GEFS data source + - + * - cfsr.YYYYMMM.nc + - CFSR forcing file for year YYYY and month MM + - ✔ + * - gefs.YYYYMMM.nc + - GEFS forcing file for year YYYY and month MM + - ✔ -.. todo:: Information needed ========================== Model configuration files @@ -348,6 +370,8 @@ The configuration files used by the UFS Weather Model are listed here and descri - *model_configure* - *nems.configure* - *suite_[suite_name].xml* (used only at build time) +- *datm.streams* (used by cdeps) +- *datm_in* (used by cdeps) While the *input.nml* file is also a configuration file used by the UFS Weather Model, it is described in :numref:`Section %s `. The run-time configuration of model output fields is controlled by the combination of *diag_table* and *model_configure*, and is described in detail in :numref:`Section %s `. @@ -959,6 +983,129 @@ For the fully coupled S2SW application, a sample *nems.configure* is shown below use_mommesh = true :: + +For the coupled MOM6_CICE6_CDEPS_DATM application, a sample *nems.configure* is shown below : + +.. code-block:: console + + # EARTH # + EARTH_component_list: MED ATM OCN ICE + EARTH_attributes:: + Verbosity = 0 + :: + + # MED # + MED_model: cmeps + MED_petlist_bounds: 0 11 + Verbosity = 5 + dbug_flag = 5 + + :: + + # ATM # + ATM_model: datm + ATM_petlist_bounds: 0 11 + ATM_attributes:: + Verbosity = 0 + DumpFields = false + mesh_atm = DATM_INPUT/cfsr_mesh.nc + diro = "." + logfile = atm.log + :: + + # OCN # + OCN_model: mom6 + OCN_petlist_bounds: 12 27 + OCN_attributes:: + Verbosity = 0 + DumpFields = false + ProfileMemory = false + OverwriteSlice = true + mesh_ocn = mesh.mx100.nc + :: + + # ICE # + ICE_model: cice6 + ICE_petlist_bounds: 28 39 + ICE_attributes:: + Verbosity = 0 + DumpFields = false + ProfileMemory = false + OverwriteSlice = true + mesh_ice = mesh.mx100.nc + stop_n = 12 + stop_option = nhours + stop_ymd = -999 + :: + + # CMEPS concurrent warm run sequence + + runSeq:: + @3600 + MED med_phases_prep_ocn_avg + MED -> OCN :remapMethod=redist + OCN + @900 + MED med_phases_prep_ice + MED -> ICE :remapMethod=redist + ATM + ICE + ATM -> MED :remapMethod=redist + MED med_phases_post_atm + ICE -> MED :remapMethod=redist + MED med_phases_post_ice + MED med_phases_aofluxes_run + MED med_phases_prep_ocn_accum + @ + OCN -> MED :remapMethod=redist + MED med_phases_post_ocn + MED med_phases_restart_write + @ + :: + + # CMEPS variables + + DRIVER_attributes:: + mediator_read_restart = false + :: + MED_attributes:: + ATM_model = datm + ICE_model = cice6 + OCN_model = mom6 + history_n = 1 + history_option = nhours + history_ymd = -999 + coupling_mode = nems_orig_data + :: + ALLCOMP_attributes:: + ScalarFieldCount = 3 + ScalarFieldIdxGridNX = 1 + ScalarFieldIdxGridNY = 2 + ScalarFieldIdxNextSwCday = 3 + ScalarFieldName = cpl_scalars + start_type = startup + restart_dir = RESTART/ + case_name = DATM_CFSR + restart_n = 12 + restart_option = nhours + restart_ymd = -999 + dbug_flag = 0 + use_coldstart = false + use_mommesh = true + coldair_outbreak_mod = .false. + flds_wiso = .false. + flux_convergence = 0.0 + flux_max_iteration = 2 + ocn_surface_flux_scheme = 0 + orb_eccen = 1.e36 + orb_iyear = 2000 + orb_iyear_align = 2000 + orb_mode = fixed_year + orb_mvelp = 1.e36 + orb_obliq = 1.e36 + :: + + --------------------------------------- *The SDF (Suite Definition File) file* --------------------------------------- @@ -968,6 +1115,120 @@ There are two SDFs currently supported for the UFS Short Range Weather App confi Detailed descriptions of the supported suites can be found with the `CCPP v5.0.0 Scientific Documentation `_. +--------------------------------------- +*datm.streams* +--------------------------------------- +A data stream is a time series of input forcing files. A data stream configuration file (datm.streams) describes the information about those input forcing files. + +.. list-table:: *Parameters that can be set in a data stream configuration file at run-time.* + :widths: 20 30 + :header-rows: 1 + + * - Parameter + - Meaning + * - taxmode01 + - time axis mode + * - mapalgo01 + - type of spatial mapping (default=bilinear) + * - tInterpAlgo01 + - time interpolation algorithm option + * - readMode01 + - number of forcing files to read in (current option is single) + * - dtimit01 + - ratio of max/min stream delta times (default=1.0. For monthly data, the ratio is 31/28.) + * - stream_offset01 + - shift of the time axis of a data stream in seconds (Positive offset advances the time axis forward.) + * - yearFirst01 + - the first year of the stream data + * - yearLast01 + - the last year of the stream data + * - yearAlign01 + - the simulation year corresponding to yearFirst01 + * - stream_vectors01 + - the paired vector field names + * - stream_mesh_file01 + - stream mesh file name + * - stream_lev_dimname01 + - name of vertical dimension in data stream + * - stream_data_files01 + - input forcing file names + * - stream_data_variables01 + - a paired list with the name of the variable used in the file on the left and the name of the Fortran variable on the right + +A sample of the data stream file is shown below: + +.. code-block:: console + + stream_info: cfsr.01 + taxmode01: cycle + mapalgo01: bilinear + tInterpAlgo01: linear + readMode01: single + dtlimit01: 1.0 + stream_offset01: 0 + yearFirst01: 2011 + yearLast01: 2011 + yearAlign01: 2011 + stream_vectors01: "u:v" + stream_mesh_file01: DATM_INPUT/cfsr_mesh.nc + stream_lev_dimname01: null + stream_data_files01: DATM_INPUT/cfsr.201110.nc + stream_data_variables01: "slmsksfc Sa_mask" "DSWRF Faxa_swdn" "DLWRF Faxa_lwdn" "vbdsf_ave Faxa_swvdr" "vddsf_ave Faxa_swvdf" "nbdsf_ave Faxa_swndr" "nddsf_ave Faxa_swndf" "u10m Sa_u10m" "v10m Sa_v10m" "hgt_hyblev1 Sa_z" "psurf Sa_pslv" "tmp_hyblev1 Sa_tbot" "spfh_hyblev1 Sa_shum" "ugrd_hyblev1 Sa_u" "vgrd_hyblev1 Sa_v" "q2m Sa_q2m" "t2m Sa_t2m" "pres_hyblev1 Sa_pbot" "precp Faxa_rain" "fprecp Faxa_snow" + + +--------------------------------------- +*datm_in* +--------------------------------------- + +.. list-table:: *Parameters that can be set in a data stream namelist file (datm_in) at run-time.* + :widths: 20 30 + :header-rows: 1 + + * - Parameter + - Meaning + * - datamode + - data mode (such as CFSR, GEFS, etc.) + * - factorfn_data + - file containing correction factor for input data + * - factorfn_mesh + - file containing correction factor for input mesh + * - flds_co2 + - if true, prescribed co2 data is sent to the mediator + * - flds_presaero + - if true, prescribed aerosol data is sent to the mediator + * - flds_wiso + - if true, water isotopes data is sent to the mediator + * - iradsw + - the frequency to update the shortwave radiation in number of steps (or hours if negative) + * - model_maskfile + - data stream mask file name + * - model_meshfile + - data stream mesh file name + * - nx_global + - number of grid points in zonal direction + * - ny_global + - number of grid points in meridional direction + * - restfilm + - model restart file namelist + +A sample of the data stream namelist file is shown below: + +.. code-block:: console + + &datm_nml + datamode = "CFSR" + factorfn_data = "null" + factorfn_mesh = "null" + flds_co2 = .false. + flds_presaero = .false. + flds_wiso = .false. + iradsw = 1 + model_maskfile = "DATM_INPUT/cfsr_mesh.nc" + model_meshfile = "DATM_INPUT/cfsr_mesh.nc" + nx_global = 1760 + ny_global = 880 + restfilm = "null" + / .. ------------------------------------------------------------------- .. Include InputNML file describing the contents of the input.nml file From 09feba4f26394f6397048064255eb4b20de9a928 Mon Sep 17 00:00:00 2001 From: jiandewang Date: Thu, 15 Jul 2021 17:36:50 -0400 Subject: [PATCH 10/36] Feature/add mom doc 0715 (#11) * add MOM6 documentation * minor correction in MOM6 documentation --- doc/UsersGuide/source/InputsOutputs.rst | 56 +++++++++++++++++++++---- 1 file changed, 47 insertions(+), 9 deletions(-) diff --git a/doc/UsersGuide/source/InputsOutputs.rst b/doc/UsersGuide/source/InputsOutputs.rst index ae81bb180f..fba0360a39 100644 --- a/doc/UsersGuide/source/InputsOutputs.rst +++ b/doc/UsersGuide/source/InputsOutputs.rst @@ -172,75 +172,113 @@ MOM6 Static datasets (i.e., *fix files*) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -.. todo:: Information needed The static input files for global configurations are listed and described in :numref:`Table %s `. .. _MOM6_FixFiles: .. list-table:: *Fix files containing climatological information* - :widths: 40 50 + :widths: 40 50 15 :header-rows: 1 * - Filename - Description + - Used in resolution * - runoff.daitren.clim.1440x1080.v20180328.nc - climatological runoff + - 0.25 + * - runoff.daitren.clim.720x576.v20180328.nc + - climatological runoff + - 0.50 * - seawifs-clim-1997-2010.1440x1080.v20180328.nc - climatological chlorophyll concentration in sea water + - 0.25 + * - seawifs-clim-1997-2010.720x576.v20180328.nc + - climatological chlorophyll concentration in sea water + - 0.50 + * - seawifs_1998-2006_smoothed_2X.nc + - climatological chlorophyll concentration in sea water + - 1.00 * - tidal_amplitude.v20140616.nc - climatological tide amplitude + - 0.25 + * - tidal_amplitude.nc + - climatological tide amplitude + - 0.50, 1.00 * - geothermal_davies2013_v1.nc - climatological geothermal heat flow - + - 0.50, 0.25 + * - KH_background_2d.nc + - climatological 2-d background harmonic viscosities + - 1.00 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Grid description and initial condition files ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -.. todo:: Information needed - The input files containing grid information and the initial conditions for global configurations are listed and described in :numref:`Table %s `. .. _MOM6_GridICFiles: .. list-table:: *Input files containing grid information and initial conditions for global configurations* - :widths: 35 50 15 + :widths: 35 35 25 15 :header-rows: 1 * - Filename - Description + - Valid RES options - Date-dependent * - ocean_hgrid.nc - horizonal grid information + - 1.00, 0.50, 0.25 - * - ocean_mosaic.nc - specify horizonal starting and ending points index + - 1.00, 0.50, 0.25 - * - ocean_topog.nc - ocean topography + - 1.00, 0.50, 0.25 - * - ocean_mask.nc - lans/sea mask + - 1.00, 0.50, 0.25 - - * - hycom1_75_800m.nc + * - hycom1_75_800m.nc - vertical coordinate level thickness + - 1.00, 0.50, 0.25 - * - layer_coord.nc - vertical layer target potential density + - 1.00, 0.50, 0.25 - * - All_edits.nc - specify grid points where topography are manually modified to adjust throughflow strength for narrow channels + - 0.25 + - + * - topo_edits_011818.nc + - specify grid points where topography are manually modified to adjust throughflow strength for narrow channels + - 1.00 - * - MOM_channels_global_025 - specifies restricted channel widths + - 0.50, 0.25 + - + * - MOM_channel_SPEAR + - specifies restricted channel widths + - 1.00 - * - interpolate_zgrid_40L.nc - specify target depth for output + - 1.00, 0.50, 0.25 - * - MOM.res*nc - - ocean initial conditions + - ocean initial conditions (from CPC ocean DA) + - 0.25 + - + * - MOM6_IC_TS.nc + - ocean temperature and salinity initial conditions (from CFSR) + - 1.00, 0.50, 0.25 - - ------- CICE6 ------- From 25374896d017338ba607a8c5c329f8051479a687 Mon Sep 17 00:00:00 2001 From: "denise.worthen" Date: Thu, 15 Jul 2021 17:39:26 -0400 Subject: [PATCH 11/36] minor formatting fixups --- doc/UsersGuide/source/InputsOutputs.rst | 9 +++++---- doc/UsersGuide/source/Introduction.rst | 2 +- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/doc/UsersGuide/source/InputsOutputs.rst b/doc/UsersGuide/source/InputsOutputs.rst index fba0360a39..7dd5ca2901 100644 --- a/doc/UsersGuide/source/InputsOutputs.rst +++ b/doc/UsersGuide/source/InputsOutputs.rst @@ -172,7 +172,6 @@ MOM6 Static datasets (i.e., *fix files*) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - The static input files for global configurations are listed and described in :numref:`Table %s `. .. _MOM6_FixFiles: @@ -211,6 +210,7 @@ The static input files for global configurations are listed and described in :nu * - KH_background_2d.nc - climatological 2-d background harmonic viscosities - 1.00 + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Grid description and initial condition files ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -220,7 +220,7 @@ The input files containing grid information and the initial conditions for globa .. _MOM6_GridICFiles: .. list-table:: *Input files containing grid information and initial conditions for global configurations* - :widths: 35 35 25 15 + :widths: 10 35 10 5 :header-rows: 1 * - Filename @@ -274,11 +274,12 @@ The input files containing grid information and the initial conditions for globa * - MOM.res*nc - ocean initial conditions (from CPC ocean DA) - 0.25 - - + - ✔ * - MOM6_IC_TS.nc - ocean temperature and salinity initial conditions (from CFSR) - 1.00, 0.50, 0.25 - - + - ✔ + ------- CICE6 ------- diff --git a/doc/UsersGuide/source/Introduction.rst b/doc/UsersGuide/source/Introduction.rst index 40ff757a65..192264e469 100644 --- a/doc/UsersGuide/source/Introduction.rst +++ b/doc/UsersGuide/source/Introduction.rst @@ -37,7 +37,7 @@ for those elements, are listed below: - The regression tests used to maintain software integrity as innovations are added. -The UFS Weather Model is currently included in two UFS Application releases. These UFS Apps also contain pre- and post-processing components, a comprehensive build system, and workflows for configuration and execution of the application. +The UFS Weather Model is currently included in two UFS Application releases. These UFS Apps also contain pre- and post-processing components, a comprehensive build system, and workflows for configuration and execution of the application. The UFS WM v2.0 is included as part of the UFS Short Range Weather App, and details can be found `here `_. From 0a4efc80cb29187a0070f0ece7eb34ac35c6bb90 Mon Sep 17 00:00:00 2001 From: "Ali.Abdolali" <37336972+aliabdolali@users.noreply.github.com> Date: Thu, 22 Jul 2021 17:53:48 -0400 Subject: [PATCH 12/36] Update InputsOutputs.rst add gfsv16 waves --- doc/UsersGuide/source/InputsOutputs.rst | 27 +++++++++++++++++++++---- 1 file changed, 23 insertions(+), 4 deletions(-) diff --git a/doc/UsersGuide/source/InputsOutputs.rst b/doc/UsersGuide/source/InputsOutputs.rst index 7dd5ca2901..a4a9c0291d 100644 --- a/doc/UsersGuide/source/InputsOutputs.rst +++ b/doc/UsersGuide/source/InputsOutputs.rst @@ -325,19 +325,38 @@ WW3 Static datasets (i.e., *fix files*) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -.. todo:: Information needed The static input files for global configurations are listed and described in :numref:`Table %s `. +The model definitons for wave grid(s) including spectral and directional resoluitions, time steps, numerical scheme and parallelization algorithm, the physics parameters, boundary conditions and grid definitions are stored in mod_def files. The aformentioned parameteres are defined in ww3_grid_.inp and the ww3_grid executables generates the binary mod_def. file. + +The WW3 version number in mod_def files should be consistent with version of the code in ufs-weather-model. .. _WW3_FixFiles: -.. list-table:: *Fix files containing climatological information* - :widths: 40 50 +.. list-table:: *Input files containing grid information for global configurations (GFSv16 Wave)* + :widths: 35 35 30 15 15 :header-rows: 1 * - Filename - Description - * - + - Coverage + - Resolution + - Date-dependent + * - mod_def.aoc_9km + - polar streo arctic grid + - 50N 90N + - 9km + - ✔ + * - mod_def.gnh_10m + - Global mid core + - 15S 52N + - 10 min + - ✔ + * - mod_def.gsh_15m + - southern ocean + - 79.5S 10.5S + - 15 min + - ✔ - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ From c048638d5afa39156cf52b0196a6a9bfc0c4ca0f Mon Sep 17 00:00:00 2001 From: "Ali.Abdolali" <37336972+aliabdolali@users.noreply.github.com> Date: Thu, 22 Jul 2021 17:53:56 -0400 Subject: [PATCH 13/36] Create InputsOutputs.rst add gfsv16 waves From 5c816abed40e11b071d058104237f175e79dea64 Mon Sep 17 00:00:00 2001 From: Ali Abdolali Date: Thu, 22 Jul 2021 18:39:33 -0400 Subject: [PATCH 14/36] Update InputsOutputs.rst --- doc/UsersGuide/source/InputsOutputs.rst | 71 +++++++++++++++++++++---- 1 file changed, 62 insertions(+), 9 deletions(-) diff --git a/doc/UsersGuide/source/InputsOutputs.rst b/doc/UsersGuide/source/InputsOutputs.rst index a4a9c0291d..cfa680b754 100644 --- a/doc/UsersGuide/source/InputsOutputs.rst +++ b/doc/UsersGuide/source/InputsOutputs.rst @@ -333,30 +333,83 @@ The WW3 version number in mod_def files should be consistent with version of the .. _WW3_FixFiles: -.. list-table:: *Input files containing grid information for global configurations (GFSv16 Wave)* - :widths: 35 35 30 15 15 +.. list-table:: *Input files containing grid information and conservative remapping for global configurations (GFSv16 Wave)* + :widths: 35 35 25 15 :header-rows: 1 * - Filename - Description - - Coverage - Resolution - Date-dependent * - mod_def.aoc_9km - - polar streo arctic grid - - 50N 90N + - Antarctic Ocean PolarStereo [50N 90N] - 9km - ✔ * - mod_def.gnh_10m - - Global mid core - - 15S 52N + - Global mid core [15S 52N] - 10 min - ✔ * - mod_def.gsh_15m - - southern ocean - - 79.5S 10.5S + - southern ocean [79.5S 10.5S] + - 15 min + - ✔ + * - mod_def.glo_15mxt + - Global 1/4 extended grid [90S 90S] - 15 min - ✔ + * - mod_def.points + - GFSv16-wave spectral grid point output + - na + - ✔ + * - mod_def.points + - GFSv16-wave spectral grid point output + - na + - ✔ + * - rmp_src_to_dst_conserv_002_001.nc + - Conservative remapping gsh_15m to gnh_10m + - na + - ✔ + * - rmp_src_to_dst_conserv_003_001.nc + - Conservative remapping aoc_9km to gnh_10m + - na + - ✔ + - + + +.. _WW3_FixFiles: + +.. list-table:: *Input grid information for single global configurations* + :widths: 35 35 30 15 15 + :header-rows: 1 + + * - Filename + - Description + - Resolution + - Date-dependent + * - mod_def.ant_9km + - polar streo antarctic grid [90S 50S] + - 9km + - ✔ + * - mod_def.glo_10m + - Global grid [80S 80N] + - 10 min + - ✔ + * - mod_def.glo_30m + - Global grid [80S 80N] + - 30 min + - ✔ + * - mod_def.glo_1deg + - Global grid [85S 85N] + - 1 degree + - ✔ + * - mod_def.glo_2deg + - Global grid [85S 85N] + - 2 degree + - ✔ + * - mod_def.glo_gwes_30m + - Global NAWES 30 min wave grid [80S 80N] + - 30 min + - ✔ - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ From 4109c4056f2bac97abb3b90826b796860024345e Mon Sep 17 00:00:00 2001 From: Ali Abdolali Date: Fri, 23 Jul 2021 13:50:58 -0400 Subject: [PATCH 15/36] Update InputsOutputs.rst --- doc/UsersGuide/source/InputsOutputs.rst | 40 ++++++++++++++++++++++--- 1 file changed, 36 insertions(+), 4 deletions(-) diff --git a/doc/UsersGuide/source/InputsOutputs.rst b/doc/UsersGuide/source/InputsOutputs.rst index cfa680b754..3963f8e1a5 100644 --- a/doc/UsersGuide/source/InputsOutputs.rst +++ b/doc/UsersGuide/source/InputsOutputs.rst @@ -326,10 +326,10 @@ Static datasets (i.e., *fix files*) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -The static input files for global configurations are listed and described in :numref:`Table %s `. -The model definitons for wave grid(s) including spectral and directional resoluitions, time steps, numerical scheme and parallelization algorithm, the physics parameters, boundary conditions and grid definitions are stored in mod_def files. The aformentioned parameteres are defined in ww3_grid_.inp and the ww3_grid executables generates the binary mod_def. file. +The static input files for global configurations are listed and described in :numref:`Table %s ` for GFSv16 setup and :numref:`Table %s ` for single grid configurations. +The model definitions for wave grid(s) including spectral and directional resolutions, time steps, numerical scheme and parallelization algorithm, the physics parameters, boundary conditions and grid definitions are stored in binary mod_def files. The aforementioned parameters are defined in ww3_grid.inp. and the ww3_grid executables generates the binary mod_def. files. -The WW3 version number in mod_def files should be consistent with version of the code in ufs-weather-model. +The WW3 version number in mod_def. files should be consistent with version of the code in ufs-weather-model. createmoddefs/creategridfiles.sh can be used in order to generate the mod_def. files, using ww3_grid.inp., using the WW3 version in ups-weather-model. In order to do it, the path to the location of the ufs-weather-model (UFSMODELDIR), the path to generated mod_def. outputs (OUTDIR), the path to input ww3_grid.inp. files (SRCDIR) and the path to the working directory for log files (WORKDIR) should be defined. .. _WW3_FixFiles: @@ -376,7 +376,7 @@ The WW3 version number in mod_def files should be consistent with version of the - -.. _WW3_FixFiles: +.. _WW3_FixFilesp: .. list-table:: *Input grid information for single global configurations* :widths: 35 35 30 15 15 @@ -412,6 +412,38 @@ The WW3 version number in mod_def files should be consistent with version of the - ✔ - +The model driver input (ww3_multi.inp) includes the input, model and output grids definition, the starting and ending times for the entire model run and output types and intervals. The ww3_multi.inp.IN template is located under tests/parm/ directory. The inputs are listed and described in :numref:`Table %s ` + +.. _WW3_Driver: + +.. list-table:: *Model driver input* + :widths: 30 70 + :header-rows: 1 + * - NMGRIDS + - Number of wave model grids + * - NFGRIDS + - Number of grids defining input fields + - FUNIPNT + - Flag for using unified point output file. + * - IOSRV + - Output server type + * - FPNTPROC + - Flag for dedicated process for unified point output + * - FGRDPROC + - Flag for grids sharing dedicated output processes + - + +If there are input data grids defined ( NFGRIDS > 0 ) then these grids are defined first (CPLILINE, WINDLINE, ICELINE, CURRLINE). These grids are defined as if they are wave model grids using the file mod_def.. Each grid is defined on a separate input line with , with eight input flags identifying +$ the presence of 1) water levels 2) currents 3) winds 4) ice +$ 5) momentum 6) air density and 7-9) assimilation data. + +The GRIDLINE defines actual wave model grids using 13 parameters to be +read from a single line in the file for each. It includes (1) its own input grid mod_def., (2-10) forcing grid ids, (3) rank number, (12) group number and (13-14) fraction of communicator (processes) used for this grid. + +RUN_BEG and RUN_END define the starting and end times, FLAGMASKCOMP and FLAGMASKOUT are flags for masking at printout time (default F F), followed by the gridded and point outputs start time (OUT_BEG), interval (DTFLD and DTPNT) and end time (OUT_END). The restart outputs start time, interval and end time are define by RST_BEG, DTRST, RST_END respectively. + +The run directory includes the binary outputs for the gridded outputs (YYYYMMDD.HHMMSS.out_grd.), point outputs (YYYYMMDD.HHMMSS.out_pnt.points) and restart files (YYYYMMDD.HHMMSS.restart.). + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Grid description and initial condition files ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ From 05cae32f19c2f0697a28d10aceff344d7f416315 Mon Sep 17 00:00:00 2001 From: Ali Abdolali Date: Fri, 23 Jul 2021 13:54:02 -0400 Subject: [PATCH 16/36] Update InputsOutputs.rst --- doc/UsersGuide/source/InputsOutputs.rst | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/doc/UsersGuide/source/InputsOutputs.rst b/doc/UsersGuide/source/InputsOutputs.rst index 3963f8e1a5..d2bfed284d 100644 --- a/doc/UsersGuide/source/InputsOutputs.rst +++ b/doc/UsersGuide/source/InputsOutputs.rst @@ -442,7 +442,6 @@ read from a single line in the file for each. It includes (1) its own input grid RUN_BEG and RUN_END define the starting and end times, FLAGMASKCOMP and FLAGMASKOUT are flags for masking at printout time (default F F), followed by the gridded and point outputs start time (OUT_BEG), interval (DTFLD and DTPNT) and end time (OUT_END). The restart outputs start time, interval and end time are define by RST_BEG, DTRST, RST_END respectively. -The run directory includes the binary outputs for the gridded outputs (YYYYMMDD.HHMMSS.out_grd.), point outputs (YYYYMMDD.HHMMSS.out_pnt.points) and restart files (YYYYMMDD.HHMMSS.restart.). ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Grid description and initial condition files @@ -1490,7 +1489,7 @@ Further details of the configuration of CICE model output can be found in the CI WW3 ------- -.. todo:: Information needed +The run directory includes WW3 binary outputs for the gridded outputs (YYYYMMDD.HHMMSS.out_grd.), point outputs (YYYYMMDD.HHMMSS.out_pnt.points) and restart files (YYYYMMDD.HHMMSS.restart.). ------- CMEPS From 94961ff7e4f08801dc71ae997664d8da74f256e6 Mon Sep 17 00:00:00 2001 From: Ali Abdolali Date: Fri, 23 Jul 2021 13:59:47 -0400 Subject: [PATCH 17/36] Update InputsOutputs.rst --- doc/UsersGuide/source/InputsOutputs.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/UsersGuide/source/InputsOutputs.rst b/doc/UsersGuide/source/InputsOutputs.rst index d2bfed284d..91f91cad2f 100644 --- a/doc/UsersGuide/source/InputsOutputs.rst +++ b/doc/UsersGuide/source/InputsOutputs.rst @@ -412,7 +412,7 @@ The WW3 version number in mod_def. files should be consistent with version - ✔ - -The model driver input (ww3_multi.inp) includes the input, model and output grids definition, the starting and ending times for the entire model run and output types and intervals. The ww3_multi.inp.IN template is located under tests/parm/ directory. The inputs are listed and described in :numref:`Table %s ` +The model driver input (ww3_multi.inp) includes the input, model and output grids definition, the starting and ending times for the entire model run and output types and intervals. The ww3_multi.inp.IN template is located under tests/parm/ directory. The inputs are described hereinafter: .. _WW3_Driver: From 10a85544ec48474ba781e2f9ec28f3527556b20d Mon Sep 17 00:00:00 2001 From: "denise.worthen" Date: Fri, 23 Jul 2021 14:53:04 -0400 Subject: [PATCH 18/36] add gocart todos; whitespace clean up --- doc/UsersGuide/source/CodeOverview.rst | 18 +++++----- doc/UsersGuide/source/InputsOutputs.rst | 46 +++++++++++++++++++++++++ 2 files changed, 56 insertions(+), 8 deletions(-) diff --git a/doc/UsersGuide/source/CodeOverview.rst b/doc/UsersGuide/source/CodeOverview.rst index ddf83570c6..57775595b0 100644 --- a/doc/UsersGuide/source/CodeOverview.rst +++ b/doc/UsersGuide/source/CodeOverview.rst @@ -45,6 +45,8 @@ The ufs-weather-model repository supports the short- and medium-range UFS applic * - Community Data Models for Earth Prediction Systems (CDEPS) - https://github.com/NOAA-EMC/CDEPS +.. TODO:: need GoCart details + In the table, the left column contains a description of each repository, and the right column shows the component repositories which are pointing to (or will point to) the authoritative repositories. The ufs-weather-model currently uses git submodule to manage the sub-components. The umbrella repository for the UFS Weather Model is named ufs-weather-model. Under this repository reside a number of submodules that are nested in specific directories under the parent repository’s working directory. When the ufs-weather-model repository is cloned, the *.gitmodules* file creates the following directories: @@ -64,11 +66,11 @@ The umbrella repository for the UFS Weather Model is named ufs-weather-model. U | └── MOM6 https://github.com/NOAA-EMC/MOM6 ├── CICE-interface | └── CICE https://github.com/NOAA-EMC/CICE - ├── WW3 https://github.com/NOAA-EMC/WW3 + ├── WW3 https://github.com/NOAA-EMC/WW3 ├── CMEPS-interface - | └── CMEPS https://github.com/NOAA-EMC/CMEPS + | └── CMEPS https://github.com/NOAA-EMC/CMEPS ├── CDEPS-interface - | └── CDEPS https://github.com/NOAA-EMC/CDEPS + | └── CDEPS https://github.com/NOAA-EMC/CDEPS =================== Directory Structure @@ -76,7 +78,7 @@ Directory Structure When the ufs-weather-model is cloned, the basic directory structure will be similar to the example below. Files and some directories have been removed for brevity. -.. TODO:: need WW3 details and CDEPS details +.. TODO:: need GoCart details .. code-block:: console @@ -110,19 +112,19 @@ When the ufs-weather-model is cloned, the basic directory structure will be simi ├── tests -------- regression test scripts | └── parm -------- regression test configurations ├── MOM6-interface - | └── MOM6 + | └── MOM6 │ ├── src --------- MOM6 ocean model │ └── config_source/drivers/nuopc_cap --------- NUOPC MOM6 cap ├── CICE-interface | └── CICE --------- CICE6 sea ice model │ ├── icepack --------- Sea ice column physics │ └── cicecore/drivers/nuopc/cmeps --------- NUOPC CICE6 cap - ├── WW3 + ├── WW3 │ └── model --------- WW3 model │ └── esmf --------- NUOPC WW3 cap ├── CDEPS-interface - | └── CDEPS - | └── datm --------- CDEPS DATM + | └── CDEPS + | └── datm --------- CDEPS DATM The physics subdirectory in the *gfsphysics* directory is not used or supported diff --git a/doc/UsersGuide/source/InputsOutputs.rst b/doc/UsersGuide/source/InputsOutputs.rst index 7dd5ca2901..7b36ea6d39 100644 --- a/doc/UsersGuide/source/InputsOutputs.rst +++ b/doc/UsersGuide/source/InputsOutputs.rst @@ -6,6 +6,8 @@ Inputs and Outputs The ufs-weather-model can be configured as one of several applications, from a single component model atmosphere model to a fully coupled model with multiple earth system components (atmosphere, ocean, sea-ice and mediator). Currently the supported configurations are: +.. todo:: GoCart information needed + .. _UFS-applications: .. list-table:: *Supported ufs-weather-model applications* @@ -397,6 +399,48 @@ The input files containing grid information and the time-varying forcing files f - GEFS forcing file for year YYYY and month MM - ✔ +------- +GoCart +------- +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +Static datasets (i.e., *fix files*) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. todo:: Information needed + +The static input files for global configurations are listed and described in :numref:`Table %s `. + +.. _GoCart_FixFiles: + +.. list-table:: *Fix files containing climatological information* + :widths: 40 50 + :header-rows: 1 + + * - Filename + - Description + * - + - + +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +Grid description and initial condition files +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. todo:: Information needed + +The input files containing grid information and the initial conditions for global configurations are listed and described in :numref:`Table %s `. + +.. _GoCart_GridICFiles: + +.. list-table:: *Input files containing grid information and initial conditions for global configurations* + :widths: 35 50 15 + :header-rows: 1 + + * - Filename + - Description + - Date-dependent + * - + - + - ========================== Model configuration files @@ -908,6 +952,8 @@ are not usually changed. *nems.configure* file ----------------------- +.. todo:: GoCart information needed + This file contains information about the various NEMS components and their run sequence. The active components for a particular model configuration are given in the *EARTH_component_list*. For each active component, the model name and compute tasks assigned to the component are given. A specific component might also require additional configuration information to be present. The *runSeq* describes the order and time intervals over which one or more component models integrate in time. Additional *attributes*, if present, provide additional configuration of the model components when coupled with the CMEPS mediator. For the ATM application, since it consists of a single component, the *nems.configure* is simple and does not need to be changed. From 61216ac038f3a5c17ec00c3444d476340dbfc28f Mon Sep 17 00:00:00 2001 From: Ali Abdolali Date: Fri, 23 Jul 2021 15:18:45 -0400 Subject: [PATCH 19/36] Update InputsOutputs.rst --- doc/UsersGuide/source/InputsOutputs.rst | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/doc/UsersGuide/source/InputsOutputs.rst b/doc/UsersGuide/source/InputsOutputs.rst index 91f91cad2f..74b3c9b614 100644 --- a/doc/UsersGuide/source/InputsOutputs.rst +++ b/doc/UsersGuide/source/InputsOutputs.rst @@ -373,13 +373,12 @@ The WW3 version number in mod_def. files should be consistent with version - Conservative remapping aoc_9km to gnh_10m - na - ✔ - - .. _WW3_FixFilesp: .. list-table:: *Input grid information for single global configurations* - :widths: 35 35 30 15 15 + :widths: 35 35 30 15 :header-rows: 1 * - Filename @@ -410,7 +409,6 @@ The WW3 version number in mod_def. files should be consistent with version - Global NAWES 30 min wave grid [80S 80N] - 30 min - ✔ - - The model driver input (ww3_multi.inp) includes the input, model and output grids definition, the starting and ending times for the entire model run and output types and intervals. The ww3_multi.inp.IN template is located under tests/parm/ directory. The inputs are described hereinafter: @@ -423,7 +421,7 @@ The model driver input (ww3_multi.inp) includes the input, model and output grid - Number of wave model grids * - NFGRIDS - Number of grids defining input fields - - FUNIPNT + * - FUNIPNT - Flag for using unified point output file. * - IOSRV - Output server type @@ -431,7 +429,7 @@ The model driver input (ww3_multi.inp) includes the input, model and output grid - Flag for dedicated process for unified point output * - FGRDPROC - Flag for grids sharing dedicated output processes - - + If there are input data grids defined ( NFGRIDS > 0 ) then these grids are defined first (CPLILINE, WINDLINE, ICELINE, CURRLINE). These grids are defined as if they are wave model grids using the file mod_def.. Each grid is defined on a separate input line with , with eight input flags identifying $ the presence of 1) water levels 2) currents 3) winds 4) ice From 2d0cefc6dc872a9ff34b67dae26e36a474267a65 Mon Sep 17 00:00:00 2001 From: "denise.worthen" Date: Mon, 26 Jul 2021 08:16:11 -0400 Subject: [PATCH 20/36] fix table error --- doc/UsersGuide/source/InputsOutputs.rst | 46 ++++++++++++------------- 1 file changed, 23 insertions(+), 23 deletions(-) diff --git a/doc/UsersGuide/source/InputsOutputs.rst b/doc/UsersGuide/source/InputsOutputs.rst index dbf1c190bc..18dbebdf03 100644 --- a/doc/UsersGuide/source/InputsOutputs.rst +++ b/doc/UsersGuide/source/InputsOutputs.rst @@ -27,14 +27,14 @@ The ufs-weather-model can be configured as one of several applications, from a s * - DATM - Coupled CDEPS DATM-MOM6-CICE6-CMEPS -This chapter describes the input and output files needed for executing the model in the various supported configurations. +This chapter describes the input and output files needed for executing the model in the various supported configurations. ============= Input files ============= There are three types of files needed to execute a run: static datasets (*fix* files containing climatological -information), files that depend on grid resolution, initial and boundary conditions, and model configuration files (such as namelists). +information), files that depend on grid resolution, initial and boundary conditions, and model configuration files (such as namelists). ------- UFSAtm @@ -331,7 +331,7 @@ Static datasets (i.e., *fix files*) The static input files for global configurations are listed and described in :numref:`Table %s ` for GFSv16 setup and :numref:`Table %s ` for single grid configurations. The model definitions for wave grid(s) including spectral and directional resolutions, time steps, numerical scheme and parallelization algorithm, the physics parameters, boundary conditions and grid definitions are stored in binary mod_def files. The aforementioned parameters are defined in ww3_grid.inp. and the ww3_grid executables generates the binary mod_def. files. -The WW3 version number in mod_def. files should be consistent with version of the code in ufs-weather-model. createmoddefs/creategridfiles.sh can be used in order to generate the mod_def. files, using ww3_grid.inp., using the WW3 version in ups-weather-model. In order to do it, the path to the location of the ufs-weather-model (UFSMODELDIR), the path to generated mod_def. outputs (OUTDIR), the path to input ww3_grid.inp. files (SRCDIR) and the path to the working directory for log files (WORKDIR) should be defined. +The WW3 version number in mod_def. files should be consistent with version of the code in ufs-weather-model. createmoddefs/creategridfiles.sh can be used in order to generate the mod_def. files, using ww3_grid.inp., using the WW3 version in ups-weather-model. In order to do it, the path to the location of the ufs-weather-model (UFSMODELDIR), the path to generated mod_def. outputs (OUTDIR), the path to input ww3_grid.inp. files (SRCDIR) and the path to the working directory for log files (WORKDIR) should be defined. .. _WW3_FixFiles: @@ -355,7 +355,7 @@ The WW3 version number in mod_def. files should be consistent with version - southern ocean [79.5S 10.5S] - 15 min - ✔ - * - mod_def.glo_15mxt + * - mod_def.glo_15mxt - Global 1/4 extended grid [90S 90S] - 15 min - ✔ @@ -417,22 +417,22 @@ The model driver input (ww3_multi.inp) includes the input, model and output grid .. _WW3_Driver: .. list-table:: *Model driver input* - :widths: 30 70 + :widths: 30 70 :header-rows: 1 - * - NMGRIDS + + * - NMGRIDS - Number of wave model grids - * - NFGRIDS + * - NFGRIDS - Number of grids defining input fields * - FUNIPNT - Flag for using unified point output file. - * - IOSRV - - Output server type - * - FPNTPROC + * - IOSRV + - Output server type + * - FPNTPROC - Flag for dedicated process for unified point output * - FGRDPROC - Flag for grids sharing dedicated output processes - If there are input data grids defined ( NFGRIDS > 0 ) then these grids are defined first (CPLILINE, WINDLINE, ICELINE, CURRLINE). These grids are defined as if they are wave model grids using the file mod_def.. Each grid is defined on a separate input line with , with eight input flags identifying $ the presence of 1) water levels 2) currents 3) winds 4) ice $ 5) momentum 6) air density and 7-9) assimilation data. @@ -1390,10 +1390,10 @@ A sample of the data stream file is shown below: - data stream mask file name * - model_meshfile - data stream mesh file name - * - nx_global - - number of grid points in zonal direction - * - ny_global - - number of grid points in meridional direction + * - nx_global + - number of grid points in zonal direction + * - ny_global + - number of grid points in meridional direction * - restfilm - model restart file namelist @@ -1457,9 +1457,9 @@ Additional output files include: nemsusage.xml, a timing log file; time_stamp.ou MOM6 ------- -MOM6 output is controlled via the FMS diag_manager using the *diag_table*. When MOM6 is present, the *diag_table* shown :ref:`above ` includes additional requested MOM6 fields. +MOM6 output is controlled via the FMS diag_manager using the *diag_table*. When MOM6 is present, the *diag_table* shown :ref:`above ` includes additional requested MOM6 fields. -A brief example of the diag_table is shown below. ``“...”`` denotes where lines have been removed. +A brief example of the diag_table is shown below. ``“...”`` denotes where lines have been removed. .. code-block:: console @@ -1507,8 +1507,8 @@ CICE6 output is controlled via the namelist *ice_in*. The relevant configuration hist_avg = .true. ... -In this example, *histfreq_n* and *hist_avg* specify that output will be 6-hour means. No monthly (*m*), -daily (*d*), yearly (*x*) or per-timestep (*x*) output will be produced.The *hist_avg* can +In this example, *histfreq_n* and *hist_avg* specify that output will be 6-hour means. No monthly (*m*), +daily (*d*), yearly (*x*) or per-timestep (*x*) output will be produced.The *hist_avg* can also be set *.false.* to produce, for example, instaneous fields every 6 hours. The output of any field is set in the appropriate *ice_in* namelist. For example, @@ -1519,12 +1519,12 @@ The output of any field is set in the appropriate *ice_in* namelist. For example &icefields_nml f_aice = 'mdhxx' f_hi = 'mdhxx' - f_hs = 'mdhxx' + f_hs = 'mdhxx' ... where the ice concentration (*aice*), ice thickness (*hi*) and snow thickness (*hs*) are set to be output on the monthly, daily, hourly, yearly or timestep intervals set by the *histfreq_n* setting. Since *histfreq_n* is -*0* for both monthly and daily frequencies and neither yearly nor per-timestep output is requested, only 6-hour +*0* for both monthly and daily frequencies and neither yearly nor per-timestep output is requested, only 6-hour mean history files will be produced. Further details of the configuration of CICE model output can be found in the CICE documentation `3.1.4 `_ @@ -1533,13 +1533,13 @@ Further details of the configuration of CICE model output can be found in the CI WW3 ------- -The run directory includes WW3 binary outputs for the gridded outputs (YYYYMMDD.HHMMSS.out_grd.), point outputs (YYYYMMDD.HHMMSS.out_pnt.points) and restart files (YYYYMMDD.HHMMSS.restart.). +The run directory includes WW3 binary outputs for the gridded outputs (YYYYMMDD.HHMMSS.out_grd.), point outputs (YYYYMMDD.HHMMSS.out_pnt.points) and restart files (YYYYMMDD.HHMMSS.restart.). ------- CMEPS ------- -The CMEPS mediator writes general information about the run-time configuration to the file *mediator.log* in the model run directory. Optionally, the CMEPS mediator can be configured to write history files for the purposes of examining the field exchanges at various points in the model run sequence. +The CMEPS mediator writes general information about the run-time configuration to the file *mediator.log* in the model run directory. Optionally, the CMEPS mediator can be configured to write history files for the purposes of examining the field exchanges at various points in the model run sequence. ============================================================== Additional Information about the FMS Diagnostic Manager From a6ec7760ec3ad93dcd61e6d3bbbe9f96ea3da8f3 Mon Sep 17 00:00:00 2001 From: Jun Wang Date: Wed, 28 Jul 2021 16:01:21 +0000 Subject: [PATCH 21/36] update atmos_model_nml namelist --- doc/UsersGuide/source/InputNML.inc | 27 --------------------------- 1 file changed, 27 deletions(-) diff --git a/doc/UsersGuide/source/InputNML.inc b/doc/UsersGuide/source/InputNML.inc index 54f0e8d8c3..dbd2695924 100644 --- a/doc/UsersGuide/source/InputNML.inc +++ b/doc/UsersGuide/source/InputNML.inc @@ -277,28 +277,6 @@ The variables used in ``&atmos_model_nml`` are described in :numref:`Table %s 0``. - - real - - 3.0 - * - fhouthf - - The high frequency output frequency during the forecast time from 0 to ``fhmaxhf`` hour. - - real - - 1.0 * - ccpp_suite - Name of the CCPP physics suite - character(len=256) @@ -317,11 +295,6 @@ A sample of this namelist is shown below: blocksize = 32 chksum_debug = .false. dycore_only = .false. - fdiag = 1 - fhmax = 384 - fhout = 3 - fhmaxhf = 120 - fhouthf = 1 ccpp_suite = 'FV3_GFS_v16beta' / From 7f311217467a77c4de4766d7f19c4b99ddecc1cc Mon Sep 17 00:00:00 2001 From: Jun Wang Date: Wed, 28 Jul 2021 16:24:00 +0000 Subject: [PATCH 22/36] updates in model_configure --- doc/UsersGuide/source/InputsOutputs.rst | 54 ++++++------------------- 1 file changed, 13 insertions(+), 41 deletions(-) diff --git a/doc/UsersGuide/source/InputsOutputs.rst b/doc/UsersGuide/source/InputsOutputs.rst index 18dbebdf03..9764ee85ab 100644 --- a/doc/UsersGuide/source/InputsOutputs.rst +++ b/doc/UsersGuide/source/InputsOutputs.rst @@ -878,10 +878,6 @@ shows the following parameters that can be set in *model_configure* at run-time. - flag for ESMF PET files - logical - .true. - * - PE_MEMBER01 - - total number of tasks for ensemble number 1 - - integer - - 150 (for c96 with quilt) * - start_year - start year of model integration - integer @@ -918,18 +914,14 @@ shows the following parameters that can be set in *model_configure* at run-time. - output first time step history file after restart - logical - .false. - * - memuse_verbose - - flag for printing out memory usage - - logical - - .false. - * - atmos_nthreads - - number of threads for atmosphere - - integer - - 4 * - restart_interval - - frequency to output restart file + - frequency to output restart file or forecast hours to restart out restart file - integer - - 0 (write restart file at the end of integration) + - 0 (0: write restart file at the end of integrationi; 12, -1: write out restart every 12 hours; 12 24 write out restart files at fh=12 and 24) + * - atm_coupling_interval_sec + - fast coupling interval in seconds for atmosphere + - real(8) + - 900 * - quilting - flag to turn on quilt - logical @@ -961,7 +953,7 @@ shows the following parameters that can be set in *model_configure* at run-time. * - output_file - output file format - character(255) - - nemsio + - netcdf * - imo - i-dimension for output grid - integer @@ -986,6 +978,10 @@ shows the following parameters that can be set in *model_configure* at run-time. - output frequency of number of time step - integer - -1 (negative: turn off the option, 1: output history file at every time step) + * - output_fh + - history file output forecast hours or history file output frequency if the second elelment is -1 + - real + - -1 (negative: turn off the option, otherwise overwritten nfhout/nfhout_fh; 6 -1: output every 6 hoursr; 6 9: output history files at fh=6 and 9) :numref:`Table %s ` shows the following parameters in *model_configure* that are not usually changed. @@ -1000,18 +996,6 @@ are not usually changed. - Meaning - Type - Default Value - * - total_member - - total number of ensemble member - - integer - - 1 - * - RUN_CONTINUE - - Flag for more than one NEMS run - - logical - - .false. - * - ENS_SPS - - flag for the ensemble stochastic coupling flag - - logical - - .false. * - calendar - type of calendar year - character(*) @@ -1020,14 +1004,10 @@ are not usually changed. - forecast hour at restart for nems/earth grid component clock in coupled model - integer - 0 - * - cpl - - flag for coupling with MOM6/CICE5 - - logical - - .false. * - write_dopost - flag to do post on write grid component - logical - - .false. + - .true. * - ideflate - lossless compression level - integer @@ -1036,14 +1016,6 @@ are not usually changed. - lossy compression level - integer - 14 (0: lossless, range 1-32) - * - write_nemsioflip - - flag to flip the vertical level for nemsio file - - logical - - .true. - * - write_fsyncflag - - flag to check if a file is synced to disk - - logical - - .true. * - iau_offset - IAU offset lengdth - integer @@ -1444,7 +1416,7 @@ Note that the sfcf* and atmf* files are not output on the 6 tiles, but instead a The regional configuration will generate similar output files, but the *tile[1-6]* is not included in the filename. -Two files (*model_configure* and *diag_table*) control the output that is generated by the UFS Weather Model. The output files that contain the model variables are written to a file as shown in the figure below. The format of these output files is selected in *model_configure* as NetCDF or nemsio. The information in these files may be remapped, augmented with derived variables, and converted to GRIB2 by the Unified Post Processor (UPP). Model variables are listed in the *diag_table* in two groupings, *fv3_history* and *fv3_history2d*, as described in :numref:`Section %s `. The names of the files that contain these model variables are specified in the *model_configure* file. When *quilting* is set to *.true.* for the write component, the variables listed in the groups *fv3_history* and *fv3_history2d* are converted into the two output files named in the *model_configure* file, e.g. *atmfHHH.* and *sfcfHHH.*. The bases of the file names (*atm* and *sfc*) are specified in the *model_configure* file, and *HHH* refers to the forecast hour. +Two files (*model_configure* and *diag_table*) control the output that is generated by the UFS Weather Model. The output files that contain the model variables are written to a file as shown in the figure below. The format of these output files is selected in *model_configure* as NetCDF. The information in these files may be remapped, augmented with derived variables, and converted to GRIB2 by the Unified Post Processor (UPP). Model variables are listed in the *diag_table* in two groupings, *fv3_history* and *fv3_history2d*, as described in :numref:`Section %s `. The names of the files that contain these model variables are specified in the *model_configure* file. When *quilting* is set to *.true.* for the write component, the variables listed in the groups *fv3_history* and *fv3_history2d* are converted into the two output files named in the *model_configure* file, e.g. *atmfHHH.* and *sfcfHHH.*. The bases of the file names (*atm* and *sfc*) are specified in the *model_configure* file, and *HHH* refers to the forecast hour. .. image:: _static/fv3IO.png From d3d4ffbff19cd2d2b4a090c551e542f45947e5a3 Mon Sep 17 00:00:00 2001 From: Jun Wang Date: Wed, 28 Jul 2021 18:20:51 +0000 Subject: [PATCH 23/36] fix typo in InputsOutputs.rst --- doc/UsersGuide/source/InputsOutputs.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/UsersGuide/source/InputsOutputs.rst b/doc/UsersGuide/source/InputsOutputs.rst index 9764ee85ab..21555f4071 100644 --- a/doc/UsersGuide/source/InputsOutputs.rst +++ b/doc/UsersGuide/source/InputsOutputs.rst @@ -915,9 +915,9 @@ shows the following parameters that can be set in *model_configure* at run-time. - logical - .false. * - restart_interval - - frequency to output restart file or forecast hours to restart out restart file + - frequency to output restart file or forecast hours to write out restart file - integer - - 0 (0: write restart file at the end of integrationi; 12, -1: write out restart every 12 hours; 12 24 write out restart files at fh=12 and 24) + - 0 (0: write restart file at the end of integration; 12, -1: write out restart every 12 hours; 12 24 write out restart files at fh=12 and 24) * - atm_coupling_interval_sec - fast coupling interval in seconds for atmosphere - real(8) From f1a4999adf78faeb30e544aae395b37902b18565 Mon Sep 17 00:00:00 2001 From: "denise.worthen" Date: Wed, 28 Jul 2021 15:30:15 -0400 Subject: [PATCH 24/36] reorg ww3 sections * need to get feedback on whether changes make sense --- doc/UsersGuide/source/InputsOutputs.rst | 51 +++++-------------------- 1 file changed, 10 insertions(+), 41 deletions(-) diff --git a/doc/UsersGuide/source/InputsOutputs.rst b/doc/UsersGuide/source/InputsOutputs.rst index 21555f4071..752de9c242 100644 --- a/doc/UsersGuide/source/InputsOutputs.rst +++ b/doc/UsersGuide/source/InputsOutputs.rst @@ -327,8 +327,13 @@ WW3 Static datasets (i.e., *fix files*) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +No fix files are required for WW3 -The static input files for global configurations are listed and described in :numref:`Table %s ` for GFSv16 setup and :numref:`Table %s ` for single grid configurations. +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +Grid description and initial condition files +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +The files for global configurations are listed and described in :numref:`Table %s ` for GFSv16 setup and :numref:`Table %s ` for single grid configurations. The model definitions for wave grid(s) including spectral and directional resolutions, time steps, numerical scheme and parallelization algorithm, the physics parameters, boundary conditions and grid definitions are stored in binary mod_def files. The aforementioned parameters are defined in ww3_grid.inp. and the ww3_grid executables generates the binary mod_def. files. The WW3 version number in mod_def. files should be consistent with version of the code in ufs-weather-model. createmoddefs/creategridfiles.sh can be used in order to generate the mod_def. files, using ww3_grid.inp., using the WW3 version in ups-weather-model. In order to do it, the path to the location of the ufs-weather-model (UFSMODELDIR), the path to generated mod_def. outputs (OUTDIR), the path to input ww3_grid.inp. files (SRCDIR) and the path to the working directory for log files (WORKDIR) should be defined. @@ -336,81 +341,65 @@ The WW3 version number in mod_def. files should be consistent with version .. _WW3_FixFiles: .. list-table:: *Input files containing grid information and conservative remapping for global configurations (GFSv16 Wave)* - :widths: 35 35 25 15 + :widths: 35 35 25 :header-rows: 1 * - Filename - Description - Resolution - - Date-dependent * - mod_def.aoc_9km - Antarctic Ocean PolarStereo [50N 90N] - 9km - - ✔ * - mod_def.gnh_10m - Global mid core [15S 52N] - 10 min - - ✔ * - mod_def.gsh_15m - southern ocean [79.5S 10.5S] - 15 min - - ✔ * - mod_def.glo_15mxt - Global 1/4 extended grid [90S 90S] - 15 min - - ✔ * - mod_def.points - GFSv16-wave spectral grid point output - na - - ✔ * - mod_def.points - GFSv16-wave spectral grid point output - na - - ✔ * - rmp_src_to_dst_conserv_002_001.nc - Conservative remapping gsh_15m to gnh_10m - na - - ✔ * - rmp_src_to_dst_conserv_003_001.nc - Conservative remapping aoc_9km to gnh_10m - na - - ✔ .. _WW3_FixFilesp: .. list-table:: *Input grid information for single global configurations* - :widths: 35 35 30 15 + :widths: 35 35 30 :header-rows: 1 * - Filename - Description - Resolution - - Date-dependent * - mod_def.ant_9km - polar streo antarctic grid [90S 50S] - 9km - - ✔ * - mod_def.glo_10m - Global grid [80S 80N] - 10 min - - ✔ * - mod_def.glo_30m - Global grid [80S 80N] - 30 min - - ✔ * - mod_def.glo_1deg - Global grid [85S 85N] - 1 degree - - ✔ * - mod_def.glo_2deg - Global grid [85S 85N] - 2 degree - - ✔ * - mod_def.glo_gwes_30m - Global NAWES 30 min wave grid [80S 80N] - 30 min - - ✔ The model driver input (ww3_multi.inp) includes the input, model and output grids definition, the starting and ending times for the entire model run and output types and intervals. The ww3_multi.inp.IN template is located under tests/parm/ directory. The inputs are described hereinafter: @@ -442,28 +431,8 @@ read from a single line in the file for each. It includes (1) its own input grid RUN_BEG and RUN_END define the starting and end times, FLAGMASKCOMP and FLAGMASKOUT are flags for masking at printout time (default F F), followed by the gridded and point outputs start time (OUT_BEG), interval (DTFLD and DTPNT) and end time (OUT_END). The restart outputs start time, interval and end time are define by RST_BEG, DTRST, RST_END respectively. +No initial condition files are required for WW3. -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -Grid description and initial condition files -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -.. todo:: Information needed - -The input files containing grid information and the initial conditions for global configurations are listed and described in :numref:`Table %s `. - -.. _WW3_GridICFiles: - -.. list-table:: *Input files containing grid information and initial conditions for global configurations* - :widths: 35 50 15 - :header-rows: 1 - - * - Filename - - Description - - Date-dependent - * - - - - - - ------- CDEPS ------- @@ -919,7 +888,7 @@ shows the following parameters that can be set in *model_configure* at run-time. - integer - 0 (0: write restart file at the end of integration; 12, -1: write out restart every 12 hours; 12 24 write out restart files at fh=12 and 24) * - atm_coupling_interval_sec - - fast coupling interval in seconds for atmosphere + - fast coupling interval in seconds for atmosphere - real(8) - 900 * - quilting From 89f769bde1607da0abb7d11cbd88a68624c42e67 Mon Sep 17 00:00:00 2001 From: "denise.worthen" Date: Wed, 28 Jul 2021 15:41:51 -0400 Subject: [PATCH 25/36] remove extraneous todo --- doc/UsersGuide/source/InputsOutputs.rst | 2 -- 1 file changed, 2 deletions(-) diff --git a/doc/UsersGuide/source/InputsOutputs.rst b/doc/UsersGuide/source/InputsOutputs.rst index 752de9c242..ae7566e330 100644 --- a/doc/UsersGuide/source/InputsOutputs.rst +++ b/doc/UsersGuide/source/InputsOutputs.rst @@ -6,8 +6,6 @@ Inputs and Outputs The ufs-weather-model can be configured as one of several applications, from a single component model atmosphere model to a fully coupled model with multiple earth system components (atmosphere, ocean, sea-ice and mediator). Currently the supported configurations are: -.. todo:: GoCart information needed - .. _UFS-applications: .. list-table:: *Supported ufs-weather-model applications* From 5fb2650bb998df47ea4356b38c774da2bea9cb55 Mon Sep 17 00:00:00 2001 From: "denise.worthen" Date: Wed, 28 Jul 2021 15:45:08 -0400 Subject: [PATCH 26/36] add atmaero as supported app --- doc/UsersGuide/source/InputsOutputs.rst | 2 ++ 1 file changed, 2 insertions(+) diff --git a/doc/UsersGuide/source/InputsOutputs.rst b/doc/UsersGuide/source/InputsOutputs.rst index ae7566e330..45926d2e8d 100644 --- a/doc/UsersGuide/source/InputsOutputs.rst +++ b/doc/UsersGuide/source/InputsOutputs.rst @@ -18,6 +18,8 @@ The ufs-weather-model can be configured as one of several applications, from a s - Standalone UFSAtm * - ATMW - UFSAtm coupled to WW3 + * - ATMAERO + - UFSAtm coupled to GoCart * - S2S - Coupled UFSATM-MOM6-CICE6-CMEPS * - S2SW From 2275d9a262ad58ada43b74ddba0c7e8af26f1e2a Mon Sep 17 00:00:00 2001 From: "denise.worthen" Date: Fri, 30 Jul 2021 09:31:53 -0400 Subject: [PATCH 27/36] change todo message for gocart sections --- doc/UsersGuide/source/CodeOverview.rst | 6 +++--- doc/UsersGuide/source/InputsOutputs.rst | 8 ++++---- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/doc/UsersGuide/source/CodeOverview.rst b/doc/UsersGuide/source/CodeOverview.rst index 57775595b0..53dbc4036b 100644 --- a/doc/UsersGuide/source/CodeOverview.rst +++ b/doc/UsersGuide/source/CodeOverview.rst @@ -45,7 +45,7 @@ The ufs-weather-model repository supports the short- and medium-range UFS applic * - Community Data Models for Earth Prediction Systems (CDEPS) - https://github.com/NOAA-EMC/CDEPS -.. TODO:: need GoCart details +.. TODO:: GoCart information in progress In the table, the left column contains a description of each repository, and the right column shows the component repositories which are pointing to (or will point to) the authoritative repositories. The ufs-weather-model currently uses git submodule to manage the sub-components. @@ -78,7 +78,6 @@ Directory Structure When the ufs-weather-model is cloned, the basic directory structure will be similar to the example below. Files and some directories have been removed for brevity. -.. TODO:: need GoCart details .. code-block:: console @@ -126,7 +125,8 @@ When the ufs-weather-model is cloned, the basic directory structure will be simi | └── CDEPS | └── datm --------- CDEPS DATM - +.. TODO:: GoCart information in progress + The physics subdirectory in the *gfsphysics* directory is not used or supported as part of this release (all physics is available through the :term:`CCPP` using the repository described in :numref:`Table %s `). diff --git a/doc/UsersGuide/source/InputsOutputs.rst b/doc/UsersGuide/source/InputsOutputs.rst index 45926d2e8d..868751f221 100644 --- a/doc/UsersGuide/source/InputsOutputs.rst +++ b/doc/UsersGuide/source/InputsOutputs.rst @@ -476,7 +476,7 @@ GoCart Static datasets (i.e., *fix files*) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -.. todo:: Information needed +.. TODO:: GoCart information in progress The static input files for global configurations are listed and described in :numref:`Table %s `. @@ -495,7 +495,7 @@ The static input files for global configurations are listed and described in :nu Grid description and initial condition files ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -.. todo:: Information needed +.. TODO:: GoCart information in progress The input files containing grid information and the initial conditions for global configurations are listed and described in :numref:`Table %s `. @@ -994,8 +994,6 @@ are not usually changed. *nems.configure* file ----------------------- -.. todo:: GoCart information needed - This file contains information about the various NEMS components and their run sequence. The active components for a particular model configuration are given in the *EARTH_component_list*. For each active component, the model name and compute tasks assigned to the component are given. A specific component might also require additional configuration information to be present. The *runSeq* describes the order and time intervals over which one or more component models integrate in time. Additional *attributes*, if present, provide additional configuration of the model components when coupled with the CMEPS mediator. For the ATM application, since it consists of a single component, the *nems.configure* is simple and does not need to be changed. @@ -1233,6 +1231,8 @@ For the coupled MOM6_CICE6_CDEPS_DATM application, a sample *nems.configure* is :: +.. TODO:: GoCart information in progress + --------------------------------------- *The SDF (Suite Definition File) file* --------------------------------------- From cdd8119a421b9ccdc2143abedf6c9a96285aaf6b Mon Sep 17 00:00:00 2001 From: Minsuk Ji <57227195+MinsukJi-NOAA@users.noreply.github.com> Date: Fri, 30 Jul 2021 09:38:09 -0400 Subject: [PATCH 28/36] Stampede update (#15) * Update stampede related files * Change work to work2 * Fix module path --- modulefiles/ufs_stampede.intel | 15 ++++++++------- tests/default_vars.sh | 4 ++-- tests/fv3_conf/fv3_slurm.IN_stampede | 4 ++-- tests/rt.sh | 2 +- 4 files changed, 13 insertions(+), 12 deletions(-) diff --git a/modulefiles/ufs_stampede.intel b/modulefiles/ufs_stampede.intel index 458b91933f..31d27016b6 100644 --- a/modulefiles/ufs_stampede.intel +++ b/modulefiles/ufs_stampede.intel @@ -14,7 +14,7 @@ module-whatis "loads NEMS FV3 prerequisites for Stampede/Intel" ## ## NCEP libraries ## -module use /work/08048/hanglei/NCEP/install/hpc-stack/modulefiles/stack +module use /work2/08048/hanglei/stampede2/NCEP/install/hpc-stack/modulefiles/stack module load hpc/1.1.0 module load hpc-intel/18.0.2 module load hpc-impi/18.0.2 @@ -22,14 +22,14 @@ module load python3/3.7.0 module load bacio/2.4.1 module load crtm/2.3.0 -module load g2/3.4.1 -module load g2tmpl/1.9.1 +module load g2/3.4.3 +module load g2tmpl/1.10.0 module load ip/3.3.3 module load nemsio/2.5.2 module load sp/2.3.3 module load w3emc/2.7.3 module load w3nco/2.4.1 -module load upp/10.0.0 +module load upp/10.0.8 module load gfsio/1.4.1 module load sfcio/1.4.1 @@ -41,13 +41,14 @@ module load zlib/1.2.11 module load hdf5/1.10.6 module load netcdf/4.7.4 -module load pio/2.5.2 -module load esmf/8_1_0_beta_snapshot_47 +module load pio/2.5.3 +module load fms/2020.04.03 +module load esmf/8_1_1 ## ## load cmake ## -module load cmake/3.16.1 +module load cmake/3.20.1 setenv CC mpiicc setenv CXX mpiicpc setenv FC mpiifort diff --git a/tests/default_vars.sh b/tests/default_vars.sh index d0ae07ca90..e69647563e 100755 --- a/tests/default_vars.sh +++ b/tests/default_vars.sh @@ -358,7 +358,7 @@ elif [[ $MACHINE_ID = stampede.* ]]; then OPB_cpl_dflt_wwav="150 179"; IPB_cpl_dflt_wwav="180 191"; WPB_cpl_dflt_wwav="192 383" TASKS_cpl_thrd=120; TPN_cpl_thrd=24; INPES_cpl_thrd=3; JNPES_cpl_thrd=4 - THRD_cpl_thrd=2; WPG_cpl_thrd=6; MPB_cpl_thrd="0 77"; APB_cpl_thrd="0 77" + THRD_cpl_thrd=2; WPG_cpl_thrd=6; MPB_cpl_thrd="0 71"; APB_cpl_thrd="0 77" OPB_cpl_thrd="78 107"; IPB_cpl_thrd="108 119" TASKS_cpl_bmrk=480; TPN_cpl_bmrk=48; INPES_cpl_bmrk=6; JNPES_cpl_bmrk=8 @@ -369,7 +369,7 @@ elif [[ $MACHINE_ID = stampede.* ]]; then THRD_cpl_wwav=1; WPG_cpl_wwav=24; MPB_cpl_wwav="0 287"; APB_cpl_wwav="0 311" OPB_cpl_wwav="312 431"; IPB_cpl_wwav="432 479"; WPB_cpl_wwav="480 527" - TASKS_cpl_c192=288; TPN_cpl_c192=40; INPES_cpl_c192=4; JNPES_cpl_c192=8 + TASKS_cpl_c192=288; TPN_cpl_c192=48; INPES_cpl_c192=4; JNPES_cpl_c192=8 THRD_cpl_c192=1; WPG_cpl_c192=12; MPB_cpl_c192="0 191"; APB_cpl_c192="0 203" OPB_cpl_c192="204 263"; IPB_cpl_c192="264 287" diff --git a/tests/fv3_conf/fv3_slurm.IN_stampede b/tests/fv3_conf/fv3_slurm.IN_stampede index 0384da5966..c8383e9f86 100644 --- a/tests/fv3_conf/fv3_slurm.IN_stampede +++ b/tests/fv3_conf/fv3_slurm.IN_stampede @@ -2,9 +2,9 @@ #SBATCH -o out #SBATCH -e err #SBATCH -N @[NODES] +#SBATCH --ntasks-per-node=@[TPN] #SBATCH -A @[ACCNR] #SBATCH -p @[QUEUE] -#SBATCH -n @[TASKS] #SBATCH -t 00:@[WLCLK]:00 set -eux @@ -30,7 +30,7 @@ export LD_BIND_NOW=1 #sync && sleep 1 #mpirun -prepend-rank -np $SBATCH_NP ./fv3.exe -ibrun ./fv3.exe +ibrun -n @[TASKS] ./fv3.exe echo "Model ended: " `date` echo -n " $( date +%s )," >> job_timestamp.txt diff --git a/tests/rt.sh b/tests/rt.sh index ebf2d6f30a..82830719a2 100755 --- a/tests/rt.sh +++ b/tests/rt.sh @@ -332,7 +332,7 @@ elif [[ $MACHINE_ID = stampede.* ]]; then PARTITION= ACCNR=TG-EES200015 dprefix=$SCRATCH/ufs-weather-model/run - DISKNM=/work/07736/minsukji/stampede2/ufs-weather-model/RT + DISKNM=/work2/07736/minsukji/stampede2/ufs-weather-model/RT STMP=$dprefix PTMP=$dprefix SCHEDULER=slurm From 001c8b1fdb7444ec0a7f33a2a1c2328e2231f225 Mon Sep 17 00:00:00 2001 From: "denise.worthen" Date: Fri, 30 Jul 2021 11:00:34 -0400 Subject: [PATCH 29/36] fixes for review comments * remove FMS as component * fix WW3 name * remove extra word --- doc/UsersGuide/source/CodeOverview.rst | 6 +----- doc/UsersGuide/source/InputsOutputs.rst | 2 +- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/doc/UsersGuide/source/CodeOverview.rst b/doc/UsersGuide/source/CodeOverview.rst index 53dbc4036b..f9c2f02546 100644 --- a/doc/UsersGuide/source/CodeOverview.rst +++ b/doc/UsersGuide/source/CodeOverview.rst @@ -20,8 +20,6 @@ The ufs-weather-model repository supports the short- and medium-range UFS applic - Authoritative repository URL * - Umbrella repository for the UFS Weather Model - https://github.com/ufs-community/ufs-weather-model - * - Infrastructure: Flexible Modeling System - - https://github.com/NOAA-GFDL/FMS * - Infrastructure: NOAA Environmental Modeling System - https://github.com/NOAA-EMC/NEMS * - Framework to connect the CCPP library to a host model @@ -38,7 +36,7 @@ The ufs-weather-model repository supports the short- and medium-range UFS applic - https://github.com/NOAA-EMC/MOM6 * - Los Alamos sea ice model (CICE6) - https://github.com/NOAA-EMC/CICE - * - EMC WaveWatch III Model (WW3) + * - NOAA/NCEP WAVEWATCH III Model (WW3) - https://github.com/NOAA-EMC/WW3 * - NUOPC Community Mediator for Earth Prediction Systems (CMEPS) - https://github.com/NOAA-EMC/CMEPS @@ -54,7 +52,6 @@ The umbrella repository for the UFS Weather Model is named ufs-weather-model. U .. code-block:: console ufs-weather-model/ - ├── FMS https://github.com/NOAA-GFDL/FMS ├── FV3 https://github.com/NOAA-EMC/fv3atm │ ├── atmos_cubed_sphere https://github.com/NOAA-GFDL/GFDL_atmos_cubed_sphere │ ├── ccpp @@ -86,7 +83,6 @@ When the ufs-weather-model is cloned, the basic directory structure will be simi ├── compsets -------- configurations used by some regression tests ├── conf -------- compile options for Tier 1 and 2 platforms ├── doc -------- READMEs with build, reg-test hints - ├── FMS -------- The Flexible Modeling System (FMS),a software framework ├── FV3 -------- UFSAtm atmosphere model │ ├── atmos_cubed_sphere ------ FV3 dynamic core │ │ ├── docs diff --git a/doc/UsersGuide/source/InputsOutputs.rst b/doc/UsersGuide/source/InputsOutputs.rst index 868751f221..5105f1d4c7 100644 --- a/doc/UsersGuide/source/InputsOutputs.rst +++ b/doc/UsersGuide/source/InputsOutputs.rst @@ -4,7 +4,7 @@ Inputs and Outputs ************************* -The ufs-weather-model can be configured as one of several applications, from a single component model atmosphere model to a fully coupled model with multiple earth system components (atmosphere, ocean, sea-ice and mediator). Currently the supported configurations are: +The ufs-weather-model can be configured as one of several applications, from a single component atmosphere model to a fully coupled model with multiple earth system components (atmosphere, ocean, sea-ice and mediator). Currently the supported configurations are: .. _UFS-applications: From 6fedf3f3f2144e617e93535e3c7284e124809f10 Mon Sep 17 00:00:00 2001 From: "denise.worthen" Date: Fri, 30 Jul 2021 11:22:07 -0400 Subject: [PATCH 30/36] clean up codeoverview * remove subdirs no longer present * remove fv3_cap, a file not a directory --- doc/UsersGuide/source/CodeOverview.rst | 5 ----- 1 file changed, 5 deletions(-) diff --git a/doc/UsersGuide/source/CodeOverview.rst b/doc/UsersGuide/source/CodeOverview.rst index f9c2f02546..d42d912cb5 100644 --- a/doc/UsersGuide/source/CodeOverview.rst +++ b/doc/UsersGuide/source/CodeOverview.rst @@ -80,8 +80,6 @@ When the ufs-weather-model is cloned, the basic directory structure will be simi ufs-weather-model/ ├── cmake -------- cmake configuration files - ├── compsets -------- configurations used by some regression tests - ├── conf -------- compile options for Tier 1 and 2 platforms ├── doc -------- READMEs with build, reg-test hints ├── FV3 -------- UFSAtm atmosphere model │ ├── atmos_cubed_sphere ------ FV3 dynamic core @@ -96,11 +94,8 @@ When the ufs-weather-model is cloned, the basic directory structure will be simi │ │ ├── physics -------- CCPP compliant physics schemes │ │ └── suites -------- CCPP physics suite definition files (SDFs) │ ├── cpl -------- Coupling field data structures - │ ├── fv3_cap -------- UFSAtm NUOPC cap │ ├── io -------- UFSAtm write grid comp code - │ ├── ipd -------- unused - IPD driver/interfaces | ├── stochastic_physics ------ Cmakefile for stochastic physics code - ├── log -------- log files from NEMS compset regression tests ├── modulefiles -------- system module files for supported HPC systems ├── NEMS -------- NOAA Earth Modeling System framework ├── stochastic_physics -------- stochastic physics pattern generator From 0823b229b074acc309f620ea993b741b447d44e5 Mon Sep 17 00:00:00 2001 From: "denise.worthen" Date: Fri, 30 Jul 2021 11:44:01 -0400 Subject: [PATCH 31/36] add figure caption in 4.3.1 --- doc/UsersGuide/source/InputsOutputs.rst | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/doc/UsersGuide/source/InputsOutputs.rst b/doc/UsersGuide/source/InputsOutputs.rst index 5105f1d4c7..6c51c9ef4f 100644 --- a/doc/UsersGuide/source/InputsOutputs.rst +++ b/doc/UsersGuide/source/InputsOutputs.rst @@ -1387,7 +1387,9 @@ The regional configuration will generate similar output files, but the *tile[1-6 Two files (*model_configure* and *diag_table*) control the output that is generated by the UFS Weather Model. The output files that contain the model variables are written to a file as shown in the figure below. The format of these output files is selected in *model_configure* as NetCDF. The information in these files may be remapped, augmented with derived variables, and converted to GRIB2 by the Unified Post Processor (UPP). Model variables are listed in the *diag_table* in two groupings, *fv3_history* and *fv3_history2d*, as described in :numref:`Section %s `. The names of the files that contain these model variables are specified in the *model_configure* file. When *quilting* is set to *.true.* for the write component, the variables listed in the groups *fv3_history* and *fv3_history2d* are converted into the two output files named in the *model_configure* file, e.g. *atmfHHH.* and *sfcfHHH.*. The bases of the file names (*atm* and *sfc*) are specified in the *model_configure* file, and *HHH* refers to the forecast hour. -.. image:: _static/fv3IO.png +.. figure:: _static/fv3IO.png + + Relationship between *diag_table*, *model_configure* and generated output files Standard output files are *logfHHH* (one per forecast hour), and out and err as specified by the job submission. ESMF may also produce log files (controlled by variable print_esmf in the *model_configure* file), called *PETnnn.ESMF_LogFile* (one per MPI task). From d1ec0674041a77a8f4d2dcb9add73b14de99f16b Mon Sep 17 00:00:00 2001 From: "denise.worthen" Date: Fri, 30 Jul 2021 11:48:46 -0400 Subject: [PATCH 32/36] use ng-godas as an application name --- doc/UsersGuide/source/InputsOutputs.rst | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/doc/UsersGuide/source/InputsOutputs.rst b/doc/UsersGuide/source/InputsOutputs.rst index 6c51c9ef4f..3e1116a776 100644 --- a/doc/UsersGuide/source/InputsOutputs.rst +++ b/doc/UsersGuide/source/InputsOutputs.rst @@ -24,8 +24,8 @@ The ufs-weather-model can be configured as one of several applications, from a s - Coupled UFSATM-MOM6-CICE6-CMEPS * - S2SW - Coupled UFSATM-MOM6-CICE6-WW3-CMEPS - * - DATM - - Coupled CDEPS DATM-MOM6-CICE6-CMEPS + * - NG-GODAS + - Coupled CDEPS-DATM-MOM6-CICE6-CMEPS This chapter describes the input and output files needed for executing the model in the various supported configurations. @@ -1109,7 +1109,7 @@ For the fully coupled S2SW application, a sample *nems.configure* is shown below :: -For the coupled MOM6_CICE6_CDEPS_DATM application, a sample *nems.configure* is shown below : +For the coupled NG_GODAS application, a sample *nems.configure* is shown below : .. code-block:: console From 6c8e00eb2926d202edeced378d91c78aa69fb31f Mon Sep 17 00:00:00 2001 From: Minsuk Ji <57227195+MinsukJi-NOAA@users.noreply.github.com> Date: Fri, 30 Jul 2021 14:15:38 -0400 Subject: [PATCH 33/36] Fix build env setup in Chapter 3 (#16) --- doc/UsersGuide/source/BuildingAndRunning.rst | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/doc/UsersGuide/source/BuildingAndRunning.rst b/doc/UsersGuide/source/BuildingAndRunning.rst index b5ade23ab6..03399d7830 100644 --- a/doc/UsersGuide/source/BuildingAndRunning.rst +++ b/doc/UsersGuide/source/BuildingAndRunning.rst @@ -119,44 +119,38 @@ For the ufs-weather-model ATM app (standalone ATM): .. code-block:: console - export CMAKE_FLAGS="-DAPP=ATM" - export CCPP_SUITES="FV3_GFS_v16" + export CMAKE_FLAGS="-DAPP=ATM -DCCPP_SUITES=FV3_GFS_v16" For the ufs-weather-model ATM app (standalone ATM) in 32 bit: .. code-block:: console - export CMAKE_FLAGS="-DAPP=ATM -D32BIT=ON" - export CCPP_SUITES="FV3_GFS_v16" + export CMAKE_FLAGS="-DAPP=ATM -D32BIT=ON -DCCPP_SUITES=FV3_GFS_v16" For the ufs-weather-model ATMW app (standalone ATM with wave): .. code-block:: console - export CMAKE_FLAGS="-DAPP=ATMW" - export CCPP_SUITES="FV3_GFS_v16" + export CMAKE_FLAGS="-DAPP=ATMW -DCCPP_SUITES=FV3_GFS_v16" For the ufs-weather-model S2S app (atm/ice/ocean): .. code-block:: console - export CMAKE_FLAGS="-DAPP=S2S" - export CCPP_SUITES="FV3_GFS_2017_coupled,FV3_GFS_2017_satmedmf_coupled,FV3_GFS_v15p2_coupled,FV3_GFS_v16_coupled,FV3_GFS_v16_couplednsst" + export CMAKE_FLAGS="-DAPP=S2S -DCCPP_SUITES=FV3_GFS_2017_coupled,FV3_GFS_2017_satmedmf_coupled,FV3_GFS_v15p2_coupled,FV3_GFS_v16_coupled,FV3_GFS_v16_couplednsst" For the ufs-weather-model S2S app (atm/ice/ocean) with debugging flags turned on, with verbose build messages: .. code-block:: console - export CMAKE_FLAGS="-DAPP=S2S -DDEBUG=ON" - export CCPP_SUITES="FV3_GFS_2017_coupled,FV3_GFS_2017_satmedmf_coupled,FV3_GFS_v15p2_coupled,FV3_GFS_v16_coupled,FV3_GFS_v16_couplednsst" + export CMAKE_FLAGS="-DAPP=S2S -DDEBUG=ON -DCCPP_SUITES=FV3_GFS_2017_coupled,FV3_GFS_2017_satmedmf_coupled,FV3_GFS_v15p2_coupled,FV3_GFS_v16_coupled,FV3_GFS_v16_couplednsst" export BUILD_VERBOSE=1 For the ufs-weather-model S2SW app (atm/ice/ocean/wave): .. code-block:: console - export CMAKE_FLAGS="-DAPP=S2SW" - export CCPP_SUITES="FV3_GFS_2017_coupled,FV3_GFS_v15p2_coupled,FV3_GFS_v16_coupled,FV3_GFS_v16_coupled_noahmp" + export CMAKE_FLAGS="-DAPP=S2SW -DCCPP_SUITES=FV3_GFS_2017_coupled,FV3_GFS_v15p2_coupled,FV3_GFS_v16_coupled,FV3_GFS_v16_coupled_noahmp" ------------------ Building the model From 4b3e25af2a2b430b6a736d46466cb7d229eb0d72 Mon Sep 17 00:00:00 2001 From: "denise.worthen" Date: Fri, 30 Jul 2021 14:20:32 -0400 Subject: [PATCH 34/36] change GoCart to GOCART --- doc/UsersGuide/source/CodeOverview.rst | 4 ++-- doc/UsersGuide/source/InputsOutputs.rst | 18 +++++++++--------- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/doc/UsersGuide/source/CodeOverview.rst b/doc/UsersGuide/source/CodeOverview.rst index d42d912cb5..c37a4d346d 100644 --- a/doc/UsersGuide/source/CodeOverview.rst +++ b/doc/UsersGuide/source/CodeOverview.rst @@ -43,7 +43,7 @@ The ufs-weather-model repository supports the short- and medium-range UFS applic * - Community Data Models for Earth Prediction Systems (CDEPS) - https://github.com/NOAA-EMC/CDEPS -.. TODO:: GoCart information in progress +.. TODO:: GOCART information in progress In the table, the left column contains a description of each repository, and the right column shows the component repositories which are pointing to (or will point to) the authoritative repositories. The ufs-weather-model currently uses git submodule to manage the sub-components. @@ -116,7 +116,7 @@ When the ufs-weather-model is cloned, the basic directory structure will be simi | └── CDEPS | └── datm --------- CDEPS DATM -.. TODO:: GoCart information in progress +.. TODO:: GOCART information in progress The physics subdirectory in the *gfsphysics* directory is not used or supported as part of this release (all physics is available through the :term:`CCPP` using diff --git a/doc/UsersGuide/source/InputsOutputs.rst b/doc/UsersGuide/source/InputsOutputs.rst index 3e1116a776..fa0bf228ab 100644 --- a/doc/UsersGuide/source/InputsOutputs.rst +++ b/doc/UsersGuide/source/InputsOutputs.rst @@ -19,7 +19,7 @@ The ufs-weather-model can be configured as one of several applications, from a s * - ATMW - UFSAtm coupled to WW3 * - ATMAERO - - UFSAtm coupled to GoCart + - UFSAtm coupled to GOCART * - S2S - Coupled UFSATM-MOM6-CICE6-CMEPS * - S2SW @@ -470,17 +470,17 @@ The input files containing grid information and the time-varying forcing files f - ✔ ------- -GoCart +GOCART ------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Static datasets (i.e., *fix files*) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -.. TODO:: GoCart information in progress +.. TODO:: GOCART information in progress -The static input files for global configurations are listed and described in :numref:`Table %s `. +The static input files for global configurations are listed and described in :numref:`Table %s `. -.. _GoCart_FixFiles: +.. _GOCART_FixFiles: .. list-table:: *Fix files containing climatological information* :widths: 40 50 @@ -495,11 +495,11 @@ The static input files for global configurations are listed and described in :nu Grid description and initial condition files ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -.. TODO:: GoCart information in progress +.. TODO:: GOCART information in progress -The input files containing grid information and the initial conditions for global configurations are listed and described in :numref:`Table %s `. +The input files containing grid information and the initial conditions for global configurations are listed and described in :numref:`Table %s `. -.. _GoCart_GridICFiles: +.. _GOCART_GridICFiles: .. list-table:: *Input files containing grid information and initial conditions for global configurations* :widths: 35 50 15 @@ -1231,7 +1231,7 @@ For the coupled NG_GODAS application, a sample *nems.configure* is shown below : :: -.. TODO:: GoCart information in progress +.. TODO:: GOCART information in progress --------------------------------------- *The SDF (Suite Definition File) file* From cf896537a5f8622a3bd0020225bd104d5b3df9c7 Mon Sep 17 00:00:00 2001 From: "denise.worthen" Date: Fri, 30 Jul 2021 14:25:45 -0400 Subject: [PATCH 35/36] fix weird small font of input.nml in 4.2.8 section --- doc/UsersGuide/source/InputNML.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/UsersGuide/source/InputNML.inc b/doc/UsersGuide/source/InputNML.inc index dbd2695924..ca30d6cfc0 100644 --- a/doc/UsersGuide/source/InputNML.inc +++ b/doc/UsersGuide/source/InputNML.inc @@ -5,7 +5,7 @@ .. _InputNML: --------------------------- -Namelist file ``input.nml`` +Namelist file *input.nml* --------------------------- The atmosphere model reads many parameters from a Fortran namelist file, named *input.nml*. This file contains From 63ed5275999b9d47d5a5601ba9a05a6eccb166e1 Mon Sep 17 00:00:00 2001 From: "denise.worthen" Date: Fri, 30 Jul 2021 14:55:12 -0400 Subject: [PATCH 36/36] cleanup and reorg of 2.2 Directory Structure --- doc/UsersGuide/source/CodeOverview.rst | 30 +++++++++++++++----------- 1 file changed, 17 insertions(+), 13 deletions(-) diff --git a/doc/UsersGuide/source/CodeOverview.rst b/doc/UsersGuide/source/CodeOverview.rst index c37a4d346d..e4baa7d051 100644 --- a/doc/UsersGuide/source/CodeOverview.rst +++ b/doc/UsersGuide/source/CodeOverview.rst @@ -60,14 +60,14 @@ The umbrella repository for the UFS Weather Model is named ufs-weather-model. U ├── NEMS https://github.com/NOAA-EMC/NEMS ├── stochastic_physics https://github.com/noaa-psd/stochastic_physics ├── MOM6-interface - | └── MOM6 https://github.com/NOAA-EMC/MOM6 + │ └── MOM6 https://github.com/NOAA-EMC/MOM6 ├── CICE-interface - | └── CICE https://github.com/NOAA-EMC/CICE + │ └── CICE https://github.com/NOAA-EMC/CICE ├── WW3 https://github.com/NOAA-EMC/WW3 ├── CMEPS-interface - | └── CMEPS https://github.com/NOAA-EMC/CMEPS + │ └── CMEPS https://github.com/NOAA-EMC/CMEPS ├── CDEPS-interface - | └── CDEPS https://github.com/NOAA-EMC/CDEPS + │ └── CDEPS https://github.com/NOAA-EMC/CDEPS =================== Directory Structure @@ -80,7 +80,7 @@ When the ufs-weather-model is cloned, the basic directory structure will be simi ufs-weather-model/ ├── cmake -------- cmake configuration files - ├── doc -------- READMEs with build, reg-test hints + ├── doc -------- User Guide files ├── FV3 -------- UFSAtm atmosphere model │ ├── atmos_cubed_sphere ------ FV3 dynamic core │ │ ├── docs @@ -95,26 +95,30 @@ When the ufs-weather-model is cloned, the basic directory structure will be simi │ │ └── suites -------- CCPP physics suite definition files (SDFs) │ ├── cpl -------- Coupling field data structures │ ├── io -------- UFSAtm write grid comp code - | ├── stochastic_physics ------ Cmakefile for stochastic physics code - ├── modulefiles -------- system module files for supported HPC systems + │ └── stochastic_physics ------ Wrapper for stochastic physics + │ ├── NEMS -------- NOAA Earth Modeling System framework ├── stochastic_physics -------- stochastic physics pattern generator - ├── tests -------- regression test scripts - | └── parm -------- regression test configurations ├── MOM6-interface - | └── MOM6 + │ └── MOM6 │ ├── src --------- MOM6 ocean model │ └── config_source/drivers/nuopc_cap --------- NUOPC MOM6 cap ├── CICE-interface - | └── CICE --------- CICE6 sea ice model + │ └── CICE --------- CICE6 sea ice model │ ├── icepack --------- Sea ice column physics │ └── cicecore/drivers/nuopc/cmeps --------- NUOPC CICE6 cap ├── WW3 │ └── model --------- WW3 model │ └── esmf --------- NUOPC WW3 cap ├── CDEPS-interface - | └── CDEPS - | └── datm --------- CDEPS DATM + │ └── CDEPS + │ └── datm --------- CDEPS DATM + │ + ├── modulefiles -------- system module files for supported HPC systems + ├── tests -------- regression test infrastructure + │ └── parm + │ └── tests + │ └── fv3_conf .. TODO:: GOCART information in progress