Hi Robb-
I have a GRIB file from ECMWF that does not give the correct
navigation:
/upc/share/testdata/grid/grib/grib1/data/ana_Z_20031006_00_ml.grib
When I run Grib1Dump on this, it prints out:
$ java ucar.grib.grib1.Grib1Dump ana_Z_20031006_00_ml.grib
GDS numPV[ 0 ] = 0
GDS numPV[ 1 ] = 0
GDS numPV[ 2 ] = 16916
GDS numPV[ 3 ] = 0
GDS numPV[ 4 ] = 16934
GDS numPV[ 5 ] = 27875
GDS numPV[ 6 ] = 16959
GDS numPV[ 7 ] = -23082
GDS numPV[ 8 ] = 16991
GDS numPV[ 9 ] = -23792
GDS numPV[ 10 ] = 17030
GDS numPV[ 11 ] = 31674
GDS numPV[ 12 ] = 17076
GDS numPV[ 13 ] = -27240
GDS numPV[ 14 ] = 17130
GDS numPV[ 15 ] = -14480
GDS numPV[ 16 ] = 17170
GDS numPV[ 17 ] = -22545
GDS numPV[ 18 ] = 17175
GDS numPV[ 19 ] = 24461
GDS numPV[ 20 ] = 17181
GDS numPV[ 21 ] = 2532
GDS numPV[ 22 ] = 17187
GDS numPV[ 23 ] = -1429
GDS numPV[ 24 ] = 17196
GDS numPV[ 25 ] = -27779
GDS numPV[ 26 ] = 17207
GDS numPV[ 27 ] = 14993
GDS numPV[ 28 ] = 17220
GDS numPV[ 29 ] = 27995
GDS numPV[ 30 ] = 17236
GDS numPV[ 31 ] = -14440
GDS numPV[ 32 ] = 17257
GDS numPV[ 33 ] = 2623
GDS numPV[ 34 ] = 17282
GDS numPV[ 35 ] = 9314
GDS numPV[ 36 ] = 17313
GDS numPV[ 37 ] = 15928
GDS numPV[ 38 ] = 17351
GDS numPV[ 39 ] = -14657
GDS numPV[ 40 ] = 17399
GDS numPV[ 41 ] = -31574
GDS numPV[ 42 ] = 17427
GDS numPV[ 43 ] = 10933
GDS numPV[ 44 ] = 17431
GDS numPV[ 45 ] = -32251
GDS numPV[ 46 ] = 17436
GDS numPV[ 47 ] = -30046
GDS numPV[ 48 ] = 17442
GDS numPV[ 49 ] = 15630
GDS numPV[ 50 ] = 17448
GDS numPV[ 51 ] = -30688
GDS numPV[ 52 ] = 17455
GDS numPV[ 53 ] = 11634
GDS numPV[ 54 ] = 17461
GDS numPV[ 55 ] = -12461
GDS numPV[ 56 ] = 17468
GDS numPV[ 57 ] = 5070
GDS numPV[ 58 ] = 17473
GDS numPV[ 59 ] = -19591
GDS numPV[ 60 ] = 17478
GDS numPV[ 61 ] = 32047
GDS numPV[ 62 ] = 17482
GDS numPV[ 63 ] = 21426
GDS numPV[ 64 ] = 17485
GDS numPV[ 65 ] = 11036
GDS numPV[ 66 ] = 17486
GDS numPV[ 67 ] = -460
GDS numPV[ 68 ] = 17487
GDS numPV[ 69 ] = -12835
GDS numPV[ 70 ] = 17487
GDS numPV[ 71 ] = -24453
GDS numPV[ 72 ] = 17486
GDS numPV[ 73 ] = -32409
GDS numPV[ 74 ] = 17484
GDS numPV[ 75 ] = -32684
GDS numPV[ 76 ] = 17481
GDS numPV[ 77 ] = -20288
GDS numPV[ 78 ] = 17478
GDS numPV[ 79 ] = 10588
GDS numPV[ 80 ] = 17474
GDS numPV[ 81 ] = 888
GDS numPV[ 82 ] = 17469
GDS numPV[ 83 ] = 23155
GDS numPV[ 84 ] = 17464
GDS numPV[ 85 ] = 19232
GDS numPV[ 86 ] = 17458
GDS numPV[ 87 ] = -3272
GDS numPV[ 88 ] = 17453
GDS numPV[ 89 ] = 28866
GDS numPV[ 90 ] = 17447
GDS numPV[ 91 ] = -7808
GDS numPV[ 92 ] = 17442
GDS numPV[ 93 ] = 25179
GDS numPV[ 94 ] = 17437
GDS numPV[ 95 ] = 3790
GDS numPV[ 96 ] = 17432
GDS numPV[ 97 ] = 81
GDS numPV[ 98 ] = 17427
GDS numPV[ 99 ] = 19911
GDS numPV[ 100 ] = 17392
GDS numPV[ 101 ] = -20835
GDS numPV[ 102 ] = 17332
GDS numPV[ 103 ] = 31525
GDS numPV[ 104 ] = 17280
GDS numPV[ 105 ] = -902
GDS numPV[ 106 ] = 17238
GDS numPV[ 107 ] = -24934
GDS numPV[ 108 ] = 17205
GDS numPV[ 109 ] = 30154
GDS numPV[ 110 ] = 17181
GDS numPV[ 111 ] = 13654
GDS numPV[ 112 ] = 17106
GDS numPV[ 113 ] = 25814
GDS numPV[ 114 ] = 16961
GDS numPV[ 115 ] = -7259
GDS numPV[ 116 ] = 16757
GDS numPV[ 117 ] = -7610
GDS numPV[ 118 ] = 0
GDS numPV[ 119 ] = 0
GDS numPV[ 120 ] = 0
GDS numPV[ 121 ] = 0
GDS numPV[ 122 ] = 0
GDS numPV[ 123 ] = 0
GDS numPV[ 124 ] = 0
GDS numPV[ 125 ] = 0
GDS numPV[ 126 ] = 0
GDS numPV[ 127 ] = 0
GDS numPV[ 128 ] = 0
GDS numPV[ 129 ] = 0
GDS numPV[ 130 ] = 0
GDS numPV[ 131 ] = 0
GDS numPV[ 132 ] = 0
GDS numPV[ 133 ] = 0
GDS numPV[ 134 ] = 0
GDS numPV[ 135 ] = 0
GDS numPV[ 136 ] = 0
GDS numPV[ 137 ] = 0
GDS numPV[ 138 ] = 0
GDS numPV[ 139 ] = 0
GDS numPV[ 140 ] = 0
GDS numPV[ 141 ] = 0
GDS numPV[ 142 ] = 0
GDS numPV[ 143 ] = 0
GDS numPV[ 144 ] = 0
GDS numPV[ 145 ] = 0
GDS numPV[ 146 ] = 0
GDS numPV[ 147 ] = 0
GDS numPV[ 148 ] = 0
GDS numPV[ 149 ] = 0
GDS numPV[ 150 ] = 0
GDS numPV[ 151 ] = 0
GDS numPV[ 152 ] = 0
GDS numPV[ 153 ] = 0
GDS numPV[ 154 ] = 0
GDS numPV[ 155 ] = 0
GDS numPV[ 156 ] = 0
GDS numPV[ 157 ] = 0
GDS numPV[ 158 ] = 0
GDS numPV[ 159 ] = 0
GDS numPV[ 160 ] = 0
GDS numPV[ 161 ] = 0
GDS numPV[ 162 ] = 0
GDS numPV[ 163 ] = 0
GDS numPV[ 164 ] = 0
GDS numPV[ 165 ] = 0
GDS numPV[ 166 ] = 0
GDS numPV[ 167 ] = 0
GDS numPV[ 168 ] = 0
GDS numPV[ 169 ] = 0
GDS numPV[ 170 ] = 15695
GDS numPV[ 171 ] = -32329
GDS numPV[ 172 ] = 15902
GDS numPV[ 173 ] = 15596
GDS numPV[ 174 ] = 15990
GDS numPV[ 175 ] = -2748
GDS numPV[ 176 ] = 16148
GDS numPV[ 177 ] = -12304
GDS numPV[ 178 ] = 16173
GDS numPV[ 179 ] = -23504
GDS numPV[ 180 ] = 16212
For a particular grid:
--------------------------------------------------------------------
Header : GRIB1
Discipline : 0 Meteorological Products
GRIB Edition : 1
GRIB length : 130916
Originating Center : 98 European Center for Medium-Range
Weather For
ecasts (RSMC)
Originating Sub-Center : 0 WMO Secretariat
Product Definition : 0 Forecast/Uninitialized
Analysis/Image Product
Parameter Category : -1 Meteorological Parameters
Parameter Name : 131 U U velocity
Parameter Units : m s^-1
Reference Time : 2003-10-06T00:00:00Z
Time Units : hour
Time Range Indicator : product valid at RT + P1
Time 1 (P1) : 0
Time 2 (P2) : 0
Generating Process Type : 203 Unknown
Level Type : 109 hybrid level
Level Value 1 : 60.0
Level Value 2 : 0.0
GDS Exists : true
BMS Exists : false
Number of data points : 65160
Grid Name : Latitude/Longitude Grid
Grid Shape: 0 spherical
Spherical earth radius: 6367.47
Nx : 360
Ny : 181
La1 : 90.0
Lo1 : 0.0
Resolution & Component flags : 128
La2 : -90.0
Lo2 : 359.0
Dx : -9999.0
Dy : 1.0
Scanning mode : 0
notice that the Dx is -9999.0. This ends up creating non-sensical
longitudes.
So, one issue is the debug messages printing out and the other is
the bad longitude values. This shows up in the tools UI as well as
the IDV. In the Tools UI, a dump of the longitude variable gives:
double lon(lon=360);
:units = "degrees_east";
:long_name = "longitude coordinate";
:standard_name = "longitude";
:grid_spacing = "-9999.0 degrees_east";
:_CoordinateAxisType = "Lon";
data:
{0.0, -9999.0, -19998.0, -29997.0, -39996.0, -49995.0, -59994.0,
-69993.0, -79992.0, -89991.0, -99990.0, -109989.0, -119988.0, -129987.0,
-139986.0, -149985.0, -159984.0, -169983.0, -179982.0, -189981.0,
-199980.0, -209979.0, -219978.0, -229977.0, -239976.0, -249975.0,
-259974.0, -269973.0, -279972.0, -289971.0, -299970.0, -309969.0,
-319968.0, -329967.0, -339966.0, -349965.0, -359964.0, -369963.0,
-379962.0, -389961.0, -399960.0, -409959.0, -419958.0, -429957.0,
-439956.0, -449955.0, -459954.0, -469953.0, -479952.0, -489951.0,
-499950.0, -509949.0, -519948.0, -529947.0, -539946.0, -549945.0,
-559944.0, -569943.0, -579942.0, -589941.0, -599940.0, -609939.0,
-619938.0, -629937.0, -639936.0, -649935.0, -659934.0, -669933.0,
-679932.0, -689931.0, -699930.0, -709929.0, -719928.0, -729927.0,
-739926.0, -749925.0, -759924.0, -769923.0, -779922.0, -789921.0,
-799920.0, -809919.0, -819918.0, -829917.0, -839916.0, -849915.0,
-859914.0, -869913.0, -879912.0, -889911.0, -899910.0, -909909.0,
-919908.0, -929907.0, -939906.0, -949905.0, -959904.0, -969903.0,
-979902.0, -989901.0, -999900.0, -1009899.0, -1019898.0, -1029897.0,
-1039896.0, ....................
There is another file in the directory (ana_Z_20031006_00.grib) from
ECMWF which is on pressure coordinates. It does not have this problem.
Don
*************************************************************
Don Murray UCAR Unidata Program
address@hidden P.O. Box 3000
(303) 497-8628 Boulder, CO 80307
http://www.unidata.ucar.edu/staff/donm
*************************************************************
Ticket Details
===================
Ticket ID: FEG-733021
Department: Support netCDF Decoders
Priority: Normal
Status: Open
Link:
http://www.unidata.ucar.edu/esupport/staff/index.php?_m=tickets&_a=viewticket&ticketid=2889