1 2 SUBROUTINE PREGENPOL 3 !*********************************************************************** 4 ! PREGENPOL Module of the AMS/EPA Regulatory Model - AERMOD 5 ! 6 ! PURPOSE: Generates Polar Receptor Network With 7 ! Uniform Spacing 8 ! 9 ! PROGRAMMER: Roger Brode 10 ! 11 ! DATE: September 24, 1996 12 ! 13 ! INPUTS: Input Runstream Image Parameters 14 ! 15 ! OUTPUTS: Polar Receptor Network With Uniform Direction Spacing 16 ! 17 ! CALLED FROM: PREPOLR 18 !*********************************************************************** 19 20 ! Variable Declarations 21 USE MAIN1 22 IMPLICIT NONE 23 CHARACTER MODNAM*12 24 25 SAVE 26 INTEGER :: I , K 27 REAL :: TEMPP(3) , DIRINI , DIRINC 28 LOGICAL ERROR 29 30 ! Variable Initializations 31 MODNAM = 'PREGENPOL' ! 3 32 ERROR = .FALSE. 33 34 ! Check for the Location of the Secondary Keyword, GDIR 35 DO I = 1 , IFC 36 IF ( FIELD(I).EQ.'GDIR' ) ISC = I + 1 ! 18 37 ENDDO 38 39 ! Determine Whether There Are Enough Parameter Fields 40 IF ( IFC.EQ.ISC-1 ) THEN ! 3 41 ! Missing Parameter 42 RECERR = .TRUE. ! 0 43 GOTO 999 44 ELSEIF ( IFC.LT.ISC+2 ) THEN 45 ! Not Enough Parameters 46 RECERR = .TRUE. ! 0 47 GOTO 999 48 ELSEIF ( IFC.GT.ISC+2 ) THEN 49 ! Too Many Parameters 50 RECERR = .TRUE. ! 0 51 GOTO 999 52 ENDIF 53 54 ! Input Numerical Values 55 DO K = 1 , 3 ! 3 56 CALL STONUM(FIELD(ISC+K-1),ILEN_FLD,TEMPP(K),IMIT) ! 9 57 ! Check The Numerical Field 58 IF ( IMIT.EQ.-1 ) THEN 59 RECERR = .TRUE. ! 0 60 ERROR = .TRUE. 61 ENDIF 62 ENDDO 63 64 IF ( ERROR ) THEN ! 3 65 ERROR = .FALSE. ! 0 66 GOTO 999 67 ENDIF 68 69 JCOUNT = NINT(TEMPP(1)) ! 3 70 DIRINI = TEMPP(2) 71 DIRINC = TEMPP(3) 72 73 ! Assign Them to the Coordinate Arrays 74 IF ( JCOUNT.GT.IYM ) IYM = JCOUNT 75 76 999 CONTINUE ! 3 77 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