You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
Zero-diff to Previous Release: NO
Restart Changes: NO
Overview
This update is the merge of the GCM v12 codebase into the main development line, which brings broad changes across physics components, component coupling, diagnostics, CI, and build configuration.
NOTE: The user's level choice during gcm_setup will determine the default physics configuration. The default selection is L72 and will configure the experiment to use most of the same physics options as prior versions of GEOSgcm v11. A non-L72 level selection will trigger new physics options for GEOSgcm. Running the new codebase in the L72 configuration is intended to produce similar results as previous versions of the model, however, it is still non-zero-difference delta.
Major Code Changes:
Merged the GCM v12 codebase intodevelop via PR #1436, bringing a major refresh of physics coupling, diagnostics, CI, and build infrastructure.
Expanded moist-physics diagnostics (GFDL MP) and state handling to include rain, snow, and graupel as explicit 3D and vertically integrated outputs (QRTOT/QSTOT/QGTOT, TQR/TQS/TQG, fill diagnostics, and physics/moist tendency integrals).
Added robust negative-moisture cleanup and fill diagnostics across multiple stages of the physics sequence, improving stability and budget tracking for water species.
Refactored physics-driver synchronization logic by separating SYNCTQ and SYNCUV, improving staged coupling among moist, turbulence, surface, radiation, and chemistry components.
Enhanced turbulence and process diagnostics, including TKE transport output and per-physics-component wall-clock timing diagnostics.
Substantially updated gravity wave drag (NCAR GWD) physics and infrastructure, including ACG/MAPL modernization, revised background/orographic forcing options, new diagnostics, and improved thread/config handling.
Modernized moist physics / DSL integration, especially for UW, GFDL_1M, and GF2020, with associated bug fixes and code cleanup.
Improved replay / IAU timing controls, including support for REPLAY_ENDDATE / REPLAY_ENDTIME and fixes such as an mkIAU memory leak.
Integrated Python bridge capabilities into AGCM, enabling new extensibility paths for Python-coupled workflows.
Expanded routing, land, and BC preprocessing support, including river routing for offline GEOSldas workflows and newer boundary condition/topography packages (Land v12 and 14).
Added a new radar reflectivity module (compute_radar_reflectivity.F90) and expanded calcdbz.F to better handle snow, graupel, hail, and liquid-skin behavior.
Added L186 extended model top in m_set_eta.F90.
Improved robustness in QSAT interpolation by adding bounds protection to saturation table indexing.
Migration from older MAPL2-style usage to MAPL/MAPL3 interfaces.
Extensive updates and bufixes for the plots package.
Updates to remap_restarts consistent with the new model development and BCS.
Upgraded CI and portability support, including newer CircleCI/GitHub Actions workflows, GEOSldas CI, GCC 15 support, and compiler-specific stability workarounds
Major Changes to Experiment Setup
Major changes in gcm_setup:
Non-L72 level configurations use timesteps that scalre with resolution as opposed to a fixed 450 sec DT
Expanded resolution support
Broader cubed-sphere support including higher resolutions and stretched-grid configurations.
More explicit handling of atmospheric/ocean grid combinations.
Explicit physics defaults
gcm_setup now differentiates defaults based on vertical level choice:
72 levels keeps defaults consistent with GEOSgcm v11