Re: sparse data variables

> > From:    Harvey DAVIES <hld@xxxxxxxxxxxx>
> > Subject: netCDF Conventions
> >
> >     dimensions:
> >       time = UNLIMITED;
> >       latitude = 56;
> >       longitude = 64;
> >       land_point = 1100; // about 30% of 56*64
> >     variables:
> >         float latitude(latitude);
> >         float longitude(longitude);
> >       short land_index(latitude, longitude);  // value of 'land_point' index
> >           land_index:valid_min = 0;
> >           land_index:missing_value = -1;      // -1 = ocean point
> >       float soil.temperature(time,land_point)

In this formulation, rather than looking up the coordinates of
soil.temperature, you start with a lat,lon grid and then you look up the
(missing or not) value of soil.temperature.

One alternate, obvious solution is:

        float soil.temperature( time, land_point);
            soil.temperature:coordinates = "lat lon";
        float lat( land_point);
        float lon( land_point);

of course then the lat, lon coord system is not connected.
so then you could try:
        
        float soil.temperature( time, land_point)
            soil.temperature:coordinates = "latidx lonidx";
        short latidx(land_point);
        short lonidx(land_point);

but theres no way (yet) to associate that to a nice connected coord
system like:
        float lat(lat);
        float lon(lon);

        but you can see that lat * latidx, lon * lonidx is a good
coordinate system for soil.temperature if "*" means functional
composition. So that suggests something like:

        float soil.temperature( time, land_point)
            soil.temperature:coordinates = "lat*latidx lon*lonidx";
        short latidx(land_point);
        short lonidx(land_point);
        float lat(lat);
        float lon(lon);

  • 1997 messages navigation, sorted by:
    1. Thread
    2. Subject
    3. Author
    4. Date
    5. ↑ Table Of Contents
  • Search the netcdfgroup archives: