W3UNPK77
The W3UNPK77 routine decodes a single report from bufr messages
in a jbufr-type data file. Currently wind profiler,
nexrad (vad) wind and goes sounding/radiance data types
are valid. Report is returned in quasi-office note 29
unpacked format (see remarks 4.).
USAGE: CALL W3UNPK77(IDATE,IHE,IHL,LUNIT,RDATA,IRET)
Input argument list:
IDATE - 4-WORD ARRAY HOLDING "CENTRAL" DATE TO PROCESS
- (YYYY, MM, DD, HH)
IHE - NUMBER OF WHOLE HOURS RELATIVE TO "IDATE" FOR DATE OF
- EARLIEST BUFR MESSAGE THAT IS TO BE DECODED; EARLIEST
- DATE IS "IDATE" + "IHE" HOURS (IF "IHE" IS POSITIVE,
- LATEST MESSAGE DATE IS AFTER "IDATE"; IF "IHE" IS
- NEGATIVE LATEST MESSAGE DATE IS PRIOR TO "IDATE")
- EXAMPLE: IF IHE=1, THEN EARLIEST DATE IS 1-HR AFTER
- IDATE; IF IHE=-3, THEN EARLIEST DATE IS 3-HR PRIOR
- TO IDATE
IHL - NUMBER OF WHOLE HOURS RELATIVE TO "IDATE" FOR DATE OF
- LATEST BUFR MESSAGE THAT IS TO BE DECODED; LATEST
- DATE IS "IDATE" + ("IHL" HOURS PLUS 59 MIN) IF "IHL"
- IS POSITIVE (LATEST MESSAGE DATE IS AFTER "IDATE"),
- AND "IDATE" + ("IHL"+1 HOURS MINUS 1 MIN) IF "IHL"
- IS NEGATIVE (LATEST MESSAGE DATE IS PRIOR TO "IDATE")
- EXAMPLE: IF IHL=3, THEN LATEST DATE IS 3-HR 59-MIN
- AFTER IDATE; IF IHL=-2, THEN LATEST DATE IS 1-HR 1-MIN
- PRIOR TO IDATE
LUNIT - FORTRAN UNIT NUMBER FOR INPUT DATA FILE
IRET - CONTROLS DEGREE OF UNIT 6 PRINTOUT (.GE. 0 -LIMITED
- PRINTOUT; = -1 SOME ADDITIONAL DIAGNOSTIC PRINTOUT;
= .LT. -1 -EXTENSIVE PRINTOUT) (SEE REMARKS 3.)
Output argument list: (INCLUDING WORK ARRAYS)
RDATA - SINGLE REPORT RETURNED AN A QUASI-OFFICE NOTE 29
- UNPACKED FORMAT (SEE REMARKS 4.) (MINIMUM SIZE IS
- 1200 WORDS)
IRET - RETURN CODE AS FOLLOWS:
IRET = 0 ---> REPORT SUCCESSFULLY RETURNED
IRET > 0 ---> NO REPORT RETURNED DUE TO:
= 1 ---> ALL REPORTS READ IN, END
= 2 ---> LAT AND/OR LON DATA MISSING
= 3 ---> RESERVED
= 4 ---> SOME/ALL DATE INFORMATION MISSING
= 5 ---> NO DATA LEVELS PROCESSED (ALL LEVELS ARE MISSING)
= 6 ---> NUMBER OF LEVELS IN REPORT HEADER IS NOT 1
= 7 ---> NUMBER OF LEVELS IN ANOTHER SINGLE LEVEL SEQUENCE
IS NOT 1
Input files:
UNIT AA - (WHERE AA IS LUNIT ABOVE) FILE HOLDING THE DATA
- IN THE FORM OF BUFR MESSAGES
Output files:
UNIT 06 - PRINTOUT
REMARKS:
1) A CONDITION CODE (STOP) OF 15 WILL OCCUR IF THE INPUT
DATES FOR START AND/OR STOP TIME ARE SPECIFIED INCORRECTLY.
2) A CONDITION CODE (STOP) OF 22 WILL OCCUR IF THE
CHARACTERS ON THIS MACHINE ARE NEITHER ASCII NOR EBCDIC.
3) THE INPUT ARGUMENT "IRET" SHOULD BE SET PRIOR TO EACH
CALL TO THIS SUBROUTINE.
4) BELOW IS THE FORMAT OF AN UNPACKED REPORT IN OUTPUT
ARRAY RDATA (EACH WORD REPRESENTS A FULL-WORD ACCORDING
TO THE MACHINE)
N O T E : THIS IS THE SAME FORMAT AS FOR W3LIB ROUTINE W3FI77
EXCEPT WHERE NOTED
FORMAT FOR WIND PROFILER REPORTS
WORD CONTENT UNIT FORMAT
---- ---------------------- ------------------- ---------
1 LATITUDE 0.01 DEGREES REAL
2 LONGITUDE 0.01 DEGREES WEST REAL
3 TIME SIGNIFICANCE (BUFR CODE TABLE "0 08 021") INTEGER
4 OBSERVATION TIME 0.01 HOURS (UTC) REAL
5 YEAR/MONTH 4-CHAR. 'YYMM' CHARACTER
LEFT-JUSTIFIED
6 DAY/HOUR 4-CHARACTERS 'DDHH' CHARACTER
7 STATION ELEVATION METERS REAL
8 SUBMODE/EDITION NO. (SM X 10) + ED. NO. INTEGER
(ED. NO.=2, CONSTANT; SEE &,~)
9 REPORT TYPE 71 (CONSTANT) INTEGER
10 AVERAGING TIME MINUTES INTEGER
(NEGATIVE MEANS PRIOR TO OBS. TIME)
11 STN. ID. (FIRST 4 CHAR.) 4-CHARACTERS CHARACTER
LEFT-JUSTIFIED
12 STN. ID. (LAST 2 CHAR.) 2-CHARACTERS CHARACTER
LEFT-JUSTIFIED
13-34 ZEROED OUT - NOT USED INTEGER
35 CATEGORY 10, NO. LEVELS COUNT INTEGER
36 CATEGORY 10, DATA INDEX COUNT INTEGER
37 CATEGORY 11, NO. LEVELS COUNT INTEGER
38 CATEGORY 11, DATA INDEX COUNT INTEGER
39-42 ZEROED OUT - NOT USED INTEGER
43-END UNPACKED DATA GROUPS (FOLLOWS) REAL
CATEGORY 10 - WIND PROFILER SFC DATA (EACH LEVEL, SEE WORD 35 ABOVE)
WORD PARAMETER UNITS FORMAT
---- --------- ----------------- -------------
(SEE @)1 SEA-LEVEL PRESSURE 0.1 MILLIBARS REAL
(SEE *)2 STATION PRESSURE 0.1 MILLIBARS REAL
(SEE @)3 HORIZ. WIND DIR. DEGREES REAL
(SEE @)4 HORIZ. WIND SPEED 0.1 M/S REAL
(SEE @)5 AIR TEMPERATURE 0.1 DEGREES K REAL
(SEE @)6 RELATIVE HUMIDITY PERCENT REAL
(SEE @)7 RAINFALL RATE 0.0000001 M/S REAL
CATEGORY 11 - WIND PROFILER UPPER-AIR DATA (FIRST LEVEL IS SURFACE)
(EACH LEVEL, SEE WORD 37 ABOVE)
WORD PARAMETER UNITS FORMAT
---- --------- ----------------- -------------
1 HEIGHT ABOVE SEA-LVL METERS REAL
2 HORIZ. WIND DIR. DEGREES REAL
3 HORIZ. WIND SPEED 0.1 M/S REAL
4 QUALITY CODE (SEE %) INTEGER
5 VERT. WIND COMP. (W) 0.01 M/S REAL
(SEE @)6 HORIZ. CONSENSUS NO. (SEE $) INTEGER
(SEE @)7 VERT. CONSENSUS NO. (SEE $) INTEGER
(SEE @)8 SPECTRAL PEAK POWER DB REAL
9 HORIZ. WIND SPEED 0.1 M/S REAL
STANDARD DEVIATION 0.1 M/S REAL
10 VERT. WIND COMPONENT 0.1 M/S REAL
STANDARD DEVIATION 0.1 M/S REAL
(SEE @)11 MODE (SEE #) INTEGER
*- ALWAYS MISSING
&- THIS IS A CHANGE FROM FORMAT IN W3LIB ROUTINE W3FI77
%- 0 - MEDIAN AND SHEAR CHECKS BOTH PASSED
2 - MEDIAN AND SHEAR CHECK RESULTS INCONCLUSIVE
4 - MEDIAN CHECK PASSED; SHEAR CHECK FAILED
8 - MEDIAN CHECK FAILED; SHEAR CHECK PASSED
12 - MEDIAN AND SHEAR CHECKS BOTH FAILED
$- NO. OF INDIVIDUAL 6-MINUTE AVERAGE MEASUREMENTS THAT WERE
INCLUDED IN FINAL ESTIMATE OF AVERAGED WIND (RANGE: 0, 2-10)
(BASED ON A ONE-HOUR AVERAGE)
#- 1 - DATA FROM LOW MODE
2 - DATA FROM HIGH MODE
3 - MISSING
@- THIS PARAMETER IS NO LONGER AVAILABLE AFTER 3/2002 AND IS SET
TO MISSING (99999 FOR INTEGER OR 99999. FOR REAL)
~- SUBMODE IS NO LONGER AVAILABLE AFTER 3/2002 AND IS SET TO 3
(ITS MISSING VALUE)
FORMAT FOR GOES SOUNDING/RADIANCE REPORTS
WORD CONTENT UNIT FORMAT
---- ---------------------- ------------------- ---------
1 LATITUDE 0.01 DEGREES REAL
2 LONGITUDE 0.01 DEGREES WEST REAL
3 FIELD OF VIEW NUMBER NUMERIC INTEGER
4 OBSERVATION TIME 0.01 HOURS (UTC) REAL
5 YEAR/MONTH 4-CHAR. 'YYMM' CHARACTER
LEFT-JUSTIFIED
6 DAY/HOUR 4-CHARACTERS 'DDHH' CHARACTER
7 STATION ELEVATION METERS REAL
8 PROCESS. TECHNIQUE (=21-CLEAR; INTEGER
8 PROCESS. TECHNIQUE =23-CLOUD-CORRECTED)
9 REPORT TYPE 61 (CONSTANT) INTEGER
10 QUALITY FLAG (BUFR CODE TABLE "0 33 002") INTEGER
11 STN. ID. (FIRST 4 CHAR.) 4-CHARACTERS CHARACTER
LEFT-JUSTIFIED
12 STN. ID. (LAST 2 CHAR.) 2-CHARACTERS CHARACTER
LEFT-JUSTIFIED (SEE %)
13-26 ZEROED OUT - NOT USED
27 CATEGORY 08, NO. LEVELS COUNT INTEGER
28 CATEGORY 08, DATA INDEX COUNT INTEGER
29-38 ZEROED OUT - NOT USED
39 CATEGORY 12, NO. LEVELS COUNT INTEGER
40 CATEGORY 12, DATA INDEX COUNT INTEGER
41 CATEGORY 13, NO. LEVELS COUNT INTEGER
42 CATEGORY 13, DATA INDEX COUNT INTEGER
43-END UNPACKED DATA GROUPS (FOLLOWS) REAL
CATEGORY 12 - SATELLITE SOUNDING LEVEL DATA (FIRST LEVEL IS SURFACE;
EACH LEVEL, SEE 39 ABOVE)
WORD PARAMETER UNITS FORMAT
---- --------- ----------------- -------------
1 PRESSURE 0.1 MILLIBARS REAL
2 GEOPOTENTIAL METERS REAL
#- FIRST CHARACTER IS Q.M. FOR THE DATUM
4 DEWPOINT TEMPERATURE 0.1 DEGREES C REAL
5 NOT USED SET TO MISSING REAL
6 NOT USED SET TO MISSING REAL
7 QUALITY MARKERS 4-CHARACTERS CHARACTER
LEFT-JUSTIFIED (SEE &)
CATEGORY 13 - SATELLITE RADIANCE "LEVEL" DATA (EACH "LEVEL", SEE
41 ABOVE)
WORD PARAMETER UNITS FORMAT
---- --------- ----------------- -------------
1 CHANNEL NUMBER NUMERIC INTEGER
2 BRIGHTNESS TEMP. 0.01 DEG. KELVIN REAL
3 QUALITY MARKERS 4-CHARACTERS CHARACTER
LEFT-JUSTIFIED (SEE &&)
CATEGORY 08 - ADDITIONAL (MISCELLANEOUS) DATA (EACH LEVEL, SEE @
BELOW)
WORD PARAMETER UNITS FORMAT
---- --------- ----------------- -------------
1 VARIABLE SEE @ BELOW REAL
2 CODE FIGURE SEE @ BELOW REAL
3 MARKERS 2-CHARACTERS CHARACTER
LEFT-JUSTIFIED (SEE #)
%- SIXTH CHARACTER OF STATION ID IS A TAGGED AS FOLLOWS:
"I" - GOES-EVEN-1 (252, 256, ...) SAT. , CLEAR COLUMN RETR.
"J" - GOES-EVEN-1 (252, 256, ...) SAT. , CLD-CORRECTED RETR.
"L" - GOES-ODD-1 (253, 257, ...) SAT. , CLEAR COLUMN RETR.
"M" - GOES-ODD-1 (253, 257, ...) SAT. , CLD-CORRECTED RETR.
"O" - GOES-EVEN-2 (254, 258, ...) SAT. , CLEAR COLUMN RETR.
"P" - GOES-EVEN-2 (254, 258, ...) SAT. , CLD-CORRECTED RETR.
"Q" - GOES-ODD-2 (251, 255, ...) SAT. , CLEAR COLUMN RETR.
"R" - GOES-ODD-2 (251, 255, ...) SAT. , CLD-CORRECTED RETR.
"?" - EITHER SATELLITE AND/OR RETRIEVAL TYPE UNKNOWN
&- FIRST CHARACTER IS Q.M. FOR GEOPOTENTIAL
SECOND CHARACTER IS Q.M. FOR TEMPERATURE
THIRD CHARACTER IS Q.M. FOR DEWPOINT TEMPERATURE
FOURTH CHARACTER IS NOT USED
" " - INDICATES DATA NOT SUSPECT
"Q" - INDICATES DATA ARE SUSPECT
"F" - INDICATES DATA ARE BAD
&&- FIRST CHARACTER IS Q.M. FOR BRIGHTNESS TEMPERATURE
SECOND-FOURTH CHARACTERS ARE NOT USED
" " - INDICATES DATA NOT SUSPECT
"Q" - INDICATES DATA ARE SUSPECT
"F" - INDICATES DATA ARE BAD
@- NUMBER OF "LEVELS" FROM WORD 27. MAXIMUM IS 12, AND ARE ORDERED
AS FOLLOWS (IF A DATUM ARE MISSING THAT LEVEL NOT STORED)
1 - LIFTED INDEX ---------- .01 DEG. KELVIN -- C. FIG. 250.
2 - TOTAL PRECIP. WATER -- .01 MILLIMETERS -- C. FIG. 251.
3 - 1. TO .9 SIGMA P.WATER- .01 MILLIMETERS -- C. FIG. 252.
4 - .9 TO .7 SIGMA P.WATER- .01 MILLIMETERS -- C. FIG. 253.
5 - .7 TO .3 SIGMA P.WATER- .01 MILLIMETERS -- C. FIG. 254.
6 - SKIN TEMPERATURE ----- .01 DEG. KELVIN -- C. FIG. 255.
7 - CLOUD TOP TEMPERATURE- .01 DEG. KELVIN -- C. FIG. 256.
8 - CLOUD TOP PRESSURE --- .1 MILLIBARS ----- C. FIG. 257.
9 - CLOUD AMOUNT (BUFR TBL. C.T. 0-20-011) -- C. FIG. 258.
10 - INSTR. DATA USED IN PROC.
(BUFR TBL. C.T. 0-02-021) -- C. FIG. 259.
11 - SOLAR ZENITH ANGLE --- .01 DEGREE ------- C. FIG. 260.
12 - SAT. ZENITH ANGLE ---- .01 DEGREE ------- C. FIG. 261.
#- FIRST CHARACTER IS Q.M. FOR THE DATUM
" " - INDICATES DATA NOT SUSPECT
"Q" - INDICATES DATA ARE SUSPECT
"F" - INDICATES DATA ARE BAD
SECOND CHARACTER IS NOT USED
FORMAT FOR NEXRAD (VAD) WIND REPORTS
WORD CONTENT UNIT FORMAT
---- ---------------------- ------------------- ---------
1 LATITUDE 0.01 DEGREES REAL
2 LONGITUDE 0.01 DEGREES WEST REAL
3 ** RESERVED ** SET TO 99999 INTEGER
4 OBSERVATION TIME 0.01 HOURS (UTC) REAL
5 YEAR/MONTH 4-CHAR. 'YYMM' CHARACTER
LEFT-JUSTIFIED
6 DAY/HOUR 4-CHARACTERS 'DDHH' CHARACTER
7 STATION ELEVATION METERS REAL
8 ** RESERVED ** SET TO 99999 INTEGER
9 REPORT TYPE 72 (CONSTANT) INTEGER
10 ** RESERVED ** SET TO 99999 INTEGER
11 STN. ID. (FIRST 4 CHAR.) 4-CHARACTERS CHARACTER
LEFT-JUSTIFIED
12 STN. ID. (LAST 2 CHAR.) 2-CHARACTERS CHARACTER
LEFT-JUSTIFIED
13-18 ZEROED OUT - NOT USED INTEGER
19 CATEGORY 04, NO. LEVELS COUNT INTEGER
20 CATEGORY 04, DATA INDEX COUNT INTEGER
21-42 ZEROED OUT - NOT USED INTEGER
43-END UNPACKED DATA GROUPS (FOLLOWS) REAL
CATEGORY 04 - UPPER-AIR WINDS-BY-HEIGHT DATA(FIRST LEVEL IS SURFACE)
(EACH LEVEL, SEE WORD 19 ABOVE)
WORD PARAMETER UNITS FORMAT
---- --------- ----------------- -------------
1 HEIGHT ABOVE SEA-LVL METERS REAL
2 HORIZ. WIND DIR. DEGREES REAL
3 HORIZ. WIND SPEED 0.1 M/S (SEE *) REAL
4 QUALITY MARKERS 4-CHARACTERS CHARACTER
LEFT-JUSTIFIED (SEE %)
*- UNITS HERE DIFFER FROM THOSE IN TRUE UNPACKED OFFICE NOTE 29
(WHERE UNITS ARE KNOTS)
%- THE FIRST THREE CHARACTERS ARE ALWAYS BLANK, THE FOURTH
CHARACTER IS A "CONFIDENCE LEVEL" WHICH IS RELATED TO THE ROOT-
MEAN-SQUARE VECTOR ERROR FOR THE HORIZONTAL WIND. IT IS
DEFINED AS FOLLOWS:
'A' = RMS OF 1.9 KNOTS
'B' = RMS OF 3.9 KNOTS
'C' = RMS OF 5.8 KNOTS
'D' = RMS OF 7.8 KNOTS
'E' = RMS OF 9.7 KNOTS
'F' = RMS OF 11.7 KNOTS
'G' = RMS > 13.6 KNOTS
FOR ALL REPORT TYPES, MISSING VALUES ARE:
99999. FOR REAL
99999 FOR INTEGER
9'S FOR CHARACTERS IN WORD 5, 6 OF HEADER
BLANK FOR CHARACTERS IN WORD 11, 12 OF HEADER
AND FOR CHARACTERS IN ANY CATEGORY LEVEL
W3lib.tar |
Library contains Fortran 90 decoder/encoder
routines for GRIB edition 1. (Fortran90)
Date posted: 2/22/2007 |