Today there was not a specific agenda so the floor was opened up to discussions about any issues that have come up.

Repository moves and upgrades

On the prior weekend, there were changes in the repositories that included:

  • switching to extracting eckit and fckit directly from the ECMWF repositories
  • move OOPS repository from UCAR to JCSDA github
  • minor changes in OOPS code: For details see the message that Yannick posted to the JEDI GitHub team on May 21.
    • Some of these changes can be handled by a global search and replacement.  For example, the interpolate() method has been renamed getValues() and the include files that were in src/util are now in src/oops/util.  

    • In the State class, this getValues method has two versions, the one that was there before and one with an additional argument to save the linearization state. The TL/AD have an extra argument which is that linearization state. At first you can just add that argument and not use it (call existing method), then in a second stage save whatever is needed from the nonlinear method in that argument and use it in your TL/AD. The first step should not take long at all, then using the proper linearization state is work that had been stalled so far but can resume.One routine for linearization state method had an argument added which holds an output linearized state
  • For more details see the discussion here:  https://github.com/orgs/JCSDA/teams/jedi

The discussion was prompted with how everyone is doing after these changes went into effect

UKMO

  • After the repository changes, it was necessary to update boost
    • Here is some clarification from Steve Sandbach:

      Just to clarify on the point about boost, we were using version 1.6.0. I updated to 1.67 and the point about 1.65 is that this is the oldest version that (should) work with the changes that seem to have been brought about in the migration – I found boost/stacktrace.hpp was missing and this was introduced in version 1.65. Benjamin Menetrier point this out in reply to Yannick’s post (Updates that might break tests):

      For more details: https://github.com/orgs/JCSDA/teams/jedi

  • It was mentioned that the develop branches in some of the repositories have been broken
    • This is not supposed to happen
    • We don't have a proper test structure in place
      • Causes us to miss things
        • Eg., we can't test with all compilers on all platforms
    • We have a job opening for a software engineer to develop our test structure
  • Asked if ufo-bundle will always be intact?
    • This bundle is more likely to be fully tested
    • CRTM is tested within ufo-bundle

College Park

  • Went through the exercise to deal with repository changes, and things are working now.

NCAR

  • Asked if the interp test is ready
    • Not quite ready yet
      • implemented for QG and L95 but not fully functional for FV3 (parallelization issues?)
        • analytic initialization needs to be added to each model in order for it to work
      • In the latest develop branch of ufo, the default behavior should be to effectively bypass the interpolation test component of the State test.  So, the new interpolation test should not break existing State tests.   But, eventually we do not want the models to bypass the interpolation test - we'd like to implement it in each model, one by one.
      • Contact Mark for further details and for help with the implementation

Other Topics

  • Mariusz asked if the ECMWF radiative transfer model could handle aerosol interactions
    • More research needs to be done to understand the capabilities of the ECMWF model
  • Yannick mentioned that there is a jedi-obs gihub group that can be used for discussions like the question Mariusz brought up
  • No labels