Hi all,
We are in the process of designing new file formats for our earth 
observation satellite datasets (raw satellite data through to derived 
products eg SST, Chlorophyll etc).  Since many of the satellite 
instruments have multiple channels (ie different wavelength bands) it 
seems sensible, at least for lower levels of processing, to use a 
3-dimensional array with the outer dimension being the 'channel' number, eg:
dimensions:
   channel = 6;
   x, y;
variables:
   float avhrr_raw_counts(channel, y, x);
        avhrr_raw_counts:log_name="raw sensor counts for each channel";
        avhrr_raw_counts:units="1";
        avhrr_raw_counts:coordinates = "lon lat channel";
   float channel(channel);
        channel:standard_name="radiation_wavelength";
        channel:units="m";
or even just:
   int 	channel(channel);
        channel:long_name="channel identifier";  // 1, 2, ..., 6
However we seem to run in to problems when we move up to even low levels 
of processing (eg calibrated radiances/reflectances) and start to want 
different attribute values associated with each channel -- particularly 
different 'standard_name', 'long_name' and 'units' values.
There is quite strong feeling here that we want to do it this way rather 
than separating out each channel into its own variable, however I cannot 
see how to associate such attributes *in a CF compliant way*.  Is this 
possible?  How could/should such a dataset be structured?
[BTW one motivator for this preference is anticipation of some new 
satellite instruments which will have vastly more channels than the 6 
I've suggested above (eg AIRS ~2000 channels).]
Any thoughts?
Thanks
Simon Wood
-- 
Simon Wood
Scientific Programmer
Meteorology & Remote Sensing, NIWA, NZ
simon.wood at niwa.co.nz
http://www.niwa.co.nz
Received on Thu Nov 09 2006 - 20:46:16 GMT