1 !---------------------------------------------------------------------- 2 SUBROUTINE NUMPR1 3 !---------------------------------------------------------------------- 4 ! 5 ! --- PRIME Version: 1.0 Level: 970812 NUMPR1 6 ! J. Scire, EARTH TECH 7 ! Prepared for EPRI under contract WO3527-01 8 ! 9 ! --- PURPOSE: Initialize the variables used by the numerical 10 ! plume rise algorithm 11 ! 12 ! --- INPUTS: 13 ! 14 ! Parameters: 15 ! MXENT, MXENTP1, MXNZ, MXNZP1, IO6 16 ! 17 ! --- OUTPUT: 18 ! 19 ! Common block /NUMPARM/ variables: 20 ! GRAVI,RGAS,ZMIN,DS,NSTEP,SLAST,RP,ALPHAP(mxent), 21 ! BETAP(mxent),XCAT(mxentp1),NENT 22 ! Common block /AMBIENT/ variables: 23 ! ADIA,PTGRAD0,ZGPTA(mxnz),ZFACEA(mxnzp1) 24 ! 25 ! --- NUMPR1 called by: MAIN (Host) 26 ! --- NUMPR1 calls: none 27 !---------------------------------------------------------------------- 28 29 ! --- Include parameters 30 INCLUDE 'params.pri' 31 32 ! --- Include common blocks 33 INCLUDE 'numparm.pri' 34 INCLUDE 'ambient.pri' 35 36 ! ----------------------- 37 ! --- /NUMPARM/ variables 38 ! ----------------------- 39 ! 40 ! --- Set the acceleration due to gravity (m/s**2) 41 GRAVI = 9.807 ! 3 42 43 ! --- Set the gas constant (m**2/s**2/deg. K) 44 RGAS = 287.026 45 46 ! --- Set the minimum plume centerline height (m) 47 ZMIN = 0.001 48 49 ! --- Set the step size (m) in the numerical plume rise algorithm 50 DS = 1.0 51 52 ! --- Set the internal save frequency of plume rise calculations (i.e., 53 ! every DS*NSTEP meters) (NOTE: this the frequency with which the 54 ! results are saved internally -- not that passed back from the 55 ! NUMRISE routine) 56 NSTEP = 1 57 58 ! --- Set the termination distance (m) of the plume rise calculation 59 SLAST = 5000. 60 61 ! --- Set the radiation coefficient (kg/m**2/deg. K**3/s) 62 RP = 9.1E-11 63 64 ! --- Set the perturbed entrainment coefficients 65 ! ALPHAP (parallel direction), BETAP (normal direction) 66 NENT = 0 67 ALPHAP(1) = 0.11 68 BETAP(1) = 0.6 69 XCAT(1) = -9.E9 70 XCAT(2) = 9.E9 71 72 ! ----------------------- 73 ! --- /AMBIENT/ variables 74 ! ----------------------- 75 76 ! --- Set dry adiabatic lapse rate (deg. K/m) 77 ADIA = .0098 78 79 ! --- Set minimum potential temperature lapse rate (deg. K/m) 80 PTGRAD0 = 0.0 81 82 ! --- Set the default number of layers 83 NZA = 45 84 NZAP1 = NZA + 1 85 IF ( NZA.GT.MXNZ ) THEN 86 WRITE (IO6,*) 'ERROR in SUBR. NUMPR1 -- NZA is too large -- ' ,& 87 & 'NZA = ' , NZA , ' MXNZ = ' , MXNZ 88 STOP 89 ENDIF 90 IF ( NZAP1.GT.MXNZP1 ) THEN ! 3 91 WRITE (IO6,*) 'ERROR in SUBR. NUMPR1 -- NZAP1 is too large -- '& 92 & , 'NZAP1 = ' , NZAP1 , ' MXNZP1 = ' , MXNZP1 93 STOP 94 ENDIF 95 96 ! --- Define the meteorological grid 97 ! --- Set grid points every 10 m from 10-200 m 98 DZ = 10. ! 3 99 NN = 1 100 ZGPTA(NN) = DZ 101 DO I = 2 , 20 102 NN = NN + 1 ! 57 103 ZGPTA(NN) = ZGPTA(NN-1) + DZ 104 ENDDO 105 ! --- Set grid points every 50 m from 250-500 m 106 DZ = 50. ! 3 107 DO I = 21 , 26 108 NN = NN + 1 ! 18 109 ZGPTA(NN) = ZGPTA(NN-1) + DZ 110 ENDDO 111 ! --- Set grid points every 100 m from 600-2000 m 112 DZ = 100. ! 3 113 DO I = 27 , 41 114 NN = NN + 1 ! 45 115 ZGPTA(NN) = ZGPTA(NN-1) + DZ 116 ENDDO 117 ! --- Set grid points every 500 m from 2500-4000 m 118 DZ = 500. ! 3 119 DO I = 42 , 45 120 NN = NN + 1 ! 12 121 ZGPTA(NN) = ZGPTA(NN-1) + DZ 122 ENDDO 123 124 ! --- Compute the cell face heights from the grid point values 125 ZFACEA(1) = 0.0 ! 3 126 DO I = 2 , NZA 127 ZFACEA(I) = 0.5*(ZGPTA(I)+ZGPTA(I-1)) ! 132 128 ENDDO 129 ZFACEA(NZAP1) = ZGPTA(NZA) + 0.5*(ZGPTA(NZA)-ZGPTA(NZA-1)) ! 3 130 131 CONTINUE 132 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