1
2
3      SUBROUTINE MEANDR(UEF,SVEF,FRAN)
4!***********************************************************************
5!             MEANDR Module of the AMS/EPA Regulatory Model - AERMOD
6!
7!        PURPOSE: Calculates fraction of random plume for lateral
8!                 meander
9!
10!        PROGRAMMER: Roger Brode, PES, Inc.
11!
12!        DATE:       June 26, 2001
13!
14!        MODIFICATIONS:
15!
16!                    To use UEF instead of UMEAN in denominator of TTRAV
17!                    term in calculation of SIGRAN.
18!                    R.W. Brode, PES, Inc.  8/28/01
19!
20!                    To use radial distance (DISTR) in calculation of
21!                    TTRAV instead of downwind distance (X).
22!                    R.W. Brode, PES, Inc.  6/19/01
23!
24!        INPUTS:  Effective wind speed, UEF, in m/s
25!                 Effective wind sigma_V, SVEF, in m/s
26!
27!        OUTPUTS: Fraction of plume in random lateral distribution, FRAN
28!
29!        CALLED FROM:   AERCALC
30!                       PRMCALC
31!                       VCALC
32!
33!        CALLS:         None
34!***********************************************************************
35
36!     Variable Declarations
37      USE MAIN1
38      IMPLICIT NONE
39      CHARACTER MODNAM*12
40      REAL , PARAMETER :: BIGT = 24.
41      REAL :: UEF , SVEF , FRAN , UMEAN , TOTKIN , TRAN , TTRAV , SIGRAN
42      REAL :: SQRTARG
43
44      SAVE
45
46!     Variable Initializations
47      MODNAM = 'MEANDR'                                                 !2767680
48
49!     Compute meander fraction of horizontal distribution function
50!     from Venky's memo of 6/24/98.
51
52!     Calculate time scale (s) for random dispersion, based on 24 hours
53      TRAN = BIGT*3600.
54!
55!     Remove the SVeff component from UEF
56!
57
58      SQRTARG = UEF*UEF - 2.0*SVEF*SVEF
59      IF ( SQRTARG.GE.0.01 ) THEN
60         UMEAN = SQRT(SQRTARG)                                          !2767680
61      ELSE
62         UMEAN = 0.1                                                    !      0
63      ENDIF
64      TOTKIN = UEF*UEF                                                  !2767680
65      TTRAV = DISTR/UEF
66      SIGRAN = 2.0*SVEF*SVEF + UMEAN*UMEAN*(1.0-EXP(-TTRAV/TRAN))
67      FRAN = SIGRAN/TOTKIN
68
69      IF ( DEBUG ) THEN
70         WRITE (DBGUNT,*)                                               &
71     &      "SVEF, UEF, UMEAN, DISTR, TTRAV, TRAN, TOTKIN, SIGRAN, FRAN"&
72     &      , SVEF , UEF , UMEAN , DISTR , TTRAV , TRAN , TOTKIN ,      &
73     &      SIGRAN , FRAN
74         WRITE (DBGUNT,*) ' '
75      ENDIF
76
77      CONTINUE                                                          !2767680
78      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