Skip to content

Conversation

@MicroTed
Copy link
Contributor

@MicroTed MicroTed commented Apr 25, 2025

Description

This PR adds a doubly-periodic idealized "Process Model" capability that is customizable by the user at run time via input.nml and that can be run within the UFS framework and is fully compatible with CCPP physics (GFS_PHYS=1). It allows a user to specify a horizontally homogeneous environment (single sounding) to run with any physics suite and grid configuration (dimensions, grid spacing, etc.). Surface and orographic input conditions can be generated by a python script (docs/ideal_processmodel_doc/create_ideal_sfc_oro_input.py) or read from real data files. The regression test runs an supercell storm simulation as a simple example.

This capability is distinct from the idealized dycore tests in test_cases.F90. The new code is meant to work with UFS/CCPP and thus is kept separate in the driver/UFS directory and has an independent namelist.

Initial documentation is included in the docs directory, and could be linked from other documentation as needed.

This work was led by @LarissaReames-NOAA, who did most of the coding. This PR replaces #370 because very unfortunately she cannot currently work on it.

A self-contained run directory that can be cloned by those who'd like to test the code inside a pre-generated run directory can be found here (will be updated to work with final: https://github.com/MicroTed/ufs_ideal_run.git

Fixes/addresses ufs-community/ufs-weather-model/issues/2558
Replaces #370

How Has This Been Tested?

These code changes have been compiled and tested on both Hera and MacOS. Tests have been run to check that all the various types of sounding options can be used successfully. The full suite of regression tests will be run at the weather model level (new RT input data needed).

Checklist:

Please check all whether they apply or not

  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation (internal docs only; no changes yet to main docs)
  • My changes generate no new warnings
  • Any dependent changes have been merged and published in downstream modules

LarissaReames and others added 30 commits October 22, 2021 17:19
…ernal sounding

t_profile,q_profile,ws_profile = -1 to use this option with "input_sounding" in run directory
…lized domain central longitude and domain size in lat/lon
…array in rayleigh friction computation was iniitaliized but left empty if pressure never less than rf_cutoff. This bug was causing erroneous model-top winds and model crashes.
real(kind=R_GRID) :: deglon=0. !< Longitude (in degrees) used for radiation
!< calculations for doubly-periodic simulations.
!< (grid_type = 4). Default value is 0.
real(kind=R_GRID) :: deg_domain=10. !< Domain size (north-south & east-east) in
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this be set to 11.25 to maintain original 'arbitrary' value of pi/16? (Otherwise will now be pi/18)

  fv_processmodel.F90 : Added back the comment header with module usage and alphabetized
@laurenchilutti
Copy link
Member

@lharris4 @XiaqiongZhou-NOAA Reminder to please review this PR. Thank you!

Copy link
Contributor

@lharris4 lharris4 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is fine. Glad to see NSSL's continuing contributions to the FV3 Community.

@laurenchilutti
Copy link
Member

@XiaqiongZhou-NOAA Do you have time to review this PR? Thanks!

Copy link
Contributor

@XiaqiongZhou-NOAA XiaqiongZhou-NOAA left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This PR add the capability to run idealized double periodic experiments and disables the potential to run similar tests initialized from test_cases when using the full GFS physics. It looks good to me.

@jkbk2004
Copy link

jkbk2004 commented Aug 5, 2025

all test are done ok at ufs-community/ufs-weather-model#2719. @laurenchilutti @lharris4 @bensonr @XiaqiongZhou-NOAA can you merge this pr?

@bensonr bensonr merged commit 77be6d2 into NOAA-GFDL:dev/emc Aug 6, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants