Skip to content

Commit

Permalink
Merge branch 'update_ug' into 20240819_combiner
Browse files Browse the repository at this point in the history
  • Loading branch information
grantfirl committed Aug 19, 2024
2 parents 4b8570f + 266ac64 commit 97719c7
Show file tree
Hide file tree
Showing 9 changed files with 248 additions and 289 deletions.
2 changes: 1 addition & 1 deletion environment-ufsreplay.yml → environment-ufscasegen.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: env_ufsreplay
name: env_ufscasegen

dependencies:
- conda-forge::python=3.8.5
Expand Down
2 changes: 1 addition & 1 deletion scm/doc/TechGuide/acknow.rst
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,5 @@ For referencing this document please use:

Firl, G., D. Swales, L. Carson, L. Bernardet, D. Heinzeller, M. Harrold, T. Hertneky, and
M. Kavulich, 2024. Common Community Physics Package Single Column Model v7.0.0 User and
Technical Guide. Available at https://ccpp-scm.readthedocs.io/en/latest/.
Technical Guide. Available at https://ccpp-scm.readthedocs.io/en/v7.0.0/.

351 changes: 162 additions & 189 deletions scm/doc/TechGuide/chap_cases.rst

Large diffs are not rendered by default.

20 changes: 10 additions & 10 deletions scm/doc/TechGuide/chap_ccpp.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@
CCPP Interface
==============

Chapter 6 of the CCPP v6 Technical Documentation
(https://ccpp-techdoc.readthedocs.io/en/v6.0.0/) provides a wealth of
Chapter 6 of the CCPP v7 Technical Documentation
(https://ccpp-techdoc.readthedocs.io/en/v7.0.0/) provides a wealth of
information on the overall process of connecting a host model to the
CCPP framework for calling physics. This chapter describes the
particular implementation within this SCM, including how to set up,
Expand All @@ -23,7 +23,7 @@ Preparing data from the SCM
~~~~~~~~~~~~~~~~~~~~~~~~~~~

As described in sections 6.1 and 6.2 of the `CCPP Technical
Documentation <https://ccpp-techdoc.readthedocs.io/en/v6.0.0/>`__ a host
Documentation <https://ccpp-techdoc.readthedocs.io/en/v7.0.0/>`__ a host
model must allocate memory and provide metadata for variables that are
passed into and out of the schemes within the physics suite. As of this
release, in practice this means that a host model must do this for all
Expand All @@ -33,7 +33,7 @@ schemes are allocated and documented in the file ``ccpp-scm/scm/src/scm_type_def
within the ``physics`` derived data type. This derived data type initializes its
component variables in a ``create`` type-bound procedure. As mentioned in section
6.2 of the `CCPP Technical
Documentation <https://ccpp-techdoc.readthedocs.io/en/v6.0.0/>`__, files
Documentation <https://ccpp-techdoc.readthedocs.io/en/v7.0.0/>`__, files
containing all required metadata was constructed for describing all
variables in the derived data type. These files are ``scm/src/GFS_typedefs.meta,``, ``scm/src/CCPP_typedefs.meta``, and ``scm_physical_constants.meta``. Further, ``scm_type_defs.meta``
exists to provide metadata for derived data type definitions and their
Expand All @@ -47,7 +47,7 @@ Editing and running ``ccpp_prebuild.py``

General instructions for configuring and running the ``ccpp_prebuild.py`` script can be found
in chapter 8 of the `CCPP Technical
Documentation <https://ccpp-techdoc.readthedocs.io/en/v6.0.0/>`__. The
Documentation <https://ccpp-techdoc.readthedocs.io/en/v7.0.0/>`__. The
script expects to be run with a host-model-dependent configuration file,
passed as argument ``–config=path_to_config_file``. Within this configuration file are variables that
hold paths to the variable definition files (where metadata tables can
Expand Down Expand Up @@ -98,7 +98,7 @@ described in sections
respectively. A more general description of the process for performing
suite initialization and running can also be found in sections 6.4 and
6.5 of the `CCPP Technical
Documentation <https://ccpp-techdoc.readthedocs.io/en/v6.0.0/>`__.
Documentation <https://ccpp-techdoc.readthedocs.io/en/v7.0.0/>`__.

Changing a suite
----------------
Expand All @@ -110,7 +110,7 @@ Prior to being able to swap a scheme within a suite, one must first add
a CCPP-compliant scheme to the pool of available schemes in the CCPP
physics repository. This process is described in chapter 2 of the `CCPP
Technical
Documentation <https://ccpp-techdoc.readthedocs.io/en/v6.0.0/>`__.
Documentation <https://ccpp-techdoc.readthedocs.io/en/v7.0.0/>`__.

Once a CCPP-compliant scheme has been added to the CCPP physics
repository, the process for modifying an existing suite should take the
Expand All @@ -129,7 +129,7 @@ following steps into account:
- Do any of the new variables need to be calculated in an
interstitial scheme? If so, one must be written and made
CCPP-compliant itself. The `CCPP Technical
Documentation <https://ccpp-techdoc.readthedocs.io/en/v6.0.0/>`__
Documentation <https://ccpp-techdoc.readthedocs.io/en/v7.0.0/>`__
will help in this endeavor, and the process outlined in its
chapter 2 should be followed.

Expand Down Expand Up @@ -157,7 +157,7 @@ following steps into account:
associated interstitial ``<scheme>`` elements and simply replacing the scheme
names to reflect their replacements. See chapter 4 of the `CCPP
Technical
Documentation <https://ccpp-techdoc.readthedocs.io/en/v6.0.0/>`__ for
Documentation <https://ccpp-techdoc.readthedocs.io/en/v7.0.0/>`__ for
further details.

Modifying “groups” of parameterizations
Expand Down Expand Up @@ -236,7 +236,7 @@ would do so:
cannot be used in a physics scheme yet. For that, you’ll need to add
an entry in the corresponding metadata file. See section 2.2 of the
`CCPP Technical
Documentation <https://ccpp-techdoc.readthedocs.io/en/v6.0.0/CompliantPhysicsParams.html#metadata-table-rules>`__
Documentation <https://ccpp-techdoc.readthedocs.io/en/v7.0.0/CompliantPhysicsParams.html#metadata-table-rules>`__
for more information regarding the format.

#. On the physics scheme side, there will also be a metadata file entry
Expand Down
2 changes: 1 addition & 1 deletion scm/doc/TechGuide/chap_function.rst
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ The following steps are performed at the beginning of program execution:
sets some variables within the ``scm_state`` derived type from the data that was
read.

#. Call ``get_case_init()`` (or ``get_case_init_DEPHY()`` if using the DEPHY format) in the ``scm_input`` module to read in the
#. Call ``get_case_init_DEPHY()`` in the ``scm_input`` module to read in the
case input data file (see :numref:`Section %s <case input>`). This subroutine
also sets some variables within the ``scm_input`` derived type from the data that
was read.
Expand Down
52 changes: 23 additions & 29 deletions scm/doc/TechGuide/chap_intro.rst
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,10 @@ parameterizations (CCPP framework). In fact, this SCM serves as perhaps the simp
example for using the CCPP and its framework in an atmospheric model.
This version contains all parameterizations of NOAA’s evolved
operational GFS v16 suite (implemented in 2021), plus additional
developmental schemes. The schemes are grouped in six supported suites
developmental schemes. The schemes are grouped in five supported suites
described in detail in the `CCPP Scientific
Documentation <https://dtcenter.ucar.edu/GMTB/v6.0.0/sci_doc/>`__
(GFS_v16, GFS_v17p8, RAP, HRRR, and RRFS_v1beta, and WoFS_v0).
Documentation <https://dtcenter.ucar.edu/GMTB/v7.0.0/sci_doc/>`__
(GFS_v16, GFS_v16_RRTMGP, GFS_v17_p8_ugwpv1, HRRR_gf, and WoFS_v0).

This document serves as both the User and Technical Guides for this
model. It contains a Quick Start Guide with instructions for obtaining
Expand All @@ -35,39 +35,37 @@ through the CCPP infrastructure.
Version Notes
-------------

The CCPP SCM v6.0.0 contains the following major and minor changes since
v5.0.
The CCPP SCM v7.0.0 contains the following major and minor changes since v6.0.

Major

- Inclusion of regression testing functionality
- Ability to generate SCM cases from UFS simulations using either derived forcings
or native forcings from the dynamical core.

- Combine single- and multi-run capabilities into one script
- Support for single precision physics within the SCM.

Minor

- Add RUC LSM support
- Addition of new physics schemes; RRTMGP radiation and CLM Lake Model, along with
updates to existing schemes.

- Add the GFS_v17p8, HRRR, RRFS_v1beta, and WoFS_v0 suites
- CCPP SCM support for the latest operational/research physics configurations used
across UFS applications, including the GFS_v17_p8_ugwpv1, GFS_v16_RRTMGP, and
HRRR_gf suites.

- Update the vertical coordinate code to better match latest FV3
vertical coordinate code
- New SCM cases; MOSAiC-AMPS, MOSAiC-SS, COMBLE, and a catolog of cases in the
`GdR-DEPHY <https://github.com/GdR-DEPHY/DEPHY-SCM>`__ repository that can be run
with CCPP SCM.

- Simplify the case configuration namelists

- Add greater flexibility for output location (outside of bin
directory)
- Updated `Scientific Documentation <https://dtcenter.ucar.edu/GMTB/v7.0.0/sci_doc/>`__, User's Guide, Technical Documentation, and
online tutorials.

Limitations
~~~~~~~~~~~

This release bundle has some known limitations:

- In the output file, temperature tendency variables all mistakenly
have the same description, although their variable names are correct.
This has been fixed in the development code.

- Using the RRFS_v1beta, HRRR, and WoFS_v0 suites for cases where deep
- Using the HRRR_gf and WoFS_v0 suites for cases where deep
convection is expected to be active will likely produce
strange/unreliable results, unless the forcing has been modified to
account for the deep convection. This is because forcing for existing
Expand Down Expand Up @@ -101,16 +99,12 @@ This release bundle has some known limitations:
LSMs for the supplied cases over land points, there should be no
technical reason why they cannot be used with LSMs, however.

- As of this release, using the SCM over a land point with an LSM is
- Using the SCM over a land point with an LSM is
possible through the use of UFS initial conditions (see
:numref:`Section %s <UFSreplay>`). However, advective forcing terms
are unavailable as of this release, so only short integrations using
this configuration should be employed. Using dynamical tendencies
(advective forcing terms) from the UFS will be part of a future
release.
:numref:`Section %s <UFScasegen>`).

- There are several capabilities of the developmental code that have
not been tested sufficiently to be considered part of the supported
release. Those include additional parameterizations. Users that want
to use experimental capabilities should refer to
:numref:`Subsection %s <development_code>`.
release. Those include additional parameterizations and the CCPP
Suite Simulator. Users that want to use experimental capabilities
should refer to :numref:`Subsection %s <development_code>`.
Loading

0 comments on commit 97719c7

Please sign in to comment.