Unidata / thredds

THREDDS Data Server v4.6
https://www.unidata.ucar.edu/software/tds/v4.6/index.html
265 stars 179 forks source link

Document ensemble axis detection #860

Open cwardgar opened 7 years ago

cwardgar commented 7 years ago

From HMD-769692.

In order for a variable to be identified as an Ensemble CoordinateAxis in a gridded dataset:

I think we can do better than that. In particular, why are we detecting Ensemble axes ONLY for the CF conventions?

lesserwhirls commented 7 years ago

That's a good question. My guess is the ensemble work in netCDF-Java was based on some CF related conversations that never made it into the standard.

The _CoordinateAxisType=Ensemble is netCDF-Java specific (the _Coordinate Attribute Convention). Outside of that, I'm not sure there is an official convention that handles ensemble data at this point.

cwardgar commented 7 years ago

Hmm, I didn't realize it wasn't part of any standard. In that case, maybe this issue should be to better document Unidata's treatment of the axis.

cofinoa commented 7 years ago

There is an "standard_name" on CF to represent ensembles coordinate: standard_name='realization'

http://cfconventions.org/Data/cf-standard-names/44/build/cf-standard-name-table.html#realization

TDS5 it's supporting it but TDS4.X was using 'ensemble'

This was mentioned on the netcdf-java mail list http://www.unidata.ucar.edu/mailing_lists/archives/netcdf-java/2016/msg00146.html

This is the conclusion:

The netcdf-java 4.6.X recognizes the standard_name='ensemble' for Ensembles Axis Type. https://github.com/Unidata/thredds/blob/master/cdm/src/main/java/ucar/nc2/dataset/conv/CF1Convention.java#L157-L160 but 'ensemble' is not a recognized CF standard_name. It should be 'realization' as you have put into the ensemble_member

The netcdf-java 5.0.0, adds 'realization' as possible standard_name value for Ensembles Axis Type https://github.com/Unidata/thredds/blob/5.0.0/cdm/src/main/java/ucar/nc2/dataset/conv/CF1Convention.java#L162-L165