I would like to read a GSD generated HRRR file in netcdf format as a
GridDataset. I can open the file as a GridDataset, but when I try to
ask for the grids, it says there are no grids. Using getDetailInfo(),
it looks like it builds some coordinate systems for each of the
variables in the file, but then when trying to get them, they don't
appear to exist. What makes a file a grid?
Below is the output from getDetailInfo() and ncdump on the GSD HRRR
netcdf file.
Here is the information from getDetailInfo()
2011-01-06 15:15:04,047 [main] INFO org.wdssii.ncingest.NDFDIngest -
Opening /mnt/home/jbrogden/hrrr1027416000306.nc for reading
GeoReferencing Coordinate Axes
Name__________________________Units_______________Type______Description
x(west_east=1799) km GeoX synthesized
GeoX coordinate from DX attribute
y(south_north=1059) km GeoY synthesized
GeoY coordinate from DY attribute
Time(Time=1) secs since 1970-01-01 00:00:00Time
synthesized time coordinate from Times(time)
----------------------------------------------------
made CoordinateTransformVariable: Lambert
Parsing with Convention = WRF
Coordinate Axis added = x type= GeoX
Coordinate Variable Alias added = x for dimension= west_east
Coordinate Axis added = y type= GeoY
Coordinate Variable Alias added = y for dimension= south_north
Coordinate Variable added = Time for dimension Time = UNLIMITED;
// (1 currently)
Coordinate Axis added = Time type= Time
created maximal CoordSystem 'Time y x' for var= VIL
assigned maximal CoordSystem 'Time y x' for var= RADARVIL
assigned maximal CoordSystem 'Time y x' for var= ECHOTOP
assigned maximal CoordSystem 'Time y x' for var= T2M
assigned maximal CoordSystem 'Time y x' for var= TD2M
assigned maximal CoordSystem 'Time y x' for var= U10M
assigned maximal CoordSystem 'Time y x' for var= V10M
assigned maximal CoordSystem 'Time y x' for var= P_SFC
***assign (implicit coordAxisType) coordTransform Lambert to CoordSys=
Time y x
----------------------------------------------------
netcdf /mnt/home/jbrogden/hrrr1027416000306.nc {
dimensions:
Time = UNLIMITED; // (1 currently)
DateStrLen = 19;
west_east = 1799;
south_north = 1059;
num_snapshots = 13;
variables:
char Times(Time=1, DateStrLen=19);
float VIL(Time=1, num_snapshots=13, south_north=1059, west_east=1799);
:FieldType = 104; // int
:MemoryOrder = "XYZ";
:description = "VERTICALLY INTEGRATED LIQUID WATER";
:units = "kg m-2";
:stagger = "";
:coordinates = "XLONG XLAT";
float RADARVIL(Time=1, num_snapshots=13, south_north=1059,
west_east=1799);
:FieldType = 104; // int
:MemoryOrder = "XYZ";
:description = "VERTICALLY INTEGRATED LIQUID WATER FROM Ze";
:units = "kg m-2";
:stagger = "";
:coordinates = "XLONG XLAT";
float ECHOTOP(Time=1, num_snapshots=13, south_north=1059,
west_east=1799);
:FieldType = 104; // int
:MemoryOrder = "XYZ";
:description = "echo top height FROM Ze";
:units = "m";
:stagger = "";
:coordinates = "XLONG XLAT";
float T2M(Time=1, num_snapshots=13, south_north=1059, west_east=1799);
:FieldType = 104; // int
:MemoryOrder = "XYZ";
:description = "2-m temperature";
:units = "K";
:stagger = "";
:coordinates = "XLONG XLAT";
float TD2M(Time=1, num_snapshots=13, south_north=1059, west_east=1799);
:FieldType = 104; // int
:MemoryOrder = "XYZ";
:description = "2-m dew point";
:units = "K";
:stagger = "";
:coordinates = "XLONG XLAT";
float U10M(Time=1, num_snapshots=13, south_north=1059, west_east=1799);
:FieldType = 104; // int
:MemoryOrder = "XYZ";
:description = "10-m u-component of wind";
:units = "m/s";
:stagger = "";
:coordinates = "XLONG XLAT";
float V10M(Time=1, num_snapshots=13, south_north=1059, west_east=1799);
:FieldType = 104; // int
:MemoryOrder = "XYZ";
:description = "10-m v-component of wind";
:units = "m/s";
:stagger = "";
:coordinates = "XLONG XLAT";
float P_SFC(Time=1, num_snapshots=13, south_north=1059, west_east=1799);
:FieldType = 104; // int
:MemoryOrder = "XYZ";
:description = "surface pressure";
:units = "Pa";
:stagger = "";
:coordinates = "XLONG XLAT";
char Lambert;
:grid_mapping_name = "lambert_conformal_conic";
:latitude_of_projection_origin = 38.500003814697266; // double
:longitude_of_central_meridian = -97.5; // double
:standard_parallel = 38.5; // double
:_CoordinateTransformType = "Projection";
:_CoordinateAxisTypes = "GeoX GeoY";
double x(west_east=1799);
:units = "km";
:long_name = "synthesized GeoX coordinate from DX attribute";
:_CoordinateAxisType = "GeoX";
:_CoordinateAliasForDimension = "west_east";
double y(south_north=1059);
:units = "km";
:long_name = "synthesized GeoY coordinate from DY attribute";
:_CoordinateAxisType = "GeoY";
:_CoordinateAliasForDimension = "south_north";
double Time(Time=1);
:units = "secs since 1970-01-01 00:00:00";
:long_name = "synthesized time coordinate from Times(time)";
:_CoordinateAxisType = "Time";
Here is the header from ncdump.
ncdump netcdf ncdump {
dimensions:
Time = UNLIMITED ; // (1 currently)
DateStrLen = 19 ;
west_east = 1799 ;
south_north = 1059 ;
num_snapshots = 13 ;
variables:
char Times(Time, DateStrLen) ;
float VIL(Time, num_snapshots, south_north, west_east) ;
VIL:FieldType = 104 ;
VIL:MemoryOrder = "XYZ" ;
VIL:description = "VERTICALLY INTEGRATED LIQUID WATER" ;
VIL:units = "kg m-2" ;
VIL:stagger = "" ;
VIL:coordinates = "XLONG XLAT" ;
float RADARVIL(Time, num_snapshots, south_north, west_east) ;
RADARVIL:FieldType = 104 ;
RADARVIL:MemoryOrder = "XYZ" ;
RADARVIL:description = "VERTICALLY INTEGRATED LIQUID
WATER FROM Ze" ;
RADARVIL:units = "kg m-2" ;
RADARVIL:stagger = "" ;
RADARVIL:coordinates = "XLONG XLAT" ;
float ECHOTOP(Time, num_snapshots, south_north, west_east) ;
ECHOTOP:FieldType = 104 ;
ECHOTOP:MemoryOrder = "XYZ" ;
ECHOTOP:description = "echo top height FROM Ze" ;
ECHOTOP:units = "m" ;
ECHOTOP:stagger = "" ;
ECHOTOP:coordinates = "XLONG XLAT" ;
float T2M(Time, num_snapshots, south_north, west_east) ;
T2M:FieldType = 104 ;
T2M:MemoryOrder = "XYZ" ;
T2M:description = "2-m temperature" ;
T2M:units = "K" ;
T2M:stagger = "" ;
T2M:coordinates = "XLONG XLAT" ;
float TD2M(Time, num_snapshots, south_north, west_east) ;
TD2M:FieldType = 104 ;
TD2M:MemoryOrder = "XYZ" ;
TD2M:description = "2-m dew point" ;
TD2M:units = "K" ;
TD2M:stagger = "" ;
TD2M:coordinates = "XLONG XLAT" ;
float U10M(Time, num_snapshots, south_north, west_east) ;
U10M:FieldType = 104 ;
U10M:MemoryOrder = "XYZ" ;
U10M:description = "10-m u-component of wind" ;
U10M:units = "m/s" ;
U10M:stagger = "" ;
U10M:coordinates = "XLONG XLAT" ;
float V10M(Time, num_snapshots, south_north, west_east) ;
V10M:FieldType = 104 ;
V10M:MemoryOrder = "XYZ" ;
V10M:description = "10-m v-component of wind" ;
V10M:units = "m/s" ;
V10M:stagger = "" ;
V10M:coordinates = "XLONG XLAT" ;
float P_SFC(Time, num_snapshots, south_north, west_east) ;
P_SFC:FieldType = 104 ;
P_SFC:MemoryOrder = "XYZ" ;
P_SFC:description = "surface pressure" ;
P_SFC:units = "Pa" ;
P_SFC:stagger = "" ;
P_SFC:coordinates = "XLONG XLAT" ;
// global attributes:
:TITLE = " OUTPUT FROM WRF V3.2 MODEL" ;
:START_DATE = "2010-10-01_16:00:00" ;
:WEST-EAST_GRID_DIMENSION = 1800 ;
:SOUTH-NORTH_GRID_DIMENSION = 1060 ;
:BOTTOM-TOP_GRID_DIMENSION = 51 ;
:DX = 3000.f ;
:DY = 3000.f ;
:GRIDTYPE = "C" ;
:DIFF_OPT = 1 ;
:KM_OPT = 4 ;
:DAMP_OPT = 1 ;
:DAMPCOEF = 0.02f ;
:KHDIF = 0.f ;
:KVDIF = 0.f ;
:MP_PHYSICS = 8 ;
:RA_LW_PHYSICS = 1 ;
:RA_SW_PHYSICS = 1 ;
:SF_SFCLAY_PHYSICS = 2 ;
:SF_SURFACE_PHYSICS = 3 ;
:BL_PBL_PHYSICS = 2 ;
:CU_PHYSICS = 0 ;
:SURFACE_INPUT_SOURCE = 1 ;
:SST_UPDATE = 0 ;
:GRID_FDDA = 0 ;
:GFDDA_INTERVAL_M = 0 ;
:GFDDA_END_H = 0 ;
:GRID_SFDDA = 0 ;
:SGFDDA_INTERVAL_M = 0 ;
:SGFDDA_END_H = 0 ;
:WEST-EAST_PATCH_START_UNSTAG = 1 ;
:WEST-EAST_PATCH_END_UNSTAG = 1799 ;
:WEST-EAST_PATCH_START_STAG = 1 ;
:WEST-EAST_PATCH_END_STAG = 1800 ;
:SOUTH-NORTH_PATCH_START_UNSTAG = 1 ;
:SOUTH-NORTH_PATCH_END_UNSTAG = 1059 ;
:SOUTH-NORTH_PATCH_START_STAG = 1 ;
:SOUTH-NORTH_PATCH_END_STAG = 1060 ;
:BOTTOM-TOP_PATCH_START_UNSTAG = 1 ;
:BOTTOM-TOP_PATCH_END_UNSTAG = 50 ;
:BOTTOM-TOP_PATCH_START_STAG = 1 ;
:BOTTOM-TOP_PATCH_END_STAG = 51 ;
:GRID_ID = 1 ;
:PARENT_ID = 1 ;
:I_PARENT_START = 0 ;
:J_PARENT_START = 0 ;
:PARENT_GRID_RATIO = 1 ;
:DT = 13.44f ;
:CEN_LAT = 38.5f ;
:CEN_LON = -97.5f ;
:TRUELAT1 = 38.5f ;
:TRUELAT2 = 38.5f ;
:MOAD_CEN_LAT = 38.5f ;
:STAND_LON = -97.5f ;
:POLE_LAT = 90.f ;
:POLE_LON = 0.f ;
:GMT = 16.f ;
:JULYR = 2010 ;
:JULDAY = 274 ;
:MAP_PROJ = 1 ;
:MMINLU = "USGS" ;
:NUM_LAND_CAT = 24 ;
:ISWATER = 16 ;
:ISLAKE = -1 ;
:ISICE = 24 ;
:ISURBAN = 1 ;
:ISOILWATER = 14 ;
--
=======================================================================
Jeff Brogden CIMMS/OU
Jeff.Brogden@xxxxxxxx