NCAR / ccpp-framework

Common Community Physics Package (CCPP)
http://www.dtcenter.org/community-code/common-community-physics-package-ccpp/
Other
26 stars 63 forks source link

CCPP-physics Issue #127 Fix #517

Closed grantfirl closed 6 months ago

grantfirl commented 7 months ago

This PR is a bugfix for https://github.com/ufs-community/ccpp-physics/issues/127

https://github.com/NCAR/ccpp-framework/pull/503 was merged to fix the case when no scheme within a group has an init phase. A bug was introduced described in the ccpp-physics issue above. This fix ensures that the ccpp_t_instance variable is only passed once in the caps.

User interface changes?: No

Fixes:

https://github.com/ufs-community/ccpp-physics/issues/127

Testing: test removed: unit tests: system tests: tested with UFS RTs RegressionTests_hera.log Note that the CMEPS tests are still passing in particular. manual testing: Tested with the SCM using the SDF supplied in https://github.com/ufs-community/ccpp-physics/issues/127 with compilation and running. Also examined the produced caps to make sure the double cdata argument has been removed.

grantfirl commented 7 months ago

Hope this fixes the issue without causing other issues 🤞

Indeed. In retrospect, I got lucky (or unlucky?) in https://github.com/NCAR/ccpp-framework/pull/503 that the local name for the ccpp_t type variable was consistent across the tiers of caps (suite and group caps). Otherwise, it wouldn't have worked to fix the original issue. I don't know what I was thinking adding the local name to the list of variables needed by the group caps when the framework should always be identifying variables by their standard name. Rookie mistake by me, for sure.

climbfuji commented 7 months ago

Hope this fixes the issue without causing other issues 🤞

Indeed. In retrospect, I got lucky (or unlucky?) in #503 that the local name for the ccpp_t type variable was consistent across the tiers of caps (suite and group caps). Otherwise, it wouldn't have worked to fix the original issue. I don't know what I was thinking adding the local name to the list of variables needed by the group caps when the framework should always be identifying variables by their standard name. Rookie mistake by me, for sure.

I reviewed and approved, so my bad too!