1
2      SUBROUTINE EVALCK
3!***********************************************************************
4!                 EVALCK Module of AERMOD
5!
6!        PURPOSE: Check ARC Values for EVALFILE Option
7!
8!        PROGRAMMER: Roger Brode
9!
10!        DATE:    November 29, 1993
11!
12!        REVISIONS:  Added true centerline calculations.
13!                    Changed 7/25/94, R.F. Lee.
14!
15!        INPUTS:
16!
17!        OUTPUTS:
18!
19!        CALLED FROM:   PCALC
20!***********************************************************************
21
22!     Variable Declarations
23      USE MAIN1
24      IMPLICIT NONE
25      CHARACTER MODNAM*12
26
27      SAVE
28      INTEGER :: I , INDEX
29      REAL :: CHIOQ
30
31!     Variable Initializations
32      MODNAM = 'EVALCK'                                                 !      0
33
34!     Set ARC Index
35      INDEX = NDXARC(IREC)
36
37!     Check for INDEX = 0, i.e., this receptor is not an EVALCART receptor.
38!     Skip to RETURN for INDEX = 0
39      IF ( INDEX.EQ.0 ) GOTO 99
40
41!CRFL
42!CRFL  Add true centerline calculations:  add CHIOQC
43!CRFL  Change made 7/25/94, R.F. Lee.
44!CRFL
45!     Calculate Normalized Concentration, CHI/Q
46      CHIOQ = HRVAL(1)/(QTK*EMIFAC(1))                                  !      0
47!     Check ARCMAX Array
48      IF ( CHIOQ.GT.ARCMAX(INDEX) ) THEN
49         ARCMAX(INDEX) = CHIOQ                                          !      0
50!CRFL
51!CRFL  Add true centerline calculations:  add arc centerline
52!CRFL  calculation ARCCL(INDEX).  Note that, although ARCCL is
53!CRFL  is calculated redundantly for all receptors in the arc,
54!CRFL  the value calculated at the receptor showing the max is
55!CRFL  used.  This assures that the most reasonable downwind
56!CRFL  distance will be used in the calculation.
57!CRFL  Changed 7/25/94, R.F. Lee.
58!CRFL
59         ARCCL(INDEX) = CHIOQ
60         QMAX(INDEX) = QTK*EMIFAC(1)
61         DXMAX(INDEX) = DISTR
62!RJP
63!RJP     Use appropriate effective parameters
64!RJP
65         IF ( STABLE .OR. (UNSTAB .AND. (HS.GE.ZI)) ) THEN
66            UMAX(INDEX) = UEFF                                          !      0
67            SVMAX(INDEX) = SVEFF
68            SWMAX(INDEX) = SWEFF
69            SYMAX(INDEX) = SY
70            HEMAX(INDEX) = HE
71!crfl 5/19/95 Grab SZ at maximum receptor in arc
72            SZMAX(INDEX) = SZ
73            CHIDMW(INDEX) = 0.0
74            CHINMW(INDEX) = 0.0
75            CHI3MW(INDEX) = 0.0
76            CHIDML(INDEX) = 0.0
77            CHINML(INDEX) = 0.0
78            CHI3ML(INDEX) = 0.0
79            HSBLMX(INDEX) = HSBL
80         ELSEIF ( PPF.GT.0.999 ) THEN
81            UMAX(INDEX) = UEFFD                                         !      0
82            U3MAX(INDEX) = UEFF3
83            SVMAX(INDEX) = SVEFF3
84            SWMAX(INDEX) = SWEFF3
85            SYMAX(INDEX) = SY
86            SY3MX(INDEX) = SY3
87            HEMAX(INDEX) = HSP + DHP3
88            CHIDMW(INDEX) = CHIDW/QMAX(INDEX)
89            CHINMW(INDEX) = CHINW/QMAX(INDEX)
90            CHI3MW(INDEX) = CHI3W/QMAX(INDEX)
91            CHIDML(INDEX) = CHIDL/QMAX(INDEX)
92            CHINML(INDEX) = CHINL/QMAX(INDEX)
93            CHI3ML(INDEX) = CHI3L/QMAX(INDEX)
94            HSBLMX(INDEX) = HPEN
95         ELSE
96            UMAX(INDEX) = UEFFD                                         !      0
97            U3MAX(INDEX) = UEFF3
98            SVMAX(INDEX) = SVEFFD
99            SWMAX(INDEX) = SWEFFD
100            SYMAX(INDEX) = SY
101            SY3MX(INDEX) = SY3
102            HEMAX(INDEX) = HSP + DHP1
103            CHIDMW(INDEX) = CHIDW/QMAX(INDEX)
104            CHINMW(INDEX) = CHINW/QMAX(INDEX)
105            CHI3MW(INDEX) = CHI3W/QMAX(INDEX)
106            CHIDML(INDEX) = CHIDL/QMAX(INDEX)
107            CHINML(INDEX) = CHINL/QMAX(INDEX)
108            CHI3ML(INDEX) = CHI3L/QMAX(INDEX)
109            HSBLMX(INDEX) = HPEN
110         ENDIF
111      ENDIF
112
113 99   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