[CF-metadata] Example of forecast data

Brian Eaton eaton at ucar.edu
Thu Jun 12 11:20:19 MDT 2003


Hi Russ,

Thanks for pointing out this representation.  In the context of CF it would be
implemented by using the coordinates attribute.  The example from Ag:

> 20030101 12:00 analysis (at 00hr) and 12hr,36hr forecasts
> 20030101 00:00 analysis 6hr,12hr,18hr,24hr forecasts
> 20030101 06:00 analysis 6hr,18hr forecasts

could be expressed as follows (ordering the time samples as they are above)

variables:
  double reftime(record);
    time1:standard_name = "forecast_reference_time" ;
    time1:units = "hours since 2003-01-01 00:00" ;
  double valtime(record);
    time2:standard_name = "time" ;
    time2:units = "hours since 2003-01-01 00:00" ;
  float temp(record,level,lat,lon);
    temp:long_name = "Air temperature on model levels" ;
    temp:standard_name = "air_temperature" ;
    temp:units = "K" ;
    temp:coordinates = "valtime reftime"
data:
  reftime = 12., 12., 12.,  0.,  0.,  0.,  0.,  6.,  6. ; 
  valtime = 12., 24., 48.,  6., 12., 18., 24., 12., 24. ;

Brian


On Thu, Jun 12, 2003 at 09:55:39AM -0600, Russ Rew wrote:
> Ag,
> 
> > I am grappling with it but keep coming up with problems in each
> > representation. Has this problem been dealt with by other parts of the
> > community previously? Have the Met Office produced inhouse software that can
> > understand the analysis/forecast duality?
> 
> We've dealt with this problem as part of the old NUWG conventions:
> 
>   http://www.unidata.ucar.edu/packages/netcdf/NUWG/
> 
> with this excerpt from a note explaining the convention:
> 
>   ... here's an example we are currently using in our ruc.cdl for the
>   output of the MAPS/RUC model:
> 
>     dimensions:
> 	    record = UNLIMITED ;	     // (reference time, forecast time)
> 	...
>     variables:
> 	    double	reftime(record);     // reference time of the model
> 			reftime:long_name = "reference time";
> 			reftime:units = "hours since 1992-1-1";
> 
> 	    double	valtime(record);     // forecast time ("valid" time)
> 			valtime:long_name = "valid time";
> 			valtime:units = "hours since 1992-1-1";
> 	...
> 	    :record = "reftime, valtime" ;   // "dimension attribute" -- means
> 					     // (reftime, valtime) uniquely 
> 					     // determine record
> 
>   Here "reftime" and "valtime" are like ... coordinate reference
>   variables for the "record" dimension, and so should have attributes
>   named "dimension" with value "record".  But the record dimension has
>   a global coordinate attribute "record" that names the two coordinate
>   reference variables, so this information is already represented.
> 
>   The idea here was to be able to use the "record" dimension for representing
>   an ordered pair of times, (reference time, forecast time), so you could
>   model outputs for multiple reference times and multiple forecast times in a
>   single netCDF file with only one unlimited dimension. ...
>   this capability.
> 
> --Russ
> _______________________________________________
> CF-metadata mailing list
> CF-metadata at cgd.ucar.edu
> http://www.cgd.ucar.edu/mailman/listinfo/cf-metadata


More information about the CF-metadata mailing list