Hello Karl, Alison,

As part of a separate discussion on 'months since' and 'years since' in time 
units<http://mailman.cgd.ucar.edu/pipermail/cf-metadata/2018/020648.html>, 
Klaus pointed out the use of numerical scale factors in units strings, although 
allowed by Udunits, is prohibited by the CF convention in section 3.1. I'm 
raising this here because there are 3 standard names which make use of such 
scale factors in their canonical units, and a number of CMIP6 variables. The CF 
conformance document diverges from the standard and allows any string which is 
accepted by Udunits, and hence accepts such factors. The CF checker implements 
the version according to the conformance document, as does the cf-python code 
(and hence checks on the CMIP6 variables using cf-python didn't detect this 
problem).


The CF standard names are:

integral_wrt_depth_of_product_of_sea_water_density_and_salinity  : 1e-3 kg m-2

ocean_salt_x_transport, ocean_salt_y_transport: 1e-3 kg s-1


In the CMIP6 data request, we have:

1.e6 J m-1 s-1 for atmospheric energy transport (intuadse, intvadse);

1e-3 kg m-2 for integral wrt depth of density and salinity (somint);

1e-6 m s-1 for saturated hydraulic conductivity;

1e3 km3 for sea ice volumes (sivoln, sivols);

1e6 km2 for sea ice areas (siarean, siareas, siextentn, siextents);


Should we stick to the statement in the standards document ... and bring the 
conformance document etc into line, or could the standards document be 
interpreted more loosely?


These scale factors could be replaced by prefixes, but I think there is some 
loss of legibility in some cases:

1e-3 kg --> g

1e6 J --> MJ

1e-6 m --> um

1e3 km3 --> hm3

1e6 km2 --> Mm2


(here "um" is a micrometer, "hm" a hectometer and "Mm" a megameter).


regards,

Martin


_______________________________________________
CF-metadata mailing list
[email protected]
http://mailman.cgd.ucar.edu/mailman/listinfo/cf-metadata

Reply via email to