Merge remote-tracking branch 'origin/release-v4.6.1'
[WRF.git] / chem / module_cb05_vbs_initmixrats.F
blob25a50ac771fb08b9e9c3f0277ce854049c24ec20
1 ! **************************************************************************************
2 !   This computer software was developed by Dr. Yang Zhang and her research group      *
3 !   at North Carolina State University (NCSU) with support  from the NSF Career Award  *
4 !   No. Atm-0348819, and the Memorandum of Understanding between the                   *
5 !   U.S. Environmental Protection Agency (EPA) and the U.S. Department of              *
6 !   Commerce's National Oceanic and Atmospheric Administration (NOAA)                  *
7 !   and under agreement number DW13921548, and the U.S. EPA/Office of                  *
8 !   Air Quality Planning & Standards via RTI International contract #4-321-0210288.    *
9 !                                                                                      *
10 !   NEITHER ANY COSPONSORS, NCSU, NOR ANY PERSON ACTING ON BEHALF                      *
11 !   OF ANY OF THEM MAKES ANY WARRANTY OR REPRESENTATION                                *
12 !   WHATSOEVER, EXPRESS OR IMPLIED, OR ASSUMES ANY LIABILITY FOR                       *
13 !   THE USE OF THIS SOFTWARE.  THIS SOFTWARE OR PART OF IT MAY BE                      *
14 !   COPYRIGHTED AND IS PERMITTED BY ORIGINAL CODE DEVELOPERS FOR                       *
15 !   NONPROFIT USE AND SUBJECTED TO RESTRICTIONS                                        *
16 !                                                                                      *
17 !  Contact information:                                                                *
18 !  Dr. Yang Zhang                                                                      * 
19 !  Principal Investigator                                                              *
20 !  Department of Marine, Earth, and Atmospheric Sciences                               *
21 !  North Carolina State University                                                     *
22 !  Campus Box 8208                                                                     *
23 !  Room 5151, Jordan Hall, 2800 Faucette Drive                                         *
24 !  Raleigh, NC 27695-8208, USA                                                         *
25 !  Tel:  (919) 515-9688 (Office)                                                       *
26 !  Fax:  (919) 515-7802                                                                *
27 !  E-Mail:  yang_zhang@ncsu.edu                                                        *
28 !                                                                                      *
29 ! **************************************************************************************
30 !  FUNCTION: PROVIDE BOUNDARY VALUES FOR CB05 MADRID extension GAS-PHASE SPECIES       *
31 !  PRECONDITION REQUIRED: use for CB05 MADRID extension gas-phase mechanism            *
32 !  RETURN VALUES:                                                                      *                                 
33 !  KEY SUBROUTINES AND FUNCTIONS CALLED: None                                          *
34 !  REVISION HISTORY:                                                                   *
35 !         This code was based on module_cb05_initmixrats.F,                            *
36 !               developed by J.P. Huang and Y. Zhang, NCSU, Mar.-Oct. 2006             *
37 !         Revised by Ying Pan and Yang Zhang, NCSU, Nov. 2007-Nov. 2008                *
38 !               to couple MADRID with CB05 MADRID extension gas-phase mechanism        * 
39 !         Revised by Yang Zhang, Xiao-Ming Hu, and Ying Pan, NCSU, Sept.-Nov., 2008    *
40 !               Code cleaned up for NOAA WRF/Chem repository checkin                   *               
41 !         Revised by Ying Pan and Yang Zhang, NCSU, Sep. 2009                          *
42 !               to transfer the code to WRF/Chem v3.1.1                                *
43 !***************************************************************************************
46 !-----------------------------------------------------------------------
47       subroutine bdy_chem_value_cb05_vbs (id_bdy, chem_bv,kk, nch,config_flags,numgas )
49         use module_configure, only:  grid_config_rec_type
50         use module_input_chem_data, only:  bdy_chem_value
52         implicit none
54 ! arguments
55         REAL,    INTENT(OUT)  :: chem_bv    ! boundary value for chem(-,-,-,nch)
56 !       REAL,    INTENT(IN)   :: z          ! height
57         INTEGER, INTENT(IN)   :: nch        ! index number of chemical species
58         INTEGER, INTENT(IN)   :: numgas     ! index number of last gas species
59         INTEGER, INTENT(IN)   :: kk         ! level
60         INTEGER, INTENT(IN)   :: id_bdy     ! id of bdy: 1 = YS, 2 = YE, 3=XS, 4 =XE
61         TYPE(grid_config_rec_type), INTENT(IN) :: config_flags
62 ! local variables
63         real chem_bv_ald, chem_bv_hc3, chem_bv_hc5,   &
64              chem_bv_hc8, chem_bv_ket, chem_bv_oli,   &
65              chem_bv_olt, chem_bv_ora2
66         real, parameter :: chem_bv_def = 1.0e-20
67       character (len=100)    :: record 
68       character (len=20)     ::  chem_var
69       real                  :: cmaq_bc9(106,4,34)
70       integer               :: iv, i,j,k
72 ! The following boundary values were taken from CMAQ, July, 2001 episode
74 ! for NO2  
75       data (cmaq_bc9(1,1,k),k=1,34)&
76          / 9.9999997E-06,   9.9999997E-06,   9.9999997E-06,   &
77        9.9999997E-06,  9.9999997E-06,   9.6428539E-06,   9.2857072E-06,&
78        7.4999953E-06,  5.7142838E-06,   5.7142838E-06, 24*0./
79       data (cmaq_bc9(1,2,k),k=1,34)&
80          / 9.9999997E-06,   9.9999997E-06,   9.9999997E-06,   &
81        9.9999997E-06, 9.9999997E-06,   9.6428539E-06,   9.2857072E-06,& 
82        7.4999953E-06, 5.7142838E-06,   5.7142838E-06, 24*0./
83       data (cmaq_bc9(1,3,k),k=1,34)&
84           /1.6700001E-04,  1.6700001E-04,  1.6700001E-04,&
85           1.6700001E-04,  1.6700001E-04,  1.6403571E-04, 1.6107140E-04,&
86           1.4625001E-04,  1.3142861E-04,  1.3142861E-04, 8.3999999E-05,&
87           8.3999999E-05,  8.3999999E-05,  5.6000019E-05, 5.6000019E-05,&
88           2.5454530E-05,  2.5454530E-05,  2.5454530E-05, 7.4999953E-06,&
89           5.7142838E-06,  5.7142838E-06, 13*0./
90       data (cmaq_bc9(1,4,k),k=1,34)&
91           /1.6700001E-04,  1.6700001E-04,  1.6700001E-04,& 
92           1.6700001E-04,  1.6700001E-04,  1.6403571E-04, 1.6107140E-04,&
93           1.4625001E-04,  1.3142861E-04,  1.3142861E-04, 8.3999999E-05,&
94           8.3999999E-05,  8.3999999E-05,  5.6000019E-05, 5.6000019E-05,&
95           2.5454530E-05,  2.5454530E-05,  2.5454530E-05, 7.4999953E-06,&
96           5.7142838E-06,  5.7142838E-06, 13*0./
98 ! for NO
99       data (cmaq_bc9(2,1,k),k=1,34)&
100           / 9.9999997E-06,9.9999997E-06,9.9999997E-06, &
101           9.9999997E-06, 9.9999997E-06,9.6428539E-06, 9.2857072E-06,&
102           7.4999953E-06, 5.7142838E-06,5.7142838E-06,24*0./ 
103       data (cmaq_bc9(2,2,k),k=1,34)&
104          /34*0./
105       data (cmaq_bc9(2,3,k),k=1,34)&
106          / 5*8.2999999E-05, 8.1535698E-05, 8.0071397E-05,&
107            7.2749986E-05, 6.5428569E-05, 6.5428569E-05, 4.2000000E-05,&
108            4.2000000E-05, 4.2000000E-05, 2.8000009E-05, 2.8000009E-05,&
109            1.2727260E-05, 1.2727260E-05, 1.2727260E-05, 16*0./
110       data (cmaq_bc9(2,4,k),k=1,34)&
111          / 5*8.2999999E-05, 8.1535698E-05, 8.0071397E-05,& 
112            7.2749986E-05,   2*6.5428569E-05,3*4.2000000E-05,& 
113            2*2.8000009E-05, 3*1.2727260E-05, 16*0./
115 ! for O
116       data ((cmaq_bc9(3,i,k),k=1,34),i=1,4)&
117       /136*0./
119 ! for O3 (CAM profile corporated)
120       data (cmaq_bc9(4,1,k),k=1,34)&
121       /2*2.9999999E-02, 3.0714281E-02,&
122       3.1785712E-02, 3.2857139E-02, 3.4107145E-02, 0.034610,&
123       0.034933, 0.035268, 0.035629, 0.035993,&
124       0.036361, 0.036940, 0.037728, 0.038633,&
125       0.039955, 0.041303, 0.042877, 0.044563,&
126       0.046555, 0.048089, 0.049924, 0.052937,&
127       0.056136, 0.059363, 0.062810, &
128       0.064494, 0.065790, 0.069328, 0.074218, &
129       0.086511, 0.100520, 0.117374, 0.182958  /
130       data (cmaq_bc9(4,2,k),k=1,34)&
131       /2*2.9999999E-02, 3.0714281E-02,&
132       3.1785712E-02, 3.2857139E-02, 3.4107145E-02, 0.034610,&
133       0.034933, 0.035268, 0.035629, 0.035993,&
134       0.036361, 0.036940, 0.037728, 0.038633,&
135       0.039955, 0.041303, 0.042877, 0.044563,&
136       0.046555, 0.048089, 0.049924, 0.052937,&
137       0.056136, 0.059363, 0.062810, &
138       0.064494, 0.065790, 0.069328, 0.074218, &
139       0.086511, 0.100520, 0.117374, 0.182958  /
140       data (cmaq_bc9(4,3,k),k=1,34)&
141       /5*3.5000000E-02,3.5178576E-02,0.034610,&
142        0.034933,0.035268,0.035629,0.035993,&
143        0.036361,0.036940,0.037728,0.038633,&
144        0.039955,0.041303,0.042877,0.044563,&
145        0.046555,0.048089,0.049924,0.052937,&
146        0.056136, 0.059363, 0.062810, &
147        0.064494, 0.065790, 0.069328, 0.074218, &
148        0.086511, 0.100520, 0.117374, 0.182958 /
149       data (cmaq_bc9(4,4,k),k=1,34)&
150       /5*3.5000000E-02,3.5178576E-02,0.034610,&
151        0.034933,0.035268,0.035629,0.035993,&
152        0.036361,0.036940,0.037728,0.038633,&
153        0.039955,0.041303,0.042877,0.044563,&
154        0.046555,0.048089,0.049924,0.052937,&
155        0.056136, 0.059363, 0.062810, &
156        0.064494, 0.065790, 0.069328, 0.074218, &
157        0.086511, 0.100520, 0.117374, 0.182958 /
159 ! for no3
160       data ((cmaq_bc9(5,i,k),k=1,34),i=1,4)&
161       /136*0./
163 ! for o1d
164       data ((cmaq_bc9(6,i,k),k=1,34),i=1,4)&
165       /136*0./
167 ! for oh
168       data ((cmaq_bc9(7,i,k),k=1,34),i=1,4)&
169       /136*0./ 
171 ! for ho2
172       data ((cmaq_bc9(8,i,k),k=1,34),i=1,4)&
173       /136*0./
175 ! for n2o5
176       data ((cmaq_bc9(9,i,k),k=1,34),i=1,4)&
177       /136*0./
179 ! for hno3
180       data (cmaq_bc9(10,1,k),k=1,34)&
181       /25*4.9999999E-05,3*9.9999997E-05,1.2500001E-04,5*1.5000001E-04/
182       data (cmaq_bc9(10,2,k),k=1,34)&
183       /25*4.9999999E-05,3*9.9999997E-05,1.2500001E-04,5*1.5000001E-04/
184       data (cmaq_bc9(10,3,k),k=1,34)&
185       /18*4.9999999E-05,2*5.1851850E-05, 5.5370372E-05,&
186         5.8888891E-05, 6.3518521E-05, 2*6.8148147E-05,&
187         3*8.5000000E-05,9.2499999E-05,5*9.9999997E-05/
188       data (cmaq_bc9(10,4,k),k=1,34)&
189       /18*4.9999999E-05,2*5.1851850E-05, 5.5370372E-05,&
190         5.8888891E-05, 6.3518521E-05, 2*6.8148147E-05,&
191         3*8.5000000E-05,9.2499999E-05,5*9.9999997E-05/
193 ! for hono
194      data ((cmaq_bc9(11,i,k),k=1,34),i=1,4)&
195       /136*9.9999997E-10/
197 ! for pna
198      data ((cmaq_bc9(12,i,k),k=1,34),i=1,4)&
199       /136*1.9999999E-09/
201 ! for h2o2
202      data (cmaq_bc9(13,1,k),k=1,34)&
203       /18*2.0000001E-03,2*1.9537040E-03, 1.8657411E-03,&
204        1.7777780E-03, 1.6620370E-03, 1.5462959E-03,    &
205        1.5462959E-03, 1.2500000E-03, 1.2500000E-03,    &
206        1.2500000E-03, 1.1250000E-03, 5*1.0000000E-03/
207      data (cmaq_bc9(13,2,k),k=1,34)&
208       /18*2.0000001E-03,2*1.9537040E-03, 1.8657411E-03,&
209        1.7777780E-03, 1.6620370E-03, 1.5462959E-03,    &
210        1.5462959E-03, 1.2500000E-03, 1.2500000E-03,    &
211        1.2500000E-03, 1.1250000E-03, 5*1.0000000E-03/
212      data (cmaq_bc9(13,3,k),k=1,34)&
213       /5*1.0000000E-03, 1.0178576E-03,1.0357150E-03,&
214       1.1250004E-03,1.2142860E-03,1.2142860E-03,3*1.5000000E-03,&
215       2*1.3333330E-03,3*1.1515151E-03,2*9.8148151E-04,&
216       9.4629632E-04,9.1111113E-04,8.6481485E-04,2*8.1851851E-04,&
217       3*5.0000002E-04, 3.5000002E-04,5*1.9999999E-04/
218      data (cmaq_bc9(13,4,k),k=1,34)&
219       /5*1.0000000E-03, 1.0178576E-03,1.0357150E-03,&
220       1.1250004E-03,1.2142860E-03,1.2142860E-03,3*1.5000000E-03,&
221       2*1.3333330E-03,3*1.1515151E-03,2*9.8148151E-04,&
222       9.4629632E-04,9.1111113E-04,8.6481485E-04,2*8.1851851E-04,&
223       3*5.0000002E-04, 3.5000002E-04,5*1.9999999E-04/
225 ! for xo2
226      data ((cmaq_bc9(14,i,k),k=1,34),i=1,4)&
227       /136*0./
229 ! for xo2n
230      data ((cmaq_bc9(15,i,k),k=1,34),i=1,4)&
231       /136*0./
233 ! for ntr
234      data ((cmaq_bc9(16,i,k),k=1,34),i=1,4)&
235       /136*0./ 
237 ! for rooh
238      data ((cmaq_bc9(17,i,k),k=1,34),i=1,4)&
239       /136*0./  
241 ! for form
242      data ((cmaq_bc9(18,i,k),k=1,34),i=1,4)&
243       /136*0./ 
245 ! for ald2
246      data ((cmaq_bc9(19,i,k),k=1,34),i=1,4)&
247       /136*0./  
249 ! for aldx
250      data ((cmaq_bc9(20,i,k),k=1,34),i=1,4)&
251       /136*0./  
253 ! for par
254      data ((cmaq_bc9(21,i,k),k=1,34),i=1,4)&
255       /136*0./  
257 ! for co
258      data (cmaq_bc9(22,1,k),k=1,34)&
259       /18*7.0000000E-02,2*6.9537044E-02,6.8657413E-02,&
260        6.7777783E-02,6.6620372E-02,2*6.5462962E-02,&
261        3*5.9999999E-02,5.7499997E-02,5*5.5000000E-02/
262       data (cmaq_bc9(22,2,k),k=1,34)&  
263       /13*7.9999998E-02,2*7.8333333E-02,3*7.6515153E-02,&
264        2*7.4537039E-02, 7.3657408E-02, 7.2777778E-02,7.1620367E-02,&
265        7.0462957E-02,   7.0462957E-02, 6.7500003E-02, 6.7500003E-02,&
266        6.7500003E-02,   6.6249996E-02, 5*6.4999998E-02/
267       data (cmaq_bc9(22,3,k),k=1,34)&   
268       /13*7.9999998E-02,2*7.6666668E-02,3*7.3030300E-02,&
269        2*6.9537044E-02,6.8657413E-02,6.7777783E-02,6.6620372E-02,&
270        6.5462962E-02, 6.5462962E-02, 5.7500001E-02, 5.7500001E-02,&
271        5.7500001E-02, 5.3750001E-02, 5*5.0000001E-02/
272       data (cmaq_bc9(22,4,k),k=1,34)&
273       /13*7.9999998E-02,2*7.6666668E-02,3*7.3030300E-02,&
274        2*6.9537044E-02,6.8657413E-02,6.7777783E-02,6.6620372E-02,&
275        6.5462962E-02, 6.5462962E-02, 5.7500001E-02, 5.7500001E-02,&
276        5.7500001E-02, 5.3750001E-02, 5*5.0000001E-02/
278 ! for meo2
279      data ((cmaq_bc9(23,i,k),k=1,34),i=1,4)&
280       /136*0./
282 ! for mepx
283       data (cmaq_bc9(24,1,k),k=1,34)&
284       /13*2.5000000E-07,2*2.3333330E-07,3*2.1515150E-07, &
285        2*1.9537040E-07,1.8657411E-07,1.7777781E-07,1.6620371E-07,&
286        2*1.5462960E-07,3*1.2500000E-07,1.1250000E-07,&
287        5*1.0000000E-07/  
288       data (cmaq_bc9(24,2,k),k=1,34)&
289       /13*2.5000000E-07,2*2.3333330E-07,3*2.1515150E-07, &
290        2*1.9537040E-07,1.8657411E-07,1.7777781E-07,1.6620371E-07,&
291        2*1.5462960E-07,3*1.2500000E-07,1.1250000E-07,&
292        5*1.0000000E-07/
293       data (cmaq_bc9(24,3,k),k=1,34)&
294       /13*2.5000000E-07,2*2.3333330E-07,3*2.1515150E-07,&
295        2*1.9074071E-07,1.7314815E-07,1.5555560E-07,1.3240745E-07,&
296        1.0925930E-07,1.0925930E-07,3*7.5000003E-08,6.2500000E-08,&
297        5*5.0000001E-08/
298      data (cmaq_bc9(24,4,k),k=1,34)&
299       /13*2.5000000E-07,2*2.3333330E-07,3*2.1515150E-07,&
300        2*1.9074071E-07,1.7314815E-07,1.5555560E-07,1.3240745E-07,&
301        1.0925930E-07,1.0925930E-07,3*7.5000003E-08,6.2500000E-08,&
302        5*5.0000001E-08/
304 ! for meoh
305      data ((cmaq_bc9(25,i,k),k=1,34),i=1,4)&
306       /136*0./
308 ! for hco3
309      data ((cmaq_bc9(26,i,k),k=1,34),i=1,4)&    
310       /136*0./ 
312 ! for facd
313      data (cmaq_bc9(27,1,k),k=1,34)&
314      /2*1.5000001E-06,1.3571430E-06,1.1428572E-06,&
315       9.2857141E-07,7.1428570E-07,28*5.0000000E-07/
316      data (cmaq_bc9(27,2,k),k=1,34)&
317      /2*1.5000001E-06,1.3571430E-06,1.1428572E-06,&
318       9.2857141E-07,7.1428570E-07,28*5.0000000E-07/
319      data (cmaq_bc9(27,3,k),k=1,34)&
320      /5*1.0000000E-06,9.8214264E-07,9.6428539E-07,&
321         8.7499978E-07,7.8571418E-07,7.8571418E-07,&
322         15*5.0000000E-07,3*2.5000000E-07,1.2500000E-07,&
323         5*0./
324      data (cmaq_bc9(27,4,k),k=1,34)&
325      /5*1.0000000E-06,9.8214264E-07,9.6428539E-07,&
326         8.7499978E-07,7.8571418E-07,7.8571418E-07,&
327         15*5.0000000E-07,3*2.5000000E-07,1.2500000E-07,&
328         5*0./
330 ! for c2o3
331      data ((cmaq_bc9(28,i,k),k=1,34),i=1,4)&
332      /136*9.9999997E-10/
334 ! for pan
335      data ((cmaq_bc9(29,i,k),k=1,34),i=1,2)&
336      /68*1.5000000E-05/
337      data (cmaq_bc9(29,3,k),k=1,34)&
338      /5*9.9999997E-05,9.8214266E-05,9.6428543E-05,&
339       8.7499982E-05,7.8571422E-05,7.8571422E-05,8*4.9999999E-05,&
340       2*4.6759251E-05, 4.0601852E-05,3.4444449E-05,2.6342594E-05,&
341       2*1.8240740E-05, 3*7.4999998E-06,3.7499999E-06,5*0./
342      data (cmaq_bc9(29,4,k),k=1,34)&
343      /5*9.9999997E-05,9.8214266E-05,9.6428543E-05,&
344       8.7499982E-05,7.8571422E-05,7.8571422E-05,8*4.9999999E-05,&
345       2*4.6759251E-05, 4.0601852E-05,3.4444449E-05,2.6342594E-05,&
346       2*1.8240740E-05, 3*7.4999998E-06,3.7499999E-06,5*0./
348 ! for pacd
349      data (cmaq_bc9(30,1,k),k=1,34)&
350       /18*9.9999997E-05,2*9.5370357E-05,8.6574073E-05,&
351        7.7777782E-05,6.6203706E-05,5.4629629E-05,5.4629629E-05,&
352        9*4.9999999E-05/
353      data (cmaq_bc9(30,2,k),k=1,34)&
354       /34*4.9999999E-05/
355      data (cmaq_bc9(30,3,k),k=1,34)&
356       /13*2.9999999E-05,2*2.8333330E-05,3*2.6515150E-05,&
357         2*2.4537039E-05,2.3657409E-05,2.2777780E-05,2.1620370E-05,&
358         2*2.0462960E-05, 3*1.7500000E-05,1.6250000E-05,5*1.5000000E-05/
359      data (cmaq_bc9(30,4,k),k=1,34)&
360       /13*2.9999999E-05,2*2.8333330E-05,3*2.6515150E-05,&
361         2*2.4537039E-05,2.3657409E-05,2.2777780E-05,2.1620370E-05,&
362         2*2.0462960E-05, 3*1.7500000E-05,1.6250000E-05,5*1.5000000E-05/
364 ! for aacd
365       data (cmaq_bc9(31,1,k),k=1,34)&
366         /2*1.5000001E-06, 1.3571430E-06,1.1428572E-06,9.2857141E-07,&
367         7.1428570E-07,  28*5.0000000E-07/
368       data (cmaq_bc9(31,2,k),k=1,34)&
369         /2*1.5000001E-06, 1.3571430E-06,1.1428572E-06,9.2857141E-07,&
370         7.1428570E-07,  28*5.0000000E-07/
371       data (cmaq_bc9(31,3,k),k=1,34)&
372        /5*1.0000000E-06,9.8214264E-07,9.6428539E-07,&
373         8.7499978E-07,7.8571418E-07,7.8571418E-07,15*5.0000000E-07,&
374         3*2.5000000E-07,1.2500000E-07,5*0/
375       data (cmaq_bc9(31,4,k),k=1,34)&
376        /5*1.0000000E-06,9.8214264E-07,9.6428539E-07,&
377         8.7499978E-07,7.8571418E-07,7.8571418E-07,15*5.0000000E-07,&
378         3*2.5000000E-07,1.2500000E-07,5*0/ 
380 ! for cxo3
381      data ((cmaq_bc9(32,i,k),k=1,34),i=1,4)&
382       /136*9.9999997E-10/
384 ! for panx
385      data ((cmaq_bc9(33,i,k),k=1,34),i=1,4)&
386       /136*9.9999997E-10/
388 ! for ror
389      data ((cmaq_bc9(34,i,k),k=1,34),i=1,4)&
390       /136*0./
392 ! for ole
393      data ((cmaq_bc9(35,i,k),k=1,34),i=1,2)&
394       /68*0./
395      data (cmaq_bc9(35,3,k),k=1,34)&
396       /5*2.0000000E-07,1.9642854E-07,1.9285710E-07,&
397       1.7499994E-07,2*1.5714279E-07,3*1.0000000E-07,2*6.6666693E-08,&
398       3*3.0303010E-08,16*0./
399      data (cmaq_bc9(35,4,k),k=1,34)&
400       /5*2.0000000E-07,1.9642854E-07,1.9285710E-07,&
401       1.7499994E-07,2*1.5714279E-07,3*1.0000000E-07,2*6.6666693E-08,&
402       3*3.0303010E-08,16*0./
404 ! for eth
405      data ((cmaq_bc9(36,i,k),k=1,34),i=1,2)&
406       /68*0./
407      data (cmaq_bc9(36,3,k),k=1,34)&
408       /2*4.9999999E-06, 4.7142862E-06,4.2857146E-06,&
409       3.8571429E-06,3.3928568E-06,2.9285709E-06,2.7499996E-06,&
410       2*2.5714280E-06,3*2.0000000E-06,2*1.6666670E-06,3*1.3030300E-06,&
411       7*1.0000000E-06, 3* 5.0000000E-07,2.5000000E-07,5*0./
412      data (cmaq_bc9(36,4,k),k=1,34)&
413       /2*4.9999999E-06, 4.7142862E-06,4.2857146E-06,&
414       3.8571429E-06,3.3928568E-06,2.9285709E-06,2.7499996E-06,&
415       2*2.5714280E-06,3*2.0000000E-06,2*1.6666670E-06,3*1.3030300E-06,&
416       7*1.0000000E-06, 3* 5.0000000E-07,2.5000000E-07,5*0./
418 ! for iole
419      data ((cmaq_bc9(37,i,k),k=1,34),i=1,2)&
420       /68*0./
421      data (cmaq_bc9(37,3,k),k=1,34)&
422       /5*1.0000000E-07,9.6428536E-08,9.2857071E-08,&
423        7.4999960E-08,2*5.7142849E-08,24*0./
424      data (cmaq_bc9(37,4,k),k=1,34)&
425       /5*1.0000000E-07,9.6428536E-08,9.2857071E-08,&
426        7.4999960E-08,2*5.7142849E-08,24*0./
428 ! for tol
429      data ((cmaq_bc9(38,i,k),k=1,34),i=1,2)&
430       /68*0./
431      data (cmaq_bc9(38,3,k),k=1,34)&
432       /18*1.0000000E-06, 2*9.0740730E-07,&
433        7.3148146E-07,5.5555557E-07,3.2407408E-07,&
434        2*9.2592600E-08,9*0./
435      data (cmaq_bc9(38,4,k),k=1,34)&
436       /18*1.0000000E-06, 2*9.0740730E-07,&
437        7.3148146E-07,5.5555557E-07,3.2407408E-07,&
438        2*9.2592600E-08,9*0./
440 ! for cres
441      data ((cmaq_bc9(39,i,k),k=1,34),i=1,4)&
442       /136*9.9999997E-10/
444 ! for to2
445      data ((cmaq_bc9(40,i,k),k=1,34),i=1,4)&
446       /136*9.9999997E-10/
448 ! for tolaer1
449      data ((cmaq_bc9(41,i,k),k=1,34),i=1,4)&
450       /136*0./
451 ! for tolaer2
452      data ((cmaq_bc9(42,i,k),k=1,34),i=1,4)&
453       /136*0./
455 ! for open
456      data (cmaq_bc9(43,1,k),k=1,34)&
457       /13*2.5000000E-07, 2*2.3333330E-07,3*2.1515150E-07,&
458        2*1.9537040E-07, 1.8657411E-07,1.7777781E-07,1.6620371E-07,&
459        2*1.5462960E-07,3*1.2500000E-07,1.1250000E-07,5*1.0000000E-07/
460      data (cmaq_bc9(43,2,k),k=1,34)&
461       /13*2.5000000E-07, 2*2.3333330E-07,3*2.1515150E-07,&
462        2*1.9537040E-07, 1.8657411E-07,1.7777781E-07,1.6620371E-07,&
463        2*1.5462960E-07,3*1.2500000E-07,1.1250000E-07,5*1.0000000E-07/
464      data (cmaq_bc9(43,3,k),k=1,34)&
465       / 13*2.5000000E-07, 2*2.3333330E-07,&
466         3*2.1515150E-07, 2*1.9074071E-07,1.7314815E-07,1.5555560E-07,&
467         1.3240745E-07,2*1.0925930E-07,&
468         3*7.5000003E-08, 6.2500000E-08, 5*5.0000001E-08/
469      data (cmaq_bc9(43,4,k),k=1,34)&
470       / 13*2.5000000E-07, 2*2.3333330E-07,&
471         3*2.1515150E-07, 2*1.9074071E-07,1.7314815E-07,1.5555560E-07,&
472         1.3240745E-07,2*1.0925930E-07,&
473         3*7.5000003E-08, 6.2500000E-08, 5*5.0000001E-08/
475 ! for cro
476       data ((cmaq_bc9(44,i,k),k=1,34),i=1,4)&
477       /136*0./
479 ! for cslaer
480      data ((cmaq_bc9(45,i,k),k=1,34),i=1,4)&
481       /136*0./
483 ! for mgly
484      data (cmaq_bc9(46,1,k),k=1,34)&
485       /13*2.5000000E-07,2*2.3333330E-07,3*2.1515150E-07,&
486        2*1.9537040E-07, 1.8657411E-07, 1.7777781E-07, 1.6620371E-07,&
487        2*1.5462960E-07, 3*1.2500000E-07,1.1250000E-07,5*1.0000000E-07/
488      data (cmaq_bc9(46,2,k),k=1,34)&
489       /13*2.5000000E-07,2*2.3333330E-07,3*2.1515150E-07,&
490        2*1.9537040E-07, 1.8657411E-07, 1.7777781E-07, 1.6620371E-07,&
491        2*1.5462960E-07, 3*1.2500000E-07,1.1250000E-07,5*1.0000000E-07/
492      data (cmaq_bc9(46,3,k),k=1,34)&
493       /13*2.5000000E-07,2*2.3333330E-07,3*2.1515150E-07,&
494        2*1.9074071E-07,1.7314815E-07,1.5555560E-07,1.3240745E-07,&
495        2*1.0925930E-07, 3*7.5000003E-08,6.2500000E-08,&
496        5*5.0000001E-08 /
497      data (cmaq_bc9(46,4,k),k=1,34)&
498       /13*2.5000000E-07,2*2.3333330E-07,3*2.1515150E-07,&
499        2*1.9074071E-07,1.7314815E-07,1.5555560E-07,1.3240745E-07,&
500        2*1.0925930E-07, 3*7.5000003E-08,6.2500000E-08,&
501        5*5.0000001E-08 /
503 ! for xyl
504      data ((cmaq_bc9(47,i,k),k=1,34),i=1,2)&
505       /68*0./ 
506       data (cmaq_bc9(47,3,k),k=1,34)&
507       / 5*2.0000000E-07,1.9642854E-07,1.9285710E-07,&
508         1.7499994E-07,2*1.5714279E-07,3*1.0000000E-07,&
509          2*6.6666693E-08,3*3.0303010E-08, 16*0.0/
510       data (cmaq_bc9(47,4,k),k=1,34)&
511       / 5*2.0000000E-07,1.9642854E-07,1.9285710E-07,&
512         1.7499994E-07,2*1.5714279E-07,3*1.0000000E-07,&
513          2*6.6666693E-08,3*3.0303010E-08, 16*0.0/
515 ! for xylaer1
516       data ((cmaq_bc9(48,i,k),k=1,34),i=1,4)&
517       /136*0./ 
519 ! for xylaer2
520       data ((cmaq_bc9(49,i,k),k=1,34),i=1,4)&
521       /136*0./
523 ! for isop
524      data ((cmaq_bc9(50,i,k),k=1,34),i=1,2)&
525       /68*0./  
526      data (cmaq_bc9(50,3,k),k=1,34)& 
527       /5*1.5000001E-04,1.4464281E-04,1.3928561E-04,&
528        1.1249994E-04,2*8.5714273E-05,24*0./
529      data (cmaq_bc9(50,4,k),k=1,34)&
530       /5*1.5000001E-04,1.4464281E-04,1.3928561E-04,&
531        1.1249994E-04,2*8.5714273E-05,24*0./
533 ! for ispd
534       data ((cmaq_bc9(51,i,k),k=1,34),i=1,4)&
535       /136*0./  
537 ! for isoaer1
538       data ((cmaq_bc9(52,i,k),k=1,34),i=1,4)&
539       /136*0./
541 ! for isoaer2
542       data ((cmaq_bc9(53,i,k),k=1,34),i=1,4)&
543       /136*0./
545 ! so2
546      data ((cmaq_bc9(54,i,k),k=1,34),i=1,2)&
547       /68*0./
548      data (cmaq_bc9(54,3,k),k=1,34)&
549       /2*3.0000001E-04,2.8571431E-04, 2.6428571E-04,&
550        2.4285710E-04,2.1785710E-04,1.9285710E-04,&
551        1.7499995E-04,2*1.5714280E-04,1.5714280E-04,8*9.9999997E-05,&
552        2*9.2592578E-05,7.8518511E-05,6.4444437E-05,4.5925924E-05,&
553        2*2.7407410E-05,3*1.5000000E-05,5*9.9999997E-06/
554      data (cmaq_bc9(54,4,k),k=1,34)&
555       /2*3.0000001E-04,2.8571431E-04, 2.6428571E-04,&
556        2.4285710E-04,2.1785710E-04,1.9285710E-04,&
557        1.7499995E-04,2*1.5714280E-04,1.5714280E-04,8*9.9999997E-05,&
558        2*9.2592578E-05,7.8518511E-05,6.4444437E-05,4.5925924E-05,&
559        2*2.7407410E-05,3*1.5000000E-05,5*9.9999997E-06/
561 ! sulf
562      data ((cmaq_bc9(55,i,k),k=1,34),i=1,4)&
563       /136*1.0000000E-30/
565 ! sulfaer
566       data ((cmaq_bc9(56,i,k),k=1,34),i=1,4)&
567       /136*0./  
569 ! etoh 
570       data ((cmaq_bc9(57,i,k),k=1,34),i=1,4)&
571       /136*0./
573 ! etha
574       data (cmaq_bc9(58,1,k),k=1,34)&
575       /13*9.9999997E-05,2*8.9000008E-05,&
576        3*7.6999990E-05,16*6.7000001E-05/
577       data (cmaq_bc9(58,2,k),k=1,34)&
578       /13*9.9999997E-05,2*8.9000008E-05,&
579        3*7.6999990E-05,2*6.3851847E-05,&
580        5.7870369E-05,5.1888888E-05,4.4018518E-05,&
581        2*3.6148151E-05,9*3.3000000E-05/
582      data (cmaq_bc9(58,3,k),k=1,34)&
583       /5*9.9999997E-05,9.9285702E-05,9.8571407E-05,&
584        9.4999989E-05,2*9.1428570E-05,3*7.9999998E-05,&
585        2*6.3333340E-05, 3*4.5151501E-05,&
586        2*2.8148141E-05, 2.4629626E-05, 2.1111109E-05,1.6481479E-05,&
587        2*1.1851850E-05, 3*4.9999999E-06,2.4999999E-06,5*0./  
588      data (cmaq_bc9(58,4,k),k=1,34)&
589       /5*9.9999997E-05,9.9285702E-05,9.8571407E-05,&
590        9.4999989E-05,2*9.1428570E-05,3*7.9999998E-05,&
591        2*6.3333340E-05, 3*4.5151501E-05,&
592        2*2.8148141E-05, 2.4629626E-05, 2.1111109E-05,1.6481479E-05,&
593        2*1.1851850E-05, 3*4.9999999E-06,2.4999999E-06,5*0./
595 ! for terp
596      data ((cmaq_bc9(59,i,k),k=1,34),i=1,2)&
597       /68*0./
598      data (cmaq_bc9(59,3,k),k=1,34)&
599       / 5*3.7500002E-05,3.6160702E-05,3.4821402E-05,&
600        2.8124985E-05, 2*2.1428570E-05,24*0./
601      data (cmaq_bc9(59,4,k),k=1,34)&
602       / 5*3.7500002E-05,3.6160702E-05,3.4821402E-05,&
603        2.8124985E-05, 2*2.1428570E-05,24*0./
605 ! terpaer
606       data ((cmaq_bc9(60,i,k),k=1,34),i=1,4)&
607       /136*0./
609 ! for hum
610      data ((cmaq_bc9(61,i,k),k=1,34),i=1,2)&
611       /68*0./
612      data (cmaq_bc9(61,3,k),k=1,34)&
613       / 5*1.2412500662E-05,1.1969192362E-05,1.1525884062E-05,&
614        0.9309370035E-05, 2*0.709285667E-05,24*0./
615      data (cmaq_bc9(61,4,k),k=1,34)&
616       / 5*1.218262564974E-05,1.174752725874E-05,1.131242886774E-05,&
617        0.913696387695E-05, 2*0.69614995359E-05,24*0./
619 ! for humaer
620       data ((cmaq_bc9(62,i,k),k=1,34),i=1,4)&
621       /136*0./
623 ! for lim
624      data ((cmaq_bc9(63,i,k),k=1,34),i=1,2)&
625       /68*0./
626      data (cmaq_bc9(63,3,k),k=1,34)&
627       / 5*0.506250027E-05,0.488269477E-05,0.470088927E-05,&
628        0.3796872975E-05, 2*0.289285695E-05,24*0./
629      data (cmaq_bc9(63,4,k),k=1,34)&
630       / 5*0.3016087660858E-05,0.2908369101158E-05,0.2800650541458E-05,&
631        0.2262064418565E-05, 2*0.172347845653E-05,24*0./
633 ! for limaer1
634       data ((cmaq_bc9(64,i,k),k=1,34),i=1,4)&
635       /136*0./
637 ! for limaer2
638       data ((cmaq_bc9(65,i,k),k=1,34),i=1,4)&
639       /136*0./
641 ! for oci
642      data ((cmaq_bc9(66,i,k),k=1,34),i=1,2)&
643       /68*0./
644      data (cmaq_bc9(66,3,k),k=1,34)&
645       / 5*0.8137500434E-05,0.7846872334E-05,0.7556244234E-05,&
646        0.6103121745E-05, 2*0.464999969E-05,24*0./
647      data (cmaq_bc9(66,4,k),k=1,34)&
648       / 5*0.6262500334E-05,0.6038837234E-05,0.5815174134E-05,&
649        0.4696872495E-05, 2*0.357857119E-05,24*0./
651 ! for ociaer1
652       data ((cmaq_bc9(67,i,k),k=1,34),i=1,4)&
653       /136*0./
655 ! for ociaer2
656       data ((cmaq_bc9(68,i,k),k=1,34),i=1,4)&
657       /136*0./
659 ! for apin
660      data ((cmaq_bc9(69,i,k),k=1,34),i=1,2)&
661       /68*0./
662      data (cmaq_bc9(69,3,k),k=1,34)&
663       / 5*0.331875E-05,0.3200222127E-05,0.3081694077E-05,&
664        0.24890611725E-05, 2*0.1896428445E-05,24*0./
665      data (cmaq_bc9(69,4,k),k=1,34)&
666       / 5*0.69192375E-05,0.6672119608126E-05,0.6425001347226E-05,&
667        0.5189425357305E-05, 2*0.395384973641E-05,24*0./
669 ! for apinaer1
670       data ((cmaq_bc9(70,i,k),k=1,34),i=1,4)&
671       /136*0./
673 ! for apinaer2
674       data ((cmaq_bc9(71,i,k),k=1,34),i=1,4)&
675       /136*0./
677 ! for apinaer3
678       data ((cmaq_bc9(72,i,k),k=1,34),i=1,4)&
679       /136*0./
681 ! for apinaer4
682       data ((cmaq_bc9(73,i,k),k=1,34),i=1,4)&
683       /136*0./
685 ! for bpin
686      data ((cmaq_bc9(74,i,k),k=1,34),i=1,2)&
687       /68*0./
688      data (cmaq_bc9(74,3,k),k=1,34)&
689       / 5*0.2587500138E-05,0.2495088438E-05,0.2402676738E-05,&
690        0.1940623965E-05, 2*0.147857133E-05,24*0./
691      data (cmaq_bc9(74,4,k),k=1,34)&
692       / 5*0.85875E-05,0.8280800758E-05,0.7974101058E-05,&
693        0.6440621565E-05, 2*0.490714253E-05,24*0./
695 ! for bpinaer1
696       data ((cmaq_bc9(75,i,k),k=1,34),i=1,4)&
697       /136*0./
699 ! for bpinaer2
700       data ((cmaq_bc9(76,i,k),k=1,34),i=1,4)&
701       /136*0./
703 ! for bpinaer3
704       data ((cmaq_bc9(77,i,k),k=1,34),i=1,4)&
705       /136*0./
707 ! for bpinaer4
708       data ((cmaq_bc9(78,i,k),k=1,34),i=1,4)&
709       /136*0./
711 ! for bpinaer5
712       data ((cmaq_bc9(79,i,k),k=1,34),i=1,4)&
713       /136*0./
715 ! for ter
717      data ((cmaq_bc9(80,i,k),k=1,34),i=1,2)&
718       /68*0./
719      data (cmaq_bc9(80,3,k),k=1,34)&
720       / 5*0.5925000316E-05,0.5713390916E-05,0.5501781516E-05,&
721        0.444374763E-05, 2*0.338571406E-05,24*0./
722      data (cmaq_bc9(80,4,k),k=1,34)&
723       / 5*0.0532237528386E-05,0.0513228843486E-05,0.0494220158586E-05,&
724        0.0399177912105E-05, 2*0.030413569401E-05,24*0./
726 ! for teraer1
727       data ((cmaq_bc9(81,i,k),k=1,34),i=1,4)&
728       /136*0./
730 ! for teraer2
731       data ((cmaq_bc9(82,i,k),k=1,34),i=1,4)&
732       /136*0./
734 ! for alkh
735       data ((cmaq_bc9(83,i,k),k=1,34),i=1,4)&
736       /136*0./
738 ! for alkhaer1
739       data ((cmaq_bc9(84,i,k),k=1,34),i=1,4)&
740       /136*0./
742 ! for pah
743       data ((cmaq_bc9(85,i,k),k=1,34),i=1,4)&
744       /136*0./
746 ! for pahaer1
747       data ((cmaq_bc9(86,i,k),k=1,34),i=1,4)&
748       /136*0./
750 ! for pahaer2
751       data ((cmaq_bc9(87,i,k),k=1,34),i=1,4)&
752       /136*0./
754 ! for cvasoa1
755       data ((cmaq_bc9(88,i,k),k=1,34),i=1,4)&
756       /136*0./
758 ! for cvasoa2
759       data ((cmaq_bc9(89,i,k),k=1,34),i=1,4)&
760       /136*0./
762 ! for cvasoa3
763       data ((cmaq_bc9(90,i,k),k=1,34),i=1,4)&
764       /136*0./
766 ! for cvasoa4
767       data ((cmaq_bc9(91,i,k),k=1,34),i=1,4)&
768       /136*0./
770 ! for cvbsoa1
771       data ((cmaq_bc9(92,i,k),k=1,34),i=1,4)&
772       /136*0./
773 ! for cvbsoa2
774       data ((cmaq_bc9(93,i,k),k=1,34),i=1,4)&
775       /136*0./
776 ! for cvbsoa3
777       data ((cmaq_bc9(94,i,k),k=1,34),i=1,4)&
778       /136*0./
779 ! for cvbsoa4
780       data ((cmaq_bc9(95,i,k),k=1,34),i=1,4)&
781       /136*0./
783 ! for h2
784       data ((cmaq_bc9(96,i,k),k=1,34),i=1,4)&
785       /136*0.5/
787 ! for ch4
788       data ((cmaq_bc9(97,i,k),k=1,34),i=1,4)&
789       /136*1.7/
791 ! for cl
792       data ((cmaq_bc9(98,i,k),k=1,34),i=1,4)&
793       /136*0./
795 ! for hcl
796       data ((cmaq_bc9(99,i,k),k=1,34),i=1,4)&
797       /136*0./
799 ! for fmcl
800       data ((cmaq_bc9(100,i,k),k=1,34),i=1,4)&
801       /136*0./
802 ! for hg0
803       data ((cmaq_bc9(101,i,k),k=1,34),i=1,4)&
804       /136*0./
805 ! for hg2
806       data ((cmaq_bc9(102,i,k),k=1,34),i=1,4)&
807       /136*0./
808 ! for hocl
809       data ((cmaq_bc9(103,i,k),k=1,34),i=1,4)&
810       /136*0./
811 ! for clo
812       data ((cmaq_bc9(104,i,k),k=1,34),i=1,4)&
813       /136*0./
814 ! for cl2
815       data ((cmaq_bc9(105,i,k),k=1,34),i=1,4)&
816       /136*0./
817 ! for nh3
818       data ((cmaq_bc9(106,i,k),k=1,34),i=1,4)&
819       /136*0./
821        if (id_bdy .eq. 1 ) then
822           chem_bv = cmaq_bc9(nch-1,1,kk)
823        elseif (id_bdy .eq. 2 ) then
824           chem_bv = cmaq_bc9(nch-1,3,kk)
825        elseif (id_bdy .eq. 3 ) then
826           chem_bv = cmaq_bc9(nch-1,4,kk)
827        elseif (id_bdy .eq. 4 ) then
828           chem_bv = cmaq_bc9(nch-1,2,kk)
829        endif
830        if (nch==98 .and. id_bdy.eq.1) then
831 !       print*,"chem_bv=,",chem_bv
832 !       print*, "calling cb05 BC 101 option!!!"
833        endif
834        return
835        end subroutine bdy_chem_value_cb05_vbs