W3FI63

The W3FI63 routine unpacks a grib (edition 1) field to the exact grid
           specified in the grib message, isolate the bit map, and make
           the values of the product descripton section (PDS) and the
           grid description section (GDS) available in return arrays.

USAGE:    CALL W3FI63(MSGA,KPDS,KGDS,KBMS,DATA,KPTR,KRET)

   Input argument list:
      MSGA     - GRIB FIELD - "GRIB" THRU "7777"   CHAR*1
                    (MESSAGE CAN BE PRECEDED BY JUNK CHARS)
 
   Output argument list:
      DATA     - ARRAY CONTAINING DATA ELEMENTS
      KPDS     - ARRAY CONTAINING PDS ELEMENTS.  (EDITION 1)
           (1)   - ID OF CENTER
           (2)   - GENERATING PROCESS ID NUMBER
           (3)   - GRID DEFINITION
           (4)   - GDS/BMS FLAG (RIGHT ADJ COPY OF OCTET 8)
           (5)   - INDICATOR OF PARAMETER
           (6)   - TYPE OF LEVEL
           (7)   - HEIGHT/PRESSURE , ETC OF LEVEL
           (8)   - YEAR INCLUDING (CENTURY-1)
           (9)   - MONTH OF YEAR
           (10)  - DAY OF MONTH
           (11)  - HOUR OF DAY
           (12)  - MINUTE OF HOUR
           (13)  - INDICATOR OF FORECAST TIME UNIT
           (14)  - TIME RANGE 1
           (15)  - TIME RANGE 2
           (16)  - TIME RANGE FLAG
           (17)  - NUMBER INCLUDED IN AVERAGE
           (18)  - VERSION NR OF GRIB SPECIFICATION
           (19)  - VERSION NR OF PARAMETER TABLE
           (20)  - NR MISSING FROM AVERAGE/ACCUMULATION
           (21)  - CENTURY OF REFERENCE TIME OF DATA
           (22)  - UNITS DECIMAL SCALE FACTOR
           (23)  - SUBCENTER NUMBER
           (24)  - PDS BYTE 29, FOR NMC ENSEMBLE PRODUCTS
                   128 IF FORECAST FIELD ERROR
                    64 IF BIAS CORRECTED FCST FIELD
                    32 IF SMOOTHED FIELD
                   WARNING: CAN BE COMBINATION OF MORE THAN 1
           (25)  - PDS BYTE 30, NOT USED
        (26-35)  - RESERVED
        (36-N)   - CONSECUTIVE BYTES EXTRACTED FROM PROGRAM
                   DEFINITION SECTION (PDS) OF GRIB MESSAGE
        KGDS     - ARRAY CONTAINING GDS ELEMENTS.
           (1)   - DATA REPRESENTATION TYPE
           (19)  - NUMBER OF VERTICAL COORDINATE PARAMETERS
           (20)  - OCTET NUMBER OF THE LIST OF VERTICAL COORDINATE
                   PARAMETERS
                   OR
                   OCTET NUMBER OF THE LIST OF NUMBERS OF POINTS
                   IN EACH ROW
                   OR
                   255 IF NEITHER ARE PRESENT
           (21)  - FOR GRIDS WITH PL, NUMBER OF POINTS IN GRID
           (22)  - NUMBER OF WORDS IN EACH ROW
        LATITUDE/LONGITUDE GRIDS
           (2)   - N(I) NR POINTS ON LATITUDE CIRCLE
           (3)   - N(J) NR POINTS ON LONGITUDE MERIDIAN
           (4)   - LA(1) LATITUDE OF ORIGIN
           (5)   - LO(1) LONGITUDE OF ORIGIN
           (6)   - RESOLUTION FLAG (RIGHT ADJ COPY OF OCTET 17)
           (7)   - LA(2) LATITUDE OF EXTREME POINT
           (8)   - LO(2) LONGITUDE OF EXTREME POINT
           (9)   - DI LONGITUDINAL DIRECTION OF INCREMENT
           (10)  - DJ LATITUDINAL DIRECTION INCREMENT
           (11)  - SCANNING MODE FLAG (RIGHT ADJ COPY OF OCTET 28)
        GAUSSIAN  GRIDS
           (2)   - N(I) NR POINTS ON LATITUDE CIRCLE
           (3)   - N(J) NR POINTS ON LONGITUDE MERIDIAN
           (4)   - LA(1) LATITUDE OF ORIGIN
           (5)   - LO(1) LONGITUDE OF ORIGIN
           (6)   - RESOLUTION FLAG  (RIGHT ADJ COPY OF OCTET 17)
           (7)   - LA(2) LATITUDE OF EXTREME POINT
           (8)   - LO(2) LONGITUDE OF EXTREME POINT
           (9)   - DI LONGITUDINAL DIRECTION OF INCREMENT
           (10)  - N - NR OF CIRCLES POLE TO EQUATOR
           (11)  - SCANNING MODE FLAG (RIGHT ADJ COPY OF OCTET 28)
           (12)  - NV - NR OF VERT COORD PARAMETERS
           (13)  - PV - OCTET NR OF LIST OF VERT COORD PARAMETERS
                              OR
                   PL - LOCATION OF THE LIST OF NUMBERS OF POINTS IN
                        EACH ROW (IF NO VERT COORD PARAMETERS
                        ARE PRESENT
                              OR
                   255 IF NEITHER ARE PRESENT
        POLAR STEREOGRAPHIC GRIDS
           (2)   - N(I) NR POINTS ALONG LAT CIRCLE
           (3)   - N(J) NR POINTS ALONG LON CIRCLE
           (4)   - LA(1) LATITUDE OF ORIGIN
           (5)   - LO(1) LONGITUDE OF ORIGIN
           (6)   - RESOLUTION FLAG  (RIGHT ADJ COPY OF OCTET 17)
           (7)   - LOV GRID ORIENTATION
           (8)   - DX - X DIRECTION INCREMENT
           (9)   - DY - Y DIRECTION INCREMENT
           (10)  - PROJECTION CENTER FLAG
           (11)  - SCANNING MODE (RIGHT ADJ COPY OF OCTET 28)
        SPHERICAL HARMONIC COEFFICIENTS
           (2)   - J PENTAGONAL RESOLUTION PARAMETER
           (3)   - K      "          "         "
           (4)   - M      "          "         "
           (5)   - REPRESENTATION TYPE
           (6)   - COEFFICIENT STORAGE MODE
        MERCATOR GRIDS
           (2)   - N(I) NR POINTS ON LATITUDE CIRCLE
           (3)   - N(J) NR POINTS ON LONGITUDE MERIDIAN
           (4)   - LA(1) LATITUDE OF ORIGIN
           (5)   - LO(1) LONGITUDE OF ORIGIN
           (6)   - RESOLUTION FLAG (RIGHT ADJ COPY OF OCTET 17)
           (7)   - LA(2) LATITUDE OF LAST GRID POINT
           (8)   - LO(2) LONGITUDE OF LAST GRID POINT
           (9)   - LATIT - LATITUDE OF PROJECTION INTERSECTION
           (10)  - RESERVED
           (11)  - SCANNING MODE FLAG (RIGHT ADJ COPY OF OCTET 28)
           (12)  - LONGITUDINAL DIR GRID LENGTH
           (13)  - LATITUDINAL DIR GRID LENGTH
        LAMBERT CONFORMAL GRIDS
           (2)   - NX NR POINTS ALONG X-AXIS
           (3)   - NY NR POINTS ALONG Y-AXIS
           (4)   - LA1 LAT OF ORIGIN (LOWER LEFT)
           (5)   - LO1 LON OF ORIGIN (LOWER LEFT)
           (6)   - RESOLUTION (RIGHT ADJ COPY OF OCTET 17)
           (7)   - LOV - ORIENTATION OF GRID
           (8)   - DX - X-DIR INCREMENT
           (9)   - DY - Y-DIR INCREMENT
           (10)  - PROJECTION CENTER FLAG
           (11)  - SCANNING MODE FLAG (RIGHT ADJ COPY OF OCTET 28)
           (12)  - LATIN 1 - FIRST LAT FROM POLE OF SECANT CONE INTER
           (13)  - LATIN 2 - SECOND LAT FROM POLE OF SECANT CONE INTER
        STAGGERED ARAKAWA ROTATED LAT/LON GRIDS (TYPE 203)
           (2)   - N(I) NR POINTS ON LATITUDE CIRCLE
           (3)   - N(J) NR POINTS ON LONGITUDE MERIDIAN
           (4)   - LA(1) LATITUDE OF ORIGIN
           (5)   - LO(1) LONGITUDE OF ORIGIN
           (6)   - RESOLUTION FLAG (RIGHT ADJ COPY OF OCTET 17)
           (7)   - LA(2) LATITUDE OF CENTER
           (8)   - LO(2) LONGITUDE OF CENTER
           (9)   - DI LONGITUDINAL DIRECTION OF INCREMENT
           (10)  - DJ LATITUDINAL DIRECTION INCREMENT
           (11)  - SCANNING MODE FLAG (RIGHT ADJ COPY OF OCTET 28)
        KBMS     - BITMAP DESCRIBING LOCATION OF OUTPUT ELEMENTS.
                             (ALWAYS CONSTRUCTED)
        KPTR     - ARRAY CONTAINING STORAGE FOR FOLLOWING PARAMETERS
           (1)   - TOTAL LENGTH OF GRIB MESSAGE
           (2)   - LENGTH OF INDICATOR (SECTION  0)
           (3)   - LENGTH OF PDS       (SECTION  1)
           (4)   - LENGTH OF GDS       (SECTION  2)
           (5)   - LENGTH OF BMS       (SECTION  3)
           (6)   - LENGTH OF BDS       (SECTION  4)
           (7)   - VALUE OF CURRENT BYTE
           (8)   - BIT POINTER
           (9)   - GRIB START BIT NR
          (10)   - GRIB/GRID ELEMENT COUNT
          (11)   - NR UNUSED BITS AT END OF SECTION 3
          (12)   - BIT MAP FLAG (COPY OF BMS OCTETS 5,6)
          (13)   - NR UNUSED BITS AT END OF SECTION 2
          (14)   - BDS FLAGS (RIGHT ADJ COPY OF OCTET 4)
          (15)   - NR UNUSED BITS AT END OF SECTION 4
        KRET     - FLAG INDICATING QUALITY OF COMPLETION
 
REMARKS: 
        When decoding is completed, data at each grid point has been
        returned in the units specified in the grib manual.
 
         Values for return flag (kret)
            KRET = 0 - Normal return, no errors
                 = 1 - 'GRIB' not found in first 100 chars
                 = 2 - '7777' not in correct location
                 = 3 - Unpacked field is larger than 260000
                 = 4 - GDS/ Grid not one of currently accepted values
                 = 5 - Grid not currently avail for center indicated
                 = 8 - Temp GDS indicated, but GDS flag is off
                 = 9 - GDS indicates size mismatch with std grid
                 =10 - Incorrect center indicator
                 =11 - Binary data section (BDS) not completely processed.
                       program is not set to process flag combinations
                       shown in octets 4 and 14.
                 =12 - Binary data section (BDS) not completely processed.
                       program is not set to process flag combinations

 
W3lib.tar Library contains Fortran 90 decoder/encoder routines for GRIB edition 1. (Fortran90)
Date posted: 2/22/2007