ccpp-framework
ccpp-framework copied to clipboard
Common Community Physics Package (CCPP)
## Description In CAMDEN, we are currently using a parameter set to 512 to set the length of errmsg. We'd like to avoid having these parallel values of 512 (our...
Concatenating a suite name, group name, and phase can result in a cap interface name which exceeds 63 characters. Proposal is to use name mangling to keep name under 63...
## Description `ccpp_prebuild.py` defines DDTs and instances of it as shown here: Typedefs: https://github.com/NOAA-EMC/fv3atm/blob/develop/ccpp/data/CCPP_typedefs.meta https://github.com/NOAA-EMC/fv3atm/blob/develop/ccpp/data/CCPP_typedefs.F90 Instance: https://github.com/NOAA-EMC/fv3atm/blob/develop/ccpp/data/CCPP_data.meta https://github.com/NOAA-EMC/fv3atm/blob/develop/ccpp/data/CCPP_data.F90 ## Solution capgen should use the same or a similar/better approach.
## Description In the UFS (and copied in the SCM) the host needs to know information about the suite being run in order to conditionally allocate variables and set some...
# Description The README.md file on the feature/capgen branch is incorrect in that it discusses usage of the prebuild system. This should be corrected to discuss usage using capgen. Separately,...
## Description To define a standard interface for host models using a `CMake` build system, the framework should provide a `CMake` macro that runs the code generator (`capgen`) and returns...
## Description When calling `capgen`, the host model needs to specify all input requirements, currently: list of metadata files (host, scheme), list of type definitions, list of suite definition files,...
Many models (e.g., UFS, CAM6) have blocked data structures where each 'block' is a DDT that contains field arrays. - A task's `horizontal_dimension` is made up of the collection of...
## Description Sometimes, a physics scheme will need input data that is specific to the scheme. The host model needs to perform the input of this data but should not...
All host model interface routines (except suite and suite part lists) must take a group name as an optional argument. - At run time if no group is specified, run...