Skip to content

Verbose physics data check: print out all checked variables#475

Merged
jimmielin merged 6 commits intoESCOMP:developmentfrom
jimmielin:hplin/verbose_physics_data_check
Mar 10, 2026
Merged

Verbose physics data check: print out all checked variables#475
jimmielin merged 6 commits intoESCOMP:developmentfrom
jimmielin:hplin/verbose_physics_data_check

Conversation

@jimmielin
Copy link
Member

@jimmielin jimmielin commented Mar 9, 2026

Tag name (required for release branches):
Originator(s): @jimmielin

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

  • Print out a list of variables checked by physics_check_data against the snapshot, so the developer can verify that indeed everything expected to change in the state is present in the list and correctly being verified.
  • This is active when debug_output >= 1 (DEBUGOUT_INFO) -- verbose level 2 is "too verbose" since it prints out the variables as they are being read, so it disrupts the output.

A sample:

 ********** Physics Check Data Results **********

 TIMESTEP:            1

 No differences found for all the variables below:
 Note: If a variable is not in the registry,
       or if a constituent is not registered,
       it is not checked against the snapshot.
       Verify all model state variables are enumerated below:

 Variable Checked                                  # Values   Avg (model)   Avg (snapshot)
 --------                                          --------   ------------   --------------
 air_temperature                                      12636    2.36933E+02    2.36933E+02
 atmosphere_boundary_layer_thickness                    486    4.13916E+02    4.13916E+02
convective_temperature_perturbation_due_to_pbl_eddies
                                                        486    1.83867E-01    1.83867E-01
convective_water_vapor_mixing_ratio_wrt_moist_air_and_condensed_water_perturbation_due_to_pbl_eddies
                                                        486    3.49470E-04    3.49470E-04
 dry_static_energy                                    12636    3.65186E+05    3.65186E+05
 eastward_beljaars_surface_stress_tbd                   486    0.00000E+00    0.00000E+00
eastward_reserved_stress_at_surface_on_previous_timestep
                                                        486    0.00000E+00    0.00000E+00
 eastward_wind                                        12636    6.87831E+00    6.87831E+00
 geopotential_height_wrt_surface                      12636    1.27354E+04    1.27354E+04
 geopotential_height_wrt_surface_at_interface         13122    1.30061E+04    1.30061E+04
 northward_beljaars_surface_stress_tbd                  486    0.00000E+00    0.00000E+00
northward_reserved_stress_at_surface_on_previous_timestep
                                                        486    0.00000E+00    0.00000E+00
 northward_wind                                       12636    2.95916E-01    2.95916E-01
 tendency_of_air_temperature_due_to_model_physics     12636    1.12615E-06    1.12615E-06
 tendency_of_eastward_wind_due_to_model_physics       12636   -6.00840E-07   -6.00840E-07
 tendency_of_northward_wind_due_to_model_physics      12636    2.80339E-06    2.80339E-06
 turbulent_orographic_form_drag_coefficent            12636    0.00000E+00    0.00000E+00
cloud_liquid_water_mixing_ratio_wrt_moist_air_and_condensed_water
                                                      12636    5.80819E-06    5.80819E-06
cloud_ice_mixing_ratio_wrt_moist_air_and_condensed_water
                                                      12636    1.31301E-06    1.31301E-06
water_vapor_mixing_ratio_wrt_moist_air_and_condensed_water
                                                      12636    1.76886E-03    1.76886E-03

 No differences found!

 ********** End Physics Check Data Results **********

Describe any changes made to build system: N/A

Describe any changes made to the namelist: N/A

List any changes to the defaults for the input datasets (e.g. boundary datasets): N/A

List all files eliminated and why: N/A

List all files added and what they do: N/A

List all existing files that have been modified, and describe the changes:
(Helpful git command: git diff --name-status development...<your_branch_name>)

M       src/data/write_init_files.py
  - flush verbose output
  - instead of is_first, use overall_diff_found to decide whether to output "no differences found!" message.

M       src/physics/utils/physics_data.F90
  - add verbose check and global averaging output.

If there are new failures (compared to the test/existing-test-failures.txt file),
have them OK'd by the gatekeeper, note them here, and add them to the file.
If there are baseline differences, include the test and the reason for the
diff. What is the nature of the change? Roundoff?

derecho/intel/aux_sima:

  SMS_Ln9.ne3pg3_ne3pg3_mg37.FKESSLER.derecho_intel.cam-outfrq_se_cslam_multitape (Overall: NLFAIL) details:
    FAIL SMS_Ln9.ne3pg3_ne3pg3_mg37.FKESSLER.derecho_intel.cam-outfrq_se_cslam_multitape NLCOMP
  - known NLFAIL due to cime validation error on multiple history tapes (#430)

derecho/gnu/aux_sima:

  SMS_Ln9.ne3pg3_ne3pg3_mg37.FADIAB.derecho_gnu.cam-outfrq_se_cslam (Overall: FAIL) details:
    FAIL SMS_Ln9.ne3pg3_ne3pg3_mg37.FADIAB.derecho_gnu.cam-outfrq_se_cslam RUN time=27
  - known FAIL on shr_reprosum_calc call from src/dynamics/se/dycore/global_norms_mod.F90

derecho/nvhpc/aux_sima: All PASS

If this changes climate describe any run(s) done to evaluate the new
climate in enough detail that it(they) could be reproduced:

CAM-SIMA date used for the baseline comparison tests if different than latest:

Also includes the following change in #473:
Originator(s): billsacks, nusbaume

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

This is the same changes that are in ESCOMP/CAM#1492. To summarize:

Without this change, you couldn't run compsets with some non-CAM atm from a standalone CAM checkout.

Describe any changes made to build system:

M .config_files.xml

  • Define locations for data atmosphere (datm), stub atmosphere (satm), and test atmosphere (xatm).

Describe any changes made to the namelist: N/A

List any changes to the defaults for the input datasets (e.g. boundary datasets): N/A

List all files eliminated and why: N/A

List all files added and what they do: N/A

List all existing files that have been modified, and describe the changes:
(Helpful git command: git diff --name-status development...<your_branch_name>)

M .config_files.xml

  • Define locations for data atmosphere (datm), stub atmosphere (satm), and test atmosphere (xatm).

@jimmielin jimmielin self-assigned this Mar 9, 2026
@jimmielin jimmielin added the enhancement New feature or request label Mar 9, 2026
Copy link
Collaborator

@cacraigucar cacraigucar left a comment

Choose a reason for hiding this comment

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

My approval is mainly based as a functionality approval, as I tested this change a few weeks ago. I did look through the .F90 files and nothing jumped out at me as needing to be changed.

Copy link
Collaborator

@peverwhee peverwhee left a comment

Choose a reason for hiding this comment

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

one small optional comment change, but otherwise looks good!

@jimmielin
Copy link
Member Author

regression tests all pass subject to known failures - no baseline changes

@jimmielin jimmielin merged commit a62c8b3 into ESCOMP:development Mar 10, 2026
16 checks passed
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

None yet

Development

Successfully merging this pull request may close these issues.

4 participants