Skip to content

Complete CCPPization of cldfrc2m (compute_cloud_fraction_two_moment)#380

Open
jimmielin wants to merge 1 commit intoESCOMP:mainfrom
jimmielin:hplin/cldfrc2m
Open

Complete CCPPization of cldfrc2m (compute_cloud_fraction_two_moment)#380
jimmielin wants to merge 1 commit intoESCOMP:mainfrom
jimmielin:hplin/cldfrc2m

Conversation

@jimmielin
Copy link
Copy Markdown
Member

@jimmielin jimmielin commented Mar 31, 2026

Tag name (The PR title should also include the tag name):
Originator(s): @jimmielin

AI use? Yes - The design of how this module takes shape and how this flows the public parameters also shared with compute_cloud_fraction (formerly cldfrc in CAM) was jointly developed with claude-opus-4.6. This is essentially a copy of cldfrc2m cleaned up, the rearranging of data flows happens in the CAM PR (tbd)

Description (include issue title and the keyword ['closes', 'fixes', 'resolves'] and issue number):

  • Close CCPPize/move to atmos_phys: cldfrc2m (cloud fraction for two-moment microphys) #374: Bring in cldfrc2m (compute_cloud_fraction_two_moment) from CAM to atmospheric_physics
  • This module provides liquid stratus (PDF and RHU methods) and ice stratus cloud fraction computations, used in combination with MG two-moment microphysics
  • Note: cldfrc2m does not have a standalone "run" scheme phase. It only has an _init phase (CCPP scheme) that reads namelist parameters, and exposes public subroutines (astG_PDF, astG_RHU, aist_vector, etc.) that are called by other schemes (e.g. MG microphysics, CAM5 macrophysics, CLUBB, PUMAS, CARMA). This is why it was a priority to bring into atmospheric_physics separate from the rest of CAM5 macrop, to facilitate porting of other incoming schemes without a house of cards

List all namelist files that were added or changed:

A       schemes/cloud_fraction/compute_cloud_fraction_two_moment_namelist.xml
  - cldfrc2m_nl: rhmini, rhmaxi, rhminis, rhmaxis, qist_min, qist_max,
    do_subgrid_growth, do_avg_aist_algs

List all files eliminated and why: N/A

List all files added and what they do:

A       schemes/cloud_fraction/compute_cloud_fraction_two_moment.F90
  - main module (formerly cldfrc2m in CAM)
  - CCPP init phase: reads namelist parameters into module variables
  - public subroutines for liquid stratus fraction (astG_PDF, astG_PDF_single,
    astG_RHU, astG_RHU_single) and ice stratus fraction (aist_single, aist_vector)
    called by other schemes

A       schemes/cloud_fraction/compute_cloud_fraction_two_moment.meta
  - CCPP metadata for the init phase

A       schemes/cloud_fraction/compute_cloud_fraction_two_moment_namelist.xml
  - namelist XML for cldfrc2m_nl params

List all existing files that have been modified, and describe the changes: N/A

List all automated tests that failed, as well as an explanation for why they weren't fixed:

Is this an answer-changing PR? If so, is it a new physics package, algorithm change, tuning change, etc?
All B4B tested in CAM
New physics package support module (cloud fraction for two-moment microphysics)

If yes to the above question, describe how this code was validated with the new/modified features:

cherry-picks of 51c81a7 part-f6e0bda6 part-be911bdff from uwshcu dev
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

CCPPize/move to atmos_phys: cldfrc2m (cloud fraction for two-moment microphys)

1 participant