MPAS-Dev/MPAS-Model

Proposed implementation of new tendency diagnostics package and significant revisions to PV diagnostics package in MPAS-A

Opened this issue · 0 comments

This issue broadly outlines code changes and additions that accompany a new tendency diagnostics package and a significantly overhauled PV diagnostics package for MPAS-Atmosphere and a proposed plan to submit these changes for implementation into a working MPAS release via a series of pull requests and commits.

The new tendency diagnostics package was created by May Wong (@maywswong) and tracks model tendencies throughout the integration in order to evaluate budgets of variables such as potential temperature and momentum. The revised PV tendency diagnostics package is now largely dependent on the tendency diagnostics package for calculations of tendencies that are used in the PV tendency and budget calculations. Additionally, the revised PV package includes several new features, including accumulating the PV tendencies throughout the model integration and calculating the PV tendencies from individual processes in the Thompson microphysics scheme. The revised PV tendency package is described in more detailed here.

Collectively, both of these packages require a large number of new model variables and calculations. To address this, we have added several namelist config_* flags that are connected to variable packages to (1) make it easy for the user community to toggle on/off these diagnostic calculations at run-time and (2) reduce the memory and computational resources required to run the model when these packages are disabled:
config_tend: calculations and variables associated with tendency diagnostics package
config_pv_diag: calculation of ertel_pv and DT interpolation of model state variables
config_pv_tend: calculation of instantaneous and accumulated PV tendencies
config_pv_microphys: calculation of PV tendencies from individual microphysical processes
config_pv_scalar: transport of PV passive scalar variable
config_pv_isobaric: interpolation of PV diagnostic variables to isobaric levels

I’ve also added a similar capability for the revised isobaric diagnostics package (config_isobaric) that is included in PR #1184 and propose this approach moving forward for all MPAS-A diagnostics calculations.

Summary of proposed PRs and commits:

  • PR1: Add the framework for these new diagnostic packages
    C1: Define the new config_* options, packages, and variables in updated Registry files
    C2: Add mpas_atm_diagnostics_packages.F script to connect the config options with the diagnostic variable packages

  • PR2: Implement code for the tendency diagnostics package

  • PR3: Implement code for the revised PV diagnostics package
    C1: Define new halo groups to be called in the revised PV code
    C2: Starting from a new mpas_pv_diagnostics.F file, implement revised calculations for ertel_pv and variables on the dynamic tropopause
    C3: Implement calculations and functionality for the revised PV tendency variables and add accumulated PV tendencies
    C4: Implement code to support PV tendencies from individual microphysical processes in the Thompson scheme
    C5: Implement code to support transport of a pv_scalar variable
    C6: Implement code to support isobaric interpolation of PV variables
    C7: Tie together any loose ends, add README files, etc.