Closed ldhawknesssmith closed 1 year ago
The namelist looks fine to me, but I think it would be good to add an extra unit test here to check it's working as expected. You can do that as follows:
(1) Edit opsinputs/test/generate_unittest_netcdfs.py. Near the bottom, there are calls to the routine output_full_cx_to_netcdf
for different data types. You can add an entry for Surface there and tailor it to use the correct CX columns.
(2) Create a new file called opsinputs/test/testinput/cxwriter_globalnamelist_surface.yaml (probably easiest to copy from an existing one). Again, modify it to test the correct CX columns.
I have included the test. Thanks @ctgh for the clear instructions for this.
This seems to be failing on the Cray for me for various lifric-lite-jedi ctests. For example, test_lfriclite_global_interpolator_cubedsphere fails like this:
6: Interpolator created:
6: GlobalInterpolator
Spice tests all seem to pass.
Thanks @DJDavies2 , would we expect changes to the test cx namelist to affect lfric-lite-jedi? I've tried to run the tests myself but cannot get mo-bundle to build successfully at the moment
I re-ran from a clean build and it succeeded, so perhaps that problem was transitory or due to an incremental build. It seems to work now for me.
Thanks for adding the test! I am happy to approve, but I was wondering if it may be clearer in the long term to explicitly list the fields in Surface.nl, rather than stating which fields are added and which are removed. Doing it the latter way makes verifying the expected upper air and surface fields more difficult. Perhaps something to put in an issue?
Thanks @ctgh .I've created a new issue: https://github.com/MetOffice/opsinputs/issues/155 which I will follow up after this PR is closed.
I re-ran from a clean build and it succeeded, so perhaps that problem was transitory or due to an incremental build. It seems to work now for me.
Thanks @DJDavies2
@ldhawknesssmith are you happy for me to merge or any last changes?
Add CX namelist for global Surface observations. This differs from the OPS equivalent as some fields used in OPS are not for assimilation, but only for mergeback, therefore this namelist removes a number of items which are requested by default. Those fields not required for assimilation have not been made available in the ops-um-interface.
Fixes Issue #153