[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

mrf-e cdl



Hiya,

The mrf-e model now has another model ID 94, it was added to the mrf-e.cdl
this morning.  The mrf-e.cdl is available in the decoders ftp area, ie

ftp.unidata.ucar.edu

pub/decoders/mrf-e.cdl

Robb...


ps.  mrf-e.cdl is also attached to this message

===============================================================================
Robb Kambic                                Unidata Program Center
Software Engineer III                      Univ. Corp for Atmospheric Research
address@hidden             WWW: http://www.unidata.ucar.edu/
===============================================================================
netcdf mrf-e {

dimensions:

        record = UNLIMITED ;    // (reference time, forecast time)
        level = 2 ;
        lat = 37 ;              // latitude
        lon = 72 ;              // longitude
        datetime_len = 21 ;     // string length for datetime strings
        nmodels = 3 ;           // both MRF and SPEC62MRF models
        ngrids = 2 ;            // number of subgrids stitched together
        nav = 1 ;               // For navigation.  Variables that use
                                // this dimension define a mapping between
                                // (lat, lon) indices and (lat, lon) coords.
        nav_len = 100 ;         // max string length for navigation strings

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

        char    datetime(record, datetime_len) ; // derived from reftime
                datetime:long_name = "reference date and time" ;
                // units YYYY-MM-DD hh:mm:ssZ  (ISO 8601)

        float   valtime_offset(record) ; // derived as valtime-reftime
                valtime_offset:long_name = "hours from reference time" ;
                valtime_offset:units = "hours" ;

        float   level(level) ;
                level:long_name = "level" ;
                level:units = "hectopascals" ;

        long    model_id(nmodels) ;
                model_id:long_name = "generating process ID number" ;
                model_id:long_name = "generating process ID number" ;

        // navigation variables all use nav dimension

        char    nav_model(nav, nav_len) ;        // navigation parameterization
                nav_model:long_name = "navigation model name" ;

        int     grid_type_code(nav) ;
                grid_type_code:long_name = "GRIB-1 GDS data representation 
type" ;

        char    grid_type(nav, nav_len) ;
                grid_type:long_name = "GRIB-1 grid type" ;

        char    grid_name(nav, nav_len) ;
                grid_name:long_name = "grid name" ;

        int     grid_center(nav) ;
                grid_center:long_name = "GRIB-1 originating center ID" ;

        int     grid_number(nav, ngrids) ;
                grid_number:long_name = "GRIB-1 catalogued grid numbers" ;
                grid_number:_FillValue = -9999 ;

        char    i_dim(nav, nav_len) ;
                i_dim:long_name = "longitude dimension name" ;

        char    j_dim(nav, nav_len) ;
                j_dim:long_name = "latitude dimension name" ;

        int     Ni(nav) ;
                Ni:long_name = "number of points along a latitude circle" ;

        int     Nj(nav) ;
                Nj:long_name =  "number of points along a longitude circle" ;

        float   La1(nav) ;
                La1:long_name = "latitude of first grid point" ;
                La1:units = "degrees_north" ;

        float   Lo1(nav) ;
                Lo1:long_name = "longitude of first grid point" ;
                Lo1:units = "degrees_east" ;

        float   La2(nav) ;
                La2:long_name = "latitude of last grid point" ;
                La2:units = "degrees_north" ;

        float   Lo2(nav) ;
                Lo2:long_name = "longitude of last grid point" ;
                Lo2:units = "degrees_east" ;

        float   Di(nav) ;
                Di:long_name = "Longitudinal direction increment" ;
                Di:units = "degrees" ;

        float   Dj(nav) ;
                Dj:long_name = "Latitudinal direction increment" ;
                Dj:units = "degrees" ;

        byte    ResCompFlag(nav) ;
                ResCompFlag:long_name = "resolution and component flags" ;

        // end of navigation variables

        // The following lat and lon coordinate variables are redundant,
        // since the navigation variables provide the necessary information.  
But
        // it's OK to include such extra information for human readability.

        float   lat(lat) ;
                lat:long_name = "latitude" ;
                lat:units = "degrees_north" ;

        float   lon(lon) ;
                lon:long_name = "longitude" ;
                lon:units = "degrees_east" ;

// global attributes:
                :history = "created by gribtonc from HDS broadcast" ;
                :title = "NCEP Global Product Set" ;
                :Conventions = "NUWG" ;
                :version = 0.0 ;                // still just a draft

        float   Z(record, level, lat, lon) ;
                Z:long_name = "geopotential height" ;
                Z:units = "gp m" ;
                Z:_FillValue = -9999.f ;
                Z:navigation = "nav" ;  // georeference info

        float   T_sfc(record, lat, lon) ;
                T_sfc:long_name = "surface temperature" ;
                T_sfc:units = "degK" ;
                T_sfc:_FillValue = -9999.f ;
                T_sfc:navigation = "nav" ;

        float   P_msl(record,lat,lon) ; // Pressure at Mean Sea Level
                P_msl:long_name = "pressure reduced to MSL" ;
                P_msl:units = "Pa" ;
                P_msl:_FillValue = -9999.0f ;
                P_msl:navigation = "nav" ;      // georeference info

        float   u(record, level, lat, lon) ;
                u:long_name = "u-component of wind" ;
                u:units = "meters/second" ;
                u:_FillValue = -9999.f ;
                u:navigation = "nav" ;

        float   v(record, level, lat, lon) ;
                v:long_name = "v-component of wind" ;
                v:units = "meters/second" ;
                v:_FillValue = -9999.f ;
                v:navigation = "nav" ;

data:

 level = 1000, 500 ;
 model_id = 78, 80, 94 ;

 // Navigation
 nav_model = "GRIB1" ;
 grid_type_code = 0 ;
 grid_type  = "Latitude/Longitude" ;
 grid_name = "Global 5.0 x 5.0 degree grid" ;
 grid_center = 7 ;   // NCEP
 grid_number = 25, 26 ;
 i_dim = "lon" ;
 j_dim = "lat" ;
 Ni = 72 ;
 Nj = 37 ;
 La1 = -90.0 ;
 Lo1 = 0.0 ;
 La2 = 90.0 ;
 Lo2 = 355.0 ;
 Di = 5.0 ;
 Dj = 5.0 ;
 ResCompFlag = 136 ;

 lon =    0,  5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75,
         80, 85, 90, 95,100,105,110,115,120,125,130,135,140,145,150,155,
        160,165,170,175,180,185,190,195,200,205,210,215,220,225,230,235,
        240,245,250,255,260,265,270,275,280,285,290,295,300,305,310,315,
        320,325,330,335,340,345,350,355 ;

 lat =   -90,-85,-80,-75,-70,-65,-60,-55,-50,-45,-40,-35,
         -30,-25,-20,-15,-10, -5,  0,  5, 10, 15, 20, 25,
          30, 35, 40, 45, 50, 55, 60, 65, 70, 75, 80, 85, 90 ;
}