Page 1 Source Listing BUFR_TRANAVHRR 2012-12-13 18:36 tranavhrr.f90 1 !$$$ MAIN PROGRAM DOCUMENTATION BLOCK 2 ! 3 ! MAIN PROGRAM: BUFR_TRANAVHRR 4 ! PRGMMR: KEYSER ORG: NP22 DATE: 2012-11-13 5 ! 6 ! ABSTRACT: Reads in raw AVHRR GAC 1B data file, Reformats and packs into 7 ! BUFR files. Two output BUFR files are possible, one containing clear and 8 ! oceanic data and one containing everything else (i.e., cloudy or overland 9 ! data). 10 ! 11 ! PROGRAM HISTORY LOG: 12 ! 2003-01-29 Xu Li Original author 13 ! 2004-10-01 Xu Li Update the 3rd infra-red calibration scale fator (6 -> 7) 14 ! with KLM to N. Add one cloud test based on SST 15 ! climatology. Save data records into land & detected 16 ! cloudy and others seperately into two bufr files. Assign 17 ! time to each data record (to scan line only before). 18 ! Increase the time precision upto 0.01 miliseconds. Add 19 ! sat id for NOAA-18 processing. Use operational 20 ! calibration for visible channels (rather than pre-launch 21 ! as before). Change Satellite ID: 16 => 207; 17 => 208; 18 22 ! => 209. Some re-organization of the code 23 ! 2006-01-20, Xu Li Remove the read of SST climatology (tranavhrr.f90). 24 ! Remove cloud detection with SST climatology (avhrr.f90). 25 ! Add the decode of CLAVR cloud flag and save data records 26 ! with flag 0 & 1 (as clear) and 2 & 3 seperately (as 27 ! cloudy) (avhrr.f90). Add one parameter (CLAVR) in 28 ! BUFR table for CLAVR cloud flags. Use new precision for 29 ! SECO and CLATH/CLONH. 30 ! 2006-10-19 Keyser Modified to integrate into general format for codes which 31 ! process data into BUFR under satellite ingest scripts. 32 ! Improved docblocks and comments. 33 ! 2009-07-31 Keyser Modified to handle METOP-2 and NOAA-19 satellites. 34 ! 2012-11-13 Keyser Changes to run on WCOSS. Modified to handle METOP-1 35 ! satellite. Do not encode BUFR dx table messages into top 36 ! of output file(s). 37 ! 38 ! USAGE: 39 ! INPUT FILES: 40 ! UNIT 05 - Standard input. W3TRNARG parses arguments from standard input 41 ! UNIT 11 - NESDIS binary AVHRR GAC file containing 1B radiance data 42 ! UNIT 20 - BUFR table file containing BUFR tables A, B, and D 43 ! UNIT 37 - Land-sea mask on 1/16'th degree grid 44 ! UNIT 38 - Sea-surface temperature climatology on 0.5 degree grid 45 ! 46 ! OUTPUT FILES: 47 ! UNIT 06 - Standard output print 48 ! UNIT 51 - Output BUFR file containing clear and oceanic AVHRR GAC 1B 49 ! radiances (TRANJB will place the BUFR messages into the proper 50 ! tanks) 51 ! UNIT 52 - Output BUFR file containing cloudy or overland AVHRR GAC 1B 52 ! radiances (TRANJB will place the BUFR messages into the proper 53 ! tanks) 54 ! 55 ! SUBPROGRAMS CALLED: 56 ! UNIQUE: - GAC_1B_PROC (module) AVHRR BUFR1B GAC_LBC AVH_ICON 57 ! LAG DATTIM Page 2 Source Listing BUFR_TRANAVHRR 2012-12-13 18:36 tranavhrr.f90 58 ! 59 ! LIBRARY: 60 ! W3NCO - W3TAGB W3TRNARG W3TAGE ERREXIT W3MOVDAT W3FS26 61 ! BUFRLIB - DATELEN OPENBF MAXOUT CLOSMG OPENMB UFBINT 62 ! UFBREP WRITCP 63 ! 64 ! EXIT STATES: 65 ! COND = 0 - Successful run 66 ! = 1 - Unable to parse input arguments in W3TRNARG 67 ! = 2 - Error opening raw 1B AVHRR file 68 ! = 3 - Invalid satellite id read in 69 ! = 4 - Input data file does not contain AVHRR/GAC data 70 ! 71 ! ATTRIBUTES: 72 ! LANGUAGE: FORTRAN 90 (free format) 73 ! MACHINE: NCEP WCOSS 74 ! 75 !$$$ 76 77 78 PROGRAM BUFR_TRANAVHRR 79 80 ! Module gac_1b_proc contains include files to set up parameters and to 81 ! define raw AVHRR GAC 1B file header and data record 82 ! --------------------------------------------------------------------- 83 84 use gac_1b_proc 85 86 implicit none 87 88 !----------------------------------------------------------------------- 89 call w3tagb('BUFR_TRANAVHRR',2012,0318,0063,'NP22') 90 print *, ' ' 91 print *, ' WELCOME TO BUFR_TRANAVHRR - VERSION 11-13-2012' 92 print *, ' ' 93 94 call datelen(10) 95 96 call w3trnarg(subdir,lsubdr,tankid,ltnkid,appchr,lapchr,tlflag,jdate, & 97 kdate,ierr) 98 !....................................................................... 99 if(ierr.ne.0) then 100 write(6,& 101 '('' UNABLE TO PARSE ARGS TO TRANSLATION ROUTINE - RETURN CODE = '',i5)') ierr 102 call w3tage('BUFR_TRANAVHRR') 103 call errexit(ierr) 104 endif 105 !....................................................................... 106 subset = 'NC'//subdir(lsubdr-2:lsubdr)//tankid(ltnkid-2:ltnkid) 107 !!!!! call openbf (wbf_sea_a_lcr,'OUT',lundx) ! Open new BUFR file for writing 108 call openbf (wbf_sea_a_lcr,'NODX',lundx)! Open new BUFR file for writing 109 ! clear and oceanic reports 110 111 call w3trnarg(subdirp,lsubdrp,tankidp,ltnkidp,appchrp,lapchrp,tlflagp,& 112 jdate,kdate,ierr) 113 !....................................................................... 114 if(ierr.ne.0) then Page 3 Source Listing BUFR_TRANAVHRR 2012-12-13 18:36 tranavhrr.f90 115 write(6,& 116 '('' UNABLE TO PARSE ARGS TO TRANSLATION ROUTINE - RETURN CODE = '',i5)') ierr 117 call w3tage('BUFR_TRANAVHRR') 118 call errexit(ierr) 119 endif 120 !....................................................................... 121 subsetp = 'NC'//subdirp(lsubdrp-2:lsubdrp)//tankidp(ltnkidp-2:ltnkidp) 122 !!!!! call openbf (wbf_lnd_o_cld,'OUT',lundx) ! Open new BUFR file for writing 123 call openbf (wbf_lnd_o_cld,'NODX',lundx)! Open new BUFR file for writing 124 ! cloudy or overland reports 125 126 ! Read Land Sea Mask data (1/16 degree) 127 ! ------------------------------------- 128 129 open(unit=37,form="formatted",status="old") 130 read(37,'(5761I1)') lst 131 132 call maxout(20000) ! Set BUFR message length to 20K 133 ! (default is 10K) 134 135 ! Open raw 1B AVHRR GAC data file 136 ! ------------------------------- 137 138 open(lu1b,recl=reclavh/rfac,access='direct',IOSTAT=ios,status='old') 139 140 if(ios.ne.0) then 141 print *,'*****ERROR opening raw 1b AVHRR GAC file',ios 142 print *,'*****STOP 2' 143 call w3tage('BUFR_TRANAVHRR') 144 call errexit(2) 145 endif 146 147 write(stdout,*)' Begin decoding AVHRR GAC 1B data' 148 149 ! Write header record to standard output 150 ! -------------------------------------- 151 152 write(stdout,*)' ' 153 write(stdout,*)'Header information below' 154 write(stdout,*)'nreal,mch = ',nreal,mch 155 write(stdout,*)'ntot = ',ntot 156 157 ! Read GAC data header and check primary modes 158 ! -------------------------------------------- 159 160 nri = 1 ! Counting the all record number 161 !!!!! read(lu1b,rec=nri,err=1900) avh_hd ! (does not work right on WCOSS) 162 read(lu1b,rec=nri,err=1900) & 163 avh_h_siteid , avh_h_blank , avh_h_l1bversnb , & 164 avh_h_l1bversyr , avh_h_l1bversdy , avh_h_reclg , & 165 avh_h_blksz , avh_h_hdrcnt , avh_h_filler0 , & 166 avh_h_dataname , avh_h_prblkid , avh_h_satid , & 167 avh_h_instid , avh_h_datatyp , avh_h_tipsrc , & 168 avh_h_startdatajd , avh_h_startdatayr , & 169 avh_h_startdatady , avh_h_startdatatime , & 170 avh_h_enddatajd , avh_h_enddatayr , avh_h_enddatady , & 171 avh_h_enddatatime , avh_h_cpidsyr , avh_h_cpidsdy , & Page 4 Source Listing BUFR_TRANAVHRR 2012-12-13 18:36 tranavhrr.f90 172 avh_h_filler1 , avh_h_inststat1 , avh_h_filler2 , & 173 avh_h_statchrecnb , avh_h_inststat2 , avh_h_scnlin , & 174 avh_h_callocscnlin , avh_h_misscnlin , avh_h_datagaps , & 175 avh_h_okdatafr , avh_h_pacsparityerr , & 176 avh_h_auxsyncerrsum , avh_h_timeseqerr , & 177 avh_h_timeseqerrcode , avh_h_socclockupind , & 178 avh_h_locerrind , avh_h_locerrcode , & 179 avh_h_pacsstatfield , avh_h_pacsdatasrc , & 180 avh_h_filler3 , avh_h_spare1 , avh_h_spare2 , & 181 avh_h_filler4 , avh_h_racalind , avh_h_solarcalyr , & 182 avh_h_solarcaldy , avh_h_pcalalgind, avh_h_pcalalgopt , & 183 avh_h_scalalgind , avh_h_scalalgopt , avh_h_irttcoef , & 184 avh_h_filler5 , avh_h_albcnv , avh_h_radtempcnv , & 185 avh_h_filler6 , avh_h_modelid , avh_h_nadloctol , & 186 avh_h_locbit, avh_h_filler7 , avh_h_rollerr , & 187 avh_h_pitcherr , avh_h_yawerr , avh_h_epoyr , & 188 avh_h_epody , avh_h_epotime , avh_h_smaxis , & 189 avh_h_eccen , avh_h_incli , avh_h_argper , & 190 avh_h_rascnod , avh_h_manom , avh_h_xpos , avh_h_ypos , & 191 avh_h_zpos , avh_h_xvel , avh_h_yvel , avh_h_zvel , & 192 avh_h_earthsun , avh_h_filler8 , avh_h_pchtemp , & 193 avh_h_reserved1 , avh_h_pchtempext , avh_h_reserved2 , & 194 avh_h_pchpow , avh_h_reserved3 , avh_h_rdtemp , & 195 avh_h_reserved4 , avh_h_bbtemp1 , avh_h_reserved5 , & 196 avh_h_bbtemp2 , avh_h_reserved6 , avh_h_bbtemp3 , & 197 avh_h_reserved7 , avh_h_bbtemp4 , avh_h_reserved8 , & 198 avh_h_eleccur , avh_h_reserved9 , avh_h_motorcur , & 199 avh_h_reserved10 , avh_h_earthpos , avh_h_reserved11 , & 200 avh_h_electemp , avh_h_reserved12 , avh_h_chtemp , & 201 avh_h_reserved13 , avh_h_bptemp , avh_h_reserved14 , & 202 avh_h_mhtemp , avh_h_reserved15 , avh_h_adcontemp , & 203 avh_h_reserved16 , avh_h_d4bvolt , avh_h_reserved17 , & 204 avh_h_d5bvolt , avh_h_reserved18 , avh_h_bbtempchn3B , & 205 avh_h_reserved19 , avh_h_bbtempchn4 , & 206 avh_h_reserved20 , avh_h_bbtempchn5 , & 207 avh_h_reserved21 , avh_h_refvolt , avh_h_reserved22 , & 208 avh_h_filler9 209 210 211 ! See if valid satellite, if so convert to BUFR code figure value 212 ! --------------------------------------------------------------- 213 214 jsat = avh_h_satid ! NOAA spacecraft id code 215 if (jsat.eq.2) then ! NOAA-16 (L) 216 jsat0 = jsat 217 jsat = 207 218 write(stdout,*) '***WARNING: reset satellite id from ', jsat0,& 219 ' to ',jsat 220 elseif (jsat.eq.6) then ! NOAA-17 (M) 221 jsat0 = jsat 222 jsat = 208 223 write(stdout,*) '***WARNING: reset satellite id from ', jsat0,& 224 ' to ',jsat 225 elseif (jsat.eq.7) then ! NOAA-18 (N) 226 jsat0 = jsat 227 jsat = 209 228 write(stdout,*) '***WARNING: reset satellite id from ', jsat0,& Page 5 Source Listing BUFR_TRANAVHRR 2012-12-13 18:36 tranavhrr.f90 229 ' to ',jsat 230 elseif (jsat.eq.8) then ! NOAA-19 (P) 231 jsat0 = jsat 232 jsat = 223 233 write(stdout,*) '***WARNING: reset satellite id from ', jsat0,& 234 ' to ',jsat 235 elseif (jsat.eq.12) then ! METOP-2 (M2) 236 jsat0 = jsat 237 jsat = 4 238 write(stdout,*) '***WARNING: reset satellite id from ', jsat0,& 239 ' to ',jsat 240 elseif (jsat.eq.11) then ! METOP-1 (M1) 241 jsat0 = jsat 242 jsat = 3 243 write(stdout,*) '***WARNING: reset satellite id from ', jsat0,& 244 ' to ',jsat 245 else 246 print *,'*****INVALID satellite id read in ',jsat 247 print *,'*****STOP 3' 248 call w3tage('BUFR_TRANAVHRR') 249 call errexit(3) 250 endif 251 252 write(csat,'(I2)') jsat 253 254 ! If data type is not that for AVHRR GAC, exit program 255 ! ---------------------------------------------------- 256 257 jtype = avh_h_datatyp ! data type (2 = AVHRR GAC ) 258 259 if (jtype.ne.2) then 260 print *,'*****ERROR: Input data file does not contain AVHRR/GAC ',& 261 'data (type=2) - data type = ',jtype 262 print *,'*****STOP 4' 263 call w3tage('BUFR_TRANAVHRR') 264 call errexit(4) 265 endif 266 267 write(stdout,*) 'Data and satellite type = ',jtype,jsat 268 269 ! Extract number of data records in data set 270 ! ------------------------------------------ 271 272 nrecs = avh_h_scnlin ! no. of data records in data set 273 nscan = avh_h_callocscnlin ! count of calibrated, earth 274 ! located scans 275 276 ! =================================== 277 ! Main loop over number of scan lines 278 ! =================================== 279 280 nlo = 0 ! Initialize no. of scan lines (0) 281 282 1200 continue 283 284 nri = nri + 1 ! Increment all record counter 285 Page 6 Source Listing BUFR_TRANAVHRR 2012-12-13 18:36 tranavhrr.f90 286 ! Read in data record 287 !!!!!!!! read(lu1b,rec=nri,err=1600) avh_dt ! (does not work right on WCOSS) 288 read(lu1b,rec=nri,err=1600) & 289 avh_scnlin , avh_scnlinyr , avh_scnlindy , & 290 avh_clockdrift , avh_scnlintime , avh_scnlinbit , & 291 avh_filler0 , avh_qualind , avh_scnlinqual , & 292 avh_calqual , avh_cbiterr , avh_filler1 , avh_calvis , & 293 avh_calir , avh_filler2 , avh_navstat , & 294 avh_attangtime , avh_rollang , avh_pitchang , & 295 avh_yawang , avh_scalti , avh_ang , avh_filler3 , & 296 avh_pos , avh_filler4 , avh_telem , avh_filler5 , & 297 avh_hrpt , avh_filler6 , avh_bitflag1, & 298 avh_dbdata,avh_filler7, avh_bitflag2,avh_instemp, & 299 avh_filler8, clv_bit, clv_rev, ccmc, avh_filler9 300 301 302 nrec = nrec + 1 ! Increment good record counter 303 nlo = nlo + 1 ! Increment scan line counter 304 line = nlo ! Number of scan line 305 306 ! Decode and then write the scan lines of record into BUFR file 307 ! ------------------------------------------------------------- 308 309 call avhrr(subset,subsetp) 310 ! 311 ! Goto top of loop to read next scan line 312 ! 313 if( nri < maxread ) go to 1200 314 315 go to 200 316 317 100 continue 318 319 print*,'END OF FILE REACHED FOR UNIT ',lu1b 320 ! print*,'IOSTAT=',ierr_r 321 print*,' nri = ',nri 322 print*,' nlo = ',nlo 323 324 200 continue 325 326 ! Done reading from 1b files. Close unit. 327 1600 continue 328 write(stdout,*)' ' 329 write(stdout,*)'Done reading raw 1b file' 330 write(stdout,*)' ' 331 write(stdout,*)'avhrr (GAC) ingest stats' 332 write(stdout,*)' no. scan lines = ',nlo,nrecs,nscan 333 write(stdout,*)' no. records written= ',nrec 334 ! 335 write(stdout,*)' ' 336 write(stdout,*)'bad radiance/temperature counts per channel' 337 write(stdout,1020) 338 1020 format(t1,'channel',t10,'num_good',t20,'num_bad ') 339 do j = 1,mch+1 340 write(stdout,1030) chn_name(j),good_lines(j),bad_lines(j) 341 1030 format(t1,a5,t10,I8,t18,I6) 342 end do Page 7 Source Listing BUFR_TRANAVHRR 2012-12-13 18:36 tranavhrr.f90 343 goto 2000 344 ! 345 ! 346 ! Error reading 1b file. 347 1900 write(stdout,*)' *** error reading hdr record of rawavhrr file ' 348 close(lu1b) 349 350 ! call w3tage('BUFR_TRANAVHRR') 351 call errexit(3) 352 ! 353 ! 354 ! 355 ! End of GAC 1b ingest. Close units. 356 2000 continue 357 358 close(lu1b) 359 write(stdout,*)' avhrr 1b decode completed' 360 write(stdout,*)' ' 361 362 call closbf(wbf_sea_a_lcr) 363 call closbf(wbf_lnd_o_cld) 364 365 !DAK 366 print *, 'A total of ',ilimb,' spots were skipped due to their being ',& 367 'on the limb of scans' 368 !DAK 369 370 ! 371 if(nrec.eq.0) then 372 write(stdout,1003) 373 1003 format(/' NO RECORDS WRITTEN -- DISABLING ALL SUBSEQUENT ', & 374 'PROCESSING.'/) 375 call w3tage('BUFR_TRANAVHRR') 376 call errexit(253) 377 endiF 378 379 call w3tage('BUFR_TRANAVHRR') 380 381 stop 382 383 end program BUFR_TRANAVHRR Page 8 Source Listing BUFR_TRANAVHRR 2012-12-13 18:36 Entry Points tranavhrr.f90 ENTRY POINTS Name MAIN__ SYMBOL CROSS REFERENCE Name Object Declared Type Bytes Dimen Elements Attributes References 100 Label 317 1003 Label 373 372 1020 Label 338 337 1030 Label 341 340 1200 Label 282 313 1600 Label 327 288 1900 Label 347 162 200 Label 324 315 2000 Label 356 343 APPCHR Local 96 CHAR 80 scalar 96 APPCHRP Local 111 CHAR 80 scalar 111 AVHRR Subr 309 309 AVH_ANG Scalar 295 I(2) 2 2 153 COM 295 AVH_ATTANGTIME Scalar 294 I(4) 4 scalar COM 294 AVH_BITFLAG1 Scalar 297 I(2) 2 scalar COM 297 AVH_BITFLAG2 Scalar 298 I(4) 4 scalar COM 298 AVH_CALIR Scalar 293 I(4) 4 3 18 COM 293 AVH_CALQUAL Scalar 292 I(2) 2 1 3 COM 292 AVH_CALVIS Scalar 292 I(4) 4 3 45 COM 292 AVH_CBITERR Scalar 292 I(2) 2 scalar COM 292 AVH_CLOCKDRIFT Scalar 290 I(2) 2 scalar COM 290 AVH_DBDATA Scalar 298 I(2) 2 scalar COM 298 AVH_FILLER0 Scalar 291 I(2) 2 1 5 COM 291 AVH_FILLER1 Scalar 292 I(4) 4 1 2 COM 292 AVH_FILLER2 Scalar 293 I(4) 4 1 3 COM 293 AVH_FILLER3 Scalar 295 I(2) 2 1 3 COM 295 AVH_FILLER4 Scalar 296 I(4) 4 1 2 COM 296 AVH_FILLER5 Scalar 296 I(2) 2 scalar COM 296 AVH_FILLER6 Scalar 297 I(4) 4 1 2 COM 297 AVH_FILLER7 Scalar 298 I(4) 4 1 3 COM 298 AVH_FILLER8 Scalar 299 I(2) 2 1 3 COM 299 AVH_FILLER9 Scalar 299 I(4) 4 1 112 COM 299 AVH_HRPT Scalar 297 I(4) 4 1 682 COM 297 AVH_H_ADCONTEMP Scalar 202 I(2) 2 1 5 COM 202 AVH_H_ALBCNV Scalar 184 I(4) 4 2 6 COM 184 AVH_H_ARGPER Scalar 189 I(4) 4 scalar COM 189 AVH_H_AUXSYNCERRSUM Scalar 176 I(2) 2 scalar COM 176 AVH_H_BBTEMP1 Scalar 195 I(2) 2 1 5 COM 195 AVH_H_BBTEMP2 Scalar 196 I(2) 2 1 5 COM 196 AVH_H_BBTEMP3 Scalar 196 I(2) 2 1 5 COM 196 AVH_H_BBTEMP4 Scalar 197 I(2) 2 1 5 COM 197 AVH_H_BBTEMPCHN3B Scalar 204 I(2) 2 1 5 COM 204 AVH_H_BBTEMPCHN4 Scalar 205 I(2) 2 1 5 COM 205 AVH_H_BBTEMPCHN5 Scalar 206 I(2) 2 1 5 COM 206 Page 9 Source Listing BUFR_TRANAVHRR 2012-12-13 18:36 Symbol Table tranavhrr.f90 Name Object Declared Type Bytes Dimen Elements Attributes References AVH_H_BLANK Scalar 163 CHAR 1 scalar COM 163 AVH_H_BLKSZ Scalar 165 I(2) 2 scalar COM 165 AVH_H_BPTEMP Scalar 201 I(2) 2 1 5 COM 201 AVH_H_CALLOCSCNLIN Scalar 174 I(2) 2 scalar COM 174,273 AVH_H_CHTEMP Scalar 200 I(2) 2 1 5 COM 200 AVH_H_CPIDSDY Scalar 171 I(2) 2 scalar COM 171 AVH_H_CPIDSYR Scalar 171 I(2) 2 scalar COM 171 AVH_H_D4BVOLT Scalar 203 I(2) 2 1 5 COM 203 AVH_H_D5BVOLT Scalar 204 I(2) 2 1 5 COM 204 AVH_H_DATAGAPS Scalar 174 I(2) 2 scalar COM 174 AVH_H_DATANAME Scalar 166 CHAR 42 scalar COM 166 AVH_H_DATATYP Scalar 167 I(2) 2 scalar COM 167,257 AVH_H_EARTHPOS Scalar 199 I(2) 2 1 5 COM 199 AVH_H_EARTHSUN Scalar 192 I(4) 4 scalar COM 192 AVH_H_ECCEN Scalar 189 I(4) 4 scalar COM 189 AVH_H_ELECCUR Scalar 198 I(2) 2 1 5 COM 198 AVH_H_ELECTEMP Scalar 200 I(2) 2 1 5 COM 200 AVH_H_ENDDATADY Scalar 170 I(2) 2 scalar COM 170 AVH_H_ENDDATAJD Scalar 170 I(4) 4 scalar COM 170 AVH_H_ENDDATATIME Scalar 171 I(4) 4 scalar COM 171 AVH_H_ENDDATAYR Scalar 170 I(2) 2 scalar COM 170 AVH_H_EPODY Scalar 188 I(2) 2 scalar COM 188 AVH_H_EPOTIME Scalar 188 I(4) 4 scalar COM 188 AVH_H_EPOYR Scalar 187 I(2) 2 scalar COM 187 AVH_H_FILLER0 Scalar 165 I(2) 2 1 3 COM 165 AVH_H_FILLER1 Scalar 172 I(2) 2 1 4 COM 172 AVH_H_FILLER2 Scalar 172 I(2) 2 scalar COM 172 AVH_H_FILLER3 Scalar 180 I(4) 4 scalar COM 180 AVH_H_FILLER4 Scalar 181 I(2) 2 1 5 COM 181 AVH_H_FILLER5 Scalar 184 I(4) 4 1 2 COM 184 AVH_H_FILLER6 Scalar 185 I(4) 4 1 3 COM 185 AVH_H_FILLER7 Scalar 186 I(2) 2 scalar COM 186 AVH_H_FILLER8 Scalar 192 I(4) 4 1 4 COM 192 AVH_H_FILLER9 Scalar 208 I(2) 2 1 1960 COM 208 AVH_H_HDRCNT Scalar 165 I(2) 2 scalar COM 165 AVH_H_INCLI Scalar 189 I(4) 4 scalar COM 189 AVH_H_INSTID Scalar 167 I(2) 2 scalar COM 167 AVH_H_INSTSTAT1 Scalar 172 I(4) 4 scalar COM 172 AVH_H_INSTSTAT2 Scalar 173 I(4) 4 scalar COM 173 AVH_H_IRTTCOEF Scalar 183 I(2) 2 2 24 COM 183 AVH_H_L1BVERSDY Scalar 164 I(2) 2 scalar COM 164 AVH_H_L1BVERSNB Scalar 163 I(2) 2 scalar COM 163 AVH_H_L1BVERSYR Scalar 164 I(2) 2 scalar COM 164 AVH_H_LOCBIT Scalar 186 I(2) 2 scalar COM 186 AVH_H_LOCERRCODE Scalar 178 I(2) 2 scalar COM 178 AVH_H_LOCERRIND Scalar 178 I(2) 2 scalar COM 178 AVH_H_MANOM Scalar 190 I(4) 4 scalar COM 190 AVH_H_MHTEMP Scalar 202 I(2) 2 1 5 COM 202 AVH_H_MISSCNLIN Scalar 174 I(2) 2 scalar COM 174 AVH_H_MODELID Scalar 185 CHAR 8 scalar COM 185 AVH_H_MOTORCUR Scalar 198 I(2) 2 1 5 COM 198 AVH_H_NADLOCTOL Scalar 185 I(2) 2 scalar COM 185 AVH_H_OKDATAFR Scalar 175 I(2) 2 scalar COM 175 AVH_H_PACSDATASRC Scalar 179 I(2) 2 scalar COM 179 AVH_H_PACSPARITYERR Scalar 175 I(2) 2 scalar COM 175 Page 10 Source Listing BUFR_TRANAVHRR 2012-12-13 18:36 Symbol Table tranavhrr.f90 Name Object Declared Type Bytes Dimen Elements Attributes References AVH_H_PACSSTATFIELD Scalar 179 I(2) 2 scalar COM 179 AVH_H_PCALALGIND Scalar 182 I(2) 2 scalar COM 182 AVH_H_PCALALGOPT Scalar 182 I(2) 2 scalar COM 182 AVH_H_PCHPOW Scalar 194 I(2) 2 1 5 COM 194 AVH_H_PCHTEMP Scalar 192 I(2) 2 1 5 COM 192 AVH_H_PCHTEMPEXT Scalar 193 I(2) 2 1 5 COM 193 AVH_H_PITCHERR Scalar 187 I(2) 2 scalar COM 187 AVH_H_PRBLKID Scalar 166 CHAR 8 scalar COM 166 AVH_H_RACALIND Scalar 181 I(2) 2 scalar COM 181 AVH_H_RADTEMPCNV Scalar 184 I(4) 4 2 9 COM 184 AVH_H_RASCNOD Scalar 190 I(4) 4 scalar COM 190 AVH_H_RDTEMP Scalar 194 I(2) 2 1 5 COM 194 AVH_H_RECLG Scalar 164 I(2) 2 scalar COM 164 AVH_H_REFVOLT Scalar 207 I(2) 2 1 5 COM 207 AVH_H_RESERVED1 Scalar 193 I(2) 2 scalar COM 193 AVH_H_RESERVED10 Scalar 199 I(2) 2 scalar COM 199 AVH_H_RESERVED11 Scalar 199 I(2) 2 scalar COM 199 AVH_H_RESERVED12 Scalar 200 I(2) 2 scalar COM 200 AVH_H_RESERVED13 Scalar 201 I(2) 2 scalar COM 201 AVH_H_RESERVED14 Scalar 201 I(2) 2 scalar COM 201 AVH_H_RESERVED15 Scalar 202 I(2) 2 scalar COM 202 AVH_H_RESERVED16 Scalar 203 I(2) 2 scalar COM 203 AVH_H_RESERVED17 Scalar 203 I(2) 2 scalar COM 203 AVH_H_RESERVED18 Scalar 204 I(2) 2 scalar COM 204 AVH_H_RESERVED19 Scalar 205 I(2) 2 scalar COM 205 AVH_H_RESERVED2 Scalar 193 I(2) 2 scalar COM 193 AVH_H_RESERVED20 Scalar 206 I(2) 2 scalar COM 206 AVH_H_RESERVED21 Scalar 207 I(2) 2 scalar COM 207 AVH_H_RESERVED22 Scalar 207 I(2) 2 scalar COM 207 AVH_H_RESERVED3 Scalar 194 I(2) 2 scalar COM 194 AVH_H_RESERVED4 Scalar 195 I(2) 2 scalar COM 195 AVH_H_RESERVED5 Scalar 195 I(2) 2 scalar COM 195 AVH_H_RESERVED6 Scalar 196 I(2) 2 scalar COM 196 AVH_H_RESERVED7 Scalar 197 I(2) 2 scalar COM 197 AVH_H_RESERVED8 Scalar 197 I(2) 2 scalar COM 197 AVH_H_RESERVED9 Scalar 198 I(2) 2 scalar COM 198 AVH_H_ROLLERR Scalar 186 I(2) 2 scalar COM 186 AVH_H_SATID Scalar 166 I(2) 2 scalar COM 166,214 AVH_H_SCALALGIND Scalar 183 I(2) 2 scalar COM 183 AVH_H_SCALALGOPT Scalar 183 I(2) 2 scalar COM 183 AVH_H_SCNLIN Scalar 173 I(2) 2 scalar COM 173,272 AVH_H_SITEID Scalar 163 CHAR 3 scalar COM 163 AVH_H_SMAXIS Scalar 188 I(4) 4 scalar COM 188 AVH_H_SOCCLOCKUPIND Scalar 177 I(2) 2 scalar COM 177 AVH_H_SOLARCALDY Scalar 182 I(2) 2 scalar COM 182 AVH_H_SOLARCALYR Scalar 181 I(2) 2 scalar COM 181 AVH_H_SPARE1 Scalar 180 CHAR 8 scalar COM 180 AVH_H_SPARE2 Scalar 180 CHAR 8 scalar COM 180 AVH_H_STARTDATADY Scalar 169 I(2) 2 scalar COM 169 AVH_H_STARTDATAJD Scalar 168 I(4) 4 scalar COM 168 AVH_H_STARTDATATIME Scalar 169 I(4) 4 scalar COM 169 AVH_H_STARTDATAYR Scalar 168 I(2) 2 scalar COM 168 AVH_H_STATCHRECNB Scalar 173 I(2) 2 scalar COM 173 AVH_H_TIMESEQERR Scalar 176 I(2) 2 scalar COM 176 AVH_H_TIMESEQERRCODE Scalar 177 I(2) 2 scalar COM 177 Page 11 Source Listing BUFR_TRANAVHRR 2012-12-13 18:36 Symbol Table tranavhrr.f90 Name Object Declared Type Bytes Dimen Elements Attributes References AVH_H_TIPSRC Scalar 167 I(2) 2 scalar COM 167 AVH_H_XPOS Scalar 190 I(4) 4 scalar COM 190 AVH_H_XVEL Scalar 191 I(4) 4 scalar COM 191 AVH_H_YAWERR Scalar 187 I(2) 2 scalar COM 187 AVH_H_YPOS Scalar 190 I(4) 4 scalar COM 190 AVH_H_YVEL Scalar 191 I(4) 4 scalar COM 191 AVH_H_ZPOS Scalar 191 I(4) 4 scalar COM 191 AVH_H_ZVEL Scalar 191 I(4) 4 scalar COM 191 AVH_INSTEMP Scalar 298 I(1) 1 1 22 COM 298 AVH_NAVSTAT Scalar 293 I(4) 4 scalar COM 293 AVH_PITCHANG Scalar 294 I(2) 2 scalar COM 294 AVH_POS Scalar 296 I(4) 4 2 102 COM 296 AVH_QUALIND Scalar 291 I(4) 4 scalar COM 291 AVH_ROLLANG Scalar 294 I(2) 2 scalar COM 294 AVH_SCALTI Scalar 295 I(2) 2 scalar COM 295 AVH_SCNLIN Scalar 289 I(2) 2 scalar COM 289 AVH_SCNLINBIT Scalar 290 I(2) 2 scalar COM 290 AVH_SCNLINDY Scalar 289 I(2) 2 scalar COM 289 AVH_SCNLINQUAL Scalar 291 I(4) 4 scalar COM 291 AVH_SCNLINTIME Scalar 290 I(4) 4 scalar COM 290 AVH_SCNLINYR Scalar 289 I(2) 2 scalar COM 289 AVH_TELEM Scalar 296 I(2) 2 1 103 COM 296 AVH_YAWANG Scalar 295 I(2) 2 scalar COM 295 BAD_LINES Local 340 I(4) 4 1 6 340 BUFR_TRANAVHRR Prog 78 CCMC Scalar 299 I(2) 2 1 52 COM 299 CHN_NAME Local 340 CHAR 2 1 6 340 CLOSBF Subr 362 362,363 CLV_BIT Scalar 299 I(4) 4 scalar COM 299 CLV_REV Scalar 299 I(4) 4 scalar COM 299 CSAT Local 252 CHAR 2 scalar 252 DATELEN Subr 94 94 ERREXIT Subr 103 103,118,144,249,264,351,376 GAC_1B_PROC Module 84 84 GOOD_LINES Local 340 I(4) 4 1 6 340 IERR Local 97 I(4) 4 scalar 97,99,101,103,112,114,116,118 ILIMB Local 366 I(4) 4 scalar 366 IOS Local 138 I(4) 4 scalar 138,140,141 J Local 339 I(4) 4 scalar 339,340 JDATE Local 96 I(4) 4 scalar 96,112 JSAT Local 214 I(4) 4 scalar 214,215,216,217,219,220,221,222,22 4,225,226,227,229,230,231,232,234, 235,236,237,239,240,241,242,244,24 6,252,267 JSAT0 Local 216 I(4) 4 scalar 216,218,221,223,226,228,231,233,23 6,238,241,243 JTYPE Local 257 I(4) 4 scalar 257,259,261,267 KDATE Local 97 I(4) 4 scalar 97,112 LAPCHR Local 96 I(4) 4 scalar 96 LAPCHRP Local 111 I(4) 4 scalar 111 LINE Local 304 I(4) 4 scalar 304 LST Local 130 I(1) 1 2 16597441 130 LSUBDR Local 96 I(4) 4 scalar 96,106 LSUBDRP Local 111 I(4) 4 scalar 111,121 LTNKID Local 96 I(4) 4 scalar 96,106 Page 12 Source Listing BUFR_TRANAVHRR 2012-12-13 18:36 Symbol Table tranavhrr.f90 Name Object Declared Type Bytes Dimen Elements Attributes References LTNKIDP Local 111 I(4) 4 scalar 111,121 LU1B Param 138 I(4) 4 scalar 138,162,288,319,348,358 LUNDX Param 108 I(4) 4 scalar 108,123 MAXOUT Subr 132 132 MAXREAD Param 313 I(4) 4 scalar 313 MCH Param 154 I(4) 4 scalar 154,339 NLO Local 280 I(4) 4 scalar 280,303,304,322,332 NREAL Param 154 I(4) 4 scalar 154 NREC Local 302 I(4) 4 scalar 302,333,371 NRECS Local 272 I(4) 4 scalar 272,332 NRI Local 160 I(4) 4 scalar 160,162,284,288,313,321 NSCAN Local 273 I(4) 4 scalar 273,332 NTOT Param 155 I(4) 4 scalar 155 OPENBF Subr 108 108,123 RECLAVH Param 138 I(4) 4 scalar 138 RFAC Param 138 I(4) 4 scalar 138 STDOUT Param 147 I(4) 4 scalar 147,152,153,154,155,218,223,228,23 3,238,243,267,328,329,330,331,332, 333,335,336,337,340,347,359,360,37 2 SUBDIR Local 96 CHAR 12 scalar 96,106 SUBDIRP Local 111 CHAR 12 scalar 111,121 SUBSET Local 106 CHAR 8 scalar 106,309 SUBSETP Local 121 CHAR 8 scalar 121,309 TANKID Local 96 CHAR 12 scalar 96,106 TANKIDP Local 111 CHAR 12 scalar 111,121 TLFLAG Local 96 CHAR 8 scalar 96 TLFLAGP Local 111 CHAR 8 scalar 111 W3TAGB Subr 89 89 W3TAGE Subr 102 102,117,143,248,263,375,379 W3TRNARG Subr 96 96,111 WBF_LND_O_CLD Param 123 I(4) 4 scalar 123,363 WBF_SEA_A_LCR Param 108 I(4) 4 scalar 108,362 Page 13 Source Listing BUFR_TRANAVHRR 2012-12-13 18:36 Subprograms/Common Blocks tranavhrr.f90 SUBPROGRAMS/COMMON BLOCKS Name Object Declared Type Bytes Dimen Elements Attributes References BUFR_TRANAVHRR Prog 78 COMPILER OPTIONS BEING USED -align nocommons -align nodcommons -align noqcommons -align records -align nosequence -align norec1byte -align norec2byte -align norec4byte -align norec8byte -align norec16byte -altparam -assume accuracy_sensitive -assume nobscc -assume nobuffered_io -assume byterecl -assume nocc_omp -assume nocstring -assume nodummy_aliases -assume nofpe_summary -assume noieee_fpe_flags -assume nominus0 -assume noold_boz -assume old_unit_star -assume noold_ldout_format -assume noold_logical_ldio -assume old_maxminloc -assume old_xor -assume protect_constants -assume noprotect_parens -assume split_common -assume source_include -assume nostd_intent_in -assume nostd_mod_proc_name -assume norealloc_lhs -assume underscore -assume no2underscores no -auto -auto_scalar no -bintext -ccdefault default -check noargs -check noarg_temp_created -check nobounds -check noformat -check nooutput_conversion -check nooverflow -check nopointers -check power -check noshape -check nounderflow -check nouninitialized -coarray-num-procs 0 no -coarray-config-file -convert big_endian -cross_reference -D __INTEL_COMPILER=1210 -D __unix__ -D __unix -D __linux__ -D __linux -D __gnu_linux__ -D unix -D linux -D __ELF__ -D __x86_64 -D __x86_64__ -D _MT -D __INTEL_COMPILER_BUILD_DATE=20120612 -D __i686 -D __i686__ -D __pentiumpro -D __pentiumpro__ -D __pentium4 -D __pentium4__ -D __tune_pentium4__ -D __SSE2__ -D __SSE__ -D __MMX__ -double_size 64 no -d_lines no -Qdyncom -error_limit 30 no -f66 no -f77rtl no -fast -fpscomp nofilesfromcmd -fpscomp nogeneral -fpscomp noioformat -fpscomp noldio_spacing -fpscomp nologicals no -fpconstant -fpe3 -fprm nearest no -ftz Page 14 Source Listing BUFR_TRANAVHRR 2012-12-13 18:36 tranavhrr.f90 -fp_model noprecise -fp_model nofast -fp_model strict -fp_model nosource -fp_model nodouble -fp_model noextended -fp_model novery_fast -fp_model noexcept -fp_model nono_except -fp_modbits nofp_contract -fp_modbits nono_fp_contract -fp_modbits nofenv_access -fp_modbits nono_fenv_access -fp_modbits nocx_limited_range -fp_modbits nono_cx_limited_range -fp_modbits noprec_div -fp_modbits nono_prec_div -fp_modbits noprec_sqrt -fp_modbits nono_prec_sqrt -fp_modbits noftz -fp_modbits no_ftz -fp_modbits nointrin_limited_range -fp_modbits nono_intrin_limited_range -fp_modbits notrunc_compares -fp_modbits nono_trunc_compares -fp_modbits noieee_nan_compares -fp_modbits nono_ieee_nan_compares -fp_modbits nohonor_f32_conversion -fp_modbits nono_honor_f32_conversion -fp_modbits nohonor_f64_conversion -fp_modbits nono_honor_f64_conversion -fp_modbits nono_x87_copy -fp_modbits nono_no_x87_copy -fp_modbits noexception_semantics -fp_modbits nono_exception_semantics -fp_modbits noprecise_libm_functions -fp_modbits nono_precise_libm_functions -heap_arrays 0 no -threadprivate_compat -free -g0 -iface nomixed_str_len_arg -iface nono_mixed_str_len_arg no -intconstant -integer_size 32 no -mixed_str_len_arg no -module -names lowercase no -noinclude -O2 no -pad_source -real_size 32 no -recursive -reentrancy none no -sharable_localsaves -vec=simd -show noinclude -show map -show options no -syntax_only no -threadcom no -U no -vms -w noall -w nonone -w alignments -w noargument_checking -w nodeclarations -w general -w noignore_bounds -w noignore_loc -w nointerfaces -w notruncated_source -w uncalled -w uninitialized -w nounused -w usage -includepath : /gpfs/tp2/usrx/local/intel/composer_xe_2011_sp1.11.339/compiler/include/,.f,./.f,/usrx/local/intel/composerxe/mkl/include/.f, /usrx/local/intel/composerxe/tbb/include/.f,/gpfs/tp2/usrx/local/intel/composer_xe_2011_sp1.11.339/compiler/include/intel64/.f, /gpfs/tp2/usrx/local/intel/composer_xe_2011_sp1.11.339/compiler/include/.f,/usr/local/include/.f,/usr/lib/gcc/x86_64-redhat-linux/4.4.6/include/.f, /usr/include/.f,/usr/include/.f -list filename : tranavhrr.lst -o filename : none COMPILER: Intel(R) Fortran 12.1-2100