1 2 SUBROUTINE PSTANN 3 !*********************************************************************** 4 ! PSTANN Module of the AMS/EPA Regulatory Model - AERMOD 5 ! 6 ! PURPOSE: Process Postprocessor Files for PERIOD Results 7 ! 8 ! PROGRAMMER: Roger Brode 9 ! 10 ! DATE: March 2, 1992 11 ! 12 ! MODIFIED BY D. Strimaitis, SRC (for Wet & Dry DEPOSITION) - 11/8/93 13 ! 14 ! INPUTS: Array of High Values 15 ! 16 ! OUTPUTS: File of High Values for Postprocessing 17 ! 18 ! CALLED FROM: MAIN 19 !*********************************************************************** 20 21 ! Variable Declarations 22 USE MAIN1 23 IMPLICIT NONE 24 CHARACTER MODNAM*12 25 26 SAVE 27 INTEGER :: I 28 CHARACTER PERCHR*6 , HDRFRM*256 29 30 ! Variable Initializations 31 MODNAM = 'PSTANN' ! 0 32 33 ! Set Averaging Label and Create Header Format for Columns 34 IF ( PERIOD ) THEN 35 PERCHR = 'PERIOD' ! 0 36 WRITE (HDRFRM,9020) NUMTYP , NUMTYP + 2 37 9020 FORMAT ('(''*'',8X,''X'',13X,''Y'',4X,',I1, & 38 &'(2X,3A4),4X,''ZELEV'', 4X,''ZHILL'',4X,''ZFLAG'',4X,''AVE'',5X,& 39 &''GRP'',6X,''NUM HRS'', 3X,''NET ID'',/,''*'',',I1, & 40 &'(1X,''____________ ''),1X, 3('' ______ ''),''______ _& 41 &_______ ________ ________'')') 42 ELSEIF ( ANNUAL ) THEN 43 PERCHR = 'ANNUAL' ! 0 44 WRITE (HDRFRM,9021) NUMTYP , NUMTYP + 2 45 9021 FORMAT ('(''*'',8X,''X'',13X,''Y'',4X,',I1, & 46 &'(2X,3A4),4X,''ZELEV'', 4X,''ZHILL'',4X,''ZFLAG'',4X,''AVE'',5X,& 47 &''GRP'',6X,''NUM YRS'', 3X,''NET ID'',/,''*'',',I1, & 48 &'(1X,''____________ ''),1X, 3('' ______ ''),''______ _& 49 &_______ ________ ________'')') 50 ENDIF 51 52 ! Begin Source Group LOOP 53 DO IGRP = 1 , NUMGRP ! 0 54 ! Check for Selection of PERIOD POSTFILE for This Group 55 IF ( IANPST(IGRP).EQ.1 ) THEN ! 0 56 IF ( IANFRM(IGRP).EQ.0 ) THEN ! 0 57 ! WRITE Results to Unformatted POSTFILE 58 IF ( PERIOD ) THEN ! 0 59 WRITE (IAPUNT(IGRP),ERR=99) KURDAT , IANHRS , & 60 & GRPID(IGRP) , & 61 & ((ANNVAL(IREC,IGRP,ITYP),IREC=1,NUMREC),ITYP=1,& 62 & NUMTYP) 63 ELSEIF ( ANNUAL ) THEN 64 WRITE (IAPUNT(IGRP),ERR=99) KURDAT , NUMYRS , & 65 & GRPID(IGRP) , & 66 & ((ANNVAL(IREC,IGRP,ITYP),IREC=1,NUMREC),ITYP=1,& 67 & NUMTYP) 68 ENDIF 69 ELSE 70 ! WRITE Results to Formatted Plot File 71 ! Write Header Information 72 WRITE (IAPUNT(IGRP),9005) VERSN , TITLE1 ! 0 73 74 9005 FORMAT ('* AERMOD (',A5,'): ',A68) 75 WRITE (IAPUNT(IGRP),9007) (MODOPS(I),I=1,18) 76 9007 FORMAT ('* MODELING OPTIONS USED:',/'* ',18(1X,A6)) 77 WRITE (IAPUNT(IGRP),9010) PERCHR , GRPID(IGRP) , NUMREC ,& 78 & PSTFRM 79 9010 FORMAT ('*',9X,'POST/PLOT FILE OF ',A6,' VALUES FOR ', & 80 & 'SOURCE GROUP: ',A8,/'*',9X,'FOR A TOTAL OF ',I5,& 81 & ' RECEPTORS.',/'*',9X,'FORMAT: ',A60) 82 WRITE (IAPUNT(IGRP),HDRFRM) & 83 & (CHIDEP(1,ITYP),CHIDEP(2,ITYP),CHIDEP(3,ITYP), & 84 & ITYP=1,NUMTYP) 85 ! Begin Receptor LOOP 86 DO IREC = 1 , NUMREC 87 IF ( PERIOD ) THEN ! 0 88 WRITE (IAPUNT(IGRP),PSTFRM,ERR=99) AXR(IREC) , & 89 & AYR(IREC) , & 90 & (ANNVAL(IREC,IGRP,ITYP),ITYP=1,NUMTYP) , & 91 & AZELEV(IREC) , AZHILL(IREC) , AZFLAG(IREC) ,& 92 & PERCHR , GRPID(IGRP) , IANHRS , NETID(IREC) 93 ELSEIF ( ANNUAL ) THEN 94 WRITE (IAPUNT(IGRP),PSTFRM,ERR=99) AXR(IREC) , & 95 & AYR(IREC) , & 96 & (ANNVAL(IREC,IGRP,ITYP),ITYP=1,NUMTYP) , & 97 & AZELEV(IREC) , AZHILL(IREC) , AZFLAG(IREC) ,& 98 & PERCHR , GRPID(IGRP) , NUMYRS , NETID(IREC) 99 ENDIF 100 ENDDO 101 ! End Receptor LOOP 102 ENDIF 103 ENDIF 104 ENDDO 105 ! End Source Group LOOP 106 107 GOTO 999 ! 0 108 109 ! WRITE Error Message for Problem Writing to Postprocessor File 110 99 WRITE (DUMMY,'("PSTFL",I3.3)') IAPUNT(IGRP) ! 0 111 CALL ERRHDL(PATH,MODNAM,'E','520',DUMMY) 112 113 999 CONTINUE ! 0 114 END
HyperKWIC - Version 1.00DD executed at 20:00 on 1 Mar 2018 | Personal or Academic or Evaluation User | Free for Non-Commercial, Non-Government Use