345 SUBROUTINE w3unpk77(IDATE,IHE,IHL,LUNIT,RDATA,IRET)
347 INTEGER IDATE(4),LSDATE(4),jdate(8),IDATA(1200)
349 REAL RDATA(*),RDATX(1200)
350 COMMON /pk77bb/kdate(8),ldate(8),iprint
352 COMMON /pk77dd/lshe,lshl,icdate(5),iddate(5)
353 COMMON /pk77ff/ifov(3),kntsat(250:260)
357 equivalence(rdatx,idata)
358 DATA itm/0/,lunitl/-99/,kount/0/
360 IF(iret.LT.0) iprint = iabs(iret)
372 CALL w3fi04(iendn,ichtp,lw)
373 print 2213, lw, ichtp, iendn
374 2213
FORMAT(/
' ---> W3UNPK77: CALL TO W3FI04 RETURNS: LW = ',i3,
375 $
', ICHTP = ',i3,
', IENDN = ',i3/)
379 217
FORMAT(
' *** W3UNPK77 ERROR: CHARACTERS ON THIS MACHINE ',
380 $
'ARE NEITHER ASCII NOR EBCDIC - STOP 22'/)
385 IF(lunit.NE.lunitl)
THEN
394 101
FORMAT(//
' ---> W3UNPK77: VERSION 03/05/2002: JBUFR DATA SET ',
395 $
'READ FROM UNIT ',i4/)
406 IF(idate(i).NE.lsdate(i))
GO TO 88
408 IF(ihe.NE.lshe.OR.ihl.NE.lshl)
GO TO 88
415 6680
FORMAT(/
' JRET = 1 - REWIND DATA FILE & SET-UP TO DO DATE CHECK'/)
435 READ(lunit,
END=9999,ERR=9999) cbufr
436 IF(cbufr.NE.
'BUFR')
GO TO 9999
440 CALL dumpbf(lunit,icdate,iddate)
442 print *,
'CENTER DATE (ICDATE) = ',icdate
443 print *,
'DUMP DATE (IDDATE) = ',iddate
446 if(icdate(1).le.0)
then
449 print *,
' *** W3UNPK77 ERROR: CENTER DATE COULD NOT BE ',
450 $
'OBTAINED FROM INPUT FILE ON UNIT ',lunit
453 if(iddate(1).le.0)
then
456 print *,
' *** W3UNPK77 ERROR: DUMP DATE COULD NOT BE ',
457 $
'OBTAINED FROM INPUT FILE ON UNIT ',lunit
460 IF(icdate(1).LT.100)
THEN
469 print *,
'##W3UNPK77 - THE FOLLOWING SHOULD NEVER ',
471 print *,
'##W3UNPK77 - 2-DIGIT YEAR IN ICDATE(1) ',
472 $
'RETURNED FROM DUMPBF (ICDATE IS: ',icdate,
') - USE ',
473 $
'WINDOWING TECHNIQUE TO OBTAIN 4-DIGIT YEAR'
474 IF(icdate(1).GT.20)
THEN
475 icdate(1) = 1900 + icdate(1)
477 icdate(1) = 2000 + icdate(1)
479 print *,
'##WW3UNPK77 - CORRECTED ICDATE(1) WITH 4-DIGIT ',
480 $
'YEAR, ICDATE NOW IS: ',icdate
483 IF(iddate(1).LT.100)
THEN
492 print *,
'##W3UNPK77 - THE FOLLOWING SHOULD NEVER ',
494 print *,
'##W3UNPK77 - 2-DIGIT YEAR IN IDDATE(1) ',
495 $
'RETURNED FROM DUMPBF (IDDATE IS: ',iddate,
') - USE ',
496 $
'WINDOWING TECHNIQUE TO OBTAIN 4-DIGIT YEAR'
497 IF(iddate(1).GT.20)
THEN
498 iddate(1) = 1900 + iddate(1)
500 iddate(1) = 2000 + iddate(1)
502 print *,
'##W3UNPK77 - CORRECTED IDDATE(1) WITH 4-DIGIT ',
503 $
'YEAR, IDDATE NOW IS: ',iddate
508 CALL openbf(lunit,
'IN',lunit)
510 100
FORMAT(/5x,
'===> BUFR DATA SET IN UNIT',i3,
' SUCCESSFULLY ',
511 $
'OPENED FOR INPUT; DCTNY MESSAGES CONTAIN BUFR TABLES A,B,D'/)
514 jdate(1:3) = idate(1:3)
519 6681
FORMAT(/
' %%% REQUESTED "CENTRAL" DATE IS :',i5,3i3,
' 0'/)
521 call w3movdat((/0.,real(ihe),0.,0.,0./),jdate,kdate)
522 print 6682, (kdate(i),i=1,3),kdate(5),kdate(6)
523 6682
FORMAT(/
' --> EARLIEST DATE FOR ACCEPTING BUFR MSGS IS:',i5,4i3/)
526 xminl = (ihl * 60) + 59
528 xminl = ((ihl + 1) * 60) - 1
530 call w3movdat((/0.,0.,xminl,0.,0./),jdate,ldate)
531 print 6683, (ldate(i),i=1,3),ldate(5),ldate(6)
532 6683
FORMAT(/
' --> LATEST DATE FOR ACCEPTING BUFR MSGS IS:',i5,4i3/)
534 IF(rinc(3).LT.0)
THEN
536 104
FORMAT(
' *** W3UNPK77 ERROR: DATES SPECIFIED INCORRECTLY -',
553 8101
FORMAT(/
' ---> W3UNPK77: SUMMARY OF GOES REPORT COUNTS GROUPED',
554 $
' BY F-O-V NO. (PRIOR TO ANY FILTERING BY CALLING PROGRAM)'/15x,
555 $
'# WITH F-O-V NO. 00 TO 02:',i6,
' - GET "BAD" Q.MARK'/15x,
556 $
'# WITH F-O-V NO. 03 TO 09:',i6,
' - GET "SUSPECT" Q.MARK'/15x,
557 $
'# WITH F-O-V NO. 10 TO 25:',i6,
' - GET "NEUTRAL" Q.MARK'/20x,
558 $
'(NOTE: RADIANCES ALWAYS HAVE NEUTRAL Q.MARK)'/)
560 8102
FORMAT(/
' ---> W3UNPK77: SUMMARY OF GOES REPORT COUNTS GROUPED',
561 $
' BY SATELLITE ID (PRIOR TO ANY FILTERING BY CALLING PROGRAM)'/)
563 IF(kntsat(idsat).GT.0) print 8103, idsat,kntsat(idsat)
565 8103
FORMAT(15x,
'NUMBER FROM SAT. ID',i4,4x,
':',i6)
566 IF(kntsat(260).GT.0) print 8104
567 8104
FORMAT(15x,
'NUMBER FROM UNKNOWN SAT. ID:',i6)
584 IF(iret.GE.2)
GO TO 99
589 rdatx(1:1200) = rdata(1:1200)
590 IF(idata(35)+idata(37).EQ.0) iret = 5
591 ELSE IF(itp.EQ.2)
THEN
596 CALL unpk7708(lunit,rdata,kount,iret)
598 IF(iret.GE.2)
GO TO 99
601 ELSE IF(itp.EQ.3)
THEN
608 IF(iret.GE.2)
GO TO 99
622 print *,
' *** W3UNPK77 ERROR: INPUT FILE IN UNIT ',lunit,
' IS ',
623 $
'EITHER A NULL OR NON-BUFR FILE'
898 CHARACTER*35 HDR1,HDR2
901 REAL HDR(16),RDATA(*),RDATX(1200)
902 COMMON /pk77bb/kdate(8),ldate(8),iprint
906 equivalence(rdatx,idata),(cob,iob)
907 DATA xmsg/99999./,imsg/99999/
908 DATA hdr1/
'CLAT CLON TSIG SELV NPSM TPSE WMOB '/
909 DATA hdr2/
'WMOS YEAR MNTH DAYS HOUR MINU TPMI '/
910 rdatx(1:1200) = rdata(1:1200)
912 CALL ufbint(lunit,hdr_8,16,1,nlev,hdr1//hdr2);hdr=hdr_8
918 217
FORMAT(/
' ##W3UNPK77: THE NUMBER OF DECODED "LEVELS" (=',i5,
') ',
919 $
'IS NOT WHAT IS EXPECTED (1) - IRET = 6'/)
928 IF(iprint.GT.1) print 199, hdr(1),m
929 199
FORMAT(5x,
'HDR HERE IS: ',f17.4,
'; INDEX IS: ',i3)
930 IF(hdr(1).LT.xmsg)
THEN
931 rdatx(1) = nint(hdr(1) * 100.)
933 IF(iprint.GT.1) print 198, nnnnn,rdatx(nnnnn)
934 198
FORMAT(5x,
'DATA(',i5,
') STORED AS: ',f10.2)
938 102
FORMAT(
' *** W3UNPK77 ERROR: LAT MISSING FOR WIND PROFILER ',
946 IF(iprint.GT.1) print 199, hdr(2),m
947 IF(hdr(2).LT.xmsg)
THEN
948 rdatx(2) = nint(mod((36000.-(hdr(2)*100.)),36000.))
950 IF(iprint.GT.1) print 198, nnnnn,rdatx(nnnnn)
954 104
FORMAT(
' *** W3UNPK77 ERROR: LON MISSING FOR WIND PROFILER ',
962 IF(iprint.GT.1) print 199, hdr(3),m
963 IF(hdr(3).LT.xmsg) idata(3) = nint(hdr(3))
965 IF(iprint.GT.1) print 197, nnnnn,idata(nnnnn)
966 197
FORMAT(5x,
'IDATA(',i5,
') STORED AS: ',i10)
972 IF(iprint.GT.1) print 199, hdr(4),m
973 IF(hdr(4).LT.xmsg) rdatx(7) = nint(hdr(4))
975 IF(iprint.GT.1) print 198, nnnnn,rdatx(nnnnn)
985 idata(8) = (3 * 10) + iedtn
986 IF(iprint.GT.1) print 199, hdr(5),m
987 IF(hdr(5).LT.xmsg) idata(8) = (nint(hdr(5)) * 10) + iedtn
989 IF(iprint.GT.1) print 197, nnnnn,idata(nnnnn)
997 IF(iprint.GT.1) print 199, hdr(6),m
998 IF(iprint.GT.1) print 199, hdr(14),m
999 IF(hdr(6).LT.xmsg)
THEN
1000 idata(10) = nint(hdr(6)/60.)
1001 ELSE IF(hdr(14).LT.xmsg)
THEN
1002 idata(10) = nint(hdr(14))
1005 IF(iprint.GT.1) print 197, nnnnn,idata(nnnnn)
1016 IF(iprint.GT.1) print 199, hdr(7),m
1017 IF(hdr(7).LT.xmsg)
WRITE(stnid(1:2),
'(I2.2)') nint(hdr(7))
1022 IF(iprint.GT.1) print 199, hdr(8),m
1023 IF(hdr(8).LT.xmsg)
WRITE(stnid(3:5),
'(I3.3)') nint(hdr(8))
1024 cob(1:4) = stnid(1:4)
1027 IF(iprint.GT.1) print 196, nnnnn,cob(1:4)
1028 196
FORMAT(5x,
'IDATA(',i5,
') STORED IN CHARACTER AS: "',a4,
'"')
1029 cob(1:4) = stnid(5:6)//
' '
1032 IF(iprint.GT.1) print 196, nnnnn,cob(1:4)
1039 IF(iprint.GT.1) print 199, hdr(9),m
1041 IF(hdr(9).LT.xmsg) iyear = nint(hdr(9))
1043 IF(iprint.GT.1) print 199, hdr(10),m
1044 IF(hdr(10).LT.xmsg.AND.iyear.LT.imsg)
THEN
1046 iyear = mod(iyear,100)
1048 iyear = nint(hdr(10)) + (iyear * 100)
1051 WRITE(cob,
'(I4.4,4X)') iyear
1055 IF(iprint.GT.1) print 9196, nnnnn,cob(1:6)
1056 9196
FORMAT(5x,
'IDATA(',i5,
') STORED IN CHARACTER AS: "',a6,
'"')
1065 IF(iprint.GT.1) print 199, hdr(11),m
1067 IF(hdr(11).LT.xmsg) iday = nint(hdr(11))
1069 IF(iprint.GT.1) print 199, hdr(12),m
1070 IF(hdr(12).LT.xmsg.AND.iday.LT.imsg)
THEN
1071 ihrt = nint(hdr(12))
1073 IF(iprint.GT.1) print 199, hdr(13),m
1074 IF(hdr(13).GE.xmsg)
GO TO 30
1076 rdatx(4) = nint((ihrt * 100.) + (rmnt * 100.)/60.)
1078 IF(iprint.GT.1) print 198, nnnnn,rdatx(nnnnn)
1079 ihrt = ihrt + (iday * 100)
1080 WRITE(cob(1:4),
'(I4.4)') ihrt
1083 IF(iprint.GT.1) print 196, nnnnn,cob(1:4)
1087 rdata(1:1200) = rdatx(1:1200)
1119 REAL SFC(8),RDATA(*),RDATX(1200)
1120 COMMON /pk77bb/kdate(8),ldate(8),iprint
1124 equivalence(rdatx,idata)
1126 DATA srfc/
'PMSL WDIR1 WSPD1 TMDB REHU REQV '/
1127 rdatx(1:1200) = rdata(1:1200)
1129 CALL ufbint(lunit,sfc_8,8,1,nlev,srfc);sfc=sfc_8
1134 217
FORMAT(/
' ##W3UNPK77: THE NUMBER OF DECODED "LEVELS" (=',i5,
') ',
1135 $
'IS NOT WHAT IS EXPECTED (1) - NO SFC DATA PROCESSED'/)
1143 IF(iprint.GT.1) print 199, sfc(1),m
1144 199
FORMAT(5x,
'SFC HERE IS: ',f17.4,
'; INDEX IS: ',i3)
1145 IF((sfc(1)*0.1).LT.xmsg) rdatx(43) = nint(sfc(1) * 0.1)
1147 IF(iprint.GT.1) print 198, nnnnn,rdatx(43)
1148 198
FORMAT(5x,
'RDATA(',i5,
') STORED AS: ',f10.2)
1153 IF(iprint.GT.1) print 199, sfc(2),m
1154 IF(sfc(2).LT.xmsg) rdatx(43+2) = nint(sfc(2))
1156 IF(iprint.GT.1) print 198, nnnnn,rdatx(43+2)
1161 IF(iprint.GT.1) print 199, sfc(3),m
1162 IF(sfc(3).LT.xmsg) rdatx(43+3) = nint(sfc(3) * 10.)
1164 IF(iprint.GT.1) print 198, nnnnn,rdatx(43+3)
1169 IF(iprint.GT.1) print 199, sfc(4),m
1170 IF(sfc(4).LT.xmsg) rdatx(43+4) = nint(sfc(4) * 10.)
1172 IF(iprint.GT.1) print 198, nnnnn,rdatx(43+4)
1177 IF(iprint.GT.1) print 199, sfc(5),m
1178 IF(sfc(5).LT.xmsg) rdatx(43+5) = nint(sfc(5))
1180 IF(iprint.GT.1) print 198, nnnnn,rdatx(43+5)
1185 IF(iprint.GT.1) print 199, sfc(6),m
1186 IF(sfc(6).LT.xmsg) rdatx(43+6) = nint(sfc(6) * 1.e7)
1188 IF(iprint.GT.1) print 198, nnnnn,rdatx(43+6)
1195 IF(iprint.GT.1) print *,
'IDATA(35)=',idata(35),
'; IDATA(36)=',
1197 rdata(1:1200) = rdatx(1:1200)
1222 CHARACTER*31 UAIR1,UAIR2
1225 REAL(8) UAIR_8(16,255)
1226 REAL UAIR(16,255),RDATA(*),RDATX(1200)
1227 COMMON /pk77bb/kdate(8),ldate(8),iprint
1231 equivalence(rdatx,idata)
1233 DATA uair1/
'HEIT WDIR WSPD NPQC WCMP ACAVH '/
1234 DATA uair2/
'ACAVV SPP0 SDHS SDVS NPHL '/
1235 DATA uair3/
'HAST ACAV1 ACAV2'/
1236 rdatx(1:1200) = rdata(1:1200)
1241 IF(iprint.GT.1) print 1078, ilc,ilvl
1242 1078
FORMAT(
' ATTEMPTING 1ST (SFC) LVL WITH ILC =',i5,
'; NO. LEVELS ',
1243 $
'PROCESSED TO NOW =',i5)
1244 rdatx(50+ilc) = rdatx(7)
1245 IF(iprint.GT.1) print 198, 50+ilc,rdatx(50+ilc)
1246 198
FORMAT(5x,
'RDATA(',i5,
') STORED AS: ',f10.2)
1247 IF(rdatx(50+ilc).LT.xmsg) nsfc = 1
1248 IF(idata(35).GE.1)
THEN
1249 rdatx(50+ilc+1) = rdatx(idata(36)+2)
1250 rdatx(50+ilc+2) = rdatx(idata(36)+3)
1252 IF(iprint.GT.1) print 198, 50+ilc+1,rdatx(50+ilc+1)
1253 IF(rdatx(50+ilc+1).LT.xmsg) nsfc = 1
1254 IF(iprint.GT.1) print 198, 50+ilc+2,rdatx(50+ilc+2)
1255 IF(rdatx(50+ilc+2).LT.xmsg) nsfc = 1
1258 IF(iprint.GT.1) print *,
'HAVE COMPLETED LEVEL ',ilvl,
' WITH ',
1259 $
'NSFC=',nsfc,
'; GOING INTO NEXT LEVEL WITH ILC=',ilc
1261 CALL ufbint(lunit,uair_8,16,255,nlev,uair1//uair2//uair3)
1269 217
FORMAT(/
' ##W3UNPK77: NO UPPER-AIR DATA PROCESSED FOR THIS',
1270 $
' REPORT -- NLEV = 0 AND NSFC = 0'/)
1275 218
FORMAT(/
' ##W3UNPK77: NO UPPER-AIR DATA ABOVE FIRST (SURFACE) ',
1276 $
'LEVEL PROCESSED FOR THIS REPORT -- NLEV = 0 AND NSFC > 0'/)
1281 IF(iprint.GT.1) print 1068, nlev
1282 1068
FORMAT(
' THIS REPORT CONTAINS ',i3,
' LEVELS OF DATA (NOT ',
1283 $
'INCLUDING BOTTOM -SURFACE- LEVEL)')
1285 IF(iprint.GT.1) print 1079, ilc,ilvl
1286 1079
FORMAT(
' ATTEMPTING NEW LEVEL WITH ILC =',i5,
'; NO. LEVELS ',
1287 $
'PROCESSED TO NOW =',i5)
1298 IF(uair(1,i).LT.xmsg)
THEN
1300 IF(iprint.GT.1) print 199, uair(1,i),m
1301 199
FORMAT(5x,
'UAIR HERE IS: ',f17.4,
'; INDEX IS: ',i3)
1302 rdatx(50+ilc) = nint(uair(1,i))
1305 IF(iprint.GT.1) print 199, uair(12,i),m
1306 IF(uair(12,i).LT.xmsg) rdatx(50+ilc) = nint(uair(12,i))
1308 IF(iprint.GT.1) print 198, 50+ilc,rdatx(50+ilc)
1314 IF(iprint.GT.1) print 199, uair(2,i),m
1315 IF(uair(2,i).LT.xmsg) rdatx(50+ilc+1) = nint(uair(2,i))
1316 IF(iprint.GT.1) print 198, 50+ilc+1,rdatx(50+ilc+1)
1321 IF(iprint.GT.1) print 199, uair(3,i),m
1322 IF(uair(3,i).LT.xmsg) rdatx(50+ilc+2) =nint(uair(3,i) * 10.)
1323 IF(iprint.GT.1) print 198, 50+ilc+2,rdatx(50+ilc+2)
1328 IF(iprint.GT.1) print 199, uair(4,i),m
1329 IF(uair(4,i).LT.xmsg) idata(50+ilc+3) = nint(uair(4,i))
1330 IF(iprint.GT.1) print 197, 50+ilc+3,idata(50+ilc+3)
1331 197
FORMAT(5x,
'IDATA(',i5,
') STORED AS: ',i10)
1336 IF(iprint.GT.1) print 199, uair(5,i),m
1337 IF(uair(5,i).LT.xmsg) rdatx(50+ilc+4) = nint(uair(5,i) * 100.)
1338 IF(iprint.GT.1) print 198, 50+ilc+4,rdatx(50+ilc+4)
1351 IF(iprint.GT.1) print 199, uair(6,i),m
1352 IF(iprint.GT.1) print 199, uair(13,i),m
1353 IF(uair(6,i).LT.xmsg)
THEN
1355 idata(50+ilc+5) = nint(uair(6,i))
1358 IF(uair(13,i).LT.xmsg) idata(50+ilc+5) = nint(uair(13,i))
1360 IF(iprint.GT.1) print 197, 50+ilc+5,idata(50+ilc+5)
1373 IF(iprint.GT.1) print 199, uair(7,i),m
1374 IF(iprint.GT.1) print 199, uair(14,i),m
1375 IF(uair(7,i).LT.xmsg)
THEN
1377 idata(50+ilc+6) = nint(uair(7,i))
1380 IF(uair(14,i).LT.xmsg) idata(50+ilc+6) = nint(uair(14,i))
1382 IF(iprint.GT.1) print 197, 50+ilc+6,idata(50+ilc+6)
1389 IF(iprint.GT.1) print 199, uair(8,i),m
1390 IF(uair(8,i).LT.xmsg) rdatx(50+ilc+7) = nint(uair(8,i))
1391 IF(iprint.GT.1) print 198, 50+ilc+7,rdatx(50+ilc+7)
1396 IF(iprint.GT.1) print 199, uair(9,i),m
1397 IF(uair(9,i).LT.xmsg) rdatx(50+ilc+8)=nint(uair(9,i) * 10.)
1398 IF(iprint.GT.1) print 198, 50+ilc+8,rdatx(50+ilc+8)
1403 IF(iprint.GT.1) print 199, uair(10,i),m
1404 IF(uair(10,i).LT.xmsg) rdatx(50+ilc+9) =nint(uair(10,i) * 10.)
1405 IF(iprint.GT.1) print 198, 50+ilc+9,rdatx(50+ilc+9)
1411 IF(iprint.GT.1) print 199, uair(11,i),m
1412 IF(uair(11,i).LT.xmsg) idata(50+ilc+10) = nint(uair(11,i))
1413 IF(iprint.GT.1) print 197, 50+ilc+10,idata(50+ilc+10)
1416 IF(iprint.GT.1) print *,
'HAVE COMPLETED LEVEL ',ilvl,
1417 $
'; GOING INTO NEXT LEVEL WITH ILC=',ilc
1426 IF(iprint.GT.1) print *,
'NSFC=',nsfc,
'; IDATA(37)=',idata(37),
1427 $
'; IDATA(38)=',idata(38)
1428 rdata(1:1200) = rdatx(1:1200)
1451 CHARACTER*8 STNID,COB
1455 REAL HDR(9),RDATA(*),RDATX(1200)
1456 COMMON /pk77bb/kdate(8),ldate(8),iprint
1460 equivalence(rdatx,idata),(stnid,hdr_8(4)),(cob,iob)
1461 DATA xmsg/99999./,imsg/99999/
1462 DATA hdr1/
'CLAT CLON SELV RPID YEAR MNTH DAYS HOUR MINU '/
1463 rdatx(1:1200) = rdata(1:1200)
1465 CALL ufbint(lunit,hdr_8,9,1,nlev,hdr1);hdr=hdr_8
1471 217
FORMAT(/
' ##W3UNPK77: THE NUMBER OF DECODED "LEVELS" (=',i5,
') ',
1472 $
'IS NOT WHAT IS EXPECTED (1) - IRET = 6'/)
1481 IF(iprint.GT.1) print 199, hdr(1),m
1482 199
FORMAT(5x,
'HDR HERE IS: ',f17.4,
'; INDEX IS: ',i3)
1483 IF(hdr(1).LT.xmsg)
THEN
1484 rdatx(1) = nint(hdr(1) * 100.)
1486 IF(iprint.GT.1) print 198, nnnnn,rdatx(nnnnn)
1487 198
FORMAT(5x,
'RDATA(',i5,
') STORED AS: ',f10.2)
1491 102
FORMAT(
' *** W3UNPK77 ERROR: LAT MISSING FOR VAD WIND REPORT'/)
1498 IF(iprint.GT.1) print 199, hdr(2),m
1499 IF(hdr(2).LT.xmsg)
THEN
1500 rdatx(2) = nint(mod((36000.-(hdr(2)*100.)),36000.))
1502 IF(iprint.GT.1) print 198, nnnnn,rdatx(nnnnn)
1506 104
FORMAT(
' *** W3UNPK77 ERROR: LON MISSING FOR VAD WIND REPORT'/)
1514 IF(iprint.GT.1) print 199, hdr(3),m
1515 IF(hdr(3).LT.xmsg) rdatx(7) = nint(hdr(3))
1517 IF(iprint.GT.1) print 198, nnnnn,rdatx(nnnnn)
1523 IF(iprint.GT.1) print 299, stnid,m
1524 299
FORMAT(5x,
'HDR HERE IS: ',9x,a8,
'; INDEX IS: ',i3)
1525 cob(1:4) =
'99'//stnid(2:3)
1528 IF(iprint.GT.1) print 196, nnnnn,cob(1:4)
1529 196
FORMAT(5x,
'IDATA(',i5,
') STORED IN CHARACTER AS: "',a4,
'"')
1530 cob(1:4) = stnid(4:4)//
' '
1533 IF(iprint.GT.1) print 196, nnnnn,cob(1:4)
1540 IF(iprint.GT.1) print 199, hdr(5),m
1542 IF(hdr(5).LT.xmsg) iyear = nint(hdr(5))
1544 IF(iprint.GT.1) print 199, hdr(6),m
1545 IF(hdr(6).LT.xmsg.AND.iyear.LT.imsg)
THEN
1547 iyear = mod(iyear,100)
1549 iyear = nint(hdr(6)) + (iyear * 100)
1552 WRITE(cob,
'(I4.4,4X)') iyear
1556 IF(iprint.GT.1) print 9196, nnnnn,cob(1:6)
1557 9196
FORMAT(5x,
'IDATA(',i5,
') STORED IN CHARACTER AS: "',a6,
'"')
1566 IF(iprint.GT.1) print 199, hdr(7),m
1568 IF(hdr(7).LT.xmsg) iday = nint(hdr(7))
1570 IF(iprint.GT.1) print 199, hdr(8),m
1571 IF(hdr(8).LT.xmsg.AND.iday.LT.imsg)
THEN
1574 IF(iprint.GT.1) print 199, hdr(9),m
1575 IF(hdr(9).GE.xmsg)
GO TO 30
1577 rdatx(4) = nint((ihrt * 100.) + (rmnt * 100.)/60.)
1579 IF(iprint.GT.1) print 198, nnnnn,rdatx(nnnnn)
1580 ihrt = ihrt + (iday * 100)
1581 WRITE(cob(1:4),
'(I4.4)') ihrt
1584 IF(iprint.GT.1) print 196, nnnnn,cob(1:4)
1588 rdata(1:1200) = rdatx(1:1200)
1615 CHARACTER*1 CRMS(0:12)
1619 REAL(8) UAIR_8(5,255)
1620 REAL UAIR(5,255),RDATA(*),RDATX(1200)
1621 COMMON /pk77bb/kdate(8),ldate(8),iprint
1625 equivalence(rdatx,idata),(cob,iob)
1627 DATA uair1/
'HEIT WDIR WSPD RMSW QMWN '/
1628 DATA crms/
' ',
'A',
' ',
'B',
' ',
'C',
' ',
'D',
' ',
'E',
' ',
'F',
' '/
1629 rdatx(1:1200) = rdata(1:1200)
1634 IF(iprint.GT.1) print 1078, ilc,ilvl
1635 1078
FORMAT(
' ATTEMPTING 1ST (SFC) LVL WITH ILC =',i5,
'; NO. LEVELS ',
1636 $
'PROCESSED TO NOW =',i5)
1637 rdatx(43+ilc) = rdatx(7)
1638 IF(iprint.GT.1) print 198, 43+ilc,rdatx(43+ilc)
1639 198
FORMAT(5x,
'RDATA(',i5,
') STORED AS: ',f10.2)
1640 IF(rdatx(43+ilc).LT.xmsg) nsfc = 1
1648 idata(43+ilc+3) = iob
1651 IF(iprint.GT.1) print *,
'HAVE COMPLETED LEVEL ',ilvl,
' WITH ',
1652 $
'NSFC=',nsfc,
'; GOING INTO NEXT LEVEL WITH ILC=',ilc
1654 CALL ufbint(lunit,uair_8,5,255,nlev,uair1);uair=uair_8
1661 217
FORMAT(/
' ##W3UNPK77: NO UPPER-AIR DATA PROCESSED FOR THIS',
1662 $
' REPORT -- NLEV = 0 AND NSFC = 0'/)
1667 218
FORMAT(/
' ##W3UNPK77: NO UPPER-AIR DATA ABOVE FIRST (SURFACE) ',
1668 $
'LEVEL PROCESSED FOR THIS REPORT -- NLEV = 0 AND NSFC > 0'/)
1673 IF(iprint.GT.1) print 1068, nlev
1674 1068
FORMAT(
' THIS REPORT CONTAINS ',i3,
' LEVELS OF DATA (NOT ',
1675 $
'INCLUDING BOTTOM -SURFACE- LEVEL)')
1677 IF(iprint.GT.1) print 1079, ilc,ilvl
1678 1079
FORMAT(
' ATTEMPTING NEW LEVEL WITH ILC =',i5,
'; NO. LEVELS ',
1679 $
'PROCESSED TO NOW =',i5)
1684 IF(iprint.GT.1) print 199, uair(1,i),m
1685 199
FORMAT(5x,
'UAIR HERE IS: ',f17.4,
'; INDEX IS: ',i3)
1686 IF(uair(1,i).LT.xmsg)
THEN
1687 rdatx(43+ilc) = nint(uair(1,i))
1697 IF(iprint.GT.1) print *,
'HEIGHT MISSING ON INPUT ',
1698 $
' LEVEL ',i,
', ALL OTHER DATA SET TO MSG ON THIS LEVEL'
1701 IF(iprint.GT.1) print 198, 43+ilc,rdatx(43+ilc)
1706 IF(iprint.GT.1) print 199, uair(2,i),m
1707 IF(uair(2,i).LT.xmsg) rdatx(43+ilc+1) = nint(uair(2,i))
1708 IF(iprint.GT.1) print 198, 43+ilc+1,rdatx(43+ilc+1)
1715 IF(iprint.GT.1) print 199, uair(3,i),m
1716 IF(uair(3,i).LT.xmsg) rdatx(43+ilc+2) =nint(uair(3,i) * 10.)
1717 IF(iprint.GT.1) print 198, 43+ilc+2,rdatx(43+ilc+2)
1726 IF(iprint.GT.1) print 199, uair(4,i),m
1727 IF(uair(4,i).LT.xmsg)
THEN
1732 krms = int(1.9425 * uair(4,i))
1735 cob(4:4) = crms(krms)
1739 idata(43+ilc+3) = iob
1741 IF(iprint.GT.1) print 196, 43+ilc+3,cob(1:4)
1742 196
FORMAT(5x,
'IDATA(',i5,
') STORED IN CHARACTER AS: "',a4,
'"')
1747 IF(iprint.GT.1) print 199, uair(5,i),m
1750 IF(iprint.GT.1) print *,
'HAVE COMPLETED LEVEL ',ilvl,
1751 $
'; GOING INTO NEXT LEVEL WITH ILC=',ilc
1761 IF(idata(19).EQ.0)
THEN
1767 IF(iprint.GT.1) print *,
'NSFC=',nsfc,
'; IDATA(37)=',idata(37),
1768 $
'; IDATA(38)=',idata(38)
1769 rdata(1:1200) = rdatx(1:1200)
1794 CHARACTER*1 C6TAG(3,0:3)
1795 CHARACTER*8 STNID,COB
1796 CHARACTER*35 HDR1,HDR2
1799 REAL HDR(12),RDATA(*),RDATX(1200)
1800 COMMON /pk77bb/kdate(8),ldate(8),iprint
1801 COMMON /pk77ff/ifov(3),kntsat(250:260)
1805 equivalence(rdatx,idata),(cob,iob)
1806 DATA xmsg/99999./,imsg/99999/
1807 DATA hdr1/
'CLAT CLON ACAV GSDP QMRK SAID YEAR '/
1808 DATA hdr2/
'MNTH DAYS HOUR MINU SECO '/
1823 DATA c6tag/
'I',
'J',
'?',
'L',
'M',
'?',
'O',
'P',
'?',
'Q',
'R',
'?' /
1825 rdatx(1:1200) = rdata(1:1200)
1827 CALL ufbint(lunit,hdr_8,12,1,nlev,hdr1//hdr2);hdr=hdr_8
1833 217
FORMAT(/
' ##W3UNPK77: THE NUMBER OF DECODED "LEVELS" (=',i5,
') ',
1834 $
'IS NOT WHAT IS EXPECTED (1) - IRET = 6'/)
1843 IF(iprint.GT.1) print 199, hdr(1),m
1844 199
FORMAT(5x,
'HDR HERE IS: ',f17.4,
'; INDEX IS: ',i3)
1845 IF(hdr(1).LT.xmsg)
THEN
1846 rdatx(1) = nint(hdr(1) * 100.)
1848 IF(iprint.GT.1) print 198, nnnnn,rdatx(nnnnn)
1849 198
FORMAT(5x,
'RDATA(',i5,
') STORED AS: ',f10.2)
1853 102
FORMAT(
' *** W3UNPK77 ERROR: LAT MISSING FOR GOES SOUNDING'/)
1860 IF(iprint.GT.1) print 199, hdr(2),m
1861 IF(hdr(2).LT.xmsg)
THEN
1862 rdatx(2) = nint(mod((36000.-(hdr(2)*100.)),36000.))
1864 IF(iprint.GT.1) print 198, nnnnn,rdatx(nnnnn)
1868 104
FORMAT(
' *** W3UNPK77 ERROR: LON MISSING FOR GOES SOUNDING'/)
1875 IF(iprint.GT.1) print 199, hdr(3),m
1876 IF(hdr(3).LT.xmsg) idata(3) = nint(hdr(3))
1878 IF(iprint.GT.1) print 197, nnnnn,idata(nnnnn)
1879 197
FORMAT(5x,
'IDATA(',i5,
') STORED AS: ',i10)
1889 IF(iprint.GT.1) print 199, hdr(4),m
1890 IF(hdr(4).LT.xmsg) idata(8) = nint(hdr(4))
1892 IF(idata(8).EQ.21)
THEN
1894 ELSE IF(idata(8).EQ.23)
THEN
1898 IF(iprint.GT.1) print 197, nnnnn,idata(nnnnn)
1903 IF(iprint.GT.1) print 199, hdr(5),m
1904 IF(hdr(5).LT.xmsg) idata(10) = nint(hdr(5))
1906 IF(iprint.GT.1) print 197, nnnnn,idata(nnnnn)
1912 WRITE(stnid(1:5),
'(I5.5)') min(kount,99999)
1918 IF(iprint.GT.1) print 199, hdr(6),m
1919 IF(hdr(6).LT.xmsg)
THEN
1920 idsat = mod(nint(hdr(6)),4)
1921 IF(nint(hdr(6)).GT.249.AND.nint(hdr(6)).LT.260)
THEN
1922 kntsat(nint(hdr(6))) = kntsat(nint(hdr(6))) + 1
1924 kntsat(260) = kntsat(260) + 1
1927 IF(iprint.GT.1) print 2197, idsat,irtyp
1928 2197
FORMAT(5x,
'IDSAT IS: ',i10,
', IRTYP IS: ',i10)
1929 stnid(6:6) = c6tag(irtyp,idsat)
1930 cob(1:4) = stnid(1:4)
1933 IF(iprint.GT.1) print 196, nnnnn,cob(1:4)
1934 196
FORMAT(5x,
'IDATA(',i5,
') STORED IN CHARACTER AS: "',a4,
'"')
1935 cob(1:4) = stnid(5:6)//
' '
1938 IF(iprint.GT.1) print 196, nnnnn,cob(1:4)
1945 IF(iprint.GT.1) print 199, hdr(7),m
1947 IF(hdr(7).LT.xmsg) iyear = nint(hdr(7))
1949 IF(iprint.GT.1) print 199, hdr(8),m
1950 IF(hdr(8).LT.xmsg.AND.iyear.LT.imsg)
THEN
1952 iyear = mod(iyear,100)
1954 iyear = nint(hdr(8)) + (iyear * 100)
1957 WRITE(cob,
'(I4.4,4X)') iyear
1961 IF(iprint.GT.1) print 9196, nnnnn,cob(1:6)
1962 9196
FORMAT(5x,
'IDATA(',i5,
') STORED IN CHARACTER AS: "',a6,
'"')
1971 IF(iprint.GT.1) print 199, hdr(9),m
1973 IF(iprint.GT.1) print 199, hdr(10),m
1974 IF(hdr(10).LT.xmsg.AND.hdr(9).LT.imsg)
THEN
1976 IF(iprint.GT.1) print 199, hdr(11),m
1977 IF(hdr(11).GE.xmsg)
GO TO 30
1979 IF(iprint.GT.1) print 199, hdr(12),m
1980 IF(hdr(12).GE.xmsg)
GO TO 30
1981 rdatx(4) = nint(((hdr(10) + ((hdr(11) * 60.) + hdr(12))/3600.)
1982 $ * 100.) + 0.0000000001)
1984 IF(iprint.GT.1) print 198, nnnnn,rdatx(nnnnn)
1985 idayhr = nint(hdr(10)) + (nint(hdr(9)) * 100)
1986 WRITE(cob(1:4),
'(I4.4)') idayhr
1989 IF(iprint.GT.1) print 196, nnnnn,cob(1:4)
1993 rdata(1:1200) = rdatx(1:1200)
2023 CHARACTER*37 CAT8A,CAT8B
2024 CHARACTER*48 UAIR1,RAD1
2025 INTEGER IDATA(1200),ICDFG(12)
2026 REAL(8) UAIR_8(4,255),CAT8_8(12),RTCSF_8,RAD_8(2,255)
2027 REAL UAIR(4,255),CAT8(12),RDATA(*),RDATX(1200),SC8(12),RAD(2,255)
2028 COMMON /pk77bb/kdate(8),ldate(8),iprint
2029 COMMON /pk77ff/ifov(3),kntsat(250:260)
2033 equivalence(rdatx,idata),(cob,iob)
2034 DATA xmsg/99999./,ymsg/99999.8/
2035 DATA uair1/
'PRLC HGHT TMDB TMDP '/
2036 DATA rad1 /
'CHNM TMBR '/
2037 DATA cat8a/
'GLFTI PH2O PH2O19 PH2O97 PH2O73 TMSK '/
2038 DATA cat8b/
'GCDTT CDTP CLAM SIDU SOEL ELEV '/
2039 DATA icdfg/ 50 , 51 , 52 , 53 , 54 , 55 , 56 ,57 ,58,59, 60 , 61 /
2040 DATA sc8/100.,100.,100.,100.,100.,100.,100.,10.,1.,1.,100.,100./
2041 rdatx(1:1200) = rdata(1:1200)
2048 IF(idata(3).LT.3)
THEN
2050 ifov(1) = ifov(1) + 1
2051 ELSE IF(idata(3).LT.10.OR.idata(10).EQ.1)
THEN
2053 IF(idata(3).LT.10) ifov(2) = ifov(2) + 1
2055 IF(idata(3).GT.9) ifov(3) = ifov(3) + 1
2064 CALL ufbint(lunit,uair_8,4,255,nlev,uair1);uair=uair_8
2069 217
FORMAT(/
' ##W3UNPK77: NO UPPER-AIR (SOUNDING) DATA PROCESSED ',
2070 $
'FOR THIS REPORT -- NLEV = 0'/)
2072 ELSE IF(nlev.GT.50)
THEN
2076 218
FORMAT(/
' ##W3UNPK77: NO UPPER-AIR (SOUNDING) DATA PROCESSED ',
2077 $
'FOR THIS REPORT -- NLEV > 50'/)
2081 IF(iprint.GT.1) print 1068, nlev
2082 1068
FORMAT(
' THIS REPORT CONTAINS',i4,
' INPUT LEVELS OF SOUNDING ',
2085 IF(iprint.GT.1) print 1079, i,ilc,ilvl
2086 1079
FORMAT(
' ATTEMPTING NEW CAT. 12 INPUT LEVEL NUMBER',i4,
' WITH ',
2087 $
'ILC =',i5,
'; NO. LEVELS PROCESSED TO NOW =',i5)
2092 IF(iprint.GT.1) print 199, uair(1,i),m
2093 199
FORMAT(5x,
'UAIR HERE IS: ',f17.4,
'; INDEX IS: ',i3)
2095 psfc = uair(1,i) * 0.1
2096 ELSE IF(uair(1,i)*0.1.GE.ymsg)
THEN
2099 IF(iprint.GT.1) print *,
'PRESSURE MISSING ON INPUT',
2100 $
' LEVEL ',i,
', SKIP THE PROCESSING OF THIS LEVEL'
2102 ELSE IF(uair(1,i)*0.1.GE.psfc)
THEN
2105 IF(iprint.GT.1) print *,
'PRESSURE ON INPUT LEVEL ',i,
2106 $
' IS BELOW GROUND, SKIP THE PROCESSING OF THIS LEVEL'
2112 IF(uair(1,i)*0.1.LT.xmsg) rdatx(43+ilc) = nint(uair(1,i)*0.1)
2114 IF(iprint.GT.1) print 198, 43+ilc,rdatx(43+ilc)
2115 198
FORMAT(5x,
'RDATA(',i5,
') STORED AS: ',f10.2)
2120 IF(iprint.GT.1) print 199, uair(2,i),m
2121 IF(uair(2,i).LT.xmsg) rdatx(43+ilc+1) = nint(uair(2,i))
2122 IF(iprint.GT.1) print 198, 43+ilc+1,rdatx(43+ilc+1)
2124 IF(iprint.GT.1) print *,
'THIS IS SURFACE LEVEL, SO ',
2125 $
'STORE HEIGHT ALSO AS ELEVATION IN HEADER'
2126 IF(uair(2,1).LT.xmsg) rdatx(7) = nint(uair(2,1))
2128 IF(iprint.GT.1) print 198, nnnnn,rdatx(nnnnn)
2134 IF(iprint.GT.1) print 199, uair(3,i),m
2135 itmp = nint(uair(3,i)*100.)
2136 IF(uair(3,i).LT.xmsg)
2137 $ rdatx(43+ilc+2) = nint((itmp - 27315) * 0.1)
2138 IF(iprint.GT.1) print 198, 43+ilc+2,rdatx(43+ilc+2)
2143 IF(iprint.GT.1) print 199, uair(4,i),m
2144 itmp = nint(uair(4,i)*100.)
2145 IF(uair(4,i).LT.xmsg)
2146 $ rdatx(43+ilc+3) = nint((itmp - 27315) * 0.1)
2147 IF(iprint.GT.1) print 198, 43+ilc+3,rdatx(43+ilc+3)
2151 cob = cqmflg//cqmflg//cqmflg//
' '
2152 idata(43+ilc+6) = iob
2153 IF(iprint.GT.1) print 196, 43+ilc+6,cob(1:4)
2154 196
FORMAT(5x,
'IDATA(',i5,
') STORED IN CHARACTER AS: "',a4,
'"')
2157 IF(i+1.LE.nlev.AND.iprint.GT.1) print *,
'HAVE COMPLETED ',
2158 $
'LEVEL ',ilvl,
'; GOING INTO NEXT LEVEL WITH ILC=',ilc
2167 IF(iprint.GT.1) print *, idata(39),
' CAT. 12 LEVELS PROCESSED'
2168 IF(idata(39).GT.0) idata(40) = 43
2193 CALL ufbint(lunit,cat8_8,12,1,nlev8,cat8a//cat8b);cat8=cat8_8
2199 318
FORMAT(/
' ##W3UNPK77: NO ADDITIONAL (CAT. 8) DATA PROCESSED FOR ',
2200 $
'THIS REPORT -- NLEV8 = 0'/)
2208 219
FORMAT(/
' ##W3UNPK77: THE NUMBER OF DECODED "LEVELS" (=',i5,
') ',
2209 $
'IS NOT WHAT IS EXPECTED (1) - IRET = 7'/)
2220 CALL ufbint(lunit,rtcsf_8,1,1,nlev0,
'TCSF');rtcsf=rtcsf_8
2223 IF(iprint.GT.1) print 299, rtcsf,m
2224 299
FORMAT(5x,
'RTCSF HERE IS: ',f17.4,
'; INDEX IS: ',i3)
2225 IF(rtcsf.LT.xmsg) itcsf = nint(rtcsf)
2226 IF(iprint.GT.1) print 1798, itcsf
2227 1798
FORMAT(5x,
'ITCSF IS: ',i10)
2232 IF(iprint.GT.1) print 6079, m,ilc,ilvl
2233 6079
FORMAT(
' ATTEMPTING MISCEL. INPUT',i5,
' WITH ILC =',i5,
'; NO. ',
2234 $
'OUTPUT CAT. 8 LVLS PROCESSED TO NOW =',i5)
2235 IF(iprint.GT.1) print 399, cat8(m),m
2236 399
FORMAT(5x,
'CAT8 HERE IS: ',f17.4,
'; INDEX IS: ',i3)
2237 IF(cat8(m).LT.xmsg)
THEN
2245 rdatx(393+ilc) = nint(cat8(m) * sc8(m))
2246 IF(iprint.GT.1) print 198, 393+ilc,rdatx(393+ilc)
2250 rdatx(393+ilc+1) = real(200+icdfg(m))
2251 IF(iprint.GT.1) print 198, 393+ilc+1,rdatx(393+ilc+1)
2260 IF(m.EQ.6.AND.itcsf.NE.0) cob(1:1) =
'F'
2261 idata(393+ilc+2) = iob
2262 IF(iprint.GT.1) print 196, 393+ilc+2,cob(1:4)
2264 IF(m.LT.12.AND.iprint.GT.1) print *,
'HAVE COMPLETED OUTPUT',
2265 $
' LVL',ilvl,
'; GOING INTO NEXT INPUT DATUM WITH ILC=',ilc
2267 IF(iprint.GT.1) print *,
'DATUM MISSING ON INPUT ',m,
2268 $
', GO ON TO NEXT INPUT DATUM (NO. LVLS PROCESSED SO ',
2269 $
'FAR=',ilvl,
'; ILC=',ilc,
')'
2277 IF(iprint.GT.1) print *, idata(27),
' CAT. 08 LEVELS PROCESSED'
2278 IF(idata(27).GT.0) idata(28) = 393
2287 CALL ufbint(lunit,rad_8,2,255,nlev13,rad1);rad=rad_8
2288 IF(nlev13.EQ.0)
THEN
2292 417
FORMAT(/
' ##W3UNPK77: NO RADIANCE DATA PROCESSED FOR THIS ',
2293 $
'REPORT -- NLEV13 = 0'/)
2295 ELSE IF(nlev13.GT.60)
THEN
2299 418
FORMAT(/
' ##W3UNPK77: NO RADIANCE DATA PROCESSED FOR THIS ',
2300 $
'REPORT -- NLEV13 > 60'/)
2304 IF(iprint.GT.1) print 2068, nlev13
2305 2068
FORMAT(
' THIS REPORT CONTAINS',i4,
' INPUT LEVELS (CHANNELS) OF ',
2308 IF(iprint.GT.1) print 2079, i,ilc,ilvl
2309 2079
FORMAT(
' ATTEMPTING NEW CAT. 13 INPUT "LEVEL" NUMBER',i4,
' WITH ',
2310 $
'ILC =',i5,
'; NO. LEVELS (CHANNELS) PROCESSED TO NOW =',i5)
2315 IF(iprint.GT.1) print 499, rad(1,i),m
2316 499
FORMAT(5x,
'RAD HERE IS: ',f17.4,
'; INDEX IS: ',i3)
2317 IF(rad(1,i).GE.ymsg)
THEN
2320 IF(iprint.GT.1) print *,
'CHANNEL NUMBER MISSING ON INPUT',
2321 $
' LEVEL ',i,
', SKIP THE PROCESSING OF THIS LEVEL'
2327 idata(429+ilc) = nint(rad(1,i))
2329 IF(iprint.GT.1) print 197, 429+ilc,idata(429+ilc)
2330 197
FORMAT(5x,
'IDATA(',i5,
') STORED AS: ',i10)
2335 IF(iprint.GT.1) print 499, rad(2,i),m
2336 IF(rad(2,i).LT.xmsg) rdatx(429+ilc+1) = nint(rad(2,i) * 100.)
2337 IF(iprint.GT.1) print 198, 429+ilc+1,rdatx(429+ilc+1)
2342 idata(429+ilc+2) = iob
2343 IF(iprint.GT.1) print 196, 429+ilc+2,cob(1:4)
2346 IF(i+1.LE.nlev13.AND.iprint.GT.1) print *,
'HAVE COMPLETED ',
2347 $
'LEVEL ',ilvl,
'; GOING INTO NEXT LEVEL WITH ILC=',ilc
2356 IF(iprint.GT.1) print *, idata(41),
' CAT. 13 LEVELS PROCESSED'
2357 IF(idata(41).GT.0) idata(42) = 429
2359 IF(idata(27)+idata(39)+idata(41).EQ.0) iret = 5
2361 IF(iprint.GT.1) print *,
'IDATA(39)=',idata(39),
'; IDATA(40)=',
2362 $ idata(40),
'; IDATA(27)=',idata(27),
'; IDATA(28)=',idata(28),
2363 $
'; IDATA(41)=',idata(41),
'; IDATA(42)=',idata(42)
2365 rdata(1:1200) = rdatx(1:1200)