Project

General

Profile

CDI unsupported array struycture

Added by Paolo Davini 5 days ago

I have pretty strange issue, I have this netdf file which is making me mad:

netcdf test {
dimensions:
        ncells = 196608 ;
variables:
        double lon(ncells) ;
                lon:_FillValue = NaN ;
                lon:standard_name = "longitude" ;
                lon:units = "degrees_east" ;
                lon:long_name = "longitude" ;
                lon:axis = "X" ;
        double lat(ncells) ;
                lat:_FillValue = NaN ;
                lat:standard_name = "latitude" ;
                lat:units = "degrees_north" ;
                lat:long_name = "latitude" ;
                lat:axis = "Y" ;
        int64 time ;
                time:standard_name = "time" ;
                time:long_name = "time" ;
                time:axis = "T" ;
                time:units = "days since 2017-01-01 00:00:00" ;
                time:calendar = "proleptic_gregorian" ;
        double tprate(ncells) ;
                tprate:_FillValue = NaN ;
                tprate:coordinates = "lat lon time" ;

which appears to be incompatible with CDO. I cannot understand which metadata is missing since I get

cdi  warning (set_coordinates_varids): Coordinates variable time can't be assigned!
cdi  warning (cdf_read_xcoord): Unsupported array structure, skipped variable tprate!
cdi  warning (cdfInqContents): No data arrays found!

Any hint on what is wrong? Is there any documentation for getting info on which CDI info are required by CDO?
Thanks for any help!


Replies (3)

RE: CDI unsupported array struycture - Added by Paolo Davini 5 days ago

Even if I remove the time coordinate and get

```
netcdf test {
dimensions:
ncells = 196608 ;
variables:
double lon(ncells) ;
lon:_FillValue = NaN ;
lon:standard_name = "longitude" ;
lon:units = "degrees_east" ;
lon:long_name = "longitude" ;
lon:axis = "X" ;
double lat(ncells) ;
lat:_FillValue = NaN ;
lat:standard_name = "latitude" ;
lat:units = "degrees_north" ;
lat:long_name = "latitude" ;
lat:axis = "Y" ;
double tprate(ncells) ;
tprate:_FillValue = NaN ;
tprate:coordinates = "lat lon" ;
```

I still get

```
(aqua) paolo@pamir AQUA % cdo sinfo test.nc
cdi warning (cdf_read_xcoord): Unsupported array structure, skipped variable tprate!
cdi warning (cdfInqContents): No data arrays found!
```

I am very much puzzled....

RE: CDI unsupported array struycture - Added by Uwe Schulzweida 5 days ago

It looks like the axis attributes are causing the problem. Without these attributes it works without any problems.

RE: CDI unsupported array struycture - Added by Paolo Davini 4 days ago

Ah, you are of course right! deleting the attributes makes the trick, the unstructured grid is correctly detected! Thanks!!!

    (1-3/3)