MetOffice / opsinputs

JEDI library generating VarObs and Cx files
BSD 3-Clause "New" or "Revised" License
4 stars 1 forks source link

Write H(x) into CX for sonde data in JADA #185

Closed ctgh closed 1 year ago

ctgh commented 1 year ago

Radiosonde data are processed as follows:

In the JOPA + VAR configuration, the GeoVaLs written to CX correspond to the model column associated with the lowest-altitude observation in a radiosonde profile. This matches closely what is done in OPS + VAR. Due to the reduced resolution of VAR, horizontal drift is discarded, which is why using a single model column works. Furthermore VAR assigns the CX to H(x) without performing any vertical interpolation.

In order to compare JADA and VAR it is necessary to run JOPA in an identical configuration and then send the same information to the assimilation. At present, the observation operator and the information sent are both different, making a precise comparison difficult. The observation operator must be changed to VertInterp when using JADA due to an unfixable issue in the TL/AD code for the ProfileAverage operator. However, when VertInterp is used, the values of H(x) sent to JADA are different.

This PR adds another option to opsinputs (write_hofx_into_cx) which writes H(x) values into CX rather than GeoVaLs. That makes it possible to run the VertInterp operator in JOPA and send a consistent H(x) to JADA. In other words this can be thought of as a 'JADA compatibility mode'. By default write_hofx_into_cx is false so it will not alter the behaviour of sith, etc.

The PR actually restores code that was removed in #110. At that point this functionality was not needed. However @mikecooke77 asked the prescient question "Is this work going to be revisited before JADA?". The answer is yes!

ctgh commented 1 year ago

Thanks for your reviews! I have updated the label.