cedadev / ccmi-2022

CCMI-2022 - in support of the WMO/UNEP Scientific Assessment of Ozone Depletion Report 2022
BSD 2-Clause "Simplified" License
0 stars 4 forks source link

akiyoshi ceda-cc report for CCSRNIES-MIROC32 v20210916 #50

Open charliepascoe opened 2 years ago

charliepascoe commented 2 years ago

Data has passed the quality control checks with the exception of data for the ta500, tas, ua500, va500 and zg500 variables which have the same errors as found in https://github.com/cedadev/ccmi-2022/issues/48.

charliepascoe commented 2 years ago

Insight from David Plummer (via email):

In addition to the assignment of a dimension of plev to the plev scalar coordinate that Charlotte pointed out, there is one thing I noticed. The plev scalar coordinate is given in units of hPa, but the CCMI2022_coordinate.json file specifies that the pressure scalar coordinates should be in Pa. I am not sure if that is the problem the checks are finding, but it is something that caught my eye.

Associated with this, there might be a check on the value of plev written into the file. For example, the zg500 variable is specified as having the dimensions 'longitude latitude time1 p500' and p500 is specified as having

"out_name" = "plev";

so it is written into the file with variable name 'plev'. The 'p500' variable is also assigned units of Pa and as having a value of 50000.0. So there is this chain going from having p500 associated with zg500, writing that as 'plev' and requiring it to have a value of 50000 Pa. These all need to be set correctly and might be the problem you are having.

For these single-level variables with a scalar vertical coordinate there is also a requirement that the variable (zg500, for example) has a 'coordinates' attribute that specifies what the scalar coordinate is. So in this case you should have

zg500:coordinates = "plev";

as part of the zg500 variable. I cannot see the full listing of your netcdf files, so you may already have this set. Just in case, I thought I should mention it.

There is a similar chain of specifications for the near-surface air temperature (tas), having a scaler coordinate of 'height2m', which is written out as the coordinate 'height', must have the units of 'm' and should have a value '2.0'. I am not sure how this works, but for 'height2m' there is 'valid_max' and 'valid_min' attributes that allow it to have a value between 1.0 and 10.0. I guess in case people diagnose the near-surface temperature at a different height?

David