Parallel Python Tools for Post-Processing Climate Data




pyCECT: The CESM Ensemble Consistency Test 

The on-going state of development of CESM (and simulation software in general) requires frequent software verification in the form of quality assurance to both preserve the quality of the code and instill model confidence. To formalize and simplify this previously subjective and computationally-expensive aspect of the verification process, we developed a new tool, CESM-ECT, for evaluating climate consistency. Because an ensemble of simulations allows us to gauge the natural variability of the model’s climate, our new tool uses an ensemble approach for consistency testing. In particular, an ensemble of CESM climate runs is created by the CESM software engineers, from which a statistical distribution is created that can be used to determine whether a new climate run is statistically distinguishable from the original ensemble.  CESM-ECT is objective in nature and accessible to CESM developers and users. The tool has proven its utility in detecting errors in software and hardware environments and providing rapid feedback to model developers.

The flow chart illustrates the process. Note that the ensemble distribution information is contained in the "summary file", which is included in CESM releases.  To test a new configuration for consistency, pyCECT requires the location of the ensemble summary file and 3 output files from simulations with the new configuration.