Line data Source code
1 : module mo_lu_solve
2 : use chem_mods, only: veclen
3 : private
4 : public :: lu_slv
5 : contains
6 8168963 : subroutine lu_slv01( avec_len, lu, b )
7 : use shr_kind_mod, only : r8 => shr_kind_r8
8 : use chem_mods, only : clscnt4, nzcnt
9 : implicit none
10 : !-----------------------------------------------------------------------
11 : ! ... Dummy args
12 : !-----------------------------------------------------------------------
13 : integer, intent(in) :: avec_len
14 : real(r8), intent(in) :: lu(veclen,max(1,nzcnt))
15 : real(r8), intent(inout) :: b(veclen,clscnt4)
16 : !-----------------------------------------------------------------------
17 : ! ... Local variables
18 : !-----------------------------------------------------------------------
19 : integer :: k
20 : !-----------------------------------------------------------------------
21 : ! ... solve L * y = b
22 : !-----------------------------------------------------------------------
23 263009123 : do k = 1,avec_len
24 254840160 : b(k,310) = b(k,310) - lu(k,115) * b(k,58)
25 254840160 : b(k,315) = b(k,315) - lu(k,116) * b(k,58)
26 254840160 : b(k,316) = b(k,316) - lu(k,118) * b(k,59)
27 254840160 : b(k,317) = b(k,317) - lu(k,119) * b(k,59)
28 254840160 : b(k,314) = b(k,314) - lu(k,121) * b(k,60)
29 254840160 : b(k,315) = b(k,315) - lu(k,122) * b(k,60)
30 254840160 : b(k,307) = b(k,307) - lu(k,124) * b(k,61)
31 254840160 : b(k,316) = b(k,316) - lu(k,125) * b(k,61)
32 254840160 : b(k,90) = b(k,90) - lu(k,127) * b(k,62)
33 254840160 : b(k,276) = b(k,276) - lu(k,128) * b(k,62)
34 254840160 : b(k,314) = b(k,314) - lu(k,129) * b(k,62)
35 254840160 : b(k,198) = b(k,198) - lu(k,131) * b(k,63)
36 254840160 : b(k,316) = b(k,316) - lu(k,132) * b(k,63)
37 254840160 : b(k,317) = b(k,317) - lu(k,133) * b(k,63)
38 254840160 : b(k,92) = b(k,92) - lu(k,135) * b(k,64)
39 254840160 : b(k,314) = b(k,314) - lu(k,136) * b(k,64)
40 254840160 : b(k,315) = b(k,315) - lu(k,137) * b(k,64)
41 254840160 : b(k,90) = b(k,90) - lu(k,139) * b(k,65)
42 254840160 : b(k,314) = b(k,314) - lu(k,140) * b(k,65)
43 254840160 : b(k,315) = b(k,315) - lu(k,141) * b(k,65)
44 254840160 : b(k,90) = b(k,90) - lu(k,143) * b(k,66)
45 254840160 : b(k,314) = b(k,314) - lu(k,144) * b(k,66)
46 254840160 : b(k,315) = b(k,315) - lu(k,145) * b(k,66)
47 254840160 : b(k,315) = b(k,315) - lu(k,147) * b(k,67)
48 254840160 : b(k,316) = b(k,316) - lu(k,148) * b(k,67)
49 254840160 : b(k,317) = b(k,317) - lu(k,149) * b(k,67)
50 254840160 : b(k,101) = b(k,101) - lu(k,151) * b(k,68)
51 254840160 : b(k,316) = b(k,316) - lu(k,152) * b(k,68)
52 254840160 : b(k,98) = b(k,98) - lu(k,154) * b(k,69)
53 254840160 : b(k,317) = b(k,317) - lu(k,155) * b(k,69)
54 254840160 : b(k,144) = b(k,144) - lu(k,157) * b(k,70)
55 254840160 : b(k,312) = b(k,312) - lu(k,158) * b(k,70)
56 254840160 : b(k,90) = b(k,90) - lu(k,160) * b(k,71)
57 254840160 : b(k,276) = b(k,276) - lu(k,161) * b(k,71)
58 254840160 : b(k,314) = b(k,314) - lu(k,162) * b(k,71)
59 254840160 : b(k,315) = b(k,315) - lu(k,163) * b(k,71)
60 254840160 : b(k,90) = b(k,90) - lu(k,165) * b(k,72)
61 254840160 : b(k,217) = b(k,217) - lu(k,166) * b(k,72)
62 254840160 : b(k,276) = b(k,276) - lu(k,167) * b(k,72)
63 254840160 : b(k,314) = b(k,314) - lu(k,168) * b(k,72)
64 254840160 : b(k,90) = b(k,90) - lu(k,170) * b(k,73)
65 254840160 : b(k,92) = b(k,92) - lu(k,171) * b(k,73)
66 254840160 : b(k,314) = b(k,314) - lu(k,172) * b(k,73)
67 254840160 : b(k,315) = b(k,315) - lu(k,173) * b(k,73)
68 254840160 : b(k,90) = b(k,90) - lu(k,175) * b(k,74)
69 254840160 : b(k,217) = b(k,217) - lu(k,176) * b(k,74)
70 254840160 : b(k,314) = b(k,314) - lu(k,177) * b(k,74)
71 254840160 : b(k,315) = b(k,315) - lu(k,178) * b(k,74)
72 254840160 : b(k,315) = b(k,315) - lu(k,180) * b(k,75)
73 254840160 : b(k,77) = b(k,77) - lu(k,183) * b(k,76)
74 254840160 : b(k,78) = b(k,78) - lu(k,184) * b(k,76)
75 254840160 : b(k,139) = b(k,139) - lu(k,185) * b(k,76)
76 254840160 : b(k,307) = b(k,307) - lu(k,186) * b(k,76)
77 254840160 : b(k,316) = b(k,316) - lu(k,187) * b(k,76)
78 254840160 : b(k,132) = b(k,132) - lu(k,189) * b(k,77)
79 254840160 : b(k,271) = b(k,271) - lu(k,190) * b(k,77)
80 254840160 : b(k,307) = b(k,307) - lu(k,191) * b(k,77)
81 254840160 : b(k,130) = b(k,130) - lu(k,193) * b(k,78)
82 254840160 : b(k,135) = b(k,135) - lu(k,194) * b(k,78)
83 254840160 : b(k,307) = b(k,307) - lu(k,195) * b(k,78)
84 254840160 : b(k,316) = b(k,316) - lu(k,196) * b(k,78)
85 254840160 : b(k,307) = b(k,307) - lu(k,198) * b(k,79)
86 254840160 : b(k,314) = b(k,314) - lu(k,199) * b(k,79)
87 254840160 : b(k,316) = b(k,316) - lu(k,200) * b(k,79)
88 254840160 : b(k,303) = b(k,303) - lu(k,202) * b(k,80)
89 254840160 : b(k,314) = b(k,314) - lu(k,203) * b(k,80)
90 254840160 : b(k,211) = b(k,211) - lu(k,205) * b(k,81)
91 254840160 : b(k,316) = b(k,316) - lu(k,206) * b(k,81)
92 254840160 : b(k,302) = b(k,302) - lu(k,208) * b(k,82)
93 254840160 : b(k,312) = b(k,312) - lu(k,209) * b(k,82)
94 254840160 : b(k,84) = b(k,84) - lu(k,212) * b(k,83)
95 254840160 : b(k,85) = b(k,85) - lu(k,213) * b(k,83)
96 254840160 : b(k,127) = b(k,127) - lu(k,214) * b(k,83)
97 254840160 : b(k,181) = b(k,181) - lu(k,215) * b(k,83)
98 254840160 : b(k,307) = b(k,307) - lu(k,216) * b(k,83)
99 254840160 : b(k,316) = b(k,316) - lu(k,217) * b(k,83)
100 254840160 : b(k,130) = b(k,130) - lu(k,219) * b(k,84)
101 254840160 : b(k,135) = b(k,135) - lu(k,220) * b(k,84)
102 254840160 : b(k,307) = b(k,307) - lu(k,221) * b(k,84)
103 254840160 : b(k,316) = b(k,316) - lu(k,222) * b(k,84)
104 254840160 : b(k,271) = b(k,271) - lu(k,224) * b(k,85)
105 254840160 : b(k,300) = b(k,300) - lu(k,225) * b(k,85)
106 254840160 : b(k,307) = b(k,307) - lu(k,226) * b(k,85)
107 254840160 : b(k,87) = b(k,87) - lu(k,230) * b(k,86)
108 254840160 : b(k,127) = b(k,127) - lu(k,231) * b(k,86)
109 254840160 : b(k,183) = b(k,183) - lu(k,232) * b(k,86)
110 254840160 : b(k,271) = b(k,271) - lu(k,233) * b(k,86)
111 254840160 : b(k,300) = b(k,300) - lu(k,234) * b(k,86)
112 254840160 : b(k,307) = b(k,307) - lu(k,235) * b(k,86)
113 254840160 : b(k,316) = b(k,316) - lu(k,236) * b(k,86)
114 254840160 : b(k,135) = b(k,135) - lu(k,238) * b(k,87)
115 254840160 : b(k,142) = b(k,142) - lu(k,239) * b(k,87)
116 254840160 : b(k,307) = b(k,307) - lu(k,240) * b(k,87)
117 254840160 : b(k,316) = b(k,316) - lu(k,241) * b(k,87)
118 254840160 : b(k,276) = b(k,276) - lu(k,243) * b(k,88)
119 254840160 : b(k,315) = b(k,315) - lu(k,244) * b(k,88)
120 254840160 : b(k,144) = b(k,144) - lu(k,246) * b(k,89)
121 254840160 : b(k,316) = b(k,316) - lu(k,247) * b(k,89)
122 254840160 : b(k,217) = b(k,217) - lu(k,249) * b(k,90)
123 254840160 : b(k,314) = b(k,314) - lu(k,250) * b(k,90)
124 254840160 : b(k,92) = b(k,92) - lu(k,252) * b(k,91)
125 254840160 : b(k,314) = b(k,314) - lu(k,253) * b(k,91)
126 254840160 : b(k,315) = b(k,315) - lu(k,254) * b(k,91)
127 254840160 : b(k,316) = b(k,316) - lu(k,255) * b(k,91)
128 254840160 : b(k,217) = b(k,217) - lu(k,257) * b(k,92)
129 254840160 : b(k,314) = b(k,314) - lu(k,258) * b(k,92)
130 254840160 : b(k,315) = b(k,315) - lu(k,259) * b(k,92)
131 254840160 : b(k,217) = b(k,217) - lu(k,262) * b(k,93)
132 254840160 : b(k,314) = b(k,314) - lu(k,263) * b(k,93)
133 254840160 : b(k,315) = b(k,315) - lu(k,264) * b(k,93)
134 254840160 : b(k,316) = b(k,316) - lu(k,265) * b(k,93)
135 254840160 : b(k,262) = b(k,262) - lu(k,267) * b(k,94)
136 254840160 : b(k,267) = b(k,267) - lu(k,268) * b(k,94)
137 254840160 : b(k,256) = b(k,256) - lu(k,270) * b(k,95)
138 254840160 : b(k,267) = b(k,267) - lu(k,271) * b(k,95)
139 254840160 : b(k,261) = b(k,261) - lu(k,273) * b(k,96)
140 254840160 : b(k,268) = b(k,268) - lu(k,274) * b(k,96)
141 254840160 : b(k,257) = b(k,257) - lu(k,276) * b(k,97)
142 254840160 : b(k,268) = b(k,268) - lu(k,277) * b(k,97)
143 254840160 : b(k,216) = b(k,216) - lu(k,280) * b(k,98)
144 254840160 : b(k,305) = b(k,305) - lu(k,281) * b(k,98)
145 254840160 : b(k,317) = b(k,317) - lu(k,282) * b(k,98)
146 254840160 : b(k,230) = b(k,230) - lu(k,284) * b(k,99)
147 254840160 : b(k,307) = b(k,307) - lu(k,285) * b(k,99)
148 254840160 : b(k,316) = b(k,316) - lu(k,286) * b(k,99)
149 254840160 : b(k,135) = b(k,135) - lu(k,288) * b(k,100)
150 254840160 : b(k,164) = b(k,164) - lu(k,289) * b(k,100)
151 254840160 : b(k,316) = b(k,316) - lu(k,290) * b(k,100)
152 254840160 : b(k,254) = b(k,254) - lu(k,292) * b(k,101)
153 254840160 : b(k,306) = b(k,306) - lu(k,293) * b(k,101)
154 254840160 : b(k,307) = b(k,307) - lu(k,294) * b(k,101)
155 254840160 : b(k,302) = b(k,302) - lu(k,296) * b(k,102)
156 254840160 : b(k,303) = b(k,303) - lu(k,297) * b(k,102)
157 254840160 : b(k,305) = b(k,305) - lu(k,298) * b(k,102)
158 254840160 : b(k,311) = b(k,311) - lu(k,299) * b(k,102)
159 254840160 : b(k,312) = b(k,312) - lu(k,300) * b(k,102)
160 254840160 : b(k,184) = b(k,184) - lu(k,302) * b(k,103)
161 254840160 : b(k,307) = b(k,307) - lu(k,303) * b(k,103)
162 254840160 : b(k,216) = b(k,216) - lu(k,305) * b(k,104)
163 254840160 : b(k,302) = b(k,302) - lu(k,306) * b(k,104)
164 254840160 : b(k,307) = b(k,307) - lu(k,307) * b(k,104)
165 254840160 : b(k,311) = b(k,311) - lu(k,308) * b(k,104)
166 254840160 : b(k,316) = b(k,316) - lu(k,309) * b(k,104)
167 254840160 : b(k,227) = b(k,227) - lu(k,311) * b(k,105)
168 254840160 : b(k,235) = b(k,235) - lu(k,312) * b(k,105)
169 254840160 : b(k,271) = b(k,271) - lu(k,313) * b(k,105)
170 254840160 : b(k,307) = b(k,307) - lu(k,314) * b(k,105)
171 254840160 : b(k,316) = b(k,316) - lu(k,315) * b(k,105)
172 254840160 : b(k,225) = b(k,225) - lu(k,317) * b(k,106)
173 254840160 : b(k,304) = b(k,304) - lu(k,318) * b(k,106)
174 254840160 : b(k,315) = b(k,315) - lu(k,319) * b(k,106)
175 254840160 : b(k,316) = b(k,316) - lu(k,320) * b(k,106)
176 254840160 : b(k,317) = b(k,317) - lu(k,321) * b(k,106)
177 254840160 : b(k,217) = b(k,217) - lu(k,323) * b(k,107)
178 254840160 : b(k,301) = b(k,301) - lu(k,324) * b(k,107)
179 254840160 : b(k,217) = b(k,217) - lu(k,327) * b(k,108)
180 254840160 : b(k,314) = b(k,314) - lu(k,328) * b(k,108)
181 254840160 : b(k,315) = b(k,315) - lu(k,329) * b(k,108)
182 254840160 : b(k,316) = b(k,316) - lu(k,330) * b(k,108)
183 254840160 : b(k,317) = b(k,317) - lu(k,331) * b(k,108)
184 254840160 : b(k,169) = b(k,169) - lu(k,333) * b(k,109)
185 254840160 : b(k,230) = b(k,230) - lu(k,334) * b(k,109)
186 254840160 : b(k,300) = b(k,300) - lu(k,335) * b(k,109)
187 254840160 : b(k,316) = b(k,316) - lu(k,336) * b(k,109)
188 254840160 : b(k,266) = b(k,266) - lu(k,338) * b(k,110)
189 254840160 : b(k,271) = b(k,271) - lu(k,339) * b(k,110)
190 254840160 : b(k,300) = b(k,300) - lu(k,340) * b(k,110)
191 254840160 : b(k,307) = b(k,307) - lu(k,341) * b(k,110)
192 254840160 : b(k,216) = b(k,216) - lu(k,343) * b(k,111)
193 254840160 : b(k,246) = b(k,246) - lu(k,344) * b(k,111)
194 254840160 : b(k,305) = b(k,305) - lu(k,345) * b(k,111)
195 254840160 : b(k,310) = b(k,310) - lu(k,346) * b(k,111)
196 254840160 : b(k,130) = b(k,130) - lu(k,348) * b(k,112)
197 254840160 : b(k,235) = b(k,235) - lu(k,349) * b(k,112)
198 254840160 : b(k,307) = b(k,307) - lu(k,350) * b(k,112)
199 254840160 : b(k,316) = b(k,316) - lu(k,351) * b(k,112)
200 254840160 : b(k,127) = b(k,127) - lu(k,354) * b(k,113)
201 254840160 : b(k,144) = b(k,144) - lu(k,355) * b(k,113)
202 254840160 : b(k,307) = b(k,307) - lu(k,356) * b(k,113)
203 254840160 : b(k,316) = b(k,316) - lu(k,357) * b(k,113)
204 254840160 : b(k,225) = b(k,225) - lu(k,359) * b(k,114)
205 254840160 : b(k,230) = b(k,230) - lu(k,360) * b(k,114)
206 254840160 : b(k,307) = b(k,307) - lu(k,361) * b(k,114)
207 254840160 : b(k,316) = b(k,316) - lu(k,362) * b(k,114)
208 254840160 : b(k,247) = b(k,247) - lu(k,364) * b(k,115)
209 254840160 : b(k,296) = b(k,296) - lu(k,365) * b(k,115)
210 254840160 : b(k,297) = b(k,297) - lu(k,366) * b(k,115)
211 254840160 : b(k,316) = b(k,316) - lu(k,367) * b(k,115)
212 254840160 : b(k,247) = b(k,247) - lu(k,369) * b(k,116)
213 254840160 : b(k,295) = b(k,295) - lu(k,370) * b(k,116)
214 254840160 : b(k,298) = b(k,298) - lu(k,371) * b(k,116)
215 254840160 : b(k,316) = b(k,316) - lu(k,372) * b(k,116)
216 254840160 : b(k,161) = b(k,161) - lu(k,374) * b(k,117)
217 254840160 : b(k,307) = b(k,307) - lu(k,375) * b(k,117)
218 254840160 : b(k,316) = b(k,316) - lu(k,376) * b(k,117)
219 254840160 : b(k,152) = b(k,152) - lu(k,378) * b(k,118)
220 254840160 : b(k,230) = b(k,230) - lu(k,379) * b(k,118)
221 254840160 : b(k,280) = b(k,280) - lu(k,380) * b(k,118)
222 254840160 : b(k,306) = b(k,306) - lu(k,381) * b(k,118)
223 254840160 : b(k,311) = b(k,311) - lu(k,382) * b(k,118)
224 254840160 : b(k,312) = b(k,312) - lu(k,383) * b(k,118)
225 263009123 : b(k,316) = b(k,316) - lu(k,384) * b(k,118)
226 : end do
227 8168963 : end subroutine lu_slv01
228 8168963 : subroutine lu_slv02( avec_len, lu, b )
229 : use shr_kind_mod, only : r8 => shr_kind_r8
230 : use chem_mods, only : clscnt4, nzcnt
231 : implicit none
232 : !-----------------------------------------------------------------------
233 : ! ... Dummy args
234 : !-----------------------------------------------------------------------
235 : integer, intent(in) :: avec_len
236 : real(r8), intent(in) :: lu(veclen,max(1,nzcnt))
237 : real(r8), intent(inout) :: b(veclen,clscnt4)
238 : !-----------------------------------------------------------------------
239 : ! ... Local variables
240 : !-----------------------------------------------------------------------
241 : integer :: k
242 : !-----------------------------------------------------------------------
243 : ! ... solve L * y = b
244 : !-----------------------------------------------------------------------
245 263009123 : do k = 1,avec_len
246 254840160 : b(k,143) = b(k,143) - lu(k,386) * b(k,119)
247 254840160 : b(k,216) = b(k,216) - lu(k,387) * b(k,119)
248 254840160 : b(k,246) = b(k,246) - lu(k,388) * b(k,119)
249 254840160 : b(k,271) = b(k,271) - lu(k,389) * b(k,119)
250 254840160 : b(k,301) = b(k,301) - lu(k,390) * b(k,119)
251 254840160 : b(k,305) = b(k,305) - lu(k,391) * b(k,119)
252 254840160 : b(k,316) = b(k,316) - lu(k,392) * b(k,119)
253 254840160 : b(k,271) = b(k,271) - lu(k,394) * b(k,120)
254 254840160 : b(k,304) = b(k,304) - lu(k,395) * b(k,120)
255 254840160 : b(k,307) = b(k,307) - lu(k,396) * b(k,120)
256 254840160 : b(k,308) = b(k,308) - lu(k,397) * b(k,120)
257 254840160 : b(k,315) = b(k,315) - lu(k,398) * b(k,120)
258 254840160 : b(k,316) = b(k,316) - lu(k,399) * b(k,120)
259 254840160 : b(k,317) = b(k,317) - lu(k,400) * b(k,120)
260 254840160 : b(k,188) = b(k,188) - lu(k,402) * b(k,121)
261 254840160 : b(k,271) = b(k,271) - lu(k,403) * b(k,121)
262 254840160 : b(k,307) = b(k,307) - lu(k,404) * b(k,121)
263 254840160 : b(k,224) = b(k,224) - lu(k,406) * b(k,122)
264 254840160 : b(k,300) = b(k,300) - lu(k,407) * b(k,122)
265 254840160 : b(k,306) = b(k,306) - lu(k,408) * b(k,122)
266 254840160 : b(k,316) = b(k,316) - lu(k,409) * b(k,122)
267 254840160 : b(k,317) = b(k,317) - lu(k,410) * b(k,122)
268 254840160 : b(k,198) = b(k,198) - lu(k,412) * b(k,123)
269 254840160 : b(k,280) = b(k,280) - lu(k,413) * b(k,123)
270 254840160 : b(k,307) = b(k,307) - lu(k,414) * b(k,123)
271 254840160 : b(k,316) = b(k,316) - lu(k,415) * b(k,123)
272 254840160 : b(k,317) = b(k,317) - lu(k,416) * b(k,123)
273 254840160 : b(k,132) = b(k,132) - lu(k,418) * b(k,124)
274 254840160 : b(k,139) = b(k,139) - lu(k,419) * b(k,124)
275 254840160 : b(k,235) = b(k,235) - lu(k,420) * b(k,124)
276 254840160 : b(k,307) = b(k,307) - lu(k,421) * b(k,124)
277 254840160 : b(k,316) = b(k,316) - lu(k,422) * b(k,124)
278 254840160 : b(k,220) = b(k,220) - lu(k,424) * b(k,125)
279 254840160 : b(k,271) = b(k,271) - lu(k,425) * b(k,125)
280 254840160 : b(k,299) = b(k,299) - lu(k,426) * b(k,125)
281 254840160 : b(k,312) = b(k,312) - lu(k,427) * b(k,125)
282 254840160 : b(k,316) = b(k,316) - lu(k,428) * b(k,125)
283 254840160 : b(k,142) = b(k,142) - lu(k,430) * b(k,126)
284 254840160 : b(k,235) = b(k,235) - lu(k,431) * b(k,126)
285 254840160 : b(k,266) = b(k,266) - lu(k,432) * b(k,126)
286 254840160 : b(k,307) = b(k,307) - lu(k,433) * b(k,126)
287 254840160 : b(k,316) = b(k,316) - lu(k,434) * b(k,126)
288 254840160 : b(k,144) = b(k,144) - lu(k,438) * b(k,127)
289 254840160 : b(k,303) = b(k,303) - lu(k,439) * b(k,127)
290 254840160 : b(k,307) = b(k,307) - lu(k,440) * b(k,127)
291 254840160 : b(k,312) = b(k,312) - lu(k,441) * b(k,127)
292 254840160 : b(k,316) = b(k,316) - lu(k,442) * b(k,127)
293 254840160 : b(k,307) = b(k,307) - lu(k,444) * b(k,128)
294 254840160 : b(k,311) = b(k,311) - lu(k,445) * b(k,128)
295 254840160 : b(k,312) = b(k,312) - lu(k,446) * b(k,128)
296 254840160 : b(k,316) = b(k,316) - lu(k,447) * b(k,128)
297 254840160 : b(k,317) = b(k,317) - lu(k,448) * b(k,128)
298 254840160 : b(k,301) = b(k,301) - lu(k,450) * b(k,129)
299 254840160 : b(k,306) = b(k,306) - lu(k,451) * b(k,129)
300 254840160 : b(k,308) = b(k,308) - lu(k,452) * b(k,129)
301 254840160 : b(k,316) = b(k,316) - lu(k,453) * b(k,129)
302 254840160 : b(k,317) = b(k,317) - lu(k,454) * b(k,129)
303 254840160 : b(k,235) = b(k,235) - lu(k,457) * b(k,130)
304 254840160 : b(k,303) = b(k,303) - lu(k,458) * b(k,130)
305 254840160 : b(k,307) = b(k,307) - lu(k,459) * b(k,130)
306 254840160 : b(k,312) = b(k,312) - lu(k,460) * b(k,130)
307 254840160 : b(k,316) = b(k,316) - lu(k,461) * b(k,130)
308 254840160 : b(k,276) = b(k,276) - lu(k,463) * b(k,131)
309 254840160 : b(k,304) = b(k,304) - lu(k,464) * b(k,131)
310 254840160 : b(k,314) = b(k,314) - lu(k,465) * b(k,131)
311 254840160 : b(k,315) = b(k,315) - lu(k,466) * b(k,131)
312 254840160 : b(k,316) = b(k,316) - lu(k,467) * b(k,131)
313 254840160 : b(k,180) = b(k,180) - lu(k,469) * b(k,132)
314 254840160 : b(k,307) = b(k,307) - lu(k,470) * b(k,132)
315 254840160 : b(k,196) = b(k,196) - lu(k,472) * b(k,133)
316 254840160 : b(k,292) = b(k,292) - lu(k,473) * b(k,133)
317 254840160 : b(k,307) = b(k,307) - lu(k,474) * b(k,133)
318 254840160 : b(k,316) = b(k,316) - lu(k,475) * b(k,133)
319 254840160 : b(k,301) = b(k,301) - lu(k,478) * b(k,134)
320 254840160 : b(k,303) = b(k,303) - lu(k,479) * b(k,134)
321 254840160 : b(k,305) = b(k,305) - lu(k,480) * b(k,134)
322 254840160 : b(k,312) = b(k,312) - lu(k,481) * b(k,134)
323 254840160 : b(k,314) = b(k,314) - lu(k,482) * b(k,134)
324 254840160 : b(k,316) = b(k,316) - lu(k,483) * b(k,134)
325 254840160 : b(k,164) = b(k,164) - lu(k,485) * b(k,135)
326 254840160 : b(k,312) = b(k,312) - lu(k,486) * b(k,135)
327 254840160 : b(k,313) = b(k,313) - lu(k,487) * b(k,135)
328 254840160 : b(k,185) = b(k,185) - lu(k,489) * b(k,136)
329 254840160 : b(k,239) = b(k,239) - lu(k,490) * b(k,136)
330 254840160 : b(k,270) = b(k,270) - lu(k,491) * b(k,136)
331 254840160 : b(k,271) = b(k,271) - lu(k,492) * b(k,136)
332 254840160 : b(k,307) = b(k,307) - lu(k,493) * b(k,136)
333 254840160 : b(k,316) = b(k,316) - lu(k,494) * b(k,136)
334 254840160 : b(k,276) = b(k,276) - lu(k,496) * b(k,137)
335 254840160 : b(k,304) = b(k,304) - lu(k,497) * b(k,137)
336 254840160 : b(k,314) = b(k,314) - lu(k,498) * b(k,137)
337 254840160 : b(k,315) = b(k,315) - lu(k,499) * b(k,137)
338 254840160 : b(k,316) = b(k,316) - lu(k,500) * b(k,137)
339 254840160 : b(k,317) = b(k,317) - lu(k,501) * b(k,137)
340 254840160 : b(k,185) = b(k,185) - lu(k,503) * b(k,138)
341 254840160 : b(k,227) = b(k,227) - lu(k,504) * b(k,138)
342 254840160 : b(k,249) = b(k,249) - lu(k,505) * b(k,138)
343 254840160 : b(k,266) = b(k,266) - lu(k,506) * b(k,138)
344 254840160 : b(k,302) = b(k,302) - lu(k,507) * b(k,138)
345 254840160 : b(k,306) = b(k,306) - lu(k,508) * b(k,138)
346 254840160 : b(k,307) = b(k,307) - lu(k,509) * b(k,138)
347 254840160 : b(k,312) = b(k,312) - lu(k,510) * b(k,138)
348 254840160 : b(k,316) = b(k,316) - lu(k,511) * b(k,138)
349 254840160 : b(k,180) = b(k,180) - lu(k,515) * b(k,139)
350 254840160 : b(k,235) = b(k,235) - lu(k,516) * b(k,139)
351 254840160 : b(k,303) = b(k,303) - lu(k,517) * b(k,139)
352 254840160 : b(k,307) = b(k,307) - lu(k,518) * b(k,139)
353 254840160 : b(k,312) = b(k,312) - lu(k,519) * b(k,139)
354 254840160 : b(k,316) = b(k,316) - lu(k,520) * b(k,139)
355 254840160 : b(k,185) = b(k,185) - lu(k,522) * b(k,140)
356 254840160 : b(k,233) = b(k,233) - lu(k,523) * b(k,140)
357 254840160 : b(k,269) = b(k,269) - lu(k,524) * b(k,140)
358 254840160 : b(k,271) = b(k,271) - lu(k,525) * b(k,140)
359 254840160 : b(k,307) = b(k,307) - lu(k,526) * b(k,140)
360 254840160 : b(k,316) = b(k,316) - lu(k,527) * b(k,140)
361 254840160 : b(k,248) = b(k,248) - lu(k,529) * b(k,141)
362 254840160 : b(k,258) = b(k,258) - lu(k,530) * b(k,141)
363 254840160 : b(k,271) = b(k,271) - lu(k,531) * b(k,141)
364 254840160 : b(k,311) = b(k,311) - lu(k,532) * b(k,141)
365 254840160 : b(k,312) = b(k,312) - lu(k,533) * b(k,141)
366 254840160 : b(k,316) = b(k,316) - lu(k,534) * b(k,141)
367 254840160 : b(k,235) = b(k,235) - lu(k,537) * b(k,142)
368 254840160 : b(k,266) = b(k,266) - lu(k,538) * b(k,142)
369 254840160 : b(k,303) = b(k,303) - lu(k,539) * b(k,142)
370 254840160 : b(k,307) = b(k,307) - lu(k,540) * b(k,142)
371 254840160 : b(k,312) = b(k,312) - lu(k,541) * b(k,142)
372 254840160 : b(k,316) = b(k,316) - lu(k,542) * b(k,142)
373 254840160 : b(k,246) = b(k,246) - lu(k,544) * b(k,143)
374 254840160 : b(k,301) = b(k,301) - lu(k,545) * b(k,143)
375 254840160 : b(k,305) = b(k,305) - lu(k,546) * b(k,143)
376 254840160 : b(k,313) = b(k,313) - lu(k,547) * b(k,143)
377 254840160 : b(k,316) = b(k,316) - lu(k,548) * b(k,143)
378 254840160 : b(k,164) = b(k,164) - lu(k,551) * b(k,144)
379 254840160 : b(k,303) = b(k,303) - lu(k,552) * b(k,144)
380 254840160 : b(k,307) = b(k,307) - lu(k,553) * b(k,144)
381 254840160 : b(k,312) = b(k,312) - lu(k,554) * b(k,144)
382 254840160 : b(k,316) = b(k,316) - lu(k,555) * b(k,144)
383 254840160 : b(k,169) = b(k,169) - lu(k,557) * b(k,145)
384 254840160 : b(k,225) = b(k,225) - lu(k,558) * b(k,145)
385 254840160 : b(k,300) = b(k,300) - lu(k,559) * b(k,145)
386 254840160 : b(k,316) = b(k,316) - lu(k,560) * b(k,145)
387 254840160 : b(k,195) = b(k,195) - lu(k,562) * b(k,146)
388 254840160 : b(k,276) = b(k,276) - lu(k,563) * b(k,146)
389 254840160 : b(k,302) = b(k,302) - lu(k,564) * b(k,146)
390 254840160 : b(k,305) = b(k,305) - lu(k,565) * b(k,146)
391 254840160 : b(k,309) = b(k,309) - lu(k,566) * b(k,146)
392 254840160 : b(k,311) = b(k,311) - lu(k,567) * b(k,146)
393 254840160 : b(k,312) = b(k,312) - lu(k,568) * b(k,146)
394 254840160 : b(k,247) = b(k,247) - lu(k,570) * b(k,147)
395 254840160 : b(k,300) = b(k,300) - lu(k,571) * b(k,147)
396 254840160 : b(k,306) = b(k,306) - lu(k,572) * b(k,147)
397 254840160 : b(k,308) = b(k,308) - lu(k,573) * b(k,147)
398 254840160 : b(k,311) = b(k,311) - lu(k,574) * b(k,147)
399 254840160 : b(k,312) = b(k,312) - lu(k,575) * b(k,147)
400 254840160 : b(k,316) = b(k,316) - lu(k,576) * b(k,147)
401 254840160 : b(k,189) = b(k,189) - lu(k,578) * b(k,148)
402 254840160 : b(k,230) = b(k,230) - lu(k,579) * b(k,148)
403 254840160 : b(k,258) = b(k,258) - lu(k,580) * b(k,148)
404 254840160 : b(k,306) = b(k,306) - lu(k,581) * b(k,148)
405 254840160 : b(k,307) = b(k,307) - lu(k,582) * b(k,148)
406 254840160 : b(k,316) = b(k,316) - lu(k,583) * b(k,148)
407 254840160 : b(k,317) = b(k,317) - lu(k,584) * b(k,148)
408 254840160 : b(k,179) = b(k,179) - lu(k,586) * b(k,149)
409 254840160 : b(k,227) = b(k,227) - lu(k,587) * b(k,149)
410 254840160 : b(k,271) = b(k,271) - lu(k,588) * b(k,149)
411 254840160 : b(k,306) = b(k,306) - lu(k,589) * b(k,149)
412 254840160 : b(k,307) = b(k,307) - lu(k,590) * b(k,149)
413 254840160 : b(k,313) = b(k,313) - lu(k,591) * b(k,149)
414 254840160 : b(k,316) = b(k,316) - lu(k,592) * b(k,149)
415 254840160 : b(k,200) = b(k,200) - lu(k,594) * b(k,150)
416 254840160 : b(k,241) = b(k,241) - lu(k,595) * b(k,150)
417 254840160 : b(k,269) = b(k,269) - lu(k,596) * b(k,150)
418 254840160 : b(k,306) = b(k,306) - lu(k,597) * b(k,150)
419 254840160 : b(k,307) = b(k,307) - lu(k,598) * b(k,150)
420 254840160 : b(k,312) = b(k,312) - lu(k,599) * b(k,150)
421 254840160 : b(k,316) = b(k,316) - lu(k,600) * b(k,150)
422 254840160 : b(k,255) = b(k,255) - lu(k,602) * b(k,151)
423 254840160 : b(k,307) = b(k,307) - lu(k,603) * b(k,151)
424 254840160 : b(k,316) = b(k,316) - lu(k,604) * b(k,151)
425 254840160 : b(k,193) = b(k,193) - lu(k,606) * b(k,152)
426 254840160 : b(k,230) = b(k,230) - lu(k,607) * b(k,152)
427 254840160 : b(k,280) = b(k,280) - lu(k,608) * b(k,152)
428 254840160 : b(k,303) = b(k,303) - lu(k,609) * b(k,152)
429 254840160 : b(k,306) = b(k,306) - lu(k,610) * b(k,152)
430 254840160 : b(k,307) = b(k,307) - lu(k,611) * b(k,152)
431 254840160 : b(k,312) = b(k,312) - lu(k,612) * b(k,152)
432 254840160 : b(k,155) = b(k,155) - lu(k,614) * b(k,153)
433 254840160 : b(k,185) = b(k,185) - lu(k,615) * b(k,153)
434 254840160 : b(k,227) = b(k,227) - lu(k,616) * b(k,153)
435 254840160 : b(k,240) = b(k,240) - lu(k,617) * b(k,153)
436 254840160 : b(k,247) = b(k,247) - lu(k,618) * b(k,153)
437 254840160 : b(k,266) = b(k,266) - lu(k,619) * b(k,153)
438 254840160 : b(k,270) = b(k,270) - lu(k,620) * b(k,153)
439 254840160 : b(k,271) = b(k,271) - lu(k,621) * b(k,153)
440 254840160 : b(k,300) = b(k,300) - lu(k,622) * b(k,153)
441 254840160 : b(k,307) = b(k,307) - lu(k,623) * b(k,153)
442 254840160 : b(k,308) = b(k,308) - lu(k,624) * b(k,153)
443 254840160 : b(k,316) = b(k,316) - lu(k,625) * b(k,153)
444 254840160 : b(k,155) = b(k,155) - lu(k,627) * b(k,154)
445 254840160 : b(k,185) = b(k,185) - lu(k,628) * b(k,154)
446 254840160 : b(k,187) = b(k,187) - lu(k,629) * b(k,154)
447 254840160 : b(k,243) = b(k,243) - lu(k,630) * b(k,154)
448 254840160 : b(k,247) = b(k,247) - lu(k,631) * b(k,154)
449 254840160 : b(k,266) = b(k,266) - lu(k,632) * b(k,154)
450 254840160 : b(k,269) = b(k,269) - lu(k,633) * b(k,154)
451 254840160 : b(k,271) = b(k,271) - lu(k,634) * b(k,154)
452 254840160 : b(k,300) = b(k,300) - lu(k,635) * b(k,154)
453 254840160 : b(k,307) = b(k,307) - lu(k,636) * b(k,154)
454 254840160 : b(k,308) = b(k,308) - lu(k,637) * b(k,154)
455 263009123 : b(k,316) = b(k,316) - lu(k,638) * b(k,154)
456 : end do
457 8168963 : end subroutine lu_slv02
458 8168963 : subroutine lu_slv03( avec_len, lu, b )
459 : use shr_kind_mod, only : r8 => shr_kind_r8
460 : use chem_mods, only : clscnt4, nzcnt
461 : implicit none
462 : !-----------------------------------------------------------------------
463 : ! ... Dummy args
464 : !-----------------------------------------------------------------------
465 : integer, intent(in) :: avec_len
466 : real(r8), intent(in) :: lu(veclen,max(1,nzcnt))
467 : real(r8), intent(inout) :: b(veclen,clscnt4)
468 : !-----------------------------------------------------------------------
469 : ! ... Local variables
470 : !-----------------------------------------------------------------------
471 : integer :: k
472 : !-----------------------------------------------------------------------
473 : ! ... solve L * y = b
474 : !-----------------------------------------------------------------------
475 263009123 : do k = 1,avec_len
476 254840160 : b(k,187) = b(k,187) - lu(k,640) * b(k,155)
477 254840160 : b(k,266) = b(k,266) - lu(k,641) * b(k,155)
478 254840160 : b(k,271) = b(k,271) - lu(k,642) * b(k,155)
479 254840160 : b(k,306) = b(k,306) - lu(k,643) * b(k,155)
480 254840160 : b(k,307) = b(k,307) - lu(k,644) * b(k,155)
481 254840160 : b(k,316) = b(k,316) - lu(k,645) * b(k,155)
482 254840160 : b(k,276) = b(k,276) - lu(k,647) * b(k,156)
483 254840160 : b(k,304) = b(k,304) - lu(k,648) * b(k,156)
484 254840160 : b(k,307) = b(k,307) - lu(k,649) * b(k,156)
485 254840160 : b(k,308) = b(k,308) - lu(k,650) * b(k,156)
486 254840160 : b(k,314) = b(k,314) - lu(k,651) * b(k,156)
487 254840160 : b(k,315) = b(k,315) - lu(k,652) * b(k,156)
488 254840160 : b(k,316) = b(k,316) - lu(k,653) * b(k,156)
489 254840160 : b(k,317) = b(k,317) - lu(k,654) * b(k,156)
490 254840160 : b(k,247) = b(k,247) - lu(k,656) * b(k,157)
491 254840160 : b(k,271) = b(k,271) - lu(k,657) * b(k,157)
492 254840160 : b(k,280) = b(k,280) - lu(k,658) * b(k,157)
493 254840160 : b(k,297) = b(k,297) - lu(k,659) * b(k,157)
494 254840160 : b(k,306) = b(k,306) - lu(k,660) * b(k,157)
495 254840160 : b(k,307) = b(k,307) - lu(k,661) * b(k,157)
496 254840160 : b(k,312) = b(k,312) - lu(k,662) * b(k,157)
497 254840160 : b(k,316) = b(k,316) - lu(k,663) * b(k,157)
498 254840160 : b(k,247) = b(k,247) - lu(k,665) * b(k,158)
499 254840160 : b(k,271) = b(k,271) - lu(k,666) * b(k,158)
500 254840160 : b(k,298) = b(k,298) - lu(k,667) * b(k,158)
501 254840160 : b(k,300) = b(k,300) - lu(k,668) * b(k,158)
502 254840160 : b(k,306) = b(k,306) - lu(k,669) * b(k,158)
503 254840160 : b(k,307) = b(k,307) - lu(k,670) * b(k,158)
504 254840160 : b(k,312) = b(k,312) - lu(k,671) * b(k,158)
505 254840160 : b(k,316) = b(k,316) - lu(k,672) * b(k,158)
506 254840160 : b(k,210) = b(k,210) - lu(k,674) * b(k,159)
507 254840160 : b(k,241) = b(k,241) - lu(k,675) * b(k,159)
508 254840160 : b(k,270) = b(k,270) - lu(k,676) * b(k,159)
509 254840160 : b(k,302) = b(k,302) - lu(k,677) * b(k,159)
510 254840160 : b(k,306) = b(k,306) - lu(k,678) * b(k,159)
511 254840160 : b(k,307) = b(k,307) - lu(k,679) * b(k,159)
512 254840160 : b(k,312) = b(k,312) - lu(k,680) * b(k,159)
513 254840160 : b(k,316) = b(k,316) - lu(k,681) * b(k,159)
514 254840160 : b(k,214) = b(k,214) - lu(k,683) * b(k,160)
515 254840160 : b(k,252) = b(k,252) - lu(k,684) * b(k,160)
516 254840160 : b(k,293) = b(k,293) - lu(k,685) * b(k,160)
517 254840160 : b(k,307) = b(k,307) - lu(k,686) * b(k,160)
518 254840160 : b(k,312) = b(k,312) - lu(k,687) * b(k,160)
519 254840160 : b(k,316) = b(k,316) - lu(k,688) * b(k,160)
520 254840160 : b(k,284) = b(k,284) - lu(k,690) * b(k,161)
521 254840160 : b(k,307) = b(k,307) - lu(k,691) * b(k,161)
522 254840160 : b(k,316) = b(k,316) - lu(k,692) * b(k,161)
523 254840160 : b(k,213) = b(k,213) - lu(k,694) * b(k,162)
524 254840160 : b(k,227) = b(k,227) - lu(k,695) * b(k,162)
525 254840160 : b(k,303) = b(k,303) - lu(k,696) * b(k,162)
526 254840160 : b(k,306) = b(k,306) - lu(k,697) * b(k,162)
527 254840160 : b(k,307) = b(k,307) - lu(k,698) * b(k,162)
528 254840160 : b(k,312) = b(k,312) - lu(k,699) * b(k,162)
529 254840160 : b(k,316) = b(k,316) - lu(k,700) * b(k,162)
530 254840160 : b(k,317) = b(k,317) - lu(k,701) * b(k,162)
531 254840160 : b(k,247) = b(k,247) - lu(k,703) * b(k,163)
532 254840160 : b(k,300) = b(k,300) - lu(k,704) * b(k,163)
533 254840160 : b(k,306) = b(k,306) - lu(k,705) * b(k,163)
534 254840160 : b(k,308) = b(k,308) - lu(k,706) * b(k,163)
535 254840160 : b(k,316) = b(k,316) - lu(k,707) * b(k,163)
536 254840160 : b(k,317) = b(k,317) - lu(k,708) * b(k,163)
537 254840160 : b(k,303) = b(k,303) - lu(k,712) * b(k,164)
538 254840160 : b(k,307) = b(k,307) - lu(k,713) * b(k,164)
539 254840160 : b(k,312) = b(k,312) - lu(k,714) * b(k,164)
540 254840160 : b(k,313) = b(k,313) - lu(k,715) * b(k,164)
541 254840160 : b(k,316) = b(k,316) - lu(k,716) * b(k,164)
542 254840160 : b(k,169) = b(k,169) - lu(k,719) * b(k,165)
543 254840160 : b(k,211) = b(k,211) - lu(k,720) * b(k,165)
544 254840160 : b(k,225) = b(k,225) - lu(k,721) * b(k,165)
545 254840160 : b(k,230) = b(k,230) - lu(k,722) * b(k,165)
546 254840160 : b(k,280) = b(k,280) - lu(k,723) * b(k,165)
547 254840160 : b(k,300) = b(k,300) - lu(k,724) * b(k,165)
548 254840160 : b(k,306) = b(k,306) - lu(k,725) * b(k,165)
549 254840160 : b(k,307) = b(k,307) - lu(k,726) * b(k,165)
550 254840160 : b(k,316) = b(k,316) - lu(k,727) * b(k,165)
551 254840160 : b(k,218) = b(k,218) - lu(k,729) * b(k,166)
552 254840160 : b(k,231) = b(k,231) - lu(k,730) * b(k,166)
553 254840160 : b(k,269) = b(k,269) - lu(k,731) * b(k,166)
554 254840160 : b(k,270) = b(k,270) - lu(k,732) * b(k,166)
555 254840160 : b(k,274) = b(k,274) - lu(k,733) * b(k,166)
556 254840160 : b(k,306) = b(k,306) - lu(k,734) * b(k,166)
557 254840160 : b(k,307) = b(k,307) - lu(k,735) * b(k,166)
558 254840160 : b(k,312) = b(k,312) - lu(k,736) * b(k,166)
559 254840160 : b(k,316) = b(k,316) - lu(k,737) * b(k,166)
560 254840160 : b(k,180) = b(k,180) - lu(k,742) * b(k,167)
561 254840160 : b(k,181) = b(k,181) - lu(k,743) * b(k,167)
562 254840160 : b(k,184) = b(k,184) - lu(k,744) * b(k,167)
563 254840160 : b(k,188) = b(k,188) - lu(k,745) * b(k,167)
564 254840160 : b(k,235) = b(k,235) - lu(k,746) * b(k,167)
565 254840160 : b(k,266) = b(k,266) - lu(k,747) * b(k,167)
566 254840160 : b(k,271) = b(k,271) - lu(k,748) * b(k,167)
567 254840160 : b(k,307) = b(k,307) - lu(k,749) * b(k,167)
568 254840160 : b(k,316) = b(k,316) - lu(k,750) * b(k,167)
569 254840160 : b(k,169) = b(k,169) - lu(k,753) * b(k,168)
570 254840160 : b(k,225) = b(k,225) - lu(k,754) * b(k,168)
571 254840160 : b(k,230) = b(k,230) - lu(k,755) * b(k,168)
572 254840160 : b(k,280) = b(k,280) - lu(k,756) * b(k,168)
573 254840160 : b(k,300) = b(k,300) - lu(k,757) * b(k,168)
574 254840160 : b(k,306) = b(k,306) - lu(k,758) * b(k,168)
575 254840160 : b(k,307) = b(k,307) - lu(k,759) * b(k,168)
576 254840160 : b(k,312) = b(k,312) - lu(k,760) * b(k,168)
577 254840160 : b(k,316) = b(k,316) - lu(k,761) * b(k,168)
578 254840160 : b(k,230) = b(k,230) - lu(k,764) * b(k,169)
579 254840160 : b(k,300) = b(k,300) - lu(k,765) * b(k,169)
580 254840160 : b(k,303) = b(k,303) - lu(k,766) * b(k,169)
581 254840160 : b(k,307) = b(k,307) - lu(k,767) * b(k,169)
582 254840160 : b(k,312) = b(k,312) - lu(k,768) * b(k,169)
583 254840160 : b(k,316) = b(k,316) - lu(k,769) * b(k,169)
584 254840160 : b(k,235) = b(k,235) - lu(k,771) * b(k,170)
585 254840160 : b(k,254) = b(k,254) - lu(k,772) * b(k,170)
586 254840160 : b(k,258) = b(k,258) - lu(k,773) * b(k,170)
587 254840160 : b(k,266) = b(k,266) - lu(k,774) * b(k,170)
588 254840160 : b(k,271) = b(k,271) - lu(k,775) * b(k,170)
589 254840160 : b(k,307) = b(k,307) - lu(k,776) * b(k,170)
590 254840160 : b(k,316) = b(k,316) - lu(k,777) * b(k,170)
591 254840160 : b(k,247) = b(k,247) - lu(k,779) * b(k,171)
592 254840160 : b(k,294) = b(k,294) - lu(k,780) * b(k,171)
593 254840160 : b(k,299) = b(k,299) - lu(k,781) * b(k,171)
594 254840160 : b(k,316) = b(k,316) - lu(k,782) * b(k,171)
595 254840160 : b(k,197) = b(k,197) - lu(k,784) * b(k,172)
596 254840160 : b(k,253) = b(k,253) - lu(k,785) * b(k,172)
597 254840160 : b(k,293) = b(k,293) - lu(k,786) * b(k,172)
598 254840160 : b(k,302) = b(k,302) - lu(k,787) * b(k,172)
599 254840160 : b(k,307) = b(k,307) - lu(k,788) * b(k,172)
600 254840160 : b(k,312) = b(k,312) - lu(k,789) * b(k,172)
601 254840160 : b(k,316) = b(k,316) - lu(k,790) * b(k,172)
602 254840160 : b(k,247) = b(k,247) - lu(k,792) * b(k,173)
603 254840160 : b(k,308) = b(k,308) - lu(k,793) * b(k,173)
604 254840160 : b(k,316) = b(k,316) - lu(k,794) * b(k,173)
605 254840160 : b(k,317) = b(k,317) - lu(k,795) * b(k,173)
606 254840160 : b(k,192) = b(k,192) - lu(k,798) * b(k,174)
607 254840160 : b(k,255) = b(k,255) - lu(k,799) * b(k,174)
608 254840160 : b(k,303) = b(k,303) - lu(k,800) * b(k,174)
609 254840160 : b(k,306) = b(k,306) - lu(k,801) * b(k,174)
610 254840160 : b(k,307) = b(k,307) - lu(k,802) * b(k,174)
611 254840160 : b(k,312) = b(k,312) - lu(k,803) * b(k,174)
612 254840160 : b(k,316) = b(k,316) - lu(k,804) * b(k,174)
613 254840160 : b(k,192) = b(k,192) - lu(k,806) * b(k,175)
614 254840160 : b(k,215) = b(k,215) - lu(k,807) * b(k,175)
615 254840160 : b(k,244) = b(k,244) - lu(k,808) * b(k,175)
616 254840160 : b(k,303) = b(k,303) - lu(k,809) * b(k,175)
617 254840160 : b(k,307) = b(k,307) - lu(k,810) * b(k,175)
618 254840160 : b(k,312) = b(k,312) - lu(k,811) * b(k,175)
619 254840160 : b(k,316) = b(k,316) - lu(k,812) * b(k,175)
620 254840160 : b(k,192) = b(k,192) - lu(k,814) * b(k,176)
621 254840160 : b(k,215) = b(k,215) - lu(k,815) * b(k,176)
622 254840160 : b(k,242) = b(k,242) - lu(k,816) * b(k,176)
623 254840160 : b(k,303) = b(k,303) - lu(k,817) * b(k,176)
624 254840160 : b(k,307) = b(k,307) - lu(k,818) * b(k,176)
625 254840160 : b(k,312) = b(k,312) - lu(k,819) * b(k,176)
626 254840160 : b(k,316) = b(k,316) - lu(k,820) * b(k,176)
627 254840160 : b(k,258) = b(k,258) - lu(k,828) * b(k,177)
628 254840160 : b(k,280) = b(k,280) - lu(k,829) * b(k,177)
629 254840160 : b(k,288) = b(k,288) - lu(k,830) * b(k,177)
630 254840160 : b(k,291) = b(k,291) - lu(k,831) * b(k,177)
631 254840160 : b(k,292) = b(k,292) - lu(k,832) * b(k,177)
632 254840160 : b(k,306) = b(k,306) - lu(k,833) * b(k,177)
633 254840160 : b(k,307) = b(k,307) - lu(k,834) * b(k,177)
634 254840160 : b(k,311) = b(k,311) - lu(k,835) * b(k,177)
635 254840160 : b(k,313) = b(k,313) - lu(k,836) * b(k,177)
636 254840160 : b(k,316) = b(k,316) - lu(k,837) * b(k,177)
637 254840160 : b(k,180) = b(k,180) - lu(k,843) * b(k,178)
638 254840160 : b(k,183) = b(k,183) - lu(k,844) * b(k,178)
639 254840160 : b(k,184) = b(k,184) - lu(k,845) * b(k,178)
640 254840160 : b(k,188) = b(k,188) - lu(k,846) * b(k,178)
641 254840160 : b(k,235) = b(k,235) - lu(k,847) * b(k,178)
642 254840160 : b(k,266) = b(k,266) - lu(k,848) * b(k,178)
643 254840160 : b(k,271) = b(k,271) - lu(k,849) * b(k,178)
644 254840160 : b(k,300) = b(k,300) - lu(k,850) * b(k,178)
645 254840160 : b(k,307) = b(k,307) - lu(k,851) * b(k,178)
646 254840160 : b(k,316) = b(k,316) - lu(k,852) * b(k,178)
647 254840160 : b(k,254) = b(k,254) - lu(k,856) * b(k,179)
648 254840160 : b(k,303) = b(k,303) - lu(k,857) * b(k,179)
649 254840160 : b(k,306) = b(k,306) - lu(k,858) * b(k,179)
650 254840160 : b(k,307) = b(k,307) - lu(k,859) * b(k,179)
651 254840160 : b(k,312) = b(k,312) - lu(k,860) * b(k,179)
652 254840160 : b(k,316) = b(k,316) - lu(k,861) * b(k,179)
653 254840160 : b(k,235) = b(k,235) - lu(k,863) * b(k,180)
654 254840160 : b(k,271) = b(k,271) - lu(k,864) * b(k,180)
655 254840160 : b(k,303) = b(k,303) - lu(k,865) * b(k,180)
656 254840160 : b(k,307) = b(k,307) - lu(k,866) * b(k,180)
657 254840160 : b(k,312) = b(k,312) - lu(k,867) * b(k,180)
658 254840160 : b(k,184) = b(k,184) - lu(k,874) * b(k,181)
659 254840160 : b(k,188) = b(k,188) - lu(k,875) * b(k,181)
660 254840160 : b(k,235) = b(k,235) - lu(k,876) * b(k,181)
661 254840160 : b(k,266) = b(k,266) - lu(k,877) * b(k,181)
662 254840160 : b(k,271) = b(k,271) - lu(k,878) * b(k,181)
663 254840160 : b(k,303) = b(k,303) - lu(k,879) * b(k,181)
664 254840160 : b(k,307) = b(k,307) - lu(k,880) * b(k,181)
665 254840160 : b(k,312) = b(k,312) - lu(k,881) * b(k,181)
666 254840160 : b(k,316) = b(k,316) - lu(k,882) * b(k,181)
667 254840160 : b(k,235) = b(k,235) - lu(k,884) * b(k,182)
668 254840160 : b(k,271) = b(k,271) - lu(k,885) * b(k,182)
669 254840160 : b(k,306) = b(k,306) - lu(k,886) * b(k,182)
670 254840160 : b(k,307) = b(k,307) - lu(k,887) * b(k,182)
671 254840160 : b(k,316) = b(k,316) - lu(k,888) * b(k,182)
672 254840160 : b(k,184) = b(k,184) - lu(k,896) * b(k,183)
673 254840160 : b(k,188) = b(k,188) - lu(k,897) * b(k,183)
674 254840160 : b(k,235) = b(k,235) - lu(k,898) * b(k,183)
675 254840160 : b(k,266) = b(k,266) - lu(k,899) * b(k,183)
676 254840160 : b(k,271) = b(k,271) - lu(k,900) * b(k,183)
677 254840160 : b(k,300) = b(k,300) - lu(k,901) * b(k,183)
678 254840160 : b(k,303) = b(k,303) - lu(k,902) * b(k,183)
679 254840160 : b(k,307) = b(k,307) - lu(k,903) * b(k,183)
680 254840160 : b(k,312) = b(k,312) - lu(k,904) * b(k,183)
681 263009123 : b(k,316) = b(k,316) - lu(k,905) * b(k,183)
682 : end do
683 8168963 : end subroutine lu_slv03
684 8168963 : subroutine lu_slv04( avec_len, lu, b )
685 : use shr_kind_mod, only : r8 => shr_kind_r8
686 : use chem_mods, only : clscnt4, nzcnt
687 : implicit none
688 : !-----------------------------------------------------------------------
689 : ! ... Dummy args
690 : !-----------------------------------------------------------------------
691 : integer, intent(in) :: avec_len
692 : real(r8), intent(in) :: lu(veclen,max(1,nzcnt))
693 : real(r8), intent(inout) :: b(veclen,clscnt4)
694 : !-----------------------------------------------------------------------
695 : ! ... Local variables
696 : !-----------------------------------------------------------------------
697 : integer :: k
698 : !-----------------------------------------------------------------------
699 : ! ... solve L * y = b
700 : !-----------------------------------------------------------------------
701 263009123 : do k = 1,avec_len
702 254840160 : b(k,266) = b(k,266) - lu(k,907) * b(k,184)
703 254840160 : b(k,271) = b(k,271) - lu(k,908) * b(k,184)
704 254840160 : b(k,303) = b(k,303) - lu(k,909) * b(k,184)
705 254840160 : b(k,307) = b(k,307) - lu(k,910) * b(k,184)
706 254840160 : b(k,308) = b(k,308) - lu(k,911) * b(k,184)
707 254840160 : b(k,312) = b(k,312) - lu(k,912) * b(k,184)
708 254840160 : b(k,316) = b(k,316) - lu(k,913) * b(k,184)
709 254840160 : b(k,258) = b(k,258) - lu(k,915) * b(k,185)
710 254840160 : b(k,266) = b(k,266) - lu(k,916) * b(k,185)
711 254840160 : b(k,271) = b(k,271) - lu(k,917) * b(k,185)
712 254840160 : b(k,306) = b(k,306) - lu(k,918) * b(k,185)
713 254840160 : b(k,254) = b(k,254) - lu(k,920) * b(k,186)
714 254840160 : b(k,258) = b(k,258) - lu(k,921) * b(k,186)
715 254840160 : b(k,307) = b(k,307) - lu(k,922) * b(k,186)
716 254840160 : b(k,316) = b(k,316) - lu(k,923) * b(k,186)
717 254840160 : b(k,266) = b(k,266) - lu(k,925) * b(k,187)
718 254840160 : b(k,300) = b(k,300) - lu(k,926) * b(k,187)
719 254840160 : b(k,306) = b(k,306) - lu(k,927) * b(k,187)
720 254840160 : b(k,316) = b(k,316) - lu(k,928) * b(k,187)
721 254840160 : b(k,235) = b(k,235) - lu(k,930) * b(k,188)
722 254840160 : b(k,266) = b(k,266) - lu(k,931) * b(k,188)
723 254840160 : b(k,271) = b(k,271) - lu(k,932) * b(k,188)
724 254840160 : b(k,303) = b(k,303) - lu(k,933) * b(k,188)
725 254840160 : b(k,307) = b(k,307) - lu(k,934) * b(k,188)
726 254840160 : b(k,308) = b(k,308) - lu(k,935) * b(k,188)
727 254840160 : b(k,312) = b(k,312) - lu(k,936) * b(k,188)
728 254840160 : b(k,316) = b(k,316) - lu(k,937) * b(k,188)
729 254840160 : b(k,230) = b(k,230) - lu(k,940) * b(k,189)
730 254840160 : b(k,258) = b(k,258) - lu(k,941) * b(k,189)
731 254840160 : b(k,303) = b(k,303) - lu(k,942) * b(k,189)
732 254840160 : b(k,306) = b(k,306) - lu(k,943) * b(k,189)
733 254840160 : b(k,307) = b(k,307) - lu(k,944) * b(k,189)
734 254840160 : b(k,312) = b(k,312) - lu(k,945) * b(k,189)
735 254840160 : b(k,316) = b(k,316) - lu(k,946) * b(k,189)
736 254840160 : b(k,317) = b(k,317) - lu(k,947) * b(k,189)
737 254840160 : b(k,192) = b(k,192) - lu(k,952) * b(k,190)
738 254840160 : b(k,255) = b(k,255) - lu(k,953) * b(k,190)
739 254840160 : b(k,284) = b(k,284) - lu(k,954) * b(k,190)
740 254840160 : b(k,303) = b(k,303) - lu(k,955) * b(k,190)
741 254840160 : b(k,306) = b(k,306) - lu(k,956) * b(k,190)
742 254840160 : b(k,307) = b(k,307) - lu(k,957) * b(k,190)
743 254840160 : b(k,312) = b(k,312) - lu(k,958) * b(k,190)
744 254840160 : b(k,316) = b(k,316) - lu(k,959) * b(k,190)
745 254840160 : b(k,252) = b(k,252) - lu(k,961) * b(k,191)
746 254840160 : b(k,253) = b(k,253) - lu(k,962) * b(k,191)
747 254840160 : b(k,282) = b(k,282) - lu(k,963) * b(k,191)
748 254840160 : b(k,293) = b(k,293) - lu(k,964) * b(k,191)
749 254840160 : b(k,303) = b(k,303) - lu(k,965) * b(k,191)
750 254840160 : b(k,307) = b(k,307) - lu(k,966) * b(k,191)
751 254840160 : b(k,312) = b(k,312) - lu(k,967) * b(k,191)
752 254840160 : b(k,316) = b(k,316) - lu(k,968) * b(k,191)
753 254840160 : b(k,244) = b(k,244) - lu(k,970) * b(k,192)
754 254840160 : b(k,307) = b(k,307) - lu(k,971) * b(k,192)
755 254840160 : b(k,316) = b(k,316) - lu(k,972) * b(k,192)
756 254840160 : b(k,230) = b(k,230) - lu(k,975) * b(k,193)
757 254840160 : b(k,254) = b(k,254) - lu(k,976) * b(k,193)
758 254840160 : b(k,258) = b(k,258) - lu(k,977) * b(k,193)
759 254840160 : b(k,271) = b(k,271) - lu(k,978) * b(k,193)
760 254840160 : b(k,280) = b(k,280) - lu(k,979) * b(k,193)
761 254840160 : b(k,300) = b(k,300) - lu(k,980) * b(k,193)
762 254840160 : b(k,302) = b(k,302) - lu(k,981) * b(k,193)
763 254840160 : b(k,306) = b(k,306) - lu(k,982) * b(k,193)
764 254840160 : b(k,307) = b(k,307) - lu(k,983) * b(k,193)
765 254840160 : b(k,312) = b(k,312) - lu(k,984) * b(k,193)
766 254840160 : b(k,316) = b(k,316) - lu(k,985) * b(k,193)
767 254840160 : b(k,244) = b(k,244) - lu(k,987) * b(k,194)
768 254840160 : b(k,284) = b(k,284) - lu(k,988) * b(k,194)
769 254840160 : b(k,290) = b(k,290) - lu(k,989) * b(k,194)
770 254840160 : b(k,307) = b(k,307) - lu(k,990) * b(k,194)
771 254840160 : b(k,312) = b(k,312) - lu(k,991) * b(k,194)
772 254840160 : b(k,316) = b(k,316) - lu(k,992) * b(k,194)
773 254840160 : b(k,317) = b(k,317) - lu(k,993) * b(k,194)
774 254840160 : b(k,276) = b(k,276) - lu(k,996) * b(k,195)
775 254840160 : b(k,304) = b(k,304) - lu(k,997) * b(k,195)
776 254840160 : b(k,305) = b(k,305) - lu(k,998) * b(k,195)
777 254840160 : b(k,309) = b(k,309) - lu(k,999) * b(k,195)
778 254840160 : b(k,315) = b(k,315) - lu(k,1000) * b(k,195)
779 254840160 : b(k,316) = b(k,316) - lu(k,1001) * b(k,195)
780 254840160 : b(k,317) = b(k,317) - lu(k,1002) * b(k,195)
781 254840160 : b(k,244) = b(k,244) - lu(k,1007) * b(k,196)
782 254840160 : b(k,282) = b(k,282) - lu(k,1008) * b(k,196)
783 254840160 : b(k,284) = b(k,284) - lu(k,1009) * b(k,196)
784 254840160 : b(k,303) = b(k,303) - lu(k,1010) * b(k,196)
785 254840160 : b(k,307) = b(k,307) - lu(k,1011) * b(k,196)
786 254840160 : b(k,312) = b(k,312) - lu(k,1012) * b(k,196)
787 254840160 : b(k,316) = b(k,316) - lu(k,1013) * b(k,196)
788 254840160 : b(k,207) = b(k,207) - lu(k,1016) * b(k,197)
789 254840160 : b(k,215) = b(k,215) - lu(k,1017) * b(k,197)
790 254840160 : b(k,244) = b(k,244) - lu(k,1018) * b(k,197)
791 254840160 : b(k,303) = b(k,303) - lu(k,1019) * b(k,197)
792 254840160 : b(k,307) = b(k,307) - lu(k,1020) * b(k,197)
793 254840160 : b(k,312) = b(k,312) - lu(k,1021) * b(k,197)
794 254840160 : b(k,316) = b(k,316) - lu(k,1022) * b(k,197)
795 254840160 : b(k,230) = b(k,230) - lu(k,1025) * b(k,198)
796 254840160 : b(k,280) = b(k,280) - lu(k,1026) * b(k,198)
797 254840160 : b(k,303) = b(k,303) - lu(k,1027) * b(k,198)
798 254840160 : b(k,306) = b(k,306) - lu(k,1028) * b(k,198)
799 254840160 : b(k,307) = b(k,307) - lu(k,1029) * b(k,198)
800 254840160 : b(k,308) = b(k,308) - lu(k,1030) * b(k,198)
801 254840160 : b(k,312) = b(k,312) - lu(k,1031) * b(k,198)
802 254840160 : b(k,316) = b(k,316) - lu(k,1032) * b(k,198)
803 254840160 : b(k,317) = b(k,317) - lu(k,1033) * b(k,198)
804 254840160 : b(k,237) = b(k,237) - lu(k,1042) * b(k,199)
805 254840160 : b(k,247) = b(k,247) - lu(k,1043) * b(k,199)
806 254840160 : b(k,277) = b(k,277) - lu(k,1044) * b(k,199)
807 254840160 : b(k,286) = b(k,286) - lu(k,1045) * b(k,199)
808 254840160 : b(k,292) = b(k,292) - lu(k,1046) * b(k,199)
809 254840160 : b(k,294) = b(k,294) - lu(k,1047) * b(k,199)
810 254840160 : b(k,299) = b(k,299) - lu(k,1048) * b(k,199)
811 254840160 : b(k,306) = b(k,306) - lu(k,1049) * b(k,199)
812 254840160 : b(k,307) = b(k,307) - lu(k,1050) * b(k,199)
813 254840160 : b(k,311) = b(k,311) - lu(k,1051) * b(k,199)
814 254840160 : b(k,313) = b(k,313) - lu(k,1052) * b(k,199)
815 254840160 : b(k,316) = b(k,316) - lu(k,1053) * b(k,199)
816 254840160 : b(k,234) = b(k,234) - lu(k,1055) * b(k,200)
817 254840160 : b(k,250) = b(k,250) - lu(k,1056) * b(k,200)
818 254840160 : b(k,260) = b(k,260) - lu(k,1057) * b(k,200)
819 254840160 : b(k,265) = b(k,265) - lu(k,1058) * b(k,200)
820 254840160 : b(k,303) = b(k,303) - lu(k,1059) * b(k,200)
821 254840160 : b(k,306) = b(k,306) - lu(k,1060) * b(k,200)
822 254840160 : b(k,307) = b(k,307) - lu(k,1061) * b(k,200)
823 254840160 : b(k,312) = b(k,312) - lu(k,1062) * b(k,200)
824 254840160 : b(k,316) = b(k,316) - lu(k,1063) * b(k,200)
825 254840160 : b(k,237) = b(k,237) - lu(k,1072) * b(k,201)
826 254840160 : b(k,247) = b(k,247) - lu(k,1073) * b(k,201)
827 254840160 : b(k,283) = b(k,283) - lu(k,1074) * b(k,201)
828 254840160 : b(k,289) = b(k,289) - lu(k,1075) * b(k,201)
829 254840160 : b(k,293) = b(k,293) - lu(k,1076) * b(k,201)
830 254840160 : b(k,294) = b(k,294) - lu(k,1077) * b(k,201)
831 254840160 : b(k,298) = b(k,298) - lu(k,1078) * b(k,201)
832 254840160 : b(k,299) = b(k,299) - lu(k,1079) * b(k,201)
833 254840160 : b(k,300) = b(k,300) - lu(k,1080) * b(k,201)
834 254840160 : b(k,306) = b(k,306) - lu(k,1081) * b(k,201)
835 254840160 : b(k,311) = b(k,311) - lu(k,1082) * b(k,201)
836 254840160 : b(k,313) = b(k,313) - lu(k,1083) * b(k,201)
837 254840160 : b(k,316) = b(k,316) - lu(k,1084) * b(k,201)
838 254840160 : b(k,203) = b(k,203) - lu(k,1093) * b(k,202)
839 254840160 : b(k,211) = b(k,211) - lu(k,1094) * b(k,202)
840 254840160 : b(k,213) = b(k,213) - lu(k,1095) * b(k,202)
841 254840160 : b(k,227) = b(k,227) - lu(k,1096) * b(k,202)
842 254840160 : b(k,237) = b(k,237) - lu(k,1097) * b(k,202)
843 254840160 : b(k,247) = b(k,247) - lu(k,1098) * b(k,202)
844 254840160 : b(k,285) = b(k,285) - lu(k,1099) * b(k,202)
845 254840160 : b(k,290) = b(k,290) - lu(k,1100) * b(k,202)
846 254840160 : b(k,297) = b(k,297) - lu(k,1101) * b(k,202)
847 254840160 : b(k,306) = b(k,306) - lu(k,1102) * b(k,202)
848 254840160 : b(k,311) = b(k,311) - lu(k,1103) * b(k,202)
849 254840160 : b(k,313) = b(k,313) - lu(k,1104) * b(k,202)
850 254840160 : b(k,316) = b(k,316) - lu(k,1105) * b(k,202)
851 254840160 : b(k,294) = b(k,294) - lu(k,1107) * b(k,203)
852 254840160 : b(k,297) = b(k,297) - lu(k,1108) * b(k,203)
853 254840160 : b(k,316) = b(k,316) - lu(k,1109) * b(k,203)
854 254840160 : b(k,235) = b(k,235) - lu(k,1111) * b(k,204)
855 254840160 : b(k,254) = b(k,254) - lu(k,1112) * b(k,204)
856 254840160 : b(k,258) = b(k,258) - lu(k,1113) * b(k,204)
857 254840160 : b(k,259) = b(k,259) - lu(k,1114) * b(k,204)
858 254840160 : b(k,265) = b(k,265) - lu(k,1115) * b(k,204)
859 254840160 : b(k,266) = b(k,266) - lu(k,1116) * b(k,204)
860 254840160 : b(k,271) = b(k,271) - lu(k,1117) * b(k,204)
861 254840160 : b(k,302) = b(k,302) - lu(k,1118) * b(k,204)
862 254840160 : b(k,312) = b(k,312) - lu(k,1119) * b(k,204)
863 254840160 : b(k,316) = b(k,316) - lu(k,1120) * b(k,204)
864 254840160 : b(k,234) = b(k,234) - lu(k,1122) * b(k,205)
865 254840160 : b(k,236) = b(k,236) - lu(k,1123) * b(k,205)
866 254840160 : b(k,250) = b(k,250) - lu(k,1124) * b(k,205)
867 254840160 : b(k,254) = b(k,254) - lu(k,1125) * b(k,205)
868 254840160 : b(k,259) = b(k,259) - lu(k,1126) * b(k,205)
869 254840160 : b(k,303) = b(k,303) - lu(k,1127) * b(k,205)
870 254840160 : b(k,306) = b(k,306) - lu(k,1128) * b(k,205)
871 254840160 : b(k,307) = b(k,307) - lu(k,1129) * b(k,205)
872 254840160 : b(k,312) = b(k,312) - lu(k,1130) * b(k,205)
873 254840160 : b(k,316) = b(k,316) - lu(k,1131) * b(k,205)
874 254840160 : b(k,232) = b(k,232) - lu(k,1133) * b(k,206)
875 254840160 : b(k,234) = b(k,234) - lu(k,1134) * b(k,206)
876 254840160 : b(k,250) = b(k,250) - lu(k,1135) * b(k,206)
877 254840160 : b(k,258) = b(k,258) - lu(k,1136) * b(k,206)
878 254840160 : b(k,265) = b(k,265) - lu(k,1137) * b(k,206)
879 254840160 : b(k,303) = b(k,303) - lu(k,1138) * b(k,206)
880 254840160 : b(k,306) = b(k,306) - lu(k,1139) * b(k,206)
881 254840160 : b(k,307) = b(k,307) - lu(k,1140) * b(k,206)
882 254840160 : b(k,312) = b(k,312) - lu(k,1141) * b(k,206)
883 254840160 : b(k,316) = b(k,316) - lu(k,1142) * b(k,206)
884 254840160 : b(k,242) = b(k,242) - lu(k,1144) * b(k,207)
885 254840160 : b(k,284) = b(k,284) - lu(k,1145) * b(k,207)
886 254840160 : b(k,302) = b(k,302) - lu(k,1146) * b(k,207)
887 254840160 : b(k,312) = b(k,312) - lu(k,1147) * b(k,207)
888 254840160 : b(k,316) = b(k,316) - lu(k,1148) * b(k,207)
889 254840160 : b(k,317) = b(k,317) - lu(k,1149) * b(k,207)
890 254840160 : b(k,276) = b(k,276) - lu(k,1151) * b(k,208)
891 254840160 : b(k,301) = b(k,301) - lu(k,1152) * b(k,208)
892 254840160 : b(k,305) = b(k,305) - lu(k,1153) * b(k,208)
893 254840160 : b(k,309) = b(k,309) - lu(k,1154) * b(k,208)
894 254840160 : b(k,314) = b(k,314) - lu(k,1155) * b(k,208)
895 254840160 : b(k,316) = b(k,316) - lu(k,1156) * b(k,208)
896 254840160 : b(k,317) = b(k,317) - lu(k,1157) * b(k,208)
897 254840160 : b(k,304) = b(k,304) - lu(k,1160) * b(k,209)
898 254840160 : b(k,305) = b(k,305) - lu(k,1161) * b(k,209)
899 254840160 : b(k,310) = b(k,310) - lu(k,1162) * b(k,209)
900 254840160 : b(k,315) = b(k,315) - lu(k,1163) * b(k,209)
901 254840160 : b(k,316) = b(k,316) - lu(k,1164) * b(k,209)
902 263009123 : b(k,317) = b(k,317) - lu(k,1165) * b(k,209)
903 : end do
904 8168963 : end subroutine lu_slv04
905 8168963 : subroutine lu_slv05( avec_len, lu, b )
906 : use shr_kind_mod, only : r8 => shr_kind_r8
907 : use chem_mods, only : clscnt4, nzcnt
908 : implicit none
909 : !-----------------------------------------------------------------------
910 : ! ... Dummy args
911 : !-----------------------------------------------------------------------
912 : integer, intent(in) :: avec_len
913 : real(r8), intent(in) :: lu(veclen,max(1,nzcnt))
914 : real(r8), intent(inout) :: b(veclen,clscnt4)
915 : !-----------------------------------------------------------------------
916 : ! ... Local variables
917 : !-----------------------------------------------------------------------
918 : integer :: k
919 : !-----------------------------------------------------------------------
920 : ! ... solve L * y = b
921 : !-----------------------------------------------------------------------
922 263009123 : do k = 1,avec_len
923 254840160 : b(k,234) = b(k,234) - lu(k,1167) * b(k,210)
924 254840160 : b(k,250) = b(k,250) - lu(k,1168) * b(k,210)
925 254840160 : b(k,254) = b(k,254) - lu(k,1169) * b(k,210)
926 254840160 : b(k,258) = b(k,258) - lu(k,1170) * b(k,210)
927 254840160 : b(k,259) = b(k,259) - lu(k,1171) * b(k,210)
928 254840160 : b(k,260) = b(k,260) - lu(k,1172) * b(k,210)
929 254840160 : b(k,303) = b(k,303) - lu(k,1173) * b(k,210)
930 254840160 : b(k,306) = b(k,306) - lu(k,1174) * b(k,210)
931 254840160 : b(k,307) = b(k,307) - lu(k,1175) * b(k,210)
932 254840160 : b(k,312) = b(k,312) - lu(k,1176) * b(k,210)
933 254840160 : b(k,316) = b(k,316) - lu(k,1177) * b(k,210)
934 254840160 : b(k,225) = b(k,225) - lu(k,1183) * b(k,211)
935 254840160 : b(k,230) = b(k,230) - lu(k,1184) * b(k,211)
936 254840160 : b(k,280) = b(k,280) - lu(k,1185) * b(k,211)
937 254840160 : b(k,300) = b(k,300) - lu(k,1186) * b(k,211)
938 254840160 : b(k,303) = b(k,303) - lu(k,1187) * b(k,211)
939 254840160 : b(k,306) = b(k,306) - lu(k,1188) * b(k,211)
940 254840160 : b(k,307) = b(k,307) - lu(k,1189) * b(k,211)
941 254840160 : b(k,312) = b(k,312) - lu(k,1190) * b(k,211)
942 254840160 : b(k,316) = b(k,316) - lu(k,1191) * b(k,211)
943 254840160 : b(k,222) = b(k,222) - lu(k,1195) * b(k,212)
944 254840160 : b(k,227) = b(k,227) - lu(k,1196) * b(k,212)
945 254840160 : b(k,249) = b(k,249) - lu(k,1197) * b(k,212)
946 254840160 : b(k,258) = b(k,258) - lu(k,1198) * b(k,212)
947 254840160 : b(k,266) = b(k,266) - lu(k,1199) * b(k,212)
948 254840160 : b(k,269) = b(k,269) - lu(k,1200) * b(k,212)
949 254840160 : b(k,270) = b(k,270) - lu(k,1201) * b(k,212)
950 254840160 : b(k,271) = b(k,271) - lu(k,1202) * b(k,212)
951 254840160 : b(k,274) = b(k,274) - lu(k,1203) * b(k,212)
952 254840160 : b(k,275) = b(k,275) - lu(k,1204) * b(k,212)
953 254840160 : b(k,302) = b(k,302) - lu(k,1205) * b(k,212)
954 254840160 : b(k,306) = b(k,306) - lu(k,1206) * b(k,212)
955 254840160 : b(k,307) = b(k,307) - lu(k,1207) * b(k,212)
956 254840160 : b(k,312) = b(k,312) - lu(k,1208) * b(k,212)
957 254840160 : b(k,316) = b(k,316) - lu(k,1209) * b(k,212)
958 254840160 : b(k,227) = b(k,227) - lu(k,1211) * b(k,213)
959 254840160 : b(k,306) = b(k,306) - lu(k,1212) * b(k,213)
960 254840160 : b(k,307) = b(k,307) - lu(k,1213) * b(k,213)
961 254840160 : b(k,316) = b(k,316) - lu(k,1214) * b(k,213)
962 254840160 : b(k,317) = b(k,317) - lu(k,1215) * b(k,213)
963 254840160 : b(k,215) = b(k,215) - lu(k,1219) * b(k,214)
964 254840160 : b(k,244) = b(k,244) - lu(k,1220) * b(k,214)
965 254840160 : b(k,284) = b(k,284) - lu(k,1221) * b(k,214)
966 254840160 : b(k,290) = b(k,290) - lu(k,1222) * b(k,214)
967 254840160 : b(k,303) = b(k,303) - lu(k,1223) * b(k,214)
968 254840160 : b(k,307) = b(k,307) - lu(k,1224) * b(k,214)
969 254840160 : b(k,312) = b(k,312) - lu(k,1225) * b(k,214)
970 254840160 : b(k,316) = b(k,316) - lu(k,1226) * b(k,214)
971 254840160 : b(k,317) = b(k,317) - lu(k,1227) * b(k,214)
972 254840160 : b(k,244) = b(k,244) - lu(k,1229) * b(k,215)
973 254840160 : b(k,302) = b(k,302) - lu(k,1230) * b(k,215)
974 254840160 : b(k,307) = b(k,307) - lu(k,1231) * b(k,215)
975 254840160 : b(k,312) = b(k,312) - lu(k,1232) * b(k,215)
976 254840160 : b(k,316) = b(k,316) - lu(k,1233) * b(k,215)
977 254840160 : b(k,246) = b(k,246) - lu(k,1236) * b(k,216)
978 254840160 : b(k,305) = b(k,305) - lu(k,1237) * b(k,216)
979 254840160 : b(k,307) = b(k,307) - lu(k,1238) * b(k,216)
980 254840160 : b(k,316) = b(k,316) - lu(k,1239) * b(k,216)
981 254840160 : b(k,317) = b(k,317) - lu(k,1240) * b(k,216)
982 254840160 : b(k,251) = b(k,251) - lu(k,1243) * b(k,217)
983 254840160 : b(k,279) = b(k,279) - lu(k,1244) * b(k,217)
984 254840160 : b(k,301) = b(k,301) - lu(k,1245) * b(k,217)
985 254840160 : b(k,302) = b(k,302) - lu(k,1246) * b(k,217)
986 254840160 : b(k,308) = b(k,308) - lu(k,1247) * b(k,217)
987 254840160 : b(k,311) = b(k,311) - lu(k,1248) * b(k,217)
988 254840160 : b(k,316) = b(k,316) - lu(k,1249) * b(k,217)
989 254840160 : b(k,317) = b(k,317) - lu(k,1250) * b(k,217)
990 254840160 : b(k,236) = b(k,236) - lu(k,1253) * b(k,218)
991 254840160 : b(k,247) = b(k,247) - lu(k,1254) * b(k,218)
992 254840160 : b(k,249) = b(k,249) - lu(k,1255) * b(k,218)
993 254840160 : b(k,258) = b(k,258) - lu(k,1256) * b(k,218)
994 254840160 : b(k,265) = b(k,265) - lu(k,1257) * b(k,218)
995 254840160 : b(k,266) = b(k,266) - lu(k,1258) * b(k,218)
996 254840160 : b(k,271) = b(k,271) - lu(k,1259) * b(k,218)
997 254840160 : b(k,302) = b(k,302) - lu(k,1260) * b(k,218)
998 254840160 : b(k,306) = b(k,306) - lu(k,1261) * b(k,218)
999 254840160 : b(k,307) = b(k,307) - lu(k,1262) * b(k,218)
1000 254840160 : b(k,312) = b(k,312) - lu(k,1263) * b(k,218)
1001 254840160 : b(k,316) = b(k,316) - lu(k,1264) * b(k,218)
1002 254840160 : b(k,220) = b(k,220) - lu(k,1273) * b(k,219)
1003 254840160 : b(k,237) = b(k,237) - lu(k,1274) * b(k,219)
1004 254840160 : b(k,247) = b(k,247) - lu(k,1275) * b(k,219)
1005 254840160 : b(k,271) = b(k,271) - lu(k,1276) * b(k,219)
1006 254840160 : b(k,281) = b(k,281) - lu(k,1277) * b(k,219)
1007 254840160 : b(k,284) = b(k,284) - lu(k,1278) * b(k,219)
1008 254840160 : b(k,287) = b(k,287) - lu(k,1279) * b(k,219)
1009 254840160 : b(k,294) = b(k,294) - lu(k,1280) * b(k,219)
1010 254840160 : b(k,296) = b(k,296) - lu(k,1281) * b(k,219)
1011 254840160 : b(k,297) = b(k,297) - lu(k,1282) * b(k,219)
1012 254840160 : b(k,299) = b(k,299) - lu(k,1283) * b(k,219)
1013 254840160 : b(k,306) = b(k,306) - lu(k,1284) * b(k,219)
1014 254840160 : b(k,307) = b(k,307) - lu(k,1285) * b(k,219)
1015 254840160 : b(k,311) = b(k,311) - lu(k,1286) * b(k,219)
1016 254840160 : b(k,313) = b(k,313) - lu(k,1287) * b(k,219)
1017 254840160 : b(k,316) = b(k,316) - lu(k,1288) * b(k,219)
1018 254840160 : b(k,271) = b(k,271) - lu(k,1290) * b(k,220)
1019 254840160 : b(k,296) = b(k,296) - lu(k,1291) * b(k,220)
1020 254840160 : b(k,297) = b(k,297) - lu(k,1292) * b(k,220)
1021 254840160 : b(k,302) = b(k,302) - lu(k,1293) * b(k,220)
1022 254840160 : b(k,307) = b(k,307) - lu(k,1294) * b(k,220)
1023 254840160 : b(k,311) = b(k,311) - lu(k,1295) * b(k,220)
1024 254840160 : b(k,316) = b(k,316) - lu(k,1296) * b(k,220)
1025 254840160 : b(k,235) = b(k,235) - lu(k,1299) * b(k,221)
1026 254840160 : b(k,254) = b(k,254) - lu(k,1300) * b(k,221)
1027 254840160 : b(k,258) = b(k,258) - lu(k,1301) * b(k,221)
1028 254840160 : b(k,260) = b(k,260) - lu(k,1302) * b(k,221)
1029 254840160 : b(k,266) = b(k,266) - lu(k,1303) * b(k,221)
1030 254840160 : b(k,271) = b(k,271) - lu(k,1304) * b(k,221)
1031 254840160 : b(k,303) = b(k,303) - lu(k,1305) * b(k,221)
1032 254840160 : b(k,307) = b(k,307) - lu(k,1306) * b(k,221)
1033 254840160 : b(k,312) = b(k,312) - lu(k,1307) * b(k,221)
1034 254840160 : b(k,316) = b(k,316) - lu(k,1308) * b(k,221)
1035 254840160 : b(k,232) = b(k,232) - lu(k,1310) * b(k,222)
1036 254840160 : b(k,234) = b(k,234) - lu(k,1311) * b(k,222)
1037 254840160 : b(k,236) = b(k,236) - lu(k,1312) * b(k,222)
1038 254840160 : b(k,250) = b(k,250) - lu(k,1313) * b(k,222)
1039 254840160 : b(k,254) = b(k,254) - lu(k,1314) * b(k,222)
1040 254840160 : b(k,258) = b(k,258) - lu(k,1315) * b(k,222)
1041 254840160 : b(k,259) = b(k,259) - lu(k,1316) * b(k,222)
1042 254840160 : b(k,265) = b(k,265) - lu(k,1317) * b(k,222)
1043 254840160 : b(k,303) = b(k,303) - lu(k,1318) * b(k,222)
1044 254840160 : b(k,306) = b(k,306) - lu(k,1319) * b(k,222)
1045 254840160 : b(k,307) = b(k,307) - lu(k,1320) * b(k,222)
1046 254840160 : b(k,312) = b(k,312) - lu(k,1321) * b(k,222)
1047 254840160 : b(k,316) = b(k,316) - lu(k,1322) * b(k,222)
1048 254840160 : b(k,302) = b(k,302) - lu(k,1326) * b(k,223)
1049 254840160 : b(k,304) = b(k,304) - lu(k,1327) * b(k,223)
1050 254840160 : b(k,305) = b(k,305) - lu(k,1328) * b(k,223)
1051 254840160 : b(k,310) = b(k,310) - lu(k,1329) * b(k,223)
1052 254840160 : b(k,311) = b(k,311) - lu(k,1330) * b(k,223)
1053 254840160 : b(k,312) = b(k,312) - lu(k,1331) * b(k,223)
1054 254840160 : b(k,315) = b(k,315) - lu(k,1332) * b(k,223)
1055 254840160 : b(k,316) = b(k,316) - lu(k,1333) * b(k,223)
1056 254840160 : b(k,317) = b(k,317) - lu(k,1334) * b(k,223)
1057 254840160 : b(k,238) = b(k,238) - lu(k,1337) * b(k,224)
1058 254840160 : b(k,258) = b(k,258) - lu(k,1338) * b(k,224)
1059 254840160 : b(k,266) = b(k,266) - lu(k,1339) * b(k,224)
1060 254840160 : b(k,300) = b(k,300) - lu(k,1340) * b(k,224)
1061 254840160 : b(k,303) = b(k,303) - lu(k,1341) * b(k,224)
1062 254840160 : b(k,306) = b(k,306) - lu(k,1342) * b(k,224)
1063 254840160 : b(k,307) = b(k,307) - lu(k,1343) * b(k,224)
1064 254840160 : b(k,308) = b(k,308) - lu(k,1344) * b(k,224)
1065 254840160 : b(k,312) = b(k,312) - lu(k,1345) * b(k,224)
1066 254840160 : b(k,316) = b(k,316) - lu(k,1346) * b(k,224)
1067 254840160 : b(k,317) = b(k,317) - lu(k,1347) * b(k,224)
1068 254840160 : b(k,230) = b(k,230) - lu(k,1351) * b(k,225)
1069 254840160 : b(k,238) = b(k,238) - lu(k,1352) * b(k,225)
1070 254840160 : b(k,303) = b(k,303) - lu(k,1353) * b(k,225)
1071 254840160 : b(k,306) = b(k,306) - lu(k,1354) * b(k,225)
1072 254840160 : b(k,307) = b(k,307) - lu(k,1355) * b(k,225)
1073 254840160 : b(k,308) = b(k,308) - lu(k,1356) * b(k,225)
1074 254840160 : b(k,312) = b(k,312) - lu(k,1357) * b(k,225)
1075 254840160 : b(k,316) = b(k,316) - lu(k,1358) * b(k,225)
1076 254840160 : b(k,232) = b(k,232) - lu(k,1362) * b(k,226)
1077 254840160 : b(k,234) = b(k,234) - lu(k,1363) * b(k,226)
1078 254840160 : b(k,235) = b(k,235) - lu(k,1364) * b(k,226)
1079 254840160 : b(k,236) = b(k,236) - lu(k,1365) * b(k,226)
1080 254840160 : b(k,250) = b(k,250) - lu(k,1366) * b(k,226)
1081 254840160 : b(k,259) = b(k,259) - lu(k,1367) * b(k,226)
1082 254840160 : b(k,265) = b(k,265) - lu(k,1368) * b(k,226)
1083 254840160 : b(k,266) = b(k,266) - lu(k,1369) * b(k,226)
1084 254840160 : b(k,271) = b(k,271) - lu(k,1370) * b(k,226)
1085 254840160 : b(k,300) = b(k,300) - lu(k,1371) * b(k,226)
1086 254840160 : b(k,303) = b(k,303) - lu(k,1372) * b(k,226)
1087 254840160 : b(k,306) = b(k,306) - lu(k,1373) * b(k,226)
1088 254840160 : b(k,307) = b(k,307) - lu(k,1374) * b(k,226)
1089 254840160 : b(k,312) = b(k,312) - lu(k,1375) * b(k,226)
1090 254840160 : b(k,316) = b(k,316) - lu(k,1376) * b(k,226)
1091 254840160 : b(k,247) = b(k,247) - lu(k,1378) * b(k,227)
1092 254840160 : b(k,307) = b(k,307) - lu(k,1379) * b(k,227)
1093 254840160 : b(k,316) = b(k,316) - lu(k,1380) * b(k,227)
1094 254840160 : b(k,317) = b(k,317) - lu(k,1381) * b(k,227)
1095 254840160 : b(k,230) = b(k,230) - lu(k,1386) * b(k,228)
1096 254840160 : b(k,236) = b(k,236) - lu(k,1387) * b(k,228)
1097 254840160 : b(k,247) = b(k,247) - lu(k,1388) * b(k,228)
1098 254840160 : b(k,258) = b(k,258) - lu(k,1389) * b(k,228)
1099 254840160 : b(k,271) = b(k,271) - lu(k,1390) * b(k,228)
1100 254840160 : b(k,279) = b(k,279) - lu(k,1391) * b(k,228)
1101 254840160 : b(k,303) = b(k,303) - lu(k,1392) * b(k,228)
1102 254840160 : b(k,306) = b(k,306) - lu(k,1393) * b(k,228)
1103 254840160 : b(k,307) = b(k,307) - lu(k,1394) * b(k,228)
1104 254840160 : b(k,308) = b(k,308) - lu(k,1395) * b(k,228)
1105 254840160 : b(k,311) = b(k,311) - lu(k,1396) * b(k,228)
1106 254840160 : b(k,312) = b(k,312) - lu(k,1397) * b(k,228)
1107 254840160 : b(k,313) = b(k,313) - lu(k,1398) * b(k,228)
1108 254840160 : b(k,316) = b(k,316) - lu(k,1399) * b(k,228)
1109 254840160 : b(k,317) = b(k,317) - lu(k,1400) * b(k,228)
1110 254840160 : b(k,237) = b(k,237) - lu(k,1411) * b(k,229)
1111 254840160 : b(k,247) = b(k,247) - lu(k,1412) * b(k,229)
1112 254840160 : b(k,256) = b(k,256) - lu(k,1413) * b(k,229)
1113 254840160 : b(k,257) = b(k,257) - lu(k,1414) * b(k,229)
1114 254840160 : b(k,261) = b(k,261) - lu(k,1415) * b(k,229)
1115 254840160 : b(k,262) = b(k,262) - lu(k,1416) * b(k,229)
1116 254840160 : b(k,267) = b(k,267) - lu(k,1417) * b(k,229)
1117 254840160 : b(k,268) = b(k,268) - lu(k,1418) * b(k,229)
1118 254840160 : b(k,269) = b(k,269) - lu(k,1419) * b(k,229)
1119 254840160 : b(k,270) = b(k,270) - lu(k,1420) * b(k,229)
1120 254840160 : b(k,271) = b(k,271) - lu(k,1421) * b(k,229)
1121 254840160 : b(k,275) = b(k,275) - lu(k,1422) * b(k,229)
1122 254840160 : b(k,300) = b(k,300) - lu(k,1423) * b(k,229)
1123 254840160 : b(k,306) = b(k,306) - lu(k,1424) * b(k,229)
1124 254840160 : b(k,307) = b(k,307) - lu(k,1425) * b(k,229)
1125 254840160 : b(k,308) = b(k,308) - lu(k,1426) * b(k,229)
1126 254840160 : b(k,311) = b(k,311) - lu(k,1427) * b(k,229)
1127 254840160 : b(k,313) = b(k,313) - lu(k,1428) * b(k,229)
1128 254840160 : b(k,316) = b(k,316) - lu(k,1429) * b(k,229)
1129 263009123 : b(k,317) = b(k,317) - lu(k,1430) * b(k,229)
1130 : end do
1131 8168963 : end subroutine lu_slv05
1132 8168963 : subroutine lu_slv06( avec_len, lu, b )
1133 : use shr_kind_mod, only : r8 => shr_kind_r8
1134 : use chem_mods, only : clscnt4, nzcnt
1135 : implicit none
1136 : !-----------------------------------------------------------------------
1137 : ! ... Dummy args
1138 : !-----------------------------------------------------------------------
1139 : integer, intent(in) :: avec_len
1140 : real(r8), intent(in) :: lu(veclen,max(1,nzcnt))
1141 : real(r8), intent(inout) :: b(veclen,clscnt4)
1142 : !-----------------------------------------------------------------------
1143 : ! ... Local variables
1144 : !-----------------------------------------------------------------------
1145 : integer :: k
1146 : !-----------------------------------------------------------------------
1147 : ! ... solve L * y = b
1148 : !-----------------------------------------------------------------------
1149 263009123 : do k = 1,avec_len
1150 254840160 : b(k,271) = b(k,271) - lu(k,1432) * b(k,230)
1151 254840160 : b(k,300) = b(k,300) - lu(k,1433) * b(k,230)
1152 254840160 : b(k,302) = b(k,302) - lu(k,1434) * b(k,230)
1153 254840160 : b(k,307) = b(k,307) - lu(k,1435) * b(k,230)
1154 254840160 : b(k,308) = b(k,308) - lu(k,1436) * b(k,230)
1155 254840160 : b(k,311) = b(k,311) - lu(k,1437) * b(k,230)
1156 254840160 : b(k,316) = b(k,316) - lu(k,1438) * b(k,230)
1157 254840160 : b(k,317) = b(k,317) - lu(k,1439) * b(k,230)
1158 254840160 : b(k,232) = b(k,232) - lu(k,1441) * b(k,231)
1159 254840160 : b(k,234) = b(k,234) - lu(k,1442) * b(k,231)
1160 254840160 : b(k,236) = b(k,236) - lu(k,1443) * b(k,231)
1161 254840160 : b(k,250) = b(k,250) - lu(k,1444) * b(k,231)
1162 254840160 : b(k,254) = b(k,254) - lu(k,1445) * b(k,231)
1163 254840160 : b(k,258) = b(k,258) - lu(k,1446) * b(k,231)
1164 254840160 : b(k,259) = b(k,259) - lu(k,1447) * b(k,231)
1165 254840160 : b(k,265) = b(k,265) - lu(k,1448) * b(k,231)
1166 254840160 : b(k,303) = b(k,303) - lu(k,1449) * b(k,231)
1167 254840160 : b(k,306) = b(k,306) - lu(k,1450) * b(k,231)
1168 254840160 : b(k,307) = b(k,307) - lu(k,1451) * b(k,231)
1169 254840160 : b(k,312) = b(k,312) - lu(k,1452) * b(k,231)
1170 254840160 : b(k,316) = b(k,316) - lu(k,1453) * b(k,231)
1171 254840160 : b(k,247) = b(k,247) - lu(k,1455) * b(k,232)
1172 254840160 : b(k,271) = b(k,271) - lu(k,1456) * b(k,232)
1173 254840160 : b(k,306) = b(k,306) - lu(k,1457) * b(k,232)
1174 254840160 : b(k,307) = b(k,307) - lu(k,1458) * b(k,232)
1175 254840160 : b(k,312) = b(k,312) - lu(k,1459) * b(k,232)
1176 254840160 : b(k,316) = b(k,316) - lu(k,1460) * b(k,232)
1177 254840160 : b(k,258) = b(k,258) - lu(k,1462) * b(k,233)
1178 254840160 : b(k,266) = b(k,266) - lu(k,1463) * b(k,233)
1179 254840160 : b(k,271) = b(k,271) - lu(k,1464) * b(k,233)
1180 254840160 : b(k,306) = b(k,306) - lu(k,1465) * b(k,233)
1181 254840160 : b(k,307) = b(k,307) - lu(k,1466) * b(k,233)
1182 254840160 : b(k,316) = b(k,316) - lu(k,1467) * b(k,233)
1183 254840160 : b(k,254) = b(k,254) - lu(k,1469) * b(k,234)
1184 254840160 : b(k,258) = b(k,258) - lu(k,1470) * b(k,234)
1185 254840160 : b(k,260) = b(k,260) - lu(k,1471) * b(k,234)
1186 254840160 : b(k,307) = b(k,307) - lu(k,1472) * b(k,234)
1187 254840160 : b(k,312) = b(k,312) - lu(k,1473) * b(k,234)
1188 254840160 : b(k,316) = b(k,316) - lu(k,1474) * b(k,234)
1189 254840160 : b(k,247) = b(k,247) - lu(k,1477) * b(k,235)
1190 254840160 : b(k,271) = b(k,271) - lu(k,1478) * b(k,235)
1191 254840160 : b(k,307) = b(k,307) - lu(k,1479) * b(k,235)
1192 254840160 : b(k,316) = b(k,316) - lu(k,1480) * b(k,235)
1193 254840160 : b(k,266) = b(k,266) - lu(k,1482) * b(k,236)
1194 254840160 : b(k,300) = b(k,300) - lu(k,1483) * b(k,236)
1195 254840160 : b(k,306) = b(k,306) - lu(k,1484) * b(k,236)
1196 254840160 : b(k,312) = b(k,312) - lu(k,1485) * b(k,236)
1197 254840160 : b(k,316) = b(k,316) - lu(k,1486) * b(k,236)
1198 254840160 : b(k,304) = b(k,304) - lu(k,1488) * b(k,237)
1199 254840160 : b(k,305) = b(k,305) - lu(k,1489) * b(k,237)
1200 254840160 : b(k,307) = b(k,307) - lu(k,1490) * b(k,237)
1201 254840160 : b(k,315) = b(k,315) - lu(k,1491) * b(k,237)
1202 254840160 : b(k,316) = b(k,316) - lu(k,1492) * b(k,237)
1203 254840160 : b(k,317) = b(k,317) - lu(k,1493) * b(k,237)
1204 254840160 : b(k,306) = b(k,306) - lu(k,1495) * b(k,238)
1205 254840160 : b(k,307) = b(k,307) - lu(k,1496) * b(k,238)
1206 254840160 : b(k,316) = b(k,316) - lu(k,1497) * b(k,238)
1207 254840160 : b(k,254) = b(k,254) - lu(k,1499) * b(k,239)
1208 254840160 : b(k,266) = b(k,266) - lu(k,1500) * b(k,239)
1209 254840160 : b(k,271) = b(k,271) - lu(k,1501) * b(k,239)
1210 254840160 : b(k,300) = b(k,300) - lu(k,1502) * b(k,239)
1211 254840160 : b(k,306) = b(k,306) - lu(k,1503) * b(k,239)
1212 254840160 : b(k,307) = b(k,307) - lu(k,1504) * b(k,239)
1213 254840160 : b(k,316) = b(k,316) - lu(k,1505) * b(k,239)
1214 254840160 : b(k,247) = b(k,247) - lu(k,1509) * b(k,240)
1215 254840160 : b(k,254) = b(k,254) - lu(k,1510) * b(k,240)
1216 254840160 : b(k,265) = b(k,265) - lu(k,1511) * b(k,240)
1217 254840160 : b(k,266) = b(k,266) - lu(k,1512) * b(k,240)
1218 254840160 : b(k,271) = b(k,271) - lu(k,1513) * b(k,240)
1219 254840160 : b(k,300) = b(k,300) - lu(k,1514) * b(k,240)
1220 254840160 : b(k,303) = b(k,303) - lu(k,1515) * b(k,240)
1221 254840160 : b(k,306) = b(k,306) - lu(k,1516) * b(k,240)
1222 254840160 : b(k,307) = b(k,307) - lu(k,1517) * b(k,240)
1223 254840160 : b(k,308) = b(k,308) - lu(k,1518) * b(k,240)
1224 254840160 : b(k,312) = b(k,312) - lu(k,1519) * b(k,240)
1225 254840160 : b(k,316) = b(k,316) - lu(k,1520) * b(k,240)
1226 254840160 : b(k,247) = b(k,247) - lu(k,1525) * b(k,241)
1227 254840160 : b(k,254) = b(k,254) - lu(k,1526) * b(k,241)
1228 254840160 : b(k,258) = b(k,258) - lu(k,1527) * b(k,241)
1229 254840160 : b(k,260) = b(k,260) - lu(k,1528) * b(k,241)
1230 254840160 : b(k,266) = b(k,266) - lu(k,1529) * b(k,241)
1231 254840160 : b(k,271) = b(k,271) - lu(k,1530) * b(k,241)
1232 254840160 : b(k,303) = b(k,303) - lu(k,1531) * b(k,241)
1233 254840160 : b(k,306) = b(k,306) - lu(k,1532) * b(k,241)
1234 254840160 : b(k,307) = b(k,307) - lu(k,1533) * b(k,241)
1235 254840160 : b(k,312) = b(k,312) - lu(k,1534) * b(k,241)
1236 254840160 : b(k,316) = b(k,316) - lu(k,1535) * b(k,241)
1237 254840160 : b(k,284) = b(k,284) - lu(k,1537) * b(k,242)
1238 254840160 : b(k,302) = b(k,302) - lu(k,1538) * b(k,242)
1239 254840160 : b(k,307) = b(k,307) - lu(k,1539) * b(k,242)
1240 254840160 : b(k,312) = b(k,312) - lu(k,1540) * b(k,242)
1241 254840160 : b(k,316) = b(k,316) - lu(k,1541) * b(k,242)
1242 254840160 : b(k,247) = b(k,247) - lu(k,1544) * b(k,243)
1243 254840160 : b(k,258) = b(k,258) - lu(k,1545) * b(k,243)
1244 254840160 : b(k,259) = b(k,259) - lu(k,1546) * b(k,243)
1245 254840160 : b(k,266) = b(k,266) - lu(k,1547) * b(k,243)
1246 254840160 : b(k,271) = b(k,271) - lu(k,1548) * b(k,243)
1247 254840160 : b(k,280) = b(k,280) - lu(k,1549) * b(k,243)
1248 254840160 : b(k,300) = b(k,300) - lu(k,1550) * b(k,243)
1249 254840160 : b(k,303) = b(k,303) - lu(k,1551) * b(k,243)
1250 254840160 : b(k,306) = b(k,306) - lu(k,1552) * b(k,243)
1251 254840160 : b(k,307) = b(k,307) - lu(k,1553) * b(k,243)
1252 254840160 : b(k,308) = b(k,308) - lu(k,1554) * b(k,243)
1253 254840160 : b(k,312) = b(k,312) - lu(k,1555) * b(k,243)
1254 254840160 : b(k,316) = b(k,316) - lu(k,1556) * b(k,243)
1255 254840160 : b(k,284) = b(k,284) - lu(k,1558) * b(k,244)
1256 254840160 : b(k,307) = b(k,307) - lu(k,1559) * b(k,244)
1257 254840160 : b(k,312) = b(k,312) - lu(k,1560) * b(k,244)
1258 254840160 : b(k,316) = b(k,316) - lu(k,1561) * b(k,244)
1259 254840160 : b(k,247) = b(k,247) - lu(k,1573) * b(k,245)
1260 254840160 : b(k,249) = b(k,249) - lu(k,1574) * b(k,245)
1261 254840160 : b(k,250) = b(k,250) - lu(k,1575) * b(k,245)
1262 254840160 : b(k,254) = b(k,254) - lu(k,1576) * b(k,245)
1263 254840160 : b(k,258) = b(k,258) - lu(k,1577) * b(k,245)
1264 254840160 : b(k,259) = b(k,259) - lu(k,1578) * b(k,245)
1265 254840160 : b(k,260) = b(k,260) - lu(k,1579) * b(k,245)
1266 254840160 : b(k,265) = b(k,265) - lu(k,1580) * b(k,245)
1267 254840160 : b(k,266) = b(k,266) - lu(k,1581) * b(k,245)
1268 254840160 : b(k,271) = b(k,271) - lu(k,1582) * b(k,245)
1269 254840160 : b(k,274) = b(k,274) - lu(k,1583) * b(k,245)
1270 254840160 : b(k,275) = b(k,275) - lu(k,1584) * b(k,245)
1271 254840160 : b(k,300) = b(k,300) - lu(k,1585) * b(k,245)
1272 254840160 : b(k,302) = b(k,302) - lu(k,1586) * b(k,245)
1273 254840160 : b(k,303) = b(k,303) - lu(k,1587) * b(k,245)
1274 254840160 : b(k,304) = b(k,304) - lu(k,1588) * b(k,245)
1275 254840160 : b(k,305) = b(k,305) - lu(k,1589) * b(k,245)
1276 254840160 : b(k,306) = b(k,306) - lu(k,1590) * b(k,245)
1277 254840160 : b(k,307) = b(k,307) - lu(k,1591) * b(k,245)
1278 254840160 : b(k,312) = b(k,312) - lu(k,1592) * b(k,245)
1279 254840160 : b(k,313) = b(k,313) - lu(k,1593) * b(k,245)
1280 254840160 : b(k,315) = b(k,315) - lu(k,1594) * b(k,245)
1281 254840160 : b(k,316) = b(k,316) - lu(k,1595) * b(k,245)
1282 254840160 : b(k,317) = b(k,317) - lu(k,1596) * b(k,245)
1283 254840160 : b(k,276) = b(k,276) - lu(k,1601) * b(k,246)
1284 254840160 : b(k,301) = b(k,301) - lu(k,1602) * b(k,246)
1285 254840160 : b(k,303) = b(k,303) - lu(k,1603) * b(k,246)
1286 254840160 : b(k,305) = b(k,305) - lu(k,1604) * b(k,246)
1287 254840160 : b(k,307) = b(k,307) - lu(k,1605) * b(k,246)
1288 254840160 : b(k,309) = b(k,309) - lu(k,1606) * b(k,246)
1289 254840160 : b(k,310) = b(k,310) - lu(k,1607) * b(k,246)
1290 254840160 : b(k,312) = b(k,312) - lu(k,1608) * b(k,246)
1291 254840160 : b(k,313) = b(k,313) - lu(k,1609) * b(k,246)
1292 254840160 : b(k,315) = b(k,315) - lu(k,1610) * b(k,246)
1293 254840160 : b(k,316) = b(k,316) - lu(k,1611) * b(k,246)
1294 254840160 : b(k,317) = b(k,317) - lu(k,1612) * b(k,246)
1295 254840160 : b(k,271) = b(k,271) - lu(k,1614) * b(k,247)
1296 254840160 : b(k,305) = b(k,305) - lu(k,1615) * b(k,247)
1297 254840160 : b(k,258) = b(k,258) - lu(k,1621) * b(k,248)
1298 254840160 : b(k,271) = b(k,271) - lu(k,1622) * b(k,248)
1299 254840160 : b(k,300) = b(k,300) - lu(k,1623) * b(k,248)
1300 254840160 : b(k,303) = b(k,303) - lu(k,1624) * b(k,248)
1301 254840160 : b(k,305) = b(k,305) - lu(k,1625) * b(k,248)
1302 254840160 : b(k,306) = b(k,306) - lu(k,1626) * b(k,248)
1303 254840160 : b(k,307) = b(k,307) - lu(k,1627) * b(k,248)
1304 254840160 : b(k,308) = b(k,308) - lu(k,1628) * b(k,248)
1305 254840160 : b(k,311) = b(k,311) - lu(k,1629) * b(k,248)
1306 254840160 : b(k,312) = b(k,312) - lu(k,1630) * b(k,248)
1307 254840160 : b(k,313) = b(k,313) - lu(k,1631) * b(k,248)
1308 254840160 : b(k,316) = b(k,316) - lu(k,1632) * b(k,248)
1309 254840160 : b(k,317) = b(k,317) - lu(k,1633) * b(k,248)
1310 254840160 : b(k,254) = b(k,254) - lu(k,1641) * b(k,249)
1311 254840160 : b(k,258) = b(k,258) - lu(k,1642) * b(k,249)
1312 254840160 : b(k,259) = b(k,259) - lu(k,1643) * b(k,249)
1313 254840160 : b(k,260) = b(k,260) - lu(k,1644) * b(k,249)
1314 254840160 : b(k,265) = b(k,265) - lu(k,1645) * b(k,249)
1315 254840160 : b(k,266) = b(k,266) - lu(k,1646) * b(k,249)
1316 254840160 : b(k,271) = b(k,271) - lu(k,1647) * b(k,249)
1317 254840160 : b(k,300) = b(k,300) - lu(k,1648) * b(k,249)
1318 254840160 : b(k,302) = b(k,302) - lu(k,1649) * b(k,249)
1319 254840160 : b(k,303) = b(k,303) - lu(k,1650) * b(k,249)
1320 254840160 : b(k,305) = b(k,305) - lu(k,1651) * b(k,249)
1321 254840160 : b(k,306) = b(k,306) - lu(k,1652) * b(k,249)
1322 254840160 : b(k,307) = b(k,307) - lu(k,1653) * b(k,249)
1323 254840160 : b(k,312) = b(k,312) - lu(k,1654) * b(k,249)
1324 254840160 : b(k,316) = b(k,316) - lu(k,1655) * b(k,249)
1325 254840160 : b(k,254) = b(k,254) - lu(k,1660) * b(k,250)
1326 254840160 : b(k,258) = b(k,258) - lu(k,1661) * b(k,250)
1327 254840160 : b(k,259) = b(k,259) - lu(k,1662) * b(k,250)
1328 254840160 : b(k,265) = b(k,265) - lu(k,1663) * b(k,250)
1329 254840160 : b(k,266) = b(k,266) - lu(k,1664) * b(k,250)
1330 254840160 : b(k,271) = b(k,271) - lu(k,1665) * b(k,250)
1331 254840160 : b(k,302) = b(k,302) - lu(k,1666) * b(k,250)
1332 254840160 : b(k,305) = b(k,305) - lu(k,1667) * b(k,250)
1333 254840160 : b(k,307) = b(k,307) - lu(k,1668) * b(k,250)
1334 254840160 : b(k,312) = b(k,312) - lu(k,1669) * b(k,250)
1335 254840160 : b(k,316) = b(k,316) - lu(k,1670) * b(k,250)
1336 254840160 : b(k,279) = b(k,279) - lu(k,1674) * b(k,251)
1337 254840160 : b(k,301) = b(k,301) - lu(k,1675) * b(k,251)
1338 254840160 : b(k,302) = b(k,302) - lu(k,1676) * b(k,251)
1339 254840160 : b(k,304) = b(k,304) - lu(k,1677) * b(k,251)
1340 254840160 : b(k,305) = b(k,305) - lu(k,1678) * b(k,251)
1341 254840160 : b(k,308) = b(k,308) - lu(k,1679) * b(k,251)
1342 254840160 : b(k,311) = b(k,311) - lu(k,1680) * b(k,251)
1343 254840160 : b(k,314) = b(k,314) - lu(k,1681) * b(k,251)
1344 254840160 : b(k,315) = b(k,315) - lu(k,1682) * b(k,251)
1345 254840160 : b(k,316) = b(k,316) - lu(k,1683) * b(k,251)
1346 254840160 : b(k,317) = b(k,317) - lu(k,1684) * b(k,251)
1347 254840160 : b(k,284) = b(k,284) - lu(k,1690) * b(k,252)
1348 254840160 : b(k,293) = b(k,293) - lu(k,1691) * b(k,252)
1349 254840160 : b(k,302) = b(k,302) - lu(k,1692) * b(k,252)
1350 254840160 : b(k,303) = b(k,303) - lu(k,1693) * b(k,252)
1351 254840160 : b(k,307) = b(k,307) - lu(k,1694) * b(k,252)
1352 254840160 : b(k,312) = b(k,312) - lu(k,1695) * b(k,252)
1353 263009123 : b(k,316) = b(k,316) - lu(k,1696) * b(k,252)
1354 : end do
1355 8168963 : end subroutine lu_slv06
1356 8168963 : subroutine lu_slv07( avec_len, lu, b )
1357 : use shr_kind_mod, only : r8 => shr_kind_r8
1358 : use chem_mods, only : clscnt4, nzcnt
1359 : implicit none
1360 : !-----------------------------------------------------------------------
1361 : ! ... Dummy args
1362 : !-----------------------------------------------------------------------
1363 : integer, intent(in) :: avec_len
1364 : real(r8), intent(in) :: lu(veclen,max(1,nzcnt))
1365 : real(r8), intent(inout) :: b(veclen,clscnt4)
1366 : !-----------------------------------------------------------------------
1367 : ! ... Local variables
1368 : !-----------------------------------------------------------------------
1369 : integer :: k
1370 : !-----------------------------------------------------------------------
1371 : ! ... solve L * y = b
1372 : !-----------------------------------------------------------------------
1373 263009123 : do k = 1,avec_len
1374 254840160 : b(k,284) = b(k,284) - lu(k,1703) * b(k,253)
1375 254840160 : b(k,293) = b(k,293) - lu(k,1704) * b(k,253)
1376 254840160 : b(k,302) = b(k,302) - lu(k,1705) * b(k,253)
1377 254840160 : b(k,303) = b(k,303) - lu(k,1706) * b(k,253)
1378 254840160 : b(k,307) = b(k,307) - lu(k,1707) * b(k,253)
1379 254840160 : b(k,312) = b(k,312) - lu(k,1708) * b(k,253)
1380 254840160 : b(k,316) = b(k,316) - lu(k,1709) * b(k,253)
1381 254840160 : b(k,271) = b(k,271) - lu(k,1713) * b(k,254)
1382 254840160 : b(k,305) = b(k,305) - lu(k,1714) * b(k,254)
1383 254840160 : b(k,306) = b(k,306) - lu(k,1715) * b(k,254)
1384 254840160 : b(k,307) = b(k,307) - lu(k,1716) * b(k,254)
1385 254840160 : b(k,316) = b(k,316) - lu(k,1717) * b(k,254)
1386 254840160 : b(k,271) = b(k,271) - lu(k,1719) * b(k,255)
1387 254840160 : b(k,295) = b(k,295) - lu(k,1720) * b(k,255)
1388 254840160 : b(k,298) = b(k,298) - lu(k,1721) * b(k,255)
1389 254840160 : b(k,302) = b(k,302) - lu(k,1722) * b(k,255)
1390 254840160 : b(k,307) = b(k,307) - lu(k,1723) * b(k,255)
1391 254840160 : b(k,311) = b(k,311) - lu(k,1724) * b(k,255)
1392 254840160 : b(k,316) = b(k,316) - lu(k,1725) * b(k,255)
1393 254840160 : b(k,258) = b(k,258) - lu(k,1733) * b(k,256)
1394 254840160 : b(k,263) = b(k,263) - lu(k,1734) * b(k,256)
1395 254840160 : b(k,264) = b(k,264) - lu(k,1735) * b(k,256)
1396 254840160 : b(k,266) = b(k,266) - lu(k,1736) * b(k,256)
1397 254840160 : b(k,267) = b(k,267) - lu(k,1737) * b(k,256)
1398 254840160 : b(k,271) = b(k,271) - lu(k,1738) * b(k,256)
1399 254840160 : b(k,273) = b(k,273) - lu(k,1739) * b(k,256)
1400 254840160 : b(k,300) = b(k,300) - lu(k,1740) * b(k,256)
1401 254840160 : b(k,303) = b(k,303) - lu(k,1741) * b(k,256)
1402 254840160 : b(k,305) = b(k,305) - lu(k,1742) * b(k,256)
1403 254840160 : b(k,306) = b(k,306) - lu(k,1743) * b(k,256)
1404 254840160 : b(k,307) = b(k,307) - lu(k,1744) * b(k,256)
1405 254840160 : b(k,308) = b(k,308) - lu(k,1745) * b(k,256)
1406 254840160 : b(k,312) = b(k,312) - lu(k,1746) * b(k,256)
1407 254840160 : b(k,316) = b(k,316) - lu(k,1747) * b(k,256)
1408 254840160 : b(k,258) = b(k,258) - lu(k,1755) * b(k,257)
1409 254840160 : b(k,263) = b(k,263) - lu(k,1756) * b(k,257)
1410 254840160 : b(k,264) = b(k,264) - lu(k,1757) * b(k,257)
1411 254840160 : b(k,266) = b(k,266) - lu(k,1758) * b(k,257)
1412 254840160 : b(k,268) = b(k,268) - lu(k,1759) * b(k,257)
1413 254840160 : b(k,271) = b(k,271) - lu(k,1760) * b(k,257)
1414 254840160 : b(k,272) = b(k,272) - lu(k,1761) * b(k,257)
1415 254840160 : b(k,300) = b(k,300) - lu(k,1762) * b(k,257)
1416 254840160 : b(k,303) = b(k,303) - lu(k,1763) * b(k,257)
1417 254840160 : b(k,305) = b(k,305) - lu(k,1764) * b(k,257)
1418 254840160 : b(k,306) = b(k,306) - lu(k,1765) * b(k,257)
1419 254840160 : b(k,307) = b(k,307) - lu(k,1766) * b(k,257)
1420 254840160 : b(k,308) = b(k,308) - lu(k,1767) * b(k,257)
1421 254840160 : b(k,312) = b(k,312) - lu(k,1768) * b(k,257)
1422 254840160 : b(k,316) = b(k,316) - lu(k,1769) * b(k,257)
1423 254840160 : b(k,266) = b(k,266) - lu(k,1771) * b(k,258)
1424 254840160 : b(k,300) = b(k,300) - lu(k,1772) * b(k,258)
1425 254840160 : b(k,306) = b(k,306) - lu(k,1773) * b(k,258)
1426 254840160 : b(k,307) = b(k,307) - lu(k,1774) * b(k,258)
1427 254840160 : b(k,316) = b(k,316) - lu(k,1775) * b(k,258)
1428 254840160 : b(k,266) = b(k,266) - lu(k,1779) * b(k,259)
1429 254840160 : b(k,271) = b(k,271) - lu(k,1780) * b(k,259)
1430 254840160 : b(k,300) = b(k,300) - lu(k,1781) * b(k,259)
1431 254840160 : b(k,306) = b(k,306) - lu(k,1782) * b(k,259)
1432 254840160 : b(k,307) = b(k,307) - lu(k,1783) * b(k,259)
1433 254840160 : b(k,312) = b(k,312) - lu(k,1784) * b(k,259)
1434 254840160 : b(k,316) = b(k,316) - lu(k,1785) * b(k,259)
1435 254840160 : b(k,265) = b(k,265) - lu(k,1794) * b(k,260)
1436 254840160 : b(k,266) = b(k,266) - lu(k,1795) * b(k,260)
1437 254840160 : b(k,271) = b(k,271) - lu(k,1796) * b(k,260)
1438 254840160 : b(k,300) = b(k,300) - lu(k,1797) * b(k,260)
1439 254840160 : b(k,305) = b(k,305) - lu(k,1798) * b(k,260)
1440 254840160 : b(k,306) = b(k,306) - lu(k,1799) * b(k,260)
1441 254840160 : b(k,307) = b(k,307) - lu(k,1800) * b(k,260)
1442 254840160 : b(k,312) = b(k,312) - lu(k,1801) * b(k,260)
1443 254840160 : b(k,316) = b(k,316) - lu(k,1802) * b(k,260)
1444 254840160 : b(k,263) = b(k,263) - lu(k,1818) * b(k,261)
1445 254840160 : b(k,264) = b(k,264) - lu(k,1819) * b(k,261)
1446 254840160 : b(k,266) = b(k,266) - lu(k,1820) * b(k,261)
1447 254840160 : b(k,268) = b(k,268) - lu(k,1821) * b(k,261)
1448 254840160 : b(k,269) = b(k,269) - lu(k,1822) * b(k,261)
1449 254840160 : b(k,271) = b(k,271) - lu(k,1823) * b(k,261)
1450 254840160 : b(k,272) = b(k,272) - lu(k,1824) * b(k,261)
1451 254840160 : b(k,280) = b(k,280) - lu(k,1825) * b(k,261)
1452 254840160 : b(k,300) = b(k,300) - lu(k,1826) * b(k,261)
1453 254840160 : b(k,303) = b(k,303) - lu(k,1827) * b(k,261)
1454 254840160 : b(k,305) = b(k,305) - lu(k,1828) * b(k,261)
1455 254840160 : b(k,306) = b(k,306) - lu(k,1829) * b(k,261)
1456 254840160 : b(k,307) = b(k,307) - lu(k,1830) * b(k,261)
1457 254840160 : b(k,308) = b(k,308) - lu(k,1831) * b(k,261)
1458 254840160 : b(k,312) = b(k,312) - lu(k,1832) * b(k,261)
1459 254840160 : b(k,316) = b(k,316) - lu(k,1833) * b(k,261)
1460 254840160 : b(k,263) = b(k,263) - lu(k,1849) * b(k,262)
1461 254840160 : b(k,264) = b(k,264) - lu(k,1850) * b(k,262)
1462 254840160 : b(k,265) = b(k,265) - lu(k,1851) * b(k,262)
1463 254840160 : b(k,266) = b(k,266) - lu(k,1852) * b(k,262)
1464 254840160 : b(k,267) = b(k,267) - lu(k,1853) * b(k,262)
1465 254840160 : b(k,270) = b(k,270) - lu(k,1854) * b(k,262)
1466 254840160 : b(k,271) = b(k,271) - lu(k,1855) * b(k,262)
1467 254840160 : b(k,273) = b(k,273) - lu(k,1856) * b(k,262)
1468 254840160 : b(k,300) = b(k,300) - lu(k,1857) * b(k,262)
1469 254840160 : b(k,303) = b(k,303) - lu(k,1858) * b(k,262)
1470 254840160 : b(k,305) = b(k,305) - lu(k,1859) * b(k,262)
1471 254840160 : b(k,306) = b(k,306) - lu(k,1860) * b(k,262)
1472 254840160 : b(k,307) = b(k,307) - lu(k,1861) * b(k,262)
1473 254840160 : b(k,308) = b(k,308) - lu(k,1862) * b(k,262)
1474 254840160 : b(k,312) = b(k,312) - lu(k,1863) * b(k,262)
1475 254840160 : b(k,316) = b(k,316) - lu(k,1864) * b(k,262)
1476 254840160 : b(k,317) = b(k,317) - lu(k,1865) * b(k,262)
1477 254840160 : b(k,265) = b(k,265) - lu(k,1873) * b(k,263)
1478 254840160 : b(k,266) = b(k,266) - lu(k,1874) * b(k,263)
1479 254840160 : b(k,271) = b(k,271) - lu(k,1875) * b(k,263)
1480 254840160 : b(k,300) = b(k,300) - lu(k,1876) * b(k,263)
1481 254840160 : b(k,303) = b(k,303) - lu(k,1877) * b(k,263)
1482 254840160 : b(k,305) = b(k,305) - lu(k,1878) * b(k,263)
1483 254840160 : b(k,306) = b(k,306) - lu(k,1879) * b(k,263)
1484 254840160 : b(k,307) = b(k,307) - lu(k,1880) * b(k,263)
1485 254840160 : b(k,312) = b(k,312) - lu(k,1881) * b(k,263)
1486 254840160 : b(k,316) = b(k,316) - lu(k,1882) * b(k,263)
1487 254840160 : b(k,265) = b(k,265) - lu(k,1897) * b(k,264)
1488 254840160 : b(k,266) = b(k,266) - lu(k,1898) * b(k,264)
1489 254840160 : b(k,267) = b(k,267) - lu(k,1899) * b(k,264)
1490 254840160 : b(k,268) = b(k,268) - lu(k,1900) * b(k,264)
1491 254840160 : b(k,269) = b(k,269) - lu(k,1901) * b(k,264)
1492 254840160 : b(k,270) = b(k,270) - lu(k,1902) * b(k,264)
1493 254840160 : b(k,271) = b(k,271) - lu(k,1903) * b(k,264)
1494 254840160 : b(k,300) = b(k,300) - lu(k,1904) * b(k,264)
1495 254840160 : b(k,303) = b(k,303) - lu(k,1905) * b(k,264)
1496 254840160 : b(k,305) = b(k,305) - lu(k,1906) * b(k,264)
1497 254840160 : b(k,306) = b(k,306) - lu(k,1907) * b(k,264)
1498 254840160 : b(k,307) = b(k,307) - lu(k,1908) * b(k,264)
1499 254840160 : b(k,312) = b(k,312) - lu(k,1909) * b(k,264)
1500 254840160 : b(k,316) = b(k,316) - lu(k,1910) * b(k,264)
1501 254840160 : b(k,266) = b(k,266) - lu(k,1917) * b(k,265)
1502 254840160 : b(k,271) = b(k,271) - lu(k,1918) * b(k,265)
1503 254840160 : b(k,300) = b(k,300) - lu(k,1919) * b(k,265)
1504 254840160 : b(k,302) = b(k,302) - lu(k,1920) * b(k,265)
1505 254840160 : b(k,305) = b(k,305) - lu(k,1921) * b(k,265)
1506 254840160 : b(k,306) = b(k,306) - lu(k,1922) * b(k,265)
1507 254840160 : b(k,307) = b(k,307) - lu(k,1923) * b(k,265)
1508 254840160 : b(k,312) = b(k,312) - lu(k,1924) * b(k,265)
1509 254840160 : b(k,316) = b(k,316) - lu(k,1925) * b(k,265)
1510 254840160 : b(k,271) = b(k,271) - lu(k,1927) * b(k,266)
1511 254840160 : b(k,300) = b(k,300) - lu(k,1928) * b(k,266)
1512 254840160 : b(k,302) = b(k,302) - lu(k,1929) * b(k,266)
1513 254840160 : b(k,307) = b(k,307) - lu(k,1930) * b(k,266)
1514 254840160 : b(k,311) = b(k,311) - lu(k,1931) * b(k,266)
1515 254840160 : b(k,316) = b(k,316) - lu(k,1932) * b(k,266)
1516 254840160 : b(k,317) = b(k,317) - lu(k,1933) * b(k,266)
1517 254840160 : b(k,268) = b(k,268) - lu(k,1954) * b(k,267)
1518 254840160 : b(k,269) = b(k,269) - lu(k,1955) * b(k,267)
1519 254840160 : b(k,270) = b(k,270) - lu(k,1956) * b(k,267)
1520 254840160 : b(k,271) = b(k,271) - lu(k,1957) * b(k,267)
1521 254840160 : b(k,273) = b(k,273) - lu(k,1958) * b(k,267)
1522 254840160 : b(k,300) = b(k,300) - lu(k,1959) * b(k,267)
1523 254840160 : b(k,302) = b(k,302) - lu(k,1960) * b(k,267)
1524 254840160 : b(k,303) = b(k,303) - lu(k,1961) * b(k,267)
1525 254840160 : b(k,305) = b(k,305) - lu(k,1962) * b(k,267)
1526 254840160 : b(k,306) = b(k,306) - lu(k,1963) * b(k,267)
1527 254840160 : b(k,307) = b(k,307) - lu(k,1964) * b(k,267)
1528 254840160 : b(k,308) = b(k,308) - lu(k,1965) * b(k,267)
1529 254840160 : b(k,311) = b(k,311) - lu(k,1966) * b(k,267)
1530 254840160 : b(k,312) = b(k,312) - lu(k,1967) * b(k,267)
1531 254840160 : b(k,316) = b(k,316) - lu(k,1968) * b(k,267)
1532 254840160 : b(k,317) = b(k,317) - lu(k,1969) * b(k,267)
1533 254840160 : b(k,269) = b(k,269) - lu(k,1992) * b(k,268)
1534 254840160 : b(k,270) = b(k,270) - lu(k,1993) * b(k,268)
1535 254840160 : b(k,271) = b(k,271) - lu(k,1994) * b(k,268)
1536 254840160 : b(k,272) = b(k,272) - lu(k,1995) * b(k,268)
1537 254840160 : b(k,273) = b(k,273) - lu(k,1996) * b(k,268)
1538 254840160 : b(k,280) = b(k,280) - lu(k,1997) * b(k,268)
1539 254840160 : b(k,300) = b(k,300) - lu(k,1998) * b(k,268)
1540 254840160 : b(k,302) = b(k,302) - lu(k,1999) * b(k,268)
1541 254840160 : b(k,303) = b(k,303) - lu(k,2000) * b(k,268)
1542 254840160 : b(k,305) = b(k,305) - lu(k,2001) * b(k,268)
1543 254840160 : b(k,306) = b(k,306) - lu(k,2002) * b(k,268)
1544 254840160 : b(k,307) = b(k,307) - lu(k,2003) * b(k,268)
1545 254840160 : b(k,308) = b(k,308) - lu(k,2004) * b(k,268)
1546 254840160 : b(k,311) = b(k,311) - lu(k,2005) * b(k,268)
1547 254840160 : b(k,312) = b(k,312) - lu(k,2006) * b(k,268)
1548 254840160 : b(k,316) = b(k,316) - lu(k,2007) * b(k,268)
1549 254840160 : b(k,317) = b(k,317) - lu(k,2008) * b(k,268)
1550 254840160 : b(k,271) = b(k,271) - lu(k,2017) * b(k,269)
1551 254840160 : b(k,280) = b(k,280) - lu(k,2018) * b(k,269)
1552 254840160 : b(k,300) = b(k,300) - lu(k,2019) * b(k,269)
1553 254840160 : b(k,302) = b(k,302) - lu(k,2020) * b(k,269)
1554 254840160 : b(k,303) = b(k,303) - lu(k,2021) * b(k,269)
1555 254840160 : b(k,305) = b(k,305) - lu(k,2022) * b(k,269)
1556 254840160 : b(k,306) = b(k,306) - lu(k,2023) * b(k,269)
1557 254840160 : b(k,307) = b(k,307) - lu(k,2024) * b(k,269)
1558 254840160 : b(k,308) = b(k,308) - lu(k,2025) * b(k,269)
1559 254840160 : b(k,311) = b(k,311) - lu(k,2026) * b(k,269)
1560 254840160 : b(k,312) = b(k,312) - lu(k,2027) * b(k,269)
1561 254840160 : b(k,313) = b(k,313) - lu(k,2028) * b(k,269)
1562 254840160 : b(k,316) = b(k,316) - lu(k,2029) * b(k,269)
1563 254840160 : b(k,317) = b(k,317) - lu(k,2030) * b(k,269)
1564 254840160 : b(k,271) = b(k,271) - lu(k,2042) * b(k,270)
1565 254840160 : b(k,279) = b(k,279) - lu(k,2043) * b(k,270)
1566 254840160 : b(k,300) = b(k,300) - lu(k,2044) * b(k,270)
1567 254840160 : b(k,302) = b(k,302) - lu(k,2045) * b(k,270)
1568 254840160 : b(k,303) = b(k,303) - lu(k,2046) * b(k,270)
1569 254840160 : b(k,305) = b(k,305) - lu(k,2047) * b(k,270)
1570 254840160 : b(k,306) = b(k,306) - lu(k,2048) * b(k,270)
1571 254840160 : b(k,307) = b(k,307) - lu(k,2049) * b(k,270)
1572 254840160 : b(k,308) = b(k,308) - lu(k,2050) * b(k,270)
1573 254840160 : b(k,311) = b(k,311) - lu(k,2051) * b(k,270)
1574 254840160 : b(k,312) = b(k,312) - lu(k,2052) * b(k,270)
1575 254840160 : b(k,313) = b(k,313) - lu(k,2053) * b(k,270)
1576 254840160 : b(k,316) = b(k,316) - lu(k,2054) * b(k,270)
1577 263009123 : b(k,317) = b(k,317) - lu(k,2055) * b(k,270)
1578 : end do
1579 8168963 : end subroutine lu_slv07
1580 8168963 : subroutine lu_slv08( avec_len, lu, b )
1581 : use shr_kind_mod, only : r8 => shr_kind_r8
1582 : use chem_mods, only : clscnt4, nzcnt
1583 : implicit none
1584 : !-----------------------------------------------------------------------
1585 : ! ... Dummy args
1586 : !-----------------------------------------------------------------------
1587 : integer, intent(in) :: avec_len
1588 : real(r8), intent(in) :: lu(veclen,max(1,nzcnt))
1589 : real(r8), intent(inout) :: b(veclen,clscnt4)
1590 : !-----------------------------------------------------------------------
1591 : ! ... Local variables
1592 : !-----------------------------------------------------------------------
1593 : integer :: k
1594 : !-----------------------------------------------------------------------
1595 : ! ... solve L * y = b
1596 : !-----------------------------------------------------------------------
1597 263009123 : do k = 1,avec_len
1598 254840160 : b(k,305) = b(k,305) - lu(k,2058) * b(k,271)
1599 254840160 : b(k,307) = b(k,307) - lu(k,2059) * b(k,271)
1600 254840160 : b(k,316) = b(k,316) - lu(k,2060) * b(k,271)
1601 254840160 : b(k,274) = b(k,274) - lu(k,2079) * b(k,272)
1602 254840160 : b(k,300) = b(k,300) - lu(k,2080) * b(k,272)
1603 254840160 : b(k,302) = b(k,302) - lu(k,2081) * b(k,272)
1604 254840160 : b(k,303) = b(k,303) - lu(k,2082) * b(k,272)
1605 254840160 : b(k,304) = b(k,304) - lu(k,2083) * b(k,272)
1606 254840160 : b(k,305) = b(k,305) - lu(k,2084) * b(k,272)
1607 254840160 : b(k,306) = b(k,306) - lu(k,2085) * b(k,272)
1608 254840160 : b(k,307) = b(k,307) - lu(k,2086) * b(k,272)
1609 254840160 : b(k,311) = b(k,311) - lu(k,2087) * b(k,272)
1610 254840160 : b(k,312) = b(k,312) - lu(k,2088) * b(k,272)
1611 254840160 : b(k,313) = b(k,313) - lu(k,2089) * b(k,272)
1612 254840160 : b(k,315) = b(k,315) - lu(k,2090) * b(k,272)
1613 254840160 : b(k,316) = b(k,316) - lu(k,2091) * b(k,272)
1614 254840160 : b(k,317) = b(k,317) - lu(k,2092) * b(k,272)
1615 254840160 : b(k,274) = b(k,274) - lu(k,2111) * b(k,273)
1616 254840160 : b(k,300) = b(k,300) - lu(k,2112) * b(k,273)
1617 254840160 : b(k,302) = b(k,302) - lu(k,2113) * b(k,273)
1618 254840160 : b(k,303) = b(k,303) - lu(k,2114) * b(k,273)
1619 254840160 : b(k,304) = b(k,304) - lu(k,2115) * b(k,273)
1620 254840160 : b(k,305) = b(k,305) - lu(k,2116) * b(k,273)
1621 254840160 : b(k,306) = b(k,306) - lu(k,2117) * b(k,273)
1622 254840160 : b(k,307) = b(k,307) - lu(k,2118) * b(k,273)
1623 254840160 : b(k,311) = b(k,311) - lu(k,2119) * b(k,273)
1624 254840160 : b(k,312) = b(k,312) - lu(k,2120) * b(k,273)
1625 254840160 : b(k,313) = b(k,313) - lu(k,2121) * b(k,273)
1626 254840160 : b(k,315) = b(k,315) - lu(k,2122) * b(k,273)
1627 254840160 : b(k,316) = b(k,316) - lu(k,2123) * b(k,273)
1628 254840160 : b(k,317) = b(k,317) - lu(k,2124) * b(k,273)
1629 254840160 : b(k,300) = b(k,300) - lu(k,2141) * b(k,274)
1630 254840160 : b(k,302) = b(k,302) - lu(k,2142) * b(k,274)
1631 254840160 : b(k,303) = b(k,303) - lu(k,2143) * b(k,274)
1632 254840160 : b(k,304) = b(k,304) - lu(k,2144) * b(k,274)
1633 254840160 : b(k,305) = b(k,305) - lu(k,2145) * b(k,274)
1634 254840160 : b(k,306) = b(k,306) - lu(k,2146) * b(k,274)
1635 254840160 : b(k,307) = b(k,307) - lu(k,2147) * b(k,274)
1636 254840160 : b(k,311) = b(k,311) - lu(k,2148) * b(k,274)
1637 254840160 : b(k,312) = b(k,312) - lu(k,2149) * b(k,274)
1638 254840160 : b(k,313) = b(k,313) - lu(k,2150) * b(k,274)
1639 254840160 : b(k,315) = b(k,315) - lu(k,2151) * b(k,274)
1640 254840160 : b(k,316) = b(k,316) - lu(k,2152) * b(k,274)
1641 254840160 : b(k,317) = b(k,317) - lu(k,2153) * b(k,274)
1642 254840160 : b(k,279) = b(k,279) - lu(k,2181) * b(k,275)
1643 254840160 : b(k,280) = b(k,280) - lu(k,2182) * b(k,275)
1644 254840160 : b(k,300) = b(k,300) - lu(k,2183) * b(k,275)
1645 254840160 : b(k,302) = b(k,302) - lu(k,2184) * b(k,275)
1646 254840160 : b(k,303) = b(k,303) - lu(k,2185) * b(k,275)
1647 254840160 : b(k,304) = b(k,304) - lu(k,2186) * b(k,275)
1648 254840160 : b(k,305) = b(k,305) - lu(k,2187) * b(k,275)
1649 254840160 : b(k,306) = b(k,306) - lu(k,2188) * b(k,275)
1650 254840160 : b(k,307) = b(k,307) - lu(k,2189) * b(k,275)
1651 254840160 : b(k,308) = b(k,308) - lu(k,2190) * b(k,275)
1652 254840160 : b(k,311) = b(k,311) - lu(k,2191) * b(k,275)
1653 254840160 : b(k,312) = b(k,312) - lu(k,2192) * b(k,275)
1654 254840160 : b(k,313) = b(k,313) - lu(k,2193) * b(k,275)
1655 254840160 : b(k,315) = b(k,315) - lu(k,2194) * b(k,275)
1656 254840160 : b(k,316) = b(k,316) - lu(k,2195) * b(k,275)
1657 254840160 : b(k,317) = b(k,317) - lu(k,2196) * b(k,275)
1658 254840160 : b(k,301) = b(k,301) - lu(k,2200) * b(k,276)
1659 254840160 : b(k,305) = b(k,305) - lu(k,2201) * b(k,276)
1660 254840160 : b(k,306) = b(k,306) - lu(k,2202) * b(k,276)
1661 254840160 : b(k,307) = b(k,307) - lu(k,2203) * b(k,276)
1662 254840160 : b(k,309) = b(k,309) - lu(k,2204) * b(k,276)
1663 254840160 : b(k,313) = b(k,313) - lu(k,2205) * b(k,276)
1664 254840160 : b(k,314) = b(k,314) - lu(k,2206) * b(k,276)
1665 254840160 : b(k,316) = b(k,316) - lu(k,2207) * b(k,276)
1666 254840160 : b(k,317) = b(k,317) - lu(k,2208) * b(k,276)
1667 254840160 : b(k,292) = b(k,292) - lu(k,2214) * b(k,277)
1668 254840160 : b(k,294) = b(k,294) - lu(k,2215) * b(k,277)
1669 254840160 : b(k,295) = b(k,295) - lu(k,2216) * b(k,277)
1670 254840160 : b(k,296) = b(k,296) - lu(k,2217) * b(k,277)
1671 254840160 : b(k,297) = b(k,297) - lu(k,2218) * b(k,277)
1672 254840160 : b(k,298) = b(k,298) - lu(k,2219) * b(k,277)
1673 254840160 : b(k,299) = b(k,299) - lu(k,2220) * b(k,277)
1674 254840160 : b(k,300) = b(k,300) - lu(k,2221) * b(k,277)
1675 254840160 : b(k,303) = b(k,303) - lu(k,2222) * b(k,277)
1676 254840160 : b(k,305) = b(k,305) - lu(k,2223) * b(k,277)
1677 254840160 : b(k,306) = b(k,306) - lu(k,2224) * b(k,277)
1678 254840160 : b(k,307) = b(k,307) - lu(k,2225) * b(k,277)
1679 254840160 : b(k,308) = b(k,308) - lu(k,2226) * b(k,277)
1680 254840160 : b(k,311) = b(k,311) - lu(k,2227) * b(k,277)
1681 254840160 : b(k,312) = b(k,312) - lu(k,2228) * b(k,277)
1682 254840160 : b(k,316) = b(k,316) - lu(k,2229) * b(k,277)
1683 254840160 : b(k,280) = b(k,280) - lu(k,2236) * b(k,278)
1684 254840160 : b(k,284) = b(k,284) - lu(k,2237) * b(k,278)
1685 254840160 : b(k,294) = b(k,294) - lu(k,2238) * b(k,278)
1686 254840160 : b(k,295) = b(k,295) - lu(k,2239) * b(k,278)
1687 254840160 : b(k,296) = b(k,296) - lu(k,2240) * b(k,278)
1688 254840160 : b(k,297) = b(k,297) - lu(k,2241) * b(k,278)
1689 254840160 : b(k,298) = b(k,298) - lu(k,2242) * b(k,278)
1690 254840160 : b(k,299) = b(k,299) - lu(k,2243) * b(k,278)
1691 254840160 : b(k,300) = b(k,300) - lu(k,2244) * b(k,278)
1692 254840160 : b(k,302) = b(k,302) - lu(k,2245) * b(k,278)
1693 254840160 : b(k,303) = b(k,303) - lu(k,2246) * b(k,278)
1694 254840160 : b(k,305) = b(k,305) - lu(k,2247) * b(k,278)
1695 254840160 : b(k,306) = b(k,306) - lu(k,2248) * b(k,278)
1696 254840160 : b(k,307) = b(k,307) - lu(k,2249) * b(k,278)
1697 254840160 : b(k,308) = b(k,308) - lu(k,2250) * b(k,278)
1698 254840160 : b(k,311) = b(k,311) - lu(k,2251) * b(k,278)
1699 254840160 : b(k,312) = b(k,312) - lu(k,2252) * b(k,278)
1700 254840160 : b(k,316) = b(k,316) - lu(k,2253) * b(k,278)
1701 254840160 : b(k,301) = b(k,301) - lu(k,2260) * b(k,279)
1702 254840160 : b(k,302) = b(k,302) - lu(k,2261) * b(k,279)
1703 254840160 : b(k,304) = b(k,304) - lu(k,2262) * b(k,279)
1704 254840160 : b(k,305) = b(k,305) - lu(k,2263) * b(k,279)
1705 254840160 : b(k,306) = b(k,306) - lu(k,2264) * b(k,279)
1706 254840160 : b(k,307) = b(k,307) - lu(k,2265) * b(k,279)
1707 254840160 : b(k,308) = b(k,308) - lu(k,2266) * b(k,279)
1708 254840160 : b(k,311) = b(k,311) - lu(k,2267) * b(k,279)
1709 254840160 : b(k,314) = b(k,314) - lu(k,2268) * b(k,279)
1710 254840160 : b(k,315) = b(k,315) - lu(k,2269) * b(k,279)
1711 254840160 : b(k,316) = b(k,316) - lu(k,2270) * b(k,279)
1712 254840160 : b(k,317) = b(k,317) - lu(k,2271) * b(k,279)
1713 254840160 : b(k,300) = b(k,300) - lu(k,2278) * b(k,280)
1714 254840160 : b(k,302) = b(k,302) - lu(k,2279) * b(k,280)
1715 254840160 : b(k,303) = b(k,303) - lu(k,2280) * b(k,280)
1716 254840160 : b(k,305) = b(k,305) - lu(k,2281) * b(k,280)
1717 254840160 : b(k,306) = b(k,306) - lu(k,2282) * b(k,280)
1718 254840160 : b(k,307) = b(k,307) - lu(k,2283) * b(k,280)
1719 254840160 : b(k,308) = b(k,308) - lu(k,2284) * b(k,280)
1720 254840160 : b(k,311) = b(k,311) - lu(k,2285) * b(k,280)
1721 254840160 : b(k,312) = b(k,312) - lu(k,2286) * b(k,280)
1722 254840160 : b(k,316) = b(k,316) - lu(k,2287) * b(k,280)
1723 254840160 : b(k,317) = b(k,317) - lu(k,2288) * b(k,280)
1724 254840160 : b(k,284) = b(k,284) - lu(k,2297) * b(k,281)
1725 254840160 : b(k,294) = b(k,294) - lu(k,2298) * b(k,281)
1726 254840160 : b(k,295) = b(k,295) - lu(k,2299) * b(k,281)
1727 254840160 : b(k,296) = b(k,296) - lu(k,2300) * b(k,281)
1728 254840160 : b(k,297) = b(k,297) - lu(k,2301) * b(k,281)
1729 254840160 : b(k,298) = b(k,298) - lu(k,2302) * b(k,281)
1730 254840160 : b(k,299) = b(k,299) - lu(k,2303) * b(k,281)
1731 254840160 : b(k,300) = b(k,300) - lu(k,2304) * b(k,281)
1732 254840160 : b(k,302) = b(k,302) - lu(k,2305) * b(k,281)
1733 254840160 : b(k,303) = b(k,303) - lu(k,2306) * b(k,281)
1734 254840160 : b(k,305) = b(k,305) - lu(k,2307) * b(k,281)
1735 254840160 : b(k,306) = b(k,306) - lu(k,2308) * b(k,281)
1736 254840160 : b(k,307) = b(k,307) - lu(k,2309) * b(k,281)
1737 254840160 : b(k,308) = b(k,308) - lu(k,2310) * b(k,281)
1738 254840160 : b(k,311) = b(k,311) - lu(k,2311) * b(k,281)
1739 254840160 : b(k,312) = b(k,312) - lu(k,2312) * b(k,281)
1740 254840160 : b(k,316) = b(k,316) - lu(k,2313) * b(k,281)
1741 254840160 : b(k,317) = b(k,317) - lu(k,2314) * b(k,281)
1742 254840160 : b(k,284) = b(k,284) - lu(k,2321) * b(k,282)
1743 254840160 : b(k,293) = b(k,293) - lu(k,2322) * b(k,282)
1744 254840160 : b(k,295) = b(k,295) - lu(k,2323) * b(k,282)
1745 254840160 : b(k,298) = b(k,298) - lu(k,2324) * b(k,282)
1746 254840160 : b(k,302) = b(k,302) - lu(k,2325) * b(k,282)
1747 254840160 : b(k,303) = b(k,303) - lu(k,2326) * b(k,282)
1748 254840160 : b(k,305) = b(k,305) - lu(k,2327) * b(k,282)
1749 254840160 : b(k,306) = b(k,306) - lu(k,2328) * b(k,282)
1750 254840160 : b(k,307) = b(k,307) - lu(k,2329) * b(k,282)
1751 254840160 : b(k,311) = b(k,311) - lu(k,2330) * b(k,282)
1752 254840160 : b(k,312) = b(k,312) - lu(k,2331) * b(k,282)
1753 254840160 : b(k,316) = b(k,316) - lu(k,2332) * b(k,282)
1754 254840160 : b(k,284) = b(k,284) - lu(k,2340) * b(k,283)
1755 254840160 : b(k,293) = b(k,293) - lu(k,2341) * b(k,283)
1756 254840160 : b(k,294) = b(k,294) - lu(k,2342) * b(k,283)
1757 254840160 : b(k,295) = b(k,295) - lu(k,2343) * b(k,283)
1758 254840160 : b(k,296) = b(k,296) - lu(k,2344) * b(k,283)
1759 254840160 : b(k,297) = b(k,297) - lu(k,2345) * b(k,283)
1760 254840160 : b(k,298) = b(k,298) - lu(k,2346) * b(k,283)
1761 254840160 : b(k,299) = b(k,299) - lu(k,2347) * b(k,283)
1762 254840160 : b(k,300) = b(k,300) - lu(k,2348) * b(k,283)
1763 254840160 : b(k,302) = b(k,302) - lu(k,2349) * b(k,283)
1764 254840160 : b(k,303) = b(k,303) - lu(k,2350) * b(k,283)
1765 254840160 : b(k,305) = b(k,305) - lu(k,2351) * b(k,283)
1766 254840160 : b(k,306) = b(k,306) - lu(k,2352) * b(k,283)
1767 254840160 : b(k,307) = b(k,307) - lu(k,2353) * b(k,283)
1768 254840160 : b(k,308) = b(k,308) - lu(k,2354) * b(k,283)
1769 254840160 : b(k,311) = b(k,311) - lu(k,2355) * b(k,283)
1770 254840160 : b(k,312) = b(k,312) - lu(k,2356) * b(k,283)
1771 254840160 : b(k,316) = b(k,316) - lu(k,2357) * b(k,283)
1772 254840160 : b(k,294) = b(k,294) - lu(k,2360) * b(k,284)
1773 254840160 : b(k,296) = b(k,296) - lu(k,2361) * b(k,284)
1774 254840160 : b(k,299) = b(k,299) - lu(k,2362) * b(k,284)
1775 254840160 : b(k,302) = b(k,302) - lu(k,2363) * b(k,284)
1776 254840160 : b(k,305) = b(k,305) - lu(k,2364) * b(k,284)
1777 254840160 : b(k,307) = b(k,307) - lu(k,2365) * b(k,284)
1778 254840160 : b(k,311) = b(k,311) - lu(k,2366) * b(k,284)
1779 254840160 : b(k,316) = b(k,316) - lu(k,2367) * b(k,284)
1780 254840160 : b(k,293) = b(k,293) - lu(k,2381) * b(k,285)
1781 254840160 : b(k,294) = b(k,294) - lu(k,2382) * b(k,285)
1782 254840160 : b(k,295) = b(k,295) - lu(k,2383) * b(k,285)
1783 254840160 : b(k,296) = b(k,296) - lu(k,2384) * b(k,285)
1784 254840160 : b(k,297) = b(k,297) - lu(k,2385) * b(k,285)
1785 254840160 : b(k,298) = b(k,298) - lu(k,2386) * b(k,285)
1786 254840160 : b(k,299) = b(k,299) - lu(k,2387) * b(k,285)
1787 254840160 : b(k,300) = b(k,300) - lu(k,2388) * b(k,285)
1788 254840160 : b(k,302) = b(k,302) - lu(k,2389) * b(k,285)
1789 254840160 : b(k,303) = b(k,303) - lu(k,2390) * b(k,285)
1790 254840160 : b(k,305) = b(k,305) - lu(k,2391) * b(k,285)
1791 254840160 : b(k,306) = b(k,306) - lu(k,2392) * b(k,285)
1792 254840160 : b(k,307) = b(k,307) - lu(k,2393) * b(k,285)
1793 254840160 : b(k,308) = b(k,308) - lu(k,2394) * b(k,285)
1794 254840160 : b(k,311) = b(k,311) - lu(k,2395) * b(k,285)
1795 254840160 : b(k,312) = b(k,312) - lu(k,2396) * b(k,285)
1796 254840160 : b(k,316) = b(k,316) - lu(k,2397) * b(k,285)
1797 254840160 : b(k,317) = b(k,317) - lu(k,2398) * b(k,285)
1798 254840160 : b(k,292) = b(k,292) - lu(k,2409) * b(k,286)
1799 254840160 : b(k,293) = b(k,293) - lu(k,2410) * b(k,286)
1800 254840160 : b(k,294) = b(k,294) - lu(k,2411) * b(k,286)
1801 254840160 : b(k,295) = b(k,295) - lu(k,2412) * b(k,286)
1802 254840160 : b(k,296) = b(k,296) - lu(k,2413) * b(k,286)
1803 254840160 : b(k,297) = b(k,297) - lu(k,2414) * b(k,286)
1804 254840160 : b(k,298) = b(k,298) - lu(k,2415) * b(k,286)
1805 254840160 : b(k,299) = b(k,299) - lu(k,2416) * b(k,286)
1806 254840160 : b(k,300) = b(k,300) - lu(k,2417) * b(k,286)
1807 254840160 : b(k,302) = b(k,302) - lu(k,2418) * b(k,286)
1808 254840160 : b(k,303) = b(k,303) - lu(k,2419) * b(k,286)
1809 254840160 : b(k,305) = b(k,305) - lu(k,2420) * b(k,286)
1810 254840160 : b(k,306) = b(k,306) - lu(k,2421) * b(k,286)
1811 254840160 : b(k,307) = b(k,307) - lu(k,2422) * b(k,286)
1812 254840160 : b(k,308) = b(k,308) - lu(k,2423) * b(k,286)
1813 254840160 : b(k,311) = b(k,311) - lu(k,2424) * b(k,286)
1814 254840160 : b(k,312) = b(k,312) - lu(k,2425) * b(k,286)
1815 263009123 : b(k,316) = b(k,316) - lu(k,2426) * b(k,286)
1816 : end do
1817 8168963 : end subroutine lu_slv08
1818 8168963 : subroutine lu_slv09( avec_len, lu, b )
1819 : use shr_kind_mod, only : r8 => shr_kind_r8
1820 : use chem_mods, only : clscnt4, nzcnt
1821 : implicit none
1822 : !-----------------------------------------------------------------------
1823 : ! ... Dummy args
1824 : !-----------------------------------------------------------------------
1825 : integer, intent(in) :: avec_len
1826 : real(r8), intent(in) :: lu(veclen,max(1,nzcnt))
1827 : real(r8), intent(inout) :: b(veclen,clscnt4)
1828 : !-----------------------------------------------------------------------
1829 : ! ... Local variables
1830 : !-----------------------------------------------------------------------
1831 : integer :: k
1832 : !-----------------------------------------------------------------------
1833 : ! ... solve L * y = b
1834 : !-----------------------------------------------------------------------
1835 263009123 : do k = 1,avec_len
1836 254840160 : b(k,293) = b(k,293) - lu(k,2442) * b(k,287)
1837 254840160 : b(k,294) = b(k,294) - lu(k,2443) * b(k,287)
1838 254840160 : b(k,295) = b(k,295) - lu(k,2444) * b(k,287)
1839 254840160 : b(k,296) = b(k,296) - lu(k,2445) * b(k,287)
1840 254840160 : b(k,297) = b(k,297) - lu(k,2446) * b(k,287)
1841 254840160 : b(k,298) = b(k,298) - lu(k,2447) * b(k,287)
1842 254840160 : b(k,299) = b(k,299) - lu(k,2448) * b(k,287)
1843 254840160 : b(k,300) = b(k,300) - lu(k,2449) * b(k,287)
1844 254840160 : b(k,302) = b(k,302) - lu(k,2450) * b(k,287)
1845 254840160 : b(k,303) = b(k,303) - lu(k,2451) * b(k,287)
1846 254840160 : b(k,305) = b(k,305) - lu(k,2452) * b(k,287)
1847 254840160 : b(k,306) = b(k,306) - lu(k,2453) * b(k,287)
1848 254840160 : b(k,307) = b(k,307) - lu(k,2454) * b(k,287)
1849 254840160 : b(k,308) = b(k,308) - lu(k,2455) * b(k,287)
1850 254840160 : b(k,311) = b(k,311) - lu(k,2456) * b(k,287)
1851 254840160 : b(k,312) = b(k,312) - lu(k,2457) * b(k,287)
1852 254840160 : b(k,316) = b(k,316) - lu(k,2458) * b(k,287)
1853 254840160 : b(k,317) = b(k,317) - lu(k,2459) * b(k,287)
1854 254840160 : b(k,292) = b(k,292) - lu(k,2472) * b(k,288)
1855 254840160 : b(k,293) = b(k,293) - lu(k,2473) * b(k,288)
1856 254840160 : b(k,294) = b(k,294) - lu(k,2474) * b(k,288)
1857 254840160 : b(k,295) = b(k,295) - lu(k,2475) * b(k,288)
1858 254840160 : b(k,296) = b(k,296) - lu(k,2476) * b(k,288)
1859 254840160 : b(k,297) = b(k,297) - lu(k,2477) * b(k,288)
1860 254840160 : b(k,298) = b(k,298) - lu(k,2478) * b(k,288)
1861 254840160 : b(k,299) = b(k,299) - lu(k,2479) * b(k,288)
1862 254840160 : b(k,300) = b(k,300) - lu(k,2480) * b(k,288)
1863 254840160 : b(k,302) = b(k,302) - lu(k,2481) * b(k,288)
1864 254840160 : b(k,303) = b(k,303) - lu(k,2482) * b(k,288)
1865 254840160 : b(k,305) = b(k,305) - lu(k,2483) * b(k,288)
1866 254840160 : b(k,306) = b(k,306) - lu(k,2484) * b(k,288)
1867 254840160 : b(k,307) = b(k,307) - lu(k,2485) * b(k,288)
1868 254840160 : b(k,308) = b(k,308) - lu(k,2486) * b(k,288)
1869 254840160 : b(k,311) = b(k,311) - lu(k,2487) * b(k,288)
1870 254840160 : b(k,312) = b(k,312) - lu(k,2488) * b(k,288)
1871 254840160 : b(k,316) = b(k,316) - lu(k,2489) * b(k,288)
1872 254840160 : b(k,317) = b(k,317) - lu(k,2490) * b(k,288)
1873 254840160 : b(k,290) = b(k,290) - lu(k,2506) * b(k,289)
1874 254840160 : b(k,293) = b(k,293) - lu(k,2507) * b(k,289)
1875 254840160 : b(k,294) = b(k,294) - lu(k,2508) * b(k,289)
1876 254840160 : b(k,295) = b(k,295) - lu(k,2509) * b(k,289)
1877 254840160 : b(k,296) = b(k,296) - lu(k,2510) * b(k,289)
1878 254840160 : b(k,297) = b(k,297) - lu(k,2511) * b(k,289)
1879 254840160 : b(k,298) = b(k,298) - lu(k,2512) * b(k,289)
1880 254840160 : b(k,299) = b(k,299) - lu(k,2513) * b(k,289)
1881 254840160 : b(k,300) = b(k,300) - lu(k,2514) * b(k,289)
1882 254840160 : b(k,302) = b(k,302) - lu(k,2515) * b(k,289)
1883 254840160 : b(k,303) = b(k,303) - lu(k,2516) * b(k,289)
1884 254840160 : b(k,305) = b(k,305) - lu(k,2517) * b(k,289)
1885 254840160 : b(k,306) = b(k,306) - lu(k,2518) * b(k,289)
1886 254840160 : b(k,307) = b(k,307) - lu(k,2519) * b(k,289)
1887 254840160 : b(k,308) = b(k,308) - lu(k,2520) * b(k,289)
1888 254840160 : b(k,311) = b(k,311) - lu(k,2521) * b(k,289)
1889 254840160 : b(k,312) = b(k,312) - lu(k,2522) * b(k,289)
1890 254840160 : b(k,316) = b(k,316) - lu(k,2523) * b(k,289)
1891 254840160 : b(k,317) = b(k,317) - lu(k,2524) * b(k,289)
1892 254840160 : b(k,294) = b(k,294) - lu(k,2537) * b(k,290)
1893 254840160 : b(k,295) = b(k,295) - lu(k,2538) * b(k,290)
1894 254840160 : b(k,296) = b(k,296) - lu(k,2539) * b(k,290)
1895 254840160 : b(k,297) = b(k,297) - lu(k,2540) * b(k,290)
1896 254840160 : b(k,298) = b(k,298) - lu(k,2541) * b(k,290)
1897 254840160 : b(k,299) = b(k,299) - lu(k,2542) * b(k,290)
1898 254840160 : b(k,300) = b(k,300) - lu(k,2543) * b(k,290)
1899 254840160 : b(k,302) = b(k,302) - lu(k,2544) * b(k,290)
1900 254840160 : b(k,303) = b(k,303) - lu(k,2545) * b(k,290)
1901 254840160 : b(k,305) = b(k,305) - lu(k,2546) * b(k,290)
1902 254840160 : b(k,306) = b(k,306) - lu(k,2547) * b(k,290)
1903 254840160 : b(k,307) = b(k,307) - lu(k,2548) * b(k,290)
1904 254840160 : b(k,308) = b(k,308) - lu(k,2549) * b(k,290)
1905 254840160 : b(k,311) = b(k,311) - lu(k,2550) * b(k,290)
1906 254840160 : b(k,312) = b(k,312) - lu(k,2551) * b(k,290)
1907 254840160 : b(k,316) = b(k,316) - lu(k,2552) * b(k,290)
1908 254840160 : b(k,317) = b(k,317) - lu(k,2553) * b(k,290)
1909 254840160 : b(k,292) = b(k,292) - lu(k,2571) * b(k,291)
1910 254840160 : b(k,293) = b(k,293) - lu(k,2572) * b(k,291)
1911 254840160 : b(k,294) = b(k,294) - lu(k,2573) * b(k,291)
1912 254840160 : b(k,295) = b(k,295) - lu(k,2574) * b(k,291)
1913 254840160 : b(k,296) = b(k,296) - lu(k,2575) * b(k,291)
1914 254840160 : b(k,297) = b(k,297) - lu(k,2576) * b(k,291)
1915 254840160 : b(k,298) = b(k,298) - lu(k,2577) * b(k,291)
1916 254840160 : b(k,299) = b(k,299) - lu(k,2578) * b(k,291)
1917 254840160 : b(k,300) = b(k,300) - lu(k,2579) * b(k,291)
1918 254840160 : b(k,302) = b(k,302) - lu(k,2580) * b(k,291)
1919 254840160 : b(k,303) = b(k,303) - lu(k,2581) * b(k,291)
1920 254840160 : b(k,305) = b(k,305) - lu(k,2582) * b(k,291)
1921 254840160 : b(k,306) = b(k,306) - lu(k,2583) * b(k,291)
1922 254840160 : b(k,307) = b(k,307) - lu(k,2584) * b(k,291)
1923 254840160 : b(k,308) = b(k,308) - lu(k,2585) * b(k,291)
1924 254840160 : b(k,311) = b(k,311) - lu(k,2586) * b(k,291)
1925 254840160 : b(k,312) = b(k,312) - lu(k,2587) * b(k,291)
1926 254840160 : b(k,316) = b(k,316) - lu(k,2588) * b(k,291)
1927 254840160 : b(k,317) = b(k,317) - lu(k,2589) * b(k,291)
1928 254840160 : b(k,293) = b(k,293) - lu(k,2601) * b(k,292)
1929 254840160 : b(k,294) = b(k,294) - lu(k,2602) * b(k,292)
1930 254840160 : b(k,295) = b(k,295) - lu(k,2603) * b(k,292)
1931 254840160 : b(k,296) = b(k,296) - lu(k,2604) * b(k,292)
1932 254840160 : b(k,298) = b(k,298) - lu(k,2605) * b(k,292)
1933 254840160 : b(k,299) = b(k,299) - lu(k,2606) * b(k,292)
1934 254840160 : b(k,302) = b(k,302) - lu(k,2607) * b(k,292)
1935 254840160 : b(k,303) = b(k,303) - lu(k,2608) * b(k,292)
1936 254840160 : b(k,304) = b(k,304) - lu(k,2609) * b(k,292)
1937 254840160 : b(k,305) = b(k,305) - lu(k,2610) * b(k,292)
1938 254840160 : b(k,306) = b(k,306) - lu(k,2611) * b(k,292)
1939 254840160 : b(k,307) = b(k,307) - lu(k,2612) * b(k,292)
1940 254840160 : b(k,311) = b(k,311) - lu(k,2613) * b(k,292)
1941 254840160 : b(k,312) = b(k,312) - lu(k,2614) * b(k,292)
1942 254840160 : b(k,313) = b(k,313) - lu(k,2615) * b(k,292)
1943 254840160 : b(k,315) = b(k,315) - lu(k,2616) * b(k,292)
1944 254840160 : b(k,316) = b(k,316) - lu(k,2617) * b(k,292)
1945 254840160 : b(k,317) = b(k,317) - lu(k,2618) * b(k,292)
1946 254840160 : b(k,294) = b(k,294) - lu(k,2630) * b(k,293)
1947 254840160 : b(k,295) = b(k,295) - lu(k,2631) * b(k,293)
1948 254840160 : b(k,296) = b(k,296) - lu(k,2632) * b(k,293)
1949 254840160 : b(k,298) = b(k,298) - lu(k,2633) * b(k,293)
1950 254840160 : b(k,299) = b(k,299) - lu(k,2634) * b(k,293)
1951 254840160 : b(k,302) = b(k,302) - lu(k,2635) * b(k,293)
1952 254840160 : b(k,303) = b(k,303) - lu(k,2636) * b(k,293)
1953 254840160 : b(k,304) = b(k,304) - lu(k,2637) * b(k,293)
1954 254840160 : b(k,305) = b(k,305) - lu(k,2638) * b(k,293)
1955 254840160 : b(k,306) = b(k,306) - lu(k,2639) * b(k,293)
1956 254840160 : b(k,307) = b(k,307) - lu(k,2640) * b(k,293)
1957 254840160 : b(k,311) = b(k,311) - lu(k,2641) * b(k,293)
1958 254840160 : b(k,312) = b(k,312) - lu(k,2642) * b(k,293)
1959 254840160 : b(k,313) = b(k,313) - lu(k,2643) * b(k,293)
1960 254840160 : b(k,315) = b(k,315) - lu(k,2644) * b(k,293)
1961 254840160 : b(k,316) = b(k,316) - lu(k,2645) * b(k,293)
1962 254840160 : b(k,317) = b(k,317) - lu(k,2646) * b(k,293)
1963 254840160 : b(k,295) = b(k,295) - lu(k,2655) * b(k,294)
1964 254840160 : b(k,296) = b(k,296) - lu(k,2656) * b(k,294)
1965 254840160 : b(k,297) = b(k,297) - lu(k,2657) * b(k,294)
1966 254840160 : b(k,298) = b(k,298) - lu(k,2658) * b(k,294)
1967 254840160 : b(k,299) = b(k,299) - lu(k,2659) * b(k,294)
1968 254840160 : b(k,300) = b(k,300) - lu(k,2660) * b(k,294)
1969 254840160 : b(k,302) = b(k,302) - lu(k,2661) * b(k,294)
1970 254840160 : b(k,303) = b(k,303) - lu(k,2662) * b(k,294)
1971 254840160 : b(k,305) = b(k,305) - lu(k,2663) * b(k,294)
1972 254840160 : b(k,306) = b(k,306) - lu(k,2664) * b(k,294)
1973 254840160 : b(k,307) = b(k,307) - lu(k,2665) * b(k,294)
1974 254840160 : b(k,308) = b(k,308) - lu(k,2666) * b(k,294)
1975 254840160 : b(k,311) = b(k,311) - lu(k,2667) * b(k,294)
1976 254840160 : b(k,312) = b(k,312) - lu(k,2668) * b(k,294)
1977 254840160 : b(k,316) = b(k,316) - lu(k,2669) * b(k,294)
1978 254840160 : b(k,296) = b(k,296) - lu(k,2678) * b(k,295)
1979 254840160 : b(k,297) = b(k,297) - lu(k,2679) * b(k,295)
1980 254840160 : b(k,298) = b(k,298) - lu(k,2680) * b(k,295)
1981 254840160 : b(k,299) = b(k,299) - lu(k,2681) * b(k,295)
1982 254840160 : b(k,300) = b(k,300) - lu(k,2682) * b(k,295)
1983 254840160 : b(k,302) = b(k,302) - lu(k,2683) * b(k,295)
1984 254840160 : b(k,303) = b(k,303) - lu(k,2684) * b(k,295)
1985 254840160 : b(k,305) = b(k,305) - lu(k,2685) * b(k,295)
1986 254840160 : b(k,306) = b(k,306) - lu(k,2686) * b(k,295)
1987 254840160 : b(k,307) = b(k,307) - lu(k,2687) * b(k,295)
1988 254840160 : b(k,308) = b(k,308) - lu(k,2688) * b(k,295)
1989 254840160 : b(k,311) = b(k,311) - lu(k,2689) * b(k,295)
1990 254840160 : b(k,312) = b(k,312) - lu(k,2690) * b(k,295)
1991 254840160 : b(k,316) = b(k,316) - lu(k,2691) * b(k,295)
1992 254840160 : b(k,297) = b(k,297) - lu(k,2702) * b(k,296)
1993 254840160 : b(k,298) = b(k,298) - lu(k,2703) * b(k,296)
1994 254840160 : b(k,299) = b(k,299) - lu(k,2704) * b(k,296)
1995 254840160 : b(k,300) = b(k,300) - lu(k,2705) * b(k,296)
1996 254840160 : b(k,302) = b(k,302) - lu(k,2706) * b(k,296)
1997 254840160 : b(k,303) = b(k,303) - lu(k,2707) * b(k,296)
1998 254840160 : b(k,305) = b(k,305) - lu(k,2708) * b(k,296)
1999 254840160 : b(k,306) = b(k,306) - lu(k,2709) * b(k,296)
2000 254840160 : b(k,307) = b(k,307) - lu(k,2710) * b(k,296)
2001 254840160 : b(k,308) = b(k,308) - lu(k,2711) * b(k,296)
2002 254840160 : b(k,311) = b(k,311) - lu(k,2712) * b(k,296)
2003 254840160 : b(k,312) = b(k,312) - lu(k,2713) * b(k,296)
2004 254840160 : b(k,316) = b(k,316) - lu(k,2714) * b(k,296)
2005 254840160 : b(k,317) = b(k,317) - lu(k,2715) * b(k,296)
2006 254840160 : b(k,298) = b(k,298) - lu(k,2746) * b(k,297)
2007 254840160 : b(k,299) = b(k,299) - lu(k,2747) * b(k,297)
2008 254840160 : b(k,300) = b(k,300) - lu(k,2748) * b(k,297)
2009 254840160 : b(k,302) = b(k,302) - lu(k,2749) * b(k,297)
2010 254840160 : b(k,303) = b(k,303) - lu(k,2750) * b(k,297)
2011 254840160 : b(k,304) = b(k,304) - lu(k,2751) * b(k,297)
2012 254840160 : b(k,305) = b(k,305) - lu(k,2752) * b(k,297)
2013 254840160 : b(k,306) = b(k,306) - lu(k,2753) * b(k,297)
2014 254840160 : b(k,307) = b(k,307) - lu(k,2754) * b(k,297)
2015 254840160 : b(k,308) = b(k,308) - lu(k,2755) * b(k,297)
2016 254840160 : b(k,311) = b(k,311) - lu(k,2756) * b(k,297)
2017 254840160 : b(k,312) = b(k,312) - lu(k,2757) * b(k,297)
2018 254840160 : b(k,313) = b(k,313) - lu(k,2758) * b(k,297)
2019 254840160 : b(k,315) = b(k,315) - lu(k,2759) * b(k,297)
2020 254840160 : b(k,316) = b(k,316) - lu(k,2760) * b(k,297)
2021 254840160 : b(k,317) = b(k,317) - lu(k,2761) * b(k,297)
2022 254840160 : b(k,299) = b(k,299) - lu(k,2793) * b(k,298)
2023 254840160 : b(k,300) = b(k,300) - lu(k,2794) * b(k,298)
2024 254840160 : b(k,302) = b(k,302) - lu(k,2795) * b(k,298)
2025 254840160 : b(k,303) = b(k,303) - lu(k,2796) * b(k,298)
2026 254840160 : b(k,304) = b(k,304) - lu(k,2797) * b(k,298)
2027 254840160 : b(k,305) = b(k,305) - lu(k,2798) * b(k,298)
2028 254840160 : b(k,306) = b(k,306) - lu(k,2799) * b(k,298)
2029 254840160 : b(k,307) = b(k,307) - lu(k,2800) * b(k,298)
2030 254840160 : b(k,308) = b(k,308) - lu(k,2801) * b(k,298)
2031 254840160 : b(k,311) = b(k,311) - lu(k,2802) * b(k,298)
2032 254840160 : b(k,312) = b(k,312) - lu(k,2803) * b(k,298)
2033 254840160 : b(k,313) = b(k,313) - lu(k,2804) * b(k,298)
2034 254840160 : b(k,315) = b(k,315) - lu(k,2805) * b(k,298)
2035 254840160 : b(k,316) = b(k,316) - lu(k,2806) * b(k,298)
2036 263009123 : b(k,317) = b(k,317) - lu(k,2807) * b(k,298)
2037 : end do
2038 8168963 : end subroutine lu_slv09
2039 8168963 : subroutine lu_slv10( avec_len, lu, b )
2040 : use shr_kind_mod, only : r8 => shr_kind_r8
2041 : use chem_mods, only : clscnt4, nzcnt
2042 : implicit none
2043 : !-----------------------------------------------------------------------
2044 : ! ... Dummy args
2045 : !-----------------------------------------------------------------------
2046 : integer, intent(in) :: avec_len
2047 : real(r8), intent(in) :: lu(veclen,max(1,nzcnt))
2048 : real(r8), intent(inout) :: b(veclen,clscnt4)
2049 : !-----------------------------------------------------------------------
2050 : ! ... Local variables
2051 : !-----------------------------------------------------------------------
2052 : integer :: k
2053 : !-----------------------------------------------------------------------
2054 : ! ... solve L * y = b
2055 : !-----------------------------------------------------------------------
2056 263009123 : do k = 1,avec_len
2057 254840160 : b(k,300) = b(k,300) - lu(k,2841) * b(k,299)
2058 254840160 : b(k,302) = b(k,302) - lu(k,2842) * b(k,299)
2059 254840160 : b(k,303) = b(k,303) - lu(k,2843) * b(k,299)
2060 254840160 : b(k,304) = b(k,304) - lu(k,2844) * b(k,299)
2061 254840160 : b(k,305) = b(k,305) - lu(k,2845) * b(k,299)
2062 254840160 : b(k,306) = b(k,306) - lu(k,2846) * b(k,299)
2063 254840160 : b(k,307) = b(k,307) - lu(k,2847) * b(k,299)
2064 254840160 : b(k,308) = b(k,308) - lu(k,2848) * b(k,299)
2065 254840160 : b(k,311) = b(k,311) - lu(k,2849) * b(k,299)
2066 254840160 : b(k,312) = b(k,312) - lu(k,2850) * b(k,299)
2067 254840160 : b(k,313) = b(k,313) - lu(k,2851) * b(k,299)
2068 254840160 : b(k,315) = b(k,315) - lu(k,2852) * b(k,299)
2069 254840160 : b(k,316) = b(k,316) - lu(k,2853) * b(k,299)
2070 254840160 : b(k,317) = b(k,317) - lu(k,2854) * b(k,299)
2071 254840160 : b(k,301) = b(k,301) - lu(k,2914) * b(k,300)
2072 254840160 : b(k,302) = b(k,302) - lu(k,2915) * b(k,300)
2073 254840160 : b(k,303) = b(k,303) - lu(k,2916) * b(k,300)
2074 254840160 : b(k,304) = b(k,304) - lu(k,2917) * b(k,300)
2075 254840160 : b(k,305) = b(k,305) - lu(k,2918) * b(k,300)
2076 254840160 : b(k,306) = b(k,306) - lu(k,2919) * b(k,300)
2077 254840160 : b(k,307) = b(k,307) - lu(k,2920) * b(k,300)
2078 254840160 : b(k,308) = b(k,308) - lu(k,2921) * b(k,300)
2079 254840160 : b(k,311) = b(k,311) - lu(k,2922) * b(k,300)
2080 254840160 : b(k,312) = b(k,312) - lu(k,2923) * b(k,300)
2081 254840160 : b(k,313) = b(k,313) - lu(k,2924) * b(k,300)
2082 254840160 : b(k,314) = b(k,314) - lu(k,2925) * b(k,300)
2083 254840160 : b(k,315) = b(k,315) - lu(k,2926) * b(k,300)
2084 254840160 : b(k,316) = b(k,316) - lu(k,2927) * b(k,300)
2085 254840160 : b(k,317) = b(k,317) - lu(k,2928) * b(k,300)
2086 254840160 : b(k,302) = b(k,302) - lu(k,2932) * b(k,301)
2087 254840160 : b(k,304) = b(k,304) - lu(k,2933) * b(k,301)
2088 254840160 : b(k,305) = b(k,305) - lu(k,2934) * b(k,301)
2089 254840160 : b(k,306) = b(k,306) - lu(k,2935) * b(k,301)
2090 254840160 : b(k,307) = b(k,307) - lu(k,2936) * b(k,301)
2091 254840160 : b(k,308) = b(k,308) - lu(k,2937) * b(k,301)
2092 254840160 : b(k,311) = b(k,311) - lu(k,2938) * b(k,301)
2093 254840160 : b(k,313) = b(k,313) - lu(k,2939) * b(k,301)
2094 254840160 : b(k,314) = b(k,314) - lu(k,2940) * b(k,301)
2095 254840160 : b(k,315) = b(k,315) - lu(k,2941) * b(k,301)
2096 254840160 : b(k,316) = b(k,316) - lu(k,2942) * b(k,301)
2097 254840160 : b(k,317) = b(k,317) - lu(k,2943) * b(k,301)
2098 254840160 : b(k,304) = b(k,304) - lu(k,2950) * b(k,302)
2099 254840160 : b(k,305) = b(k,305) - lu(k,2951) * b(k,302)
2100 254840160 : b(k,306) = b(k,306) - lu(k,2952) * b(k,302)
2101 254840160 : b(k,307) = b(k,307) - lu(k,2953) * b(k,302)
2102 254840160 : b(k,308) = b(k,308) - lu(k,2954) * b(k,302)
2103 254840160 : b(k,311) = b(k,311) - lu(k,2955) * b(k,302)
2104 254840160 : b(k,312) = b(k,312) - lu(k,2956) * b(k,302)
2105 254840160 : b(k,313) = b(k,313) - lu(k,2957) * b(k,302)
2106 254840160 : b(k,314) = b(k,314) - lu(k,2958) * b(k,302)
2107 254840160 : b(k,315) = b(k,315) - lu(k,2959) * b(k,302)
2108 254840160 : b(k,316) = b(k,316) - lu(k,2960) * b(k,302)
2109 254840160 : b(k,317) = b(k,317) - lu(k,2961) * b(k,302)
2110 254840160 : b(k,304) = b(k,304) - lu(k,3107) * b(k,303)
2111 254840160 : b(k,305) = b(k,305) - lu(k,3108) * b(k,303)
2112 254840160 : b(k,306) = b(k,306) - lu(k,3109) * b(k,303)
2113 254840160 : b(k,307) = b(k,307) - lu(k,3110) * b(k,303)
2114 254840160 : b(k,308) = b(k,308) - lu(k,3111) * b(k,303)
2115 254840160 : b(k,309) = b(k,309) - lu(k,3112) * b(k,303)
2116 254840160 : b(k,310) = b(k,310) - lu(k,3113) * b(k,303)
2117 254840160 : b(k,311) = b(k,311) - lu(k,3114) * b(k,303)
2118 254840160 : b(k,312) = b(k,312) - lu(k,3115) * b(k,303)
2119 254840160 : b(k,313) = b(k,313) - lu(k,3116) * b(k,303)
2120 254840160 : b(k,314) = b(k,314) - lu(k,3117) * b(k,303)
2121 254840160 : b(k,315) = b(k,315) - lu(k,3118) * b(k,303)
2122 254840160 : b(k,316) = b(k,316) - lu(k,3119) * b(k,303)
2123 254840160 : b(k,317) = b(k,317) - lu(k,3120) * b(k,303)
2124 254840160 : b(k,305) = b(k,305) - lu(k,3130) * b(k,304)
2125 254840160 : b(k,306) = b(k,306) - lu(k,3131) * b(k,304)
2126 254840160 : b(k,307) = b(k,307) - lu(k,3132) * b(k,304)
2127 254840160 : b(k,308) = b(k,308) - lu(k,3133) * b(k,304)
2128 254840160 : b(k,309) = b(k,309) - lu(k,3134) * b(k,304)
2129 254840160 : b(k,310) = b(k,310) - lu(k,3135) * b(k,304)
2130 254840160 : b(k,311) = b(k,311) - lu(k,3136) * b(k,304)
2131 254840160 : b(k,312) = b(k,312) - lu(k,3137) * b(k,304)
2132 254840160 : b(k,313) = b(k,313) - lu(k,3138) * b(k,304)
2133 254840160 : b(k,314) = b(k,314) - lu(k,3139) * b(k,304)
2134 254840160 : b(k,315) = b(k,315) - lu(k,3140) * b(k,304)
2135 254840160 : b(k,316) = b(k,316) - lu(k,3141) * b(k,304)
2136 254840160 : b(k,317) = b(k,317) - lu(k,3142) * b(k,304)
2137 254840160 : b(k,306) = b(k,306) - lu(k,3162) * b(k,305)
2138 254840160 : b(k,307) = b(k,307) - lu(k,3163) * b(k,305)
2139 254840160 : b(k,308) = b(k,308) - lu(k,3164) * b(k,305)
2140 254840160 : b(k,309) = b(k,309) - lu(k,3165) * b(k,305)
2141 254840160 : b(k,310) = b(k,310) - lu(k,3166) * b(k,305)
2142 254840160 : b(k,311) = b(k,311) - lu(k,3167) * b(k,305)
2143 254840160 : b(k,312) = b(k,312) - lu(k,3168) * b(k,305)
2144 254840160 : b(k,313) = b(k,313) - lu(k,3169) * b(k,305)
2145 254840160 : b(k,314) = b(k,314) - lu(k,3170) * b(k,305)
2146 254840160 : b(k,315) = b(k,315) - lu(k,3171) * b(k,305)
2147 254840160 : b(k,316) = b(k,316) - lu(k,3172) * b(k,305)
2148 254840160 : b(k,317) = b(k,317) - lu(k,3173) * b(k,305)
2149 254840160 : b(k,307) = b(k,307) - lu(k,3189) * b(k,306)
2150 254840160 : b(k,308) = b(k,308) - lu(k,3190) * b(k,306)
2151 254840160 : b(k,309) = b(k,309) - lu(k,3191) * b(k,306)
2152 254840160 : b(k,310) = b(k,310) - lu(k,3192) * b(k,306)
2153 254840160 : b(k,311) = b(k,311) - lu(k,3193) * b(k,306)
2154 254840160 : b(k,312) = b(k,312) - lu(k,3194) * b(k,306)
2155 254840160 : b(k,313) = b(k,313) - lu(k,3195) * b(k,306)
2156 254840160 : b(k,314) = b(k,314) - lu(k,3196) * b(k,306)
2157 254840160 : b(k,315) = b(k,315) - lu(k,3197) * b(k,306)
2158 254840160 : b(k,316) = b(k,316) - lu(k,3198) * b(k,306)
2159 254840160 : b(k,317) = b(k,317) - lu(k,3199) * b(k,306)
2160 254840160 : b(k,308) = b(k,308) - lu(k,3370) * b(k,307)
2161 254840160 : b(k,309) = b(k,309) - lu(k,3371) * b(k,307)
2162 254840160 : b(k,310) = b(k,310) - lu(k,3372) * b(k,307)
2163 254840160 : b(k,311) = b(k,311) - lu(k,3373) * b(k,307)
2164 254840160 : b(k,312) = b(k,312) - lu(k,3374) * b(k,307)
2165 254840160 : b(k,313) = b(k,313) - lu(k,3375) * b(k,307)
2166 254840160 : b(k,314) = b(k,314) - lu(k,3376) * b(k,307)
2167 254840160 : b(k,315) = b(k,315) - lu(k,3377) * b(k,307)
2168 254840160 : b(k,316) = b(k,316) - lu(k,3378) * b(k,307)
2169 254840160 : b(k,317) = b(k,317) - lu(k,3379) * b(k,307)
2170 254840160 : b(k,309) = b(k,309) - lu(k,3464) * b(k,308)
2171 254840160 : b(k,310) = b(k,310) - lu(k,3465) * b(k,308)
2172 254840160 : b(k,311) = b(k,311) - lu(k,3466) * b(k,308)
2173 254840160 : b(k,312) = b(k,312) - lu(k,3467) * b(k,308)
2174 254840160 : b(k,313) = b(k,313) - lu(k,3468) * b(k,308)
2175 254840160 : b(k,314) = b(k,314) - lu(k,3469) * b(k,308)
2176 254840160 : b(k,315) = b(k,315) - lu(k,3470) * b(k,308)
2177 254840160 : b(k,316) = b(k,316) - lu(k,3471) * b(k,308)
2178 254840160 : b(k,317) = b(k,317) - lu(k,3472) * b(k,308)
2179 254840160 : b(k,310) = b(k,310) - lu(k,3489) * b(k,309)
2180 254840160 : b(k,311) = b(k,311) - lu(k,3490) * b(k,309)
2181 254840160 : b(k,312) = b(k,312) - lu(k,3491) * b(k,309)
2182 254840160 : b(k,313) = b(k,313) - lu(k,3492) * b(k,309)
2183 254840160 : b(k,314) = b(k,314) - lu(k,3493) * b(k,309)
2184 254840160 : b(k,315) = b(k,315) - lu(k,3494) * b(k,309)
2185 254840160 : b(k,316) = b(k,316) - lu(k,3495) * b(k,309)
2186 254840160 : b(k,317) = b(k,317) - lu(k,3496) * b(k,309)
2187 254840160 : b(k,311) = b(k,311) - lu(k,3516) * b(k,310)
2188 254840160 : b(k,312) = b(k,312) - lu(k,3517) * b(k,310)
2189 254840160 : b(k,313) = b(k,313) - lu(k,3518) * b(k,310)
2190 254840160 : b(k,314) = b(k,314) - lu(k,3519) * b(k,310)
2191 254840160 : b(k,315) = b(k,315) - lu(k,3520) * b(k,310)
2192 254840160 : b(k,316) = b(k,316) - lu(k,3521) * b(k,310)
2193 254840160 : b(k,317) = b(k,317) - lu(k,3522) * b(k,310)
2194 254840160 : b(k,312) = b(k,312) - lu(k,3611) * b(k,311)
2195 254840160 : b(k,313) = b(k,313) - lu(k,3612) * b(k,311)
2196 254840160 : b(k,314) = b(k,314) - lu(k,3613) * b(k,311)
2197 254840160 : b(k,315) = b(k,315) - lu(k,3614) * b(k,311)
2198 254840160 : b(k,316) = b(k,316) - lu(k,3615) * b(k,311)
2199 254840160 : b(k,317) = b(k,317) - lu(k,3616) * b(k,311)
2200 254840160 : b(k,313) = b(k,313) - lu(k,3664) * b(k,312)
2201 254840160 : b(k,314) = b(k,314) - lu(k,3665) * b(k,312)
2202 254840160 : b(k,315) = b(k,315) - lu(k,3666) * b(k,312)
2203 254840160 : b(k,316) = b(k,316) - lu(k,3667) * b(k,312)
2204 254840160 : b(k,317) = b(k,317) - lu(k,3668) * b(k,312)
2205 254840160 : b(k,314) = b(k,314) - lu(k,3767) * b(k,313)
2206 254840160 : b(k,315) = b(k,315) - lu(k,3768) * b(k,313)
2207 254840160 : b(k,316) = b(k,316) - lu(k,3769) * b(k,313)
2208 254840160 : b(k,317) = b(k,317) - lu(k,3770) * b(k,313)
2209 254840160 : b(k,315) = b(k,315) - lu(k,3809) * b(k,314)
2210 254840160 : b(k,316) = b(k,316) - lu(k,3810) * b(k,314)
2211 254840160 : b(k,317) = b(k,317) - lu(k,3811) * b(k,314)
2212 254840160 : b(k,316) = b(k,316) - lu(k,3851) * b(k,315)
2213 254840160 : b(k,317) = b(k,317) - lu(k,3852) * b(k,315)
2214 263009123 : b(k,317) = b(k,317) - lu(k,4102) * b(k,316)
2215 : end do
2216 8168963 : end subroutine lu_slv10
2217 8168963 : subroutine lu_slv11( avec_len, lu, b )
2218 : use shr_kind_mod, only : r8 => shr_kind_r8
2219 : use chem_mods, only : clscnt4, nzcnt
2220 : implicit none
2221 : !-----------------------------------------------------------------------
2222 : ! ... Dummy args
2223 : !-----------------------------------------------------------------------
2224 : integer, intent(in) :: avec_len
2225 : real(r8), intent(in) :: lu(veclen,max(1,nzcnt))
2226 : real(r8), intent(inout) :: b(veclen,clscnt4)
2227 : !-----------------------------------------------------------------------
2228 : ! ... Local variables
2229 : !-----------------------------------------------------------------------
2230 : integer :: k
2231 : !-----------------------------------------------------------------------
2232 : ! ... solve L * y = b
2233 : !-----------------------------------------------------------------------
2234 263009123 : do k = 1,avec_len
2235 : !-----------------------------------------------------------------------
2236 : ! ... Solve U * x = y
2237 : !-----------------------------------------------------------------------
2238 254840160 : b(k,317) = b(k,317) * lu(k,4128)
2239 254840160 : b(k,316) = b(k,316) - lu(k,4127) * b(k,317)
2240 254840160 : b(k,315) = b(k,315) - lu(k,4126) * b(k,317)
2241 254840160 : b(k,314) = b(k,314) - lu(k,4125) * b(k,317)
2242 254840160 : b(k,313) = b(k,313) - lu(k,4124) * b(k,317)
2243 254840160 : b(k,312) = b(k,312) - lu(k,4123) * b(k,317)
2244 254840160 : b(k,311) = b(k,311) - lu(k,4122) * b(k,317)
2245 254840160 : b(k,310) = b(k,310) - lu(k,4121) * b(k,317)
2246 254840160 : b(k,309) = b(k,309) - lu(k,4120) * b(k,317)
2247 254840160 : b(k,308) = b(k,308) - lu(k,4119) * b(k,317)
2248 254840160 : b(k,307) = b(k,307) - lu(k,4118) * b(k,317)
2249 254840160 : b(k,306) = b(k,306) - lu(k,4117) * b(k,317)
2250 254840160 : b(k,305) = b(k,305) - lu(k,4116) * b(k,317)
2251 254840160 : b(k,304) = b(k,304) - lu(k,4115) * b(k,317)
2252 254840160 : b(k,303) = b(k,303) - lu(k,4114) * b(k,317)
2253 254840160 : b(k,302) = b(k,302) - lu(k,4113) * b(k,317)
2254 254840160 : b(k,301) = b(k,301) - lu(k,4112) * b(k,317)
2255 254840160 : b(k,279) = b(k,279) - lu(k,4111) * b(k,317)
2256 254840160 : b(k,276) = b(k,276) - lu(k,4110) * b(k,317)
2257 254840160 : b(k,251) = b(k,251) - lu(k,4109) * b(k,317)
2258 254840160 : b(k,246) = b(k,246) - lu(k,4108) * b(k,317)
2259 254840160 : b(k,217) = b(k,217) - lu(k,4107) * b(k,317)
2260 254840160 : b(k,216) = b(k,216) - lu(k,4106) * b(k,317)
2261 254840160 : b(k,107) = b(k,107) - lu(k,4105) * b(k,317)
2262 254840160 : b(k,98) = b(k,98) - lu(k,4104) * b(k,317)
2263 254840160 : b(k,69) = b(k,69) - lu(k,4103) * b(k,317)
2264 254840160 : b(k,316) = b(k,316) * lu(k,4101)
2265 254840160 : b(k,315) = b(k,315) - lu(k,4100) * b(k,316)
2266 254840160 : b(k,314) = b(k,314) - lu(k,4099) * b(k,316)
2267 254840160 : b(k,313) = b(k,313) - lu(k,4098) * b(k,316)
2268 254840160 : b(k,312) = b(k,312) - lu(k,4097) * b(k,316)
2269 254840160 : b(k,311) = b(k,311) - lu(k,4096) * b(k,316)
2270 254840160 : b(k,310) = b(k,310) - lu(k,4095) * b(k,316)
2271 254840160 : b(k,309) = b(k,309) - lu(k,4094) * b(k,316)
2272 254840160 : b(k,308) = b(k,308) - lu(k,4093) * b(k,316)
2273 254840160 : b(k,307) = b(k,307) - lu(k,4092) * b(k,316)
2274 254840160 : b(k,306) = b(k,306) - lu(k,4091) * b(k,316)
2275 254840160 : b(k,305) = b(k,305) - lu(k,4090) * b(k,316)
2276 254840160 : b(k,304) = b(k,304) - lu(k,4089) * b(k,316)
2277 254840160 : b(k,303) = b(k,303) - lu(k,4088) * b(k,316)
2278 254840160 : b(k,302) = b(k,302) - lu(k,4087) * b(k,316)
2279 254840160 : b(k,301) = b(k,301) - lu(k,4086) * b(k,316)
2280 254840160 : b(k,300) = b(k,300) - lu(k,4085) * b(k,316)
2281 254840160 : b(k,299) = b(k,299) - lu(k,4084) * b(k,316)
2282 254840160 : b(k,298) = b(k,298) - lu(k,4083) * b(k,316)
2283 254840160 : b(k,297) = b(k,297) - lu(k,4082) * b(k,316)
2284 254840160 : b(k,296) = b(k,296) - lu(k,4081) * b(k,316)
2285 254840160 : b(k,295) = b(k,295) - lu(k,4080) * b(k,316)
2286 254840160 : b(k,294) = b(k,294) - lu(k,4079) * b(k,316)
2287 254840160 : b(k,293) = b(k,293) - lu(k,4078) * b(k,316)
2288 254840160 : b(k,292) = b(k,292) - lu(k,4077) * b(k,316)
2289 254840160 : b(k,291) = b(k,291) - lu(k,4076) * b(k,316)
2290 254840160 : b(k,290) = b(k,290) - lu(k,4075) * b(k,316)
2291 254840160 : b(k,289) = b(k,289) - lu(k,4074) * b(k,316)
2292 254840160 : b(k,288) = b(k,288) - lu(k,4073) * b(k,316)
2293 254840160 : b(k,287) = b(k,287) - lu(k,4072) * b(k,316)
2294 254840160 : b(k,286) = b(k,286) - lu(k,4071) * b(k,316)
2295 254840160 : b(k,285) = b(k,285) - lu(k,4070) * b(k,316)
2296 254840160 : b(k,284) = b(k,284) - lu(k,4069) * b(k,316)
2297 254840160 : b(k,283) = b(k,283) - lu(k,4068) * b(k,316)
2298 254840160 : b(k,282) = b(k,282) - lu(k,4067) * b(k,316)
2299 254840160 : b(k,281) = b(k,281) - lu(k,4066) * b(k,316)
2300 254840160 : b(k,280) = b(k,280) - lu(k,4065) * b(k,316)
2301 254840160 : b(k,279) = b(k,279) - lu(k,4064) * b(k,316)
2302 254840160 : b(k,277) = b(k,277) - lu(k,4063) * b(k,316)
2303 254840160 : b(k,276) = b(k,276) - lu(k,4062) * b(k,316)
2304 254840160 : b(k,275) = b(k,275) - lu(k,4061) * b(k,316)
2305 254840160 : b(k,274) = b(k,274) - lu(k,4060) * b(k,316)
2306 254840160 : b(k,273) = b(k,273) - lu(k,4059) * b(k,316)
2307 254840160 : b(k,272) = b(k,272) - lu(k,4058) * b(k,316)
2308 254840160 : b(k,271) = b(k,271) - lu(k,4057) * b(k,316)
2309 254840160 : b(k,270) = b(k,270) - lu(k,4056) * b(k,316)
2310 254840160 : b(k,269) = b(k,269) - lu(k,4055) * b(k,316)
2311 254840160 : b(k,268) = b(k,268) - lu(k,4054) * b(k,316)
2312 254840160 : b(k,267) = b(k,267) - lu(k,4053) * b(k,316)
2313 254840160 : b(k,266) = b(k,266) - lu(k,4052) * b(k,316)
2314 254840160 : b(k,265) = b(k,265) - lu(k,4051) * b(k,316)
2315 254840160 : b(k,264) = b(k,264) - lu(k,4050) * b(k,316)
2316 254840160 : b(k,263) = b(k,263) - lu(k,4049) * b(k,316)
2317 254840160 : b(k,262) = b(k,262) - lu(k,4048) * b(k,316)
2318 254840160 : b(k,261) = b(k,261) - lu(k,4047) * b(k,316)
2319 254840160 : b(k,260) = b(k,260) - lu(k,4046) * b(k,316)
2320 254840160 : b(k,259) = b(k,259) - lu(k,4045) * b(k,316)
2321 254840160 : b(k,258) = b(k,258) - lu(k,4044) * b(k,316)
2322 254840160 : b(k,257) = b(k,257) - lu(k,4043) * b(k,316)
2323 254840160 : b(k,256) = b(k,256) - lu(k,4042) * b(k,316)
2324 254840160 : b(k,255) = b(k,255) - lu(k,4041) * b(k,316)
2325 254840160 : b(k,254) = b(k,254) - lu(k,4040) * b(k,316)
2326 254840160 : b(k,253) = b(k,253) - lu(k,4039) * b(k,316)
2327 254840160 : b(k,252) = b(k,252) - lu(k,4038) * b(k,316)
2328 254840160 : b(k,251) = b(k,251) - lu(k,4037) * b(k,316)
2329 254840160 : b(k,250) = b(k,250) - lu(k,4036) * b(k,316)
2330 254840160 : b(k,249) = b(k,249) - lu(k,4035) * b(k,316)
2331 254840160 : b(k,248) = b(k,248) - lu(k,4034) * b(k,316)
2332 254840160 : b(k,247) = b(k,247) - lu(k,4033) * b(k,316)
2333 254840160 : b(k,246) = b(k,246) - lu(k,4032) * b(k,316)
2334 254840160 : b(k,245) = b(k,245) - lu(k,4031) * b(k,316)
2335 254840160 : b(k,244) = b(k,244) - lu(k,4030) * b(k,316)
2336 254840160 : b(k,243) = b(k,243) - lu(k,4029) * b(k,316)
2337 254840160 : b(k,242) = b(k,242) - lu(k,4028) * b(k,316)
2338 254840160 : b(k,241) = b(k,241) - lu(k,4027) * b(k,316)
2339 254840160 : b(k,240) = b(k,240) - lu(k,4026) * b(k,316)
2340 254840160 : b(k,239) = b(k,239) - lu(k,4025) * b(k,316)
2341 254840160 : b(k,238) = b(k,238) - lu(k,4024) * b(k,316)
2342 254840160 : b(k,237) = b(k,237) - lu(k,4023) * b(k,316)
2343 254840160 : b(k,236) = b(k,236) - lu(k,4022) * b(k,316)
2344 254840160 : b(k,235) = b(k,235) - lu(k,4021) * b(k,316)
2345 254840160 : b(k,234) = b(k,234) - lu(k,4020) * b(k,316)
2346 254840160 : b(k,233) = b(k,233) - lu(k,4019) * b(k,316)
2347 254840160 : b(k,232) = b(k,232) - lu(k,4018) * b(k,316)
2348 254840160 : b(k,231) = b(k,231) - lu(k,4017) * b(k,316)
2349 254840160 : b(k,230) = b(k,230) - lu(k,4016) * b(k,316)
2350 254840160 : b(k,229) = b(k,229) - lu(k,4015) * b(k,316)
2351 254840160 : b(k,228) = b(k,228) - lu(k,4014) * b(k,316)
2352 254840160 : b(k,227) = b(k,227) - lu(k,4013) * b(k,316)
2353 254840160 : b(k,226) = b(k,226) - lu(k,4012) * b(k,316)
2354 254840160 : b(k,225) = b(k,225) - lu(k,4011) * b(k,316)
2355 254840160 : b(k,224) = b(k,224) - lu(k,4010) * b(k,316)
2356 254840160 : b(k,223) = b(k,223) - lu(k,4009) * b(k,316)
2357 254840160 : b(k,222) = b(k,222) - lu(k,4008) * b(k,316)
2358 254840160 : b(k,221) = b(k,221) - lu(k,4007) * b(k,316)
2359 254840160 : b(k,220) = b(k,220) - lu(k,4006) * b(k,316)
2360 254840160 : b(k,219) = b(k,219) - lu(k,4005) * b(k,316)
2361 254840160 : b(k,218) = b(k,218) - lu(k,4004) * b(k,316)
2362 254840160 : b(k,217) = b(k,217) - lu(k,4003) * b(k,316)
2363 254840160 : b(k,216) = b(k,216) - lu(k,4002) * b(k,316)
2364 254840160 : b(k,215) = b(k,215) - lu(k,4001) * b(k,316)
2365 254840160 : b(k,214) = b(k,214) - lu(k,4000) * b(k,316)
2366 254840160 : b(k,213) = b(k,213) - lu(k,3999) * b(k,316)
2367 254840160 : b(k,212) = b(k,212) - lu(k,3998) * b(k,316)
2368 254840160 : b(k,211) = b(k,211) - lu(k,3997) * b(k,316)
2369 254840160 : b(k,210) = b(k,210) - lu(k,3996) * b(k,316)
2370 254840160 : b(k,209) = b(k,209) - lu(k,3995) * b(k,316)
2371 254840160 : b(k,208) = b(k,208) - lu(k,3994) * b(k,316)
2372 254840160 : b(k,207) = b(k,207) - lu(k,3993) * b(k,316)
2373 254840160 : b(k,206) = b(k,206) - lu(k,3992) * b(k,316)
2374 254840160 : b(k,205) = b(k,205) - lu(k,3991) * b(k,316)
2375 254840160 : b(k,204) = b(k,204) - lu(k,3990) * b(k,316)
2376 254840160 : b(k,203) = b(k,203) - lu(k,3989) * b(k,316)
2377 254840160 : b(k,202) = b(k,202) - lu(k,3988) * b(k,316)
2378 254840160 : b(k,201) = b(k,201) - lu(k,3987) * b(k,316)
2379 254840160 : b(k,200) = b(k,200) - lu(k,3986) * b(k,316)
2380 254840160 : b(k,199) = b(k,199) - lu(k,3985) * b(k,316)
2381 254840160 : b(k,198) = b(k,198) - lu(k,3984) * b(k,316)
2382 254840160 : b(k,197) = b(k,197) - lu(k,3983) * b(k,316)
2383 254840160 : b(k,196) = b(k,196) - lu(k,3982) * b(k,316)
2384 254840160 : b(k,194) = b(k,194) - lu(k,3981) * b(k,316)
2385 254840160 : b(k,193) = b(k,193) - lu(k,3980) * b(k,316)
2386 254840160 : b(k,192) = b(k,192) - lu(k,3979) * b(k,316)
2387 254840160 : b(k,191) = b(k,191) - lu(k,3978) * b(k,316)
2388 254840160 : b(k,190) = b(k,190) - lu(k,3977) * b(k,316)
2389 254840160 : b(k,189) = b(k,189) - lu(k,3976) * b(k,316)
2390 254840160 : b(k,188) = b(k,188) - lu(k,3975) * b(k,316)
2391 254840160 : b(k,187) = b(k,187) - lu(k,3974) * b(k,316)
2392 254840160 : b(k,186) = b(k,186) - lu(k,3973) * b(k,316)
2393 254840160 : b(k,185) = b(k,185) - lu(k,3972) * b(k,316)
2394 254840160 : b(k,184) = b(k,184) - lu(k,3971) * b(k,316)
2395 254840160 : b(k,183) = b(k,183) - lu(k,3970) * b(k,316)
2396 254840160 : b(k,182) = b(k,182) - lu(k,3969) * b(k,316)
2397 254840160 : b(k,181) = b(k,181) - lu(k,3968) * b(k,316)
2398 254840160 : b(k,180) = b(k,180) - lu(k,3967) * b(k,316)
2399 254840160 : b(k,179) = b(k,179) - lu(k,3966) * b(k,316)
2400 254840160 : b(k,178) = b(k,178) - lu(k,3965) * b(k,316)
2401 254840160 : b(k,177) = b(k,177) - lu(k,3964) * b(k,316)
2402 254840160 : b(k,176) = b(k,176) - lu(k,3963) * b(k,316)
2403 254840160 : b(k,175) = b(k,175) - lu(k,3962) * b(k,316)
2404 254840160 : b(k,174) = b(k,174) - lu(k,3961) * b(k,316)
2405 254840160 : b(k,173) = b(k,173) - lu(k,3960) * b(k,316)
2406 254840160 : b(k,172) = b(k,172) - lu(k,3959) * b(k,316)
2407 254840160 : b(k,171) = b(k,171) - lu(k,3958) * b(k,316)
2408 254840160 : b(k,170) = b(k,170) - lu(k,3957) * b(k,316)
2409 254840160 : b(k,169) = b(k,169) - lu(k,3956) * b(k,316)
2410 254840160 : b(k,168) = b(k,168) - lu(k,3955) * b(k,316)
2411 254840160 : b(k,167) = b(k,167) - lu(k,3954) * b(k,316)
2412 254840160 : b(k,166) = b(k,166) - lu(k,3953) * b(k,316)
2413 254840160 : b(k,165) = b(k,165) - lu(k,3952) * b(k,316)
2414 254840160 : b(k,164) = b(k,164) - lu(k,3951) * b(k,316)
2415 254840160 : b(k,163) = b(k,163) - lu(k,3950) * b(k,316)
2416 254840160 : b(k,161) = b(k,161) - lu(k,3949) * b(k,316)
2417 254840160 : b(k,160) = b(k,160) - lu(k,3948) * b(k,316)
2418 254840160 : b(k,159) = b(k,159) - lu(k,3947) * b(k,316)
2419 254840160 : b(k,158) = b(k,158) - lu(k,3946) * b(k,316)
2420 254840160 : b(k,157) = b(k,157) - lu(k,3945) * b(k,316)
2421 254840160 : b(k,156) = b(k,156) - lu(k,3944) * b(k,316)
2422 254840160 : b(k,155) = b(k,155) - lu(k,3943) * b(k,316)
2423 254840160 : b(k,154) = b(k,154) - lu(k,3942) * b(k,316)
2424 254840160 : b(k,153) = b(k,153) - lu(k,3941) * b(k,316)
2425 254840160 : b(k,152) = b(k,152) - lu(k,3940) * b(k,316)
2426 254840160 : b(k,151) = b(k,151) - lu(k,3939) * b(k,316)
2427 254840160 : b(k,150) = b(k,150) - lu(k,3938) * b(k,316)
2428 254840160 : b(k,149) = b(k,149) - lu(k,3937) * b(k,316)
2429 254840160 : b(k,148) = b(k,148) - lu(k,3936) * b(k,316)
2430 254840160 : b(k,147) = b(k,147) - lu(k,3935) * b(k,316)
2431 254840160 : b(k,145) = b(k,145) - lu(k,3934) * b(k,316)
2432 254840160 : b(k,144) = b(k,144) - lu(k,3933) * b(k,316)
2433 254840160 : b(k,143) = b(k,143) - lu(k,3932) * b(k,316)
2434 254840160 : b(k,142) = b(k,142) - lu(k,3931) * b(k,316)
2435 254840160 : b(k,141) = b(k,141) - lu(k,3930) * b(k,316)
2436 254840160 : b(k,140) = b(k,140) - lu(k,3929) * b(k,316)
2437 254840160 : b(k,139) = b(k,139) - lu(k,3928) * b(k,316)
2438 254840160 : b(k,138) = b(k,138) - lu(k,3927) * b(k,316)
2439 254840160 : b(k,137) = b(k,137) - lu(k,3926) * b(k,316)
2440 254840160 : b(k,136) = b(k,136) - lu(k,3925) * b(k,316)
2441 254840160 : b(k,135) = b(k,135) - lu(k,3924) * b(k,316)
2442 254840160 : b(k,134) = b(k,134) - lu(k,3923) * b(k,316)
2443 254840160 : b(k,133) = b(k,133) - lu(k,3922) * b(k,316)
2444 254840160 : b(k,132) = b(k,132) - lu(k,3921) * b(k,316)
2445 254840160 : b(k,131) = b(k,131) - lu(k,3920) * b(k,316)
2446 254840160 : b(k,130) = b(k,130) - lu(k,3919) * b(k,316)
2447 254840160 : b(k,129) = b(k,129) - lu(k,3918) * b(k,316)
2448 254840160 : b(k,128) = b(k,128) - lu(k,3917) * b(k,316)
2449 254840160 : b(k,127) = b(k,127) - lu(k,3916) * b(k,316)
2450 254840160 : b(k,126) = b(k,126) - lu(k,3915) * b(k,316)
2451 254840160 : b(k,125) = b(k,125) - lu(k,3914) * b(k,316)
2452 254840160 : b(k,124) = b(k,124) - lu(k,3913) * b(k,316)
2453 254840160 : b(k,123) = b(k,123) - lu(k,3912) * b(k,316)
2454 254840160 : b(k,122) = b(k,122) - lu(k,3911) * b(k,316)
2455 254840160 : b(k,120) = b(k,120) - lu(k,3910) * b(k,316)
2456 254840160 : b(k,119) = b(k,119) - lu(k,3909) * b(k,316)
2457 254840160 : b(k,118) = b(k,118) - lu(k,3908) * b(k,316)
2458 254840160 : b(k,117) = b(k,117) - lu(k,3907) * b(k,316)
2459 254840160 : b(k,116) = b(k,116) - lu(k,3906) * b(k,316)
2460 254840160 : b(k,115) = b(k,115) - lu(k,3905) * b(k,316)
2461 254840160 : b(k,114) = b(k,114) - lu(k,3904) * b(k,316)
2462 254840160 : b(k,113) = b(k,113) - lu(k,3903) * b(k,316)
2463 254840160 : b(k,112) = b(k,112) - lu(k,3902) * b(k,316)
2464 254840160 : b(k,109) = b(k,109) - lu(k,3901) * b(k,316)
2465 254840160 : b(k,108) = b(k,108) - lu(k,3900) * b(k,316)
2466 254840160 : b(k,106) = b(k,106) - lu(k,3899) * b(k,316)
2467 254840160 : b(k,105) = b(k,105) - lu(k,3898) * b(k,316)
2468 254840160 : b(k,104) = b(k,104) - lu(k,3897) * b(k,316)
2469 254840160 : b(k,100) = b(k,100) - lu(k,3896) * b(k,316)
2470 254840160 : b(k,99) = b(k,99) - lu(k,3895) * b(k,316)
2471 254840160 : b(k,98) = b(k,98) - lu(k,3894) * b(k,316)
2472 254840160 : b(k,97) = b(k,97) - lu(k,3893) * b(k,316)
2473 254840160 : b(k,96) = b(k,96) - lu(k,3892) * b(k,316)
2474 254840160 : b(k,95) = b(k,95) - lu(k,3891) * b(k,316)
2475 254840160 : b(k,94) = b(k,94) - lu(k,3890) * b(k,316)
2476 254840160 : b(k,93) = b(k,93) - lu(k,3889) * b(k,316)
2477 254840160 : b(k,92) = b(k,92) - lu(k,3888) * b(k,316)
2478 254840160 : b(k,91) = b(k,91) - lu(k,3887) * b(k,316)
2479 254840160 : b(k,90) = b(k,90) - lu(k,3886) * b(k,316)
2480 254840160 : b(k,89) = b(k,89) - lu(k,3885) * b(k,316)
2481 254840160 : b(k,87) = b(k,87) - lu(k,3884) * b(k,316)
2482 254840160 : b(k,86) = b(k,86) - lu(k,3883) * b(k,316)
2483 254840160 : b(k,85) = b(k,85) - lu(k,3882) * b(k,316)
2484 254840160 : b(k,84) = b(k,84) - lu(k,3881) * b(k,316)
2485 254840160 : b(k,83) = b(k,83) - lu(k,3880) * b(k,316)
2486 254840160 : b(k,82) = b(k,82) - lu(k,3879) * b(k,316)
2487 254840160 : b(k,81) = b(k,81) - lu(k,3878) * b(k,316)
2488 254840160 : b(k,79) = b(k,79) - lu(k,3877) * b(k,316)
2489 254840160 : b(k,78) = b(k,78) - lu(k,3876) * b(k,316)
2490 254840160 : b(k,77) = b(k,77) - lu(k,3875) * b(k,316)
2491 254840160 : b(k,76) = b(k,76) - lu(k,3874) * b(k,316)
2492 254840160 : b(k,67) = b(k,67) - lu(k,3873) * b(k,316)
2493 254840160 : b(k,63) = b(k,63) - lu(k,3872) * b(k,316)
2494 254840160 : b(k,61) = b(k,61) - lu(k,3871) * b(k,316)
2495 254840160 : b(k,59) = b(k,59) - lu(k,3870) * b(k,316)
2496 254840160 : b(k,57) = b(k,57) - lu(k,3869) * b(k,316)
2497 254840160 : b(k,56) = b(k,56) - lu(k,3868) * b(k,316)
2498 254840160 : b(k,55) = b(k,55) - lu(k,3867) * b(k,316)
2499 254840160 : b(k,54) = b(k,54) - lu(k,3866) * b(k,316)
2500 254840160 : b(k,53) = b(k,53) - lu(k,3865) * b(k,316)
2501 254840160 : b(k,52) = b(k,52) - lu(k,3864) * b(k,316)
2502 254840160 : b(k,51) = b(k,51) - lu(k,3863) * b(k,316)
2503 254840160 : b(k,50) = b(k,50) - lu(k,3862) * b(k,316)
2504 254840160 : b(k,49) = b(k,49) - lu(k,3861) * b(k,316)
2505 254840160 : b(k,48) = b(k,48) - lu(k,3860) * b(k,316)
2506 254840160 : b(k,47) = b(k,47) - lu(k,3859) * b(k,316)
2507 254840160 : b(k,46) = b(k,46) - lu(k,3858) * b(k,316)
2508 254840160 : b(k,43) = b(k,43) - lu(k,3857) * b(k,316)
2509 254840160 : b(k,42) = b(k,42) - lu(k,3856) * b(k,316)
2510 254840160 : b(k,41) = b(k,41) - lu(k,3855) * b(k,316)
2511 254840160 : b(k,40) = b(k,40) - lu(k,3854) * b(k,316)
2512 263009123 : b(k,39) = b(k,39) - lu(k,3853) * b(k,316)
2513 : end do
2514 8168963 : end subroutine lu_slv11
2515 8168963 : subroutine lu_slv12( avec_len, lu, b )
2516 : use shr_kind_mod, only : r8 => shr_kind_r8
2517 : use chem_mods, only : clscnt4, nzcnt
2518 : implicit none
2519 : !-----------------------------------------------------------------------
2520 : ! ... Dummy args
2521 : !-----------------------------------------------------------------------
2522 : integer, intent(in) :: avec_len
2523 : real(r8), intent(in) :: lu(veclen,max(1,nzcnt))
2524 : real(r8), intent(inout) :: b(veclen,clscnt4)
2525 : !-----------------------------------------------------------------------
2526 : ! ... Local variables
2527 : !-----------------------------------------------------------------------
2528 : integer :: k
2529 : !-----------------------------------------------------------------------
2530 : ! ... solve L * y = b
2531 : !-----------------------------------------------------------------------
2532 263009123 : do k = 1,avec_len
2533 254840160 : b(k,315) = b(k,315) * lu(k,3850)
2534 254840160 : b(k,314) = b(k,314) - lu(k,3849) * b(k,315)
2535 254840160 : b(k,313) = b(k,313) - lu(k,3848) * b(k,315)
2536 254840160 : b(k,312) = b(k,312) - lu(k,3847) * b(k,315)
2537 254840160 : b(k,311) = b(k,311) - lu(k,3846) * b(k,315)
2538 254840160 : b(k,310) = b(k,310) - lu(k,3845) * b(k,315)
2539 254840160 : b(k,309) = b(k,309) - lu(k,3844) * b(k,315)
2540 254840160 : b(k,308) = b(k,308) - lu(k,3843) * b(k,315)
2541 254840160 : b(k,307) = b(k,307) - lu(k,3842) * b(k,315)
2542 254840160 : b(k,306) = b(k,306) - lu(k,3841) * b(k,315)
2543 254840160 : b(k,305) = b(k,305) - lu(k,3840) * b(k,315)
2544 254840160 : b(k,304) = b(k,304) - lu(k,3839) * b(k,315)
2545 254840160 : b(k,303) = b(k,303) - lu(k,3838) * b(k,315)
2546 254840160 : b(k,302) = b(k,302) - lu(k,3837) * b(k,315)
2547 254840160 : b(k,301) = b(k,301) - lu(k,3836) * b(k,315)
2548 254840160 : b(k,300) = b(k,300) - lu(k,3835) * b(k,315)
2549 254840160 : b(k,279) = b(k,279) - lu(k,3834) * b(k,315)
2550 254840160 : b(k,276) = b(k,276) - lu(k,3833) * b(k,315)
2551 254840160 : b(k,271) = b(k,271) - lu(k,3832) * b(k,315)
2552 254840160 : b(k,254) = b(k,254) - lu(k,3831) * b(k,315)
2553 254840160 : b(k,251) = b(k,251) - lu(k,3830) * b(k,315)
2554 254840160 : b(k,247) = b(k,247) - lu(k,3829) * b(k,315)
2555 254840160 : b(k,238) = b(k,238) - lu(k,3828) * b(k,315)
2556 254840160 : b(k,237) = b(k,237) - lu(k,3827) * b(k,315)
2557 254840160 : b(k,235) = b(k,235) - lu(k,3826) * b(k,315)
2558 254840160 : b(k,230) = b(k,230) - lu(k,3825) * b(k,315)
2559 254840160 : b(k,227) = b(k,227) - lu(k,3824) * b(k,315)
2560 254840160 : b(k,225) = b(k,225) - lu(k,3823) * b(k,315)
2561 254840160 : b(k,223) = b(k,223) - lu(k,3822) * b(k,315)
2562 254840160 : b(k,209) = b(k,209) - lu(k,3821) * b(k,315)
2563 254840160 : b(k,179) = b(k,179) - lu(k,3820) * b(k,315)
2564 254840160 : b(k,156) = b(k,156) - lu(k,3819) * b(k,315)
2565 254840160 : b(k,149) = b(k,149) - lu(k,3818) * b(k,315)
2566 254840160 : b(k,137) = b(k,137) - lu(k,3817) * b(k,315)
2567 254840160 : b(k,131) = b(k,131) - lu(k,3816) * b(k,315)
2568 254840160 : b(k,120) = b(k,120) - lu(k,3815) * b(k,315)
2569 254840160 : b(k,106) = b(k,106) - lu(k,3814) * b(k,315)
2570 254840160 : b(k,105) = b(k,105) - lu(k,3813) * b(k,315)
2571 254840160 : b(k,75) = b(k,75) - lu(k,3812) * b(k,315)
2572 254840160 : b(k,314) = b(k,314) * lu(k,3808)
2573 254840160 : b(k,313) = b(k,313) - lu(k,3807) * b(k,314)
2574 254840160 : b(k,312) = b(k,312) - lu(k,3806) * b(k,314)
2575 254840160 : b(k,311) = b(k,311) - lu(k,3805) * b(k,314)
2576 254840160 : b(k,310) = b(k,310) - lu(k,3804) * b(k,314)
2577 254840160 : b(k,309) = b(k,309) - lu(k,3803) * b(k,314)
2578 254840160 : b(k,308) = b(k,308) - lu(k,3802) * b(k,314)
2579 254840160 : b(k,307) = b(k,307) - lu(k,3801) * b(k,314)
2580 254840160 : b(k,306) = b(k,306) - lu(k,3800) * b(k,314)
2581 254840160 : b(k,305) = b(k,305) - lu(k,3799) * b(k,314)
2582 254840160 : b(k,304) = b(k,304) - lu(k,3798) * b(k,314)
2583 254840160 : b(k,303) = b(k,303) - lu(k,3797) * b(k,314)
2584 254840160 : b(k,302) = b(k,302) - lu(k,3796) * b(k,314)
2585 254840160 : b(k,301) = b(k,301) - lu(k,3795) * b(k,314)
2586 254840160 : b(k,279) = b(k,279) - lu(k,3794) * b(k,314)
2587 254840160 : b(k,276) = b(k,276) - lu(k,3793) * b(k,314)
2588 254840160 : b(k,251) = b(k,251) - lu(k,3792) * b(k,314)
2589 254840160 : b(k,217) = b(k,217) - lu(k,3791) * b(k,314)
2590 254840160 : b(k,208) = b(k,208) - lu(k,3790) * b(k,314)
2591 254840160 : b(k,156) = b(k,156) - lu(k,3789) * b(k,314)
2592 254840160 : b(k,137) = b(k,137) - lu(k,3788) * b(k,314)
2593 254840160 : b(k,131) = b(k,131) - lu(k,3787) * b(k,314)
2594 254840160 : b(k,108) = b(k,108) - lu(k,3786) * b(k,314)
2595 254840160 : b(k,93) = b(k,93) - lu(k,3785) * b(k,314)
2596 254840160 : b(k,92) = b(k,92) - lu(k,3784) * b(k,314)
2597 254840160 : b(k,91) = b(k,91) - lu(k,3783) * b(k,314)
2598 254840160 : b(k,90) = b(k,90) - lu(k,3782) * b(k,314)
2599 254840160 : b(k,80) = b(k,80) - lu(k,3781) * b(k,314)
2600 254840160 : b(k,79) = b(k,79) - lu(k,3780) * b(k,314)
2601 254840160 : b(k,74) = b(k,74) - lu(k,3779) * b(k,314)
2602 254840160 : b(k,73) = b(k,73) - lu(k,3778) * b(k,314)
2603 254840160 : b(k,72) = b(k,72) - lu(k,3777) * b(k,314)
2604 254840160 : b(k,71) = b(k,71) - lu(k,3776) * b(k,314)
2605 254840160 : b(k,66) = b(k,66) - lu(k,3775) * b(k,314)
2606 254840160 : b(k,65) = b(k,65) - lu(k,3774) * b(k,314)
2607 254840160 : b(k,64) = b(k,64) - lu(k,3773) * b(k,314)
2608 254840160 : b(k,62) = b(k,62) - lu(k,3772) * b(k,314)
2609 254840160 : b(k,60) = b(k,60) - lu(k,3771) * b(k,314)
2610 254840160 : b(k,313) = b(k,313) * lu(k,3766)
2611 254840160 : b(k,312) = b(k,312) - lu(k,3765) * b(k,313)
2612 254840160 : b(k,311) = b(k,311) - lu(k,3764) * b(k,313)
2613 254840160 : b(k,310) = b(k,310) - lu(k,3763) * b(k,313)
2614 254840160 : b(k,309) = b(k,309) - lu(k,3762) * b(k,313)
2615 254840160 : b(k,308) = b(k,308) - lu(k,3761) * b(k,313)
2616 254840160 : b(k,307) = b(k,307) - lu(k,3760) * b(k,313)
2617 254840160 : b(k,306) = b(k,306) - lu(k,3759) * b(k,313)
2618 254840160 : b(k,305) = b(k,305) - lu(k,3758) * b(k,313)
2619 254840160 : b(k,304) = b(k,304) - lu(k,3757) * b(k,313)
2620 254840160 : b(k,303) = b(k,303) - lu(k,3756) * b(k,313)
2621 254840160 : b(k,302) = b(k,302) - lu(k,3755) * b(k,313)
2622 254840160 : b(k,301) = b(k,301) - lu(k,3754) * b(k,313)
2623 254840160 : b(k,300) = b(k,300) - lu(k,3753) * b(k,313)
2624 254840160 : b(k,299) = b(k,299) - lu(k,3752) * b(k,313)
2625 254840160 : b(k,298) = b(k,298) - lu(k,3751) * b(k,313)
2626 254840160 : b(k,297) = b(k,297) - lu(k,3750) * b(k,313)
2627 254840160 : b(k,296) = b(k,296) - lu(k,3749) * b(k,313)
2628 254840160 : b(k,295) = b(k,295) - lu(k,3748) * b(k,313)
2629 254840160 : b(k,294) = b(k,294) - lu(k,3747) * b(k,313)
2630 254840160 : b(k,293) = b(k,293) - lu(k,3746) * b(k,313)
2631 254840160 : b(k,292) = b(k,292) - lu(k,3745) * b(k,313)
2632 254840160 : b(k,291) = b(k,291) - lu(k,3744) * b(k,313)
2633 254840160 : b(k,290) = b(k,290) - lu(k,3743) * b(k,313)
2634 254840160 : b(k,289) = b(k,289) - lu(k,3742) * b(k,313)
2635 254840160 : b(k,288) = b(k,288) - lu(k,3741) * b(k,313)
2636 254840160 : b(k,287) = b(k,287) - lu(k,3740) * b(k,313)
2637 254840160 : b(k,286) = b(k,286) - lu(k,3739) * b(k,313)
2638 254840160 : b(k,285) = b(k,285) - lu(k,3738) * b(k,313)
2639 254840160 : b(k,284) = b(k,284) - lu(k,3737) * b(k,313)
2640 254840160 : b(k,283) = b(k,283) - lu(k,3736) * b(k,313)
2641 254840160 : b(k,281) = b(k,281) - lu(k,3735) * b(k,313)
2642 254840160 : b(k,280) = b(k,280) - lu(k,3734) * b(k,313)
2643 254840160 : b(k,279) = b(k,279) - lu(k,3733) * b(k,313)
2644 254840160 : b(k,277) = b(k,277) - lu(k,3732) * b(k,313)
2645 254840160 : b(k,276) = b(k,276) - lu(k,3731) * b(k,313)
2646 254840160 : b(k,275) = b(k,275) - lu(k,3730) * b(k,313)
2647 254840160 : b(k,274) = b(k,274) - lu(k,3729) * b(k,313)
2648 254840160 : b(k,273) = b(k,273) - lu(k,3728) * b(k,313)
2649 254840160 : b(k,272) = b(k,272) - lu(k,3727) * b(k,313)
2650 254840160 : b(k,271) = b(k,271) - lu(k,3726) * b(k,313)
2651 254840160 : b(k,270) = b(k,270) - lu(k,3725) * b(k,313)
2652 254840160 : b(k,269) = b(k,269) - lu(k,3724) * b(k,313)
2653 254840160 : b(k,268) = b(k,268) - lu(k,3723) * b(k,313)
2654 254840160 : b(k,267) = b(k,267) - lu(k,3722) * b(k,313)
2655 254840160 : b(k,266) = b(k,266) - lu(k,3721) * b(k,313)
2656 254840160 : b(k,265) = b(k,265) - lu(k,3720) * b(k,313)
2657 254840160 : b(k,264) = b(k,264) - lu(k,3719) * b(k,313)
2658 254840160 : b(k,263) = b(k,263) - lu(k,3718) * b(k,313)
2659 254840160 : b(k,262) = b(k,262) - lu(k,3717) * b(k,313)
2660 254840160 : b(k,261) = b(k,261) - lu(k,3716) * b(k,313)
2661 254840160 : b(k,260) = b(k,260) - lu(k,3715) * b(k,313)
2662 254840160 : b(k,259) = b(k,259) - lu(k,3714) * b(k,313)
2663 254840160 : b(k,258) = b(k,258) - lu(k,3713) * b(k,313)
2664 254840160 : b(k,257) = b(k,257) - lu(k,3712) * b(k,313)
2665 254840160 : b(k,256) = b(k,256) - lu(k,3711) * b(k,313)
2666 254840160 : b(k,255) = b(k,255) - lu(k,3710) * b(k,313)
2667 254840160 : b(k,254) = b(k,254) - lu(k,3709) * b(k,313)
2668 254840160 : b(k,250) = b(k,250) - lu(k,3708) * b(k,313)
2669 254840160 : b(k,249) = b(k,249) - lu(k,3707) * b(k,313)
2670 254840160 : b(k,247) = b(k,247) - lu(k,3706) * b(k,313)
2671 254840160 : b(k,246) = b(k,246) - lu(k,3705) * b(k,313)
2672 254840160 : b(k,245) = b(k,245) - lu(k,3704) * b(k,313)
2673 254840160 : b(k,238) = b(k,238) - lu(k,3703) * b(k,313)
2674 254840160 : b(k,237) = b(k,237) - lu(k,3702) * b(k,313)
2675 254840160 : b(k,236) = b(k,236) - lu(k,3701) * b(k,313)
2676 254840160 : b(k,235) = b(k,235) - lu(k,3700) * b(k,313)
2677 254840160 : b(k,232) = b(k,232) - lu(k,3699) * b(k,313)
2678 254840160 : b(k,230) = b(k,230) - lu(k,3698) * b(k,313)
2679 254840160 : b(k,229) = b(k,229) - lu(k,3697) * b(k,313)
2680 254840160 : b(k,228) = b(k,228) - lu(k,3696) * b(k,313)
2681 254840160 : b(k,227) = b(k,227) - lu(k,3695) * b(k,313)
2682 254840160 : b(k,225) = b(k,225) - lu(k,3694) * b(k,313)
2683 254840160 : b(k,220) = b(k,220) - lu(k,3693) * b(k,313)
2684 254840160 : b(k,219) = b(k,219) - lu(k,3692) * b(k,313)
2685 254840160 : b(k,216) = b(k,216) - lu(k,3691) * b(k,313)
2686 254840160 : b(k,213) = b(k,213) - lu(k,3690) * b(k,313)
2687 254840160 : b(k,211) = b(k,211) - lu(k,3689) * b(k,313)
2688 254840160 : b(k,203) = b(k,203) - lu(k,3688) * b(k,313)
2689 254840160 : b(k,202) = b(k,202) - lu(k,3687) * b(k,313)
2690 254840160 : b(k,201) = b(k,201) - lu(k,3686) * b(k,313)
2691 254840160 : b(k,199) = b(k,199) - lu(k,3685) * b(k,313)
2692 254840160 : b(k,187) = b(k,187) - lu(k,3684) * b(k,313)
2693 254840160 : b(k,182) = b(k,182) - lu(k,3683) * b(k,313)
2694 254840160 : b(k,179) = b(k,179) - lu(k,3682) * b(k,313)
2695 254840160 : b(k,177) = b(k,177) - lu(k,3681) * b(k,313)
2696 254840160 : b(k,173) = b(k,173) - lu(k,3680) * b(k,313)
2697 254840160 : b(k,171) = b(k,171) - lu(k,3679) * b(k,313)
2698 254840160 : b(k,164) = b(k,164) - lu(k,3678) * b(k,313)
2699 254840160 : b(k,149) = b(k,149) - lu(k,3677) * b(k,313)
2700 254840160 : b(k,143) = b(k,143) - lu(k,3676) * b(k,313)
2701 254840160 : b(k,135) = b(k,135) - lu(k,3675) * b(k,313)
2702 254840160 : b(k,81) = b(k,81) - lu(k,3674) * b(k,313)
2703 254840160 : b(k,43) = b(k,43) - lu(k,3673) * b(k,313)
2704 254840160 : b(k,42) = b(k,42) - lu(k,3672) * b(k,313)
2705 254840160 : b(k,41) = b(k,41) - lu(k,3671) * b(k,313)
2706 254840160 : b(k,40) = b(k,40) - lu(k,3670) * b(k,313)
2707 254840160 : b(k,39) = b(k,39) - lu(k,3669) * b(k,313)
2708 254840160 : b(k,312) = b(k,312) * lu(k,3663)
2709 254840160 : b(k,311) = b(k,311) - lu(k,3662) * b(k,312)
2710 254840160 : b(k,310) = b(k,310) - lu(k,3661) * b(k,312)
2711 254840160 : b(k,309) = b(k,309) - lu(k,3660) * b(k,312)
2712 254840160 : b(k,308) = b(k,308) - lu(k,3659) * b(k,312)
2713 254840160 : b(k,307) = b(k,307) - lu(k,3658) * b(k,312)
2714 254840160 : b(k,306) = b(k,306) - lu(k,3657) * b(k,312)
2715 254840160 : b(k,305) = b(k,305) - lu(k,3656) * b(k,312)
2716 254840160 : b(k,304) = b(k,304) - lu(k,3655) * b(k,312)
2717 254840160 : b(k,303) = b(k,303) - lu(k,3654) * b(k,312)
2718 254840160 : b(k,302) = b(k,302) - lu(k,3653) * b(k,312)
2719 254840160 : b(k,301) = b(k,301) - lu(k,3652) * b(k,312)
2720 254840160 : b(k,300) = b(k,300) - lu(k,3651) * b(k,312)
2721 254840160 : b(k,299) = b(k,299) - lu(k,3650) * b(k,312)
2722 254840160 : b(k,298) = b(k,298) - lu(k,3649) * b(k,312)
2723 254840160 : b(k,297) = b(k,297) - lu(k,3648) * b(k,312)
2724 254840160 : b(k,296) = b(k,296) - lu(k,3647) * b(k,312)
2725 254840160 : b(k,280) = b(k,280) - lu(k,3646) * b(k,312)
2726 254840160 : b(k,276) = b(k,276) - lu(k,3645) * b(k,312)
2727 254840160 : b(k,271) = b(k,271) - lu(k,3644) * b(k,312)
2728 254840160 : b(k,266) = b(k,266) - lu(k,3643) * b(k,312)
2729 254840160 : b(k,258) = b(k,258) - lu(k,3642) * b(k,312)
2730 254840160 : b(k,248) = b(k,248) - lu(k,3641) * b(k,312)
2731 254840160 : b(k,247) = b(k,247) - lu(k,3640) * b(k,312)
2732 254840160 : b(k,246) = b(k,246) - lu(k,3639) * b(k,312)
2733 254840160 : b(k,235) = b(k,235) - lu(k,3638) * b(k,312)
2734 254840160 : b(k,223) = b(k,223) - lu(k,3637) * b(k,312)
2735 254840160 : b(k,220) = b(k,220) - lu(k,3636) * b(k,312)
2736 254840160 : b(k,216) = b(k,216) - lu(k,3635) * b(k,312)
2737 254840160 : b(k,195) = b(k,195) - lu(k,3634) * b(k,312)
2738 254840160 : b(k,188) = b(k,188) - lu(k,3633) * b(k,312)
2739 254840160 : b(k,184) = b(k,184) - lu(k,3632) * b(k,312)
2740 254840160 : b(k,180) = b(k,180) - lu(k,3631) * b(k,312)
2741 254840160 : b(k,164) = b(k,164) - lu(k,3630) * b(k,312)
2742 254840160 : b(k,158) = b(k,158) - lu(k,3629) * b(k,312)
2743 254840160 : b(k,157) = b(k,157) - lu(k,3628) * b(k,312)
2744 254840160 : b(k,147) = b(k,147) - lu(k,3627) * b(k,312)
2745 254840160 : b(k,146) = b(k,146) - lu(k,3626) * b(k,312)
2746 254840160 : b(k,144) = b(k,144) - lu(k,3625) * b(k,312)
2747 254840160 : b(k,141) = b(k,141) - lu(k,3624) * b(k,312)
2748 254840160 : b(k,135) = b(k,135) - lu(k,3623) * b(k,312)
2749 254840160 : b(k,134) = b(k,134) - lu(k,3622) * b(k,312)
2750 254840160 : b(k,128) = b(k,128) - lu(k,3621) * b(k,312)
2751 254840160 : b(k,125) = b(k,125) - lu(k,3620) * b(k,312)
2752 254840160 : b(k,102) = b(k,102) - lu(k,3619) * b(k,312)
2753 254840160 : b(k,80) = b(k,80) - lu(k,3618) * b(k,312)
2754 263009123 : b(k,70) = b(k,70) - lu(k,3617) * b(k,312)
2755 : end do
2756 8168963 : end subroutine lu_slv12
2757 8168963 : subroutine lu_slv13( avec_len, lu, b )
2758 : use shr_kind_mod, only : r8 => shr_kind_r8
2759 : use chem_mods, only : clscnt4, nzcnt
2760 : implicit none
2761 : !-----------------------------------------------------------------------
2762 : ! ... Dummy args
2763 : !-----------------------------------------------------------------------
2764 : integer, intent(in) :: avec_len
2765 : real(r8), intent(in) :: lu(veclen,max(1,nzcnt))
2766 : real(r8), intent(inout) :: b(veclen,clscnt4)
2767 : !-----------------------------------------------------------------------
2768 : ! ... Local variables
2769 : !-----------------------------------------------------------------------
2770 : integer :: k
2771 : !-----------------------------------------------------------------------
2772 : ! ... solve L * y = b
2773 : !-----------------------------------------------------------------------
2774 263009123 : do k = 1,avec_len
2775 254840160 : b(k,311) = b(k,311) * lu(k,3610)
2776 254840160 : b(k,310) = b(k,310) - lu(k,3609) * b(k,311)
2777 254840160 : b(k,309) = b(k,309) - lu(k,3608) * b(k,311)
2778 254840160 : b(k,308) = b(k,308) - lu(k,3607) * b(k,311)
2779 254840160 : b(k,307) = b(k,307) - lu(k,3606) * b(k,311)
2780 254840160 : b(k,306) = b(k,306) - lu(k,3605) * b(k,311)
2781 254840160 : b(k,305) = b(k,305) - lu(k,3604) * b(k,311)
2782 254840160 : b(k,304) = b(k,304) - lu(k,3603) * b(k,311)
2783 254840160 : b(k,303) = b(k,303) - lu(k,3602) * b(k,311)
2784 254840160 : b(k,302) = b(k,302) - lu(k,3601) * b(k,311)
2785 254840160 : b(k,301) = b(k,301) - lu(k,3600) * b(k,311)
2786 254840160 : b(k,300) = b(k,300) - lu(k,3599) * b(k,311)
2787 254840160 : b(k,299) = b(k,299) - lu(k,3598) * b(k,311)
2788 254840160 : b(k,298) = b(k,298) - lu(k,3597) * b(k,311)
2789 254840160 : b(k,297) = b(k,297) - lu(k,3596) * b(k,311)
2790 254840160 : b(k,296) = b(k,296) - lu(k,3595) * b(k,311)
2791 254840160 : b(k,295) = b(k,295) - lu(k,3594) * b(k,311)
2792 254840160 : b(k,294) = b(k,294) - lu(k,3593) * b(k,311)
2793 254840160 : b(k,293) = b(k,293) - lu(k,3592) * b(k,311)
2794 254840160 : b(k,292) = b(k,292) - lu(k,3591) * b(k,311)
2795 254840160 : b(k,291) = b(k,291) - lu(k,3590) * b(k,311)
2796 254840160 : b(k,290) = b(k,290) - lu(k,3589) * b(k,311)
2797 254840160 : b(k,289) = b(k,289) - lu(k,3588) * b(k,311)
2798 254840160 : b(k,288) = b(k,288) - lu(k,3587) * b(k,311)
2799 254840160 : b(k,287) = b(k,287) - lu(k,3586) * b(k,311)
2800 254840160 : b(k,286) = b(k,286) - lu(k,3585) * b(k,311)
2801 254840160 : b(k,285) = b(k,285) - lu(k,3584) * b(k,311)
2802 254840160 : b(k,284) = b(k,284) - lu(k,3583) * b(k,311)
2803 254840160 : b(k,283) = b(k,283) - lu(k,3582) * b(k,311)
2804 254840160 : b(k,282) = b(k,282) - lu(k,3581) * b(k,311)
2805 254840160 : b(k,281) = b(k,281) - lu(k,3580) * b(k,311)
2806 254840160 : b(k,280) = b(k,280) - lu(k,3579) * b(k,311)
2807 254840160 : b(k,279) = b(k,279) - lu(k,3578) * b(k,311)
2808 254840160 : b(k,278) = b(k,278) - lu(k,3577) * b(k,311)
2809 254840160 : b(k,277) = b(k,277) - lu(k,3576) * b(k,311)
2810 254840160 : b(k,276) = b(k,276) - lu(k,3575) * b(k,311)
2811 254840160 : b(k,275) = b(k,275) - lu(k,3574) * b(k,311)
2812 254840160 : b(k,274) = b(k,274) - lu(k,3573) * b(k,311)
2813 254840160 : b(k,273) = b(k,273) - lu(k,3572) * b(k,311)
2814 254840160 : b(k,272) = b(k,272) - lu(k,3571) * b(k,311)
2815 254840160 : b(k,271) = b(k,271) - lu(k,3570) * b(k,311)
2816 254840160 : b(k,270) = b(k,270) - lu(k,3569) * b(k,311)
2817 254840160 : b(k,269) = b(k,269) - lu(k,3568) * b(k,311)
2818 254840160 : b(k,268) = b(k,268) - lu(k,3567) * b(k,311)
2819 254840160 : b(k,267) = b(k,267) - lu(k,3566) * b(k,311)
2820 254840160 : b(k,266) = b(k,266) - lu(k,3565) * b(k,311)
2821 254840160 : b(k,265) = b(k,265) - lu(k,3564) * b(k,311)
2822 254840160 : b(k,264) = b(k,264) - lu(k,3563) * b(k,311)
2823 254840160 : b(k,263) = b(k,263) - lu(k,3562) * b(k,311)
2824 254840160 : b(k,262) = b(k,262) - lu(k,3561) * b(k,311)
2825 254840160 : b(k,261) = b(k,261) - lu(k,3560) * b(k,311)
2826 254840160 : b(k,258) = b(k,258) - lu(k,3559) * b(k,311)
2827 254840160 : b(k,257) = b(k,257) - lu(k,3558) * b(k,311)
2828 254840160 : b(k,256) = b(k,256) - lu(k,3557) * b(k,311)
2829 254840160 : b(k,255) = b(k,255) - lu(k,3556) * b(k,311)
2830 254840160 : b(k,254) = b(k,254) - lu(k,3555) * b(k,311)
2831 254840160 : b(k,253) = b(k,253) - lu(k,3554) * b(k,311)
2832 254840160 : b(k,252) = b(k,252) - lu(k,3553) * b(k,311)
2833 254840160 : b(k,248) = b(k,248) - lu(k,3552) * b(k,311)
2834 254840160 : b(k,247) = b(k,247) - lu(k,3551) * b(k,311)
2835 254840160 : b(k,246) = b(k,246) - lu(k,3550) * b(k,311)
2836 254840160 : b(k,244) = b(k,244) - lu(k,3549) * b(k,311)
2837 254840160 : b(k,242) = b(k,242) - lu(k,3548) * b(k,311)
2838 254840160 : b(k,238) = b(k,238) - lu(k,3547) * b(k,311)
2839 254840160 : b(k,237) = b(k,237) - lu(k,3546) * b(k,311)
2840 254840160 : b(k,236) = b(k,236) - lu(k,3545) * b(k,311)
2841 254840160 : b(k,230) = b(k,230) - lu(k,3544) * b(k,311)
2842 254840160 : b(k,229) = b(k,229) - lu(k,3543) * b(k,311)
2843 254840160 : b(k,228) = b(k,228) - lu(k,3542) * b(k,311)
2844 254840160 : b(k,227) = b(k,227) - lu(k,3541) * b(k,311)
2845 254840160 : b(k,225) = b(k,225) - lu(k,3540) * b(k,311)
2846 254840160 : b(k,220) = b(k,220) - lu(k,3539) * b(k,311)
2847 254840160 : b(k,219) = b(k,219) - lu(k,3538) * b(k,311)
2848 254840160 : b(k,216) = b(k,216) - lu(k,3537) * b(k,311)
2849 254840160 : b(k,213) = b(k,213) - lu(k,3536) * b(k,311)
2850 254840160 : b(k,211) = b(k,211) - lu(k,3535) * b(k,311)
2851 254840160 : b(k,203) = b(k,203) - lu(k,3534) * b(k,311)
2852 254840160 : b(k,202) = b(k,202) - lu(k,3533) * b(k,311)
2853 254840160 : b(k,201) = b(k,201) - lu(k,3532) * b(k,311)
2854 254840160 : b(k,199) = b(k,199) - lu(k,3531) * b(k,311)
2855 254840160 : b(k,193) = b(k,193) - lu(k,3530) * b(k,311)
2856 254840160 : b(k,177) = b(k,177) - lu(k,3529) * b(k,311)
2857 254840160 : b(k,152) = b(k,152) - lu(k,3528) * b(k,311)
2858 254840160 : b(k,118) = b(k,118) - lu(k,3527) * b(k,311)
2859 254840160 : b(k,104) = b(k,104) - lu(k,3526) * b(k,311)
2860 254840160 : b(k,102) = b(k,102) - lu(k,3525) * b(k,311)
2861 254840160 : b(k,43) = b(k,43) - lu(k,3524) * b(k,311)
2862 254840160 : b(k,42) = b(k,42) - lu(k,3523) * b(k,311)
2863 254840160 : b(k,310) = b(k,310) * lu(k,3515)
2864 254840160 : b(k,309) = b(k,309) - lu(k,3514) * b(k,310)
2865 254840160 : b(k,308) = b(k,308) - lu(k,3513) * b(k,310)
2866 254840160 : b(k,307) = b(k,307) - lu(k,3512) * b(k,310)
2867 254840160 : b(k,306) = b(k,306) - lu(k,3511) * b(k,310)
2868 254840160 : b(k,305) = b(k,305) - lu(k,3510) * b(k,310)
2869 254840160 : b(k,304) = b(k,304) - lu(k,3509) * b(k,310)
2870 254840160 : b(k,303) = b(k,303) - lu(k,3508) * b(k,310)
2871 254840160 : b(k,302) = b(k,302) - lu(k,3507) * b(k,310)
2872 254840160 : b(k,301) = b(k,301) - lu(k,3506) * b(k,310)
2873 254840160 : b(k,276) = b(k,276) - lu(k,3505) * b(k,310)
2874 254840160 : b(k,246) = b(k,246) - lu(k,3504) * b(k,310)
2875 254840160 : b(k,223) = b(k,223) - lu(k,3503) * b(k,310)
2876 254840160 : b(k,216) = b(k,216) - lu(k,3502) * b(k,310)
2877 254840160 : b(k,209) = b(k,209) - lu(k,3501) * b(k,310)
2878 254840160 : b(k,111) = b(k,111) - lu(k,3500) * b(k,310)
2879 254840160 : b(k,88) = b(k,88) - lu(k,3499) * b(k,310)
2880 254840160 : b(k,75) = b(k,75) - lu(k,3498) * b(k,310)
2881 254840160 : b(k,58) = b(k,58) - lu(k,3497) * b(k,310)
2882 254840160 : b(k,309) = b(k,309) * lu(k,3488)
2883 254840160 : b(k,308) = b(k,308) - lu(k,3487) * b(k,309)
2884 254840160 : b(k,307) = b(k,307) - lu(k,3486) * b(k,309)
2885 254840160 : b(k,306) = b(k,306) - lu(k,3485) * b(k,309)
2886 254840160 : b(k,305) = b(k,305) - lu(k,3484) * b(k,309)
2887 254840160 : b(k,304) = b(k,304) - lu(k,3483) * b(k,309)
2888 254840160 : b(k,303) = b(k,303) - lu(k,3482) * b(k,309)
2889 254840160 : b(k,302) = b(k,302) - lu(k,3481) * b(k,309)
2890 254840160 : b(k,301) = b(k,301) - lu(k,3480) * b(k,309)
2891 254840160 : b(k,276) = b(k,276) - lu(k,3479) * b(k,309)
2892 254840160 : b(k,246) = b(k,246) - lu(k,3478) * b(k,309)
2893 254840160 : b(k,216) = b(k,216) - lu(k,3477) * b(k,309)
2894 254840160 : b(k,195) = b(k,195) - lu(k,3476) * b(k,309)
2895 254840160 : b(k,146) = b(k,146) - lu(k,3475) * b(k,309)
2896 254840160 : b(k,111) = b(k,111) - lu(k,3474) * b(k,309)
2897 254840160 : b(k,88) = b(k,88) - lu(k,3473) * b(k,309)
2898 254840160 : b(k,308) = b(k,308) * lu(k,3463)
2899 254840160 : b(k,307) = b(k,307) - lu(k,3462) * b(k,308)
2900 254840160 : b(k,306) = b(k,306) - lu(k,3461) * b(k,308)
2901 254840160 : b(k,305) = b(k,305) - lu(k,3460) * b(k,308)
2902 254840160 : b(k,304) = b(k,304) - lu(k,3459) * b(k,308)
2903 254840160 : b(k,303) = b(k,303) - lu(k,3458) * b(k,308)
2904 254840160 : b(k,302) = b(k,302) - lu(k,3457) * b(k,308)
2905 254840160 : b(k,301) = b(k,301) - lu(k,3456) * b(k,308)
2906 254840160 : b(k,300) = b(k,300) - lu(k,3455) * b(k,308)
2907 254840160 : b(k,299) = b(k,299) - lu(k,3454) * b(k,308)
2908 254840160 : b(k,298) = b(k,298) - lu(k,3453) * b(k,308)
2909 254840160 : b(k,297) = b(k,297) - lu(k,3452) * b(k,308)
2910 254840160 : b(k,296) = b(k,296) - lu(k,3451) * b(k,308)
2911 254840160 : b(k,295) = b(k,295) - lu(k,3450) * b(k,308)
2912 254840160 : b(k,294) = b(k,294) - lu(k,3449) * b(k,308)
2913 254840160 : b(k,293) = b(k,293) - lu(k,3448) * b(k,308)
2914 254840160 : b(k,292) = b(k,292) - lu(k,3447) * b(k,308)
2915 254840160 : b(k,291) = b(k,291) - lu(k,3446) * b(k,308)
2916 254840160 : b(k,290) = b(k,290) - lu(k,3445) * b(k,308)
2917 254840160 : b(k,289) = b(k,289) - lu(k,3444) * b(k,308)
2918 254840160 : b(k,288) = b(k,288) - lu(k,3443) * b(k,308)
2919 254840160 : b(k,287) = b(k,287) - lu(k,3442) * b(k,308)
2920 254840160 : b(k,286) = b(k,286) - lu(k,3441) * b(k,308)
2921 254840160 : b(k,285) = b(k,285) - lu(k,3440) * b(k,308)
2922 254840160 : b(k,284) = b(k,284) - lu(k,3439) * b(k,308)
2923 254840160 : b(k,283) = b(k,283) - lu(k,3438) * b(k,308)
2924 254840160 : b(k,282) = b(k,282) - lu(k,3437) * b(k,308)
2925 254840160 : b(k,281) = b(k,281) - lu(k,3436) * b(k,308)
2926 254840160 : b(k,280) = b(k,280) - lu(k,3435) * b(k,308)
2927 254840160 : b(k,279) = b(k,279) - lu(k,3434) * b(k,308)
2928 254840160 : b(k,278) = b(k,278) - lu(k,3433) * b(k,308)
2929 254840160 : b(k,277) = b(k,277) - lu(k,3432) * b(k,308)
2930 254840160 : b(k,275) = b(k,275) - lu(k,3431) * b(k,308)
2931 254840160 : b(k,274) = b(k,274) - lu(k,3430) * b(k,308)
2932 254840160 : b(k,273) = b(k,273) - lu(k,3429) * b(k,308)
2933 254840160 : b(k,272) = b(k,272) - lu(k,3428) * b(k,308)
2934 254840160 : b(k,271) = b(k,271) - lu(k,3427) * b(k,308)
2935 254840160 : b(k,270) = b(k,270) - lu(k,3426) * b(k,308)
2936 254840160 : b(k,269) = b(k,269) - lu(k,3425) * b(k,308)
2937 254840160 : b(k,268) = b(k,268) - lu(k,3424) * b(k,308)
2938 254840160 : b(k,267) = b(k,267) - lu(k,3423) * b(k,308)
2939 254840160 : b(k,266) = b(k,266) - lu(k,3422) * b(k,308)
2940 254840160 : b(k,265) = b(k,265) - lu(k,3421) * b(k,308)
2941 254840160 : b(k,264) = b(k,264) - lu(k,3420) * b(k,308)
2942 254840160 : b(k,263) = b(k,263) - lu(k,3419) * b(k,308)
2943 254840160 : b(k,262) = b(k,262) - lu(k,3418) * b(k,308)
2944 254840160 : b(k,261) = b(k,261) - lu(k,3417) * b(k,308)
2945 254840160 : b(k,260) = b(k,260) - lu(k,3416) * b(k,308)
2946 254840160 : b(k,259) = b(k,259) - lu(k,3415) * b(k,308)
2947 254840160 : b(k,258) = b(k,258) - lu(k,3414) * b(k,308)
2948 254840160 : b(k,257) = b(k,257) - lu(k,3413) * b(k,308)
2949 254840160 : b(k,256) = b(k,256) - lu(k,3412) * b(k,308)
2950 254840160 : b(k,255) = b(k,255) - lu(k,3411) * b(k,308)
2951 254840160 : b(k,254) = b(k,254) - lu(k,3410) * b(k,308)
2952 254840160 : b(k,253) = b(k,253) - lu(k,3409) * b(k,308)
2953 254840160 : b(k,252) = b(k,252) - lu(k,3408) * b(k,308)
2954 254840160 : b(k,250) = b(k,250) - lu(k,3407) * b(k,308)
2955 254840160 : b(k,249) = b(k,249) - lu(k,3406) * b(k,308)
2956 254840160 : b(k,248) = b(k,248) - lu(k,3405) * b(k,308)
2957 254840160 : b(k,247) = b(k,247) - lu(k,3404) * b(k,308)
2958 254840160 : b(k,244) = b(k,244) - lu(k,3403) * b(k,308)
2959 254840160 : b(k,243) = b(k,243) - lu(k,3402) * b(k,308)
2960 254840160 : b(k,242) = b(k,242) - lu(k,3401) * b(k,308)
2961 254840160 : b(k,240) = b(k,240) - lu(k,3400) * b(k,308)
2962 254840160 : b(k,239) = b(k,239) - lu(k,3399) * b(k,308)
2963 254840160 : b(k,238) = b(k,238) - lu(k,3398) * b(k,308)
2964 254840160 : b(k,236) = b(k,236) - lu(k,3397) * b(k,308)
2965 254840160 : b(k,234) = b(k,234) - lu(k,3396) * b(k,308)
2966 254840160 : b(k,233) = b(k,233) - lu(k,3395) * b(k,308)
2967 254840160 : b(k,232) = b(k,232) - lu(k,3394) * b(k,308)
2968 254840160 : b(k,231) = b(k,231) - lu(k,3393) * b(k,308)
2969 254840160 : b(k,230) = b(k,230) - lu(k,3392) * b(k,308)
2970 254840160 : b(k,225) = b(k,225) - lu(k,3391) * b(k,308)
2971 254840160 : b(k,224) = b(k,224) - lu(k,3390) * b(k,308)
2972 254840160 : b(k,220) = b(k,220) - lu(k,3389) * b(k,308)
2973 254840160 : b(k,218) = b(k,218) - lu(k,3388) * b(k,308)
2974 254840160 : b(k,203) = b(k,203) - lu(k,3387) * b(k,308)
2975 254840160 : b(k,198) = b(k,198) - lu(k,3386) * b(k,308)
2976 254840160 : b(k,186) = b(k,186) - lu(k,3385) * b(k,308)
2977 254840160 : b(k,173) = b(k,173) - lu(k,3384) * b(k,308)
2978 254840160 : b(k,166) = b(k,166) - lu(k,3383) * b(k,308)
2979 254840160 : b(k,129) = b(k,129) - lu(k,3382) * b(k,308)
2980 254840160 : b(k,99) = b(k,99) - lu(k,3381) * b(k,308)
2981 263009123 : b(k,44) = b(k,44) - lu(k,3380) * b(k,308)
2982 : end do
2983 8168963 : end subroutine lu_slv13
2984 8168963 : subroutine lu_slv14( avec_len, lu, b )
2985 : use shr_kind_mod, only : r8 => shr_kind_r8
2986 : use chem_mods, only : clscnt4, nzcnt
2987 : implicit none
2988 : !-----------------------------------------------------------------------
2989 : ! ... Dummy args
2990 : !-----------------------------------------------------------------------
2991 : integer, intent(in) :: avec_len
2992 : real(r8), intent(in) :: lu(veclen,max(1,nzcnt))
2993 : real(r8), intent(inout) :: b(veclen,clscnt4)
2994 : !-----------------------------------------------------------------------
2995 : ! ... Local variables
2996 : !-----------------------------------------------------------------------
2997 : integer :: k
2998 : !-----------------------------------------------------------------------
2999 : ! ... solve L * y = b
3000 : !-----------------------------------------------------------------------
3001 263009123 : do k = 1,avec_len
3002 254840160 : b(k,307) = b(k,307) * lu(k,3369)
3003 254840160 : b(k,306) = b(k,306) - lu(k,3368) * b(k,307)
3004 254840160 : b(k,305) = b(k,305) - lu(k,3367) * b(k,307)
3005 254840160 : b(k,304) = b(k,304) - lu(k,3366) * b(k,307)
3006 254840160 : b(k,303) = b(k,303) - lu(k,3365) * b(k,307)
3007 254840160 : b(k,302) = b(k,302) - lu(k,3364) * b(k,307)
3008 254840160 : b(k,301) = b(k,301) - lu(k,3363) * b(k,307)
3009 254840160 : b(k,300) = b(k,300) - lu(k,3362) * b(k,307)
3010 254840160 : b(k,299) = b(k,299) - lu(k,3361) * b(k,307)
3011 254840160 : b(k,298) = b(k,298) - lu(k,3360) * b(k,307)
3012 254840160 : b(k,297) = b(k,297) - lu(k,3359) * b(k,307)
3013 254840160 : b(k,296) = b(k,296) - lu(k,3358) * b(k,307)
3014 254840160 : b(k,295) = b(k,295) - lu(k,3357) * b(k,307)
3015 254840160 : b(k,294) = b(k,294) - lu(k,3356) * b(k,307)
3016 254840160 : b(k,293) = b(k,293) - lu(k,3355) * b(k,307)
3017 254840160 : b(k,292) = b(k,292) - lu(k,3354) * b(k,307)
3018 254840160 : b(k,291) = b(k,291) - lu(k,3353) * b(k,307)
3019 254840160 : b(k,290) = b(k,290) - lu(k,3352) * b(k,307)
3020 254840160 : b(k,289) = b(k,289) - lu(k,3351) * b(k,307)
3021 254840160 : b(k,288) = b(k,288) - lu(k,3350) * b(k,307)
3022 254840160 : b(k,287) = b(k,287) - lu(k,3349) * b(k,307)
3023 254840160 : b(k,286) = b(k,286) - lu(k,3348) * b(k,307)
3024 254840160 : b(k,285) = b(k,285) - lu(k,3347) * b(k,307)
3025 254840160 : b(k,284) = b(k,284) - lu(k,3346) * b(k,307)
3026 254840160 : b(k,283) = b(k,283) - lu(k,3345) * b(k,307)
3027 254840160 : b(k,282) = b(k,282) - lu(k,3344) * b(k,307)
3028 254840160 : b(k,281) = b(k,281) - lu(k,3343) * b(k,307)
3029 254840160 : b(k,280) = b(k,280) - lu(k,3342) * b(k,307)
3030 254840160 : b(k,279) = b(k,279) - lu(k,3341) * b(k,307)
3031 254840160 : b(k,278) = b(k,278) - lu(k,3340) * b(k,307)
3032 254840160 : b(k,277) = b(k,277) - lu(k,3339) * b(k,307)
3033 254840160 : b(k,276) = b(k,276) - lu(k,3338) * b(k,307)
3034 254840160 : b(k,275) = b(k,275) - lu(k,3337) * b(k,307)
3035 254840160 : b(k,274) = b(k,274) - lu(k,3336) * b(k,307)
3036 254840160 : b(k,273) = b(k,273) - lu(k,3335) * b(k,307)
3037 254840160 : b(k,272) = b(k,272) - lu(k,3334) * b(k,307)
3038 254840160 : b(k,271) = b(k,271) - lu(k,3333) * b(k,307)
3039 254840160 : b(k,270) = b(k,270) - lu(k,3332) * b(k,307)
3040 254840160 : b(k,269) = b(k,269) - lu(k,3331) * b(k,307)
3041 254840160 : b(k,268) = b(k,268) - lu(k,3330) * b(k,307)
3042 254840160 : b(k,267) = b(k,267) - lu(k,3329) * b(k,307)
3043 254840160 : b(k,266) = b(k,266) - lu(k,3328) * b(k,307)
3044 254840160 : b(k,265) = b(k,265) - lu(k,3327) * b(k,307)
3045 254840160 : b(k,264) = b(k,264) - lu(k,3326) * b(k,307)
3046 254840160 : b(k,263) = b(k,263) - lu(k,3325) * b(k,307)
3047 254840160 : b(k,262) = b(k,262) - lu(k,3324) * b(k,307)
3048 254840160 : b(k,261) = b(k,261) - lu(k,3323) * b(k,307)
3049 254840160 : b(k,260) = b(k,260) - lu(k,3322) * b(k,307)
3050 254840160 : b(k,259) = b(k,259) - lu(k,3321) * b(k,307)
3051 254840160 : b(k,258) = b(k,258) - lu(k,3320) * b(k,307)
3052 254840160 : b(k,257) = b(k,257) - lu(k,3319) * b(k,307)
3053 254840160 : b(k,256) = b(k,256) - lu(k,3318) * b(k,307)
3054 254840160 : b(k,255) = b(k,255) - lu(k,3317) * b(k,307)
3055 254840160 : b(k,254) = b(k,254) - lu(k,3316) * b(k,307)
3056 254840160 : b(k,253) = b(k,253) - lu(k,3315) * b(k,307)
3057 254840160 : b(k,252) = b(k,252) - lu(k,3314) * b(k,307)
3058 254840160 : b(k,251) = b(k,251) - lu(k,3313) * b(k,307)
3059 254840160 : b(k,250) = b(k,250) - lu(k,3312) * b(k,307)
3060 254840160 : b(k,249) = b(k,249) - lu(k,3311) * b(k,307)
3061 254840160 : b(k,248) = b(k,248) - lu(k,3310) * b(k,307)
3062 254840160 : b(k,247) = b(k,247) - lu(k,3309) * b(k,307)
3063 254840160 : b(k,245) = b(k,245) - lu(k,3308) * b(k,307)
3064 254840160 : b(k,244) = b(k,244) - lu(k,3307) * b(k,307)
3065 254840160 : b(k,243) = b(k,243) - lu(k,3306) * b(k,307)
3066 254840160 : b(k,242) = b(k,242) - lu(k,3305) * b(k,307)
3067 254840160 : b(k,240) = b(k,240) - lu(k,3304) * b(k,307)
3068 254840160 : b(k,239) = b(k,239) - lu(k,3303) * b(k,307)
3069 254840160 : b(k,238) = b(k,238) - lu(k,3302) * b(k,307)
3070 254840160 : b(k,237) = b(k,237) - lu(k,3301) * b(k,307)
3071 254840160 : b(k,236) = b(k,236) - lu(k,3300) * b(k,307)
3072 254840160 : b(k,235) = b(k,235) - lu(k,3299) * b(k,307)
3073 254840160 : b(k,234) = b(k,234) - lu(k,3298) * b(k,307)
3074 254840160 : b(k,233) = b(k,233) - lu(k,3297) * b(k,307)
3075 254840160 : b(k,232) = b(k,232) - lu(k,3296) * b(k,307)
3076 254840160 : b(k,231) = b(k,231) - lu(k,3295) * b(k,307)
3077 254840160 : b(k,230) = b(k,230) - lu(k,3294) * b(k,307)
3078 254840160 : b(k,227) = b(k,227) - lu(k,3293) * b(k,307)
3079 254840160 : b(k,226) = b(k,226) - lu(k,3292) * b(k,307)
3080 254840160 : b(k,225) = b(k,225) - lu(k,3291) * b(k,307)
3081 254840160 : b(k,224) = b(k,224) - lu(k,3290) * b(k,307)
3082 254840160 : b(k,222) = b(k,222) - lu(k,3289) * b(k,307)
3083 254840160 : b(k,221) = b(k,221) - lu(k,3288) * b(k,307)
3084 254840160 : b(k,215) = b(k,215) - lu(k,3287) * b(k,307)
3085 254840160 : b(k,214) = b(k,214) - lu(k,3286) * b(k,307)
3086 254840160 : b(k,213) = b(k,213) - lu(k,3285) * b(k,307)
3087 254840160 : b(k,212) = b(k,212) - lu(k,3284) * b(k,307)
3088 254840160 : b(k,211) = b(k,211) - lu(k,3283) * b(k,307)
3089 254840160 : b(k,210) = b(k,210) - lu(k,3282) * b(k,307)
3090 254840160 : b(k,209) = b(k,209) - lu(k,3281) * b(k,307)
3091 254840160 : b(k,208) = b(k,208) - lu(k,3280) * b(k,307)
3092 254840160 : b(k,207) = b(k,207) - lu(k,3279) * b(k,307)
3093 254840160 : b(k,206) = b(k,206) - lu(k,3278) * b(k,307)
3094 254840160 : b(k,205) = b(k,205) - lu(k,3277) * b(k,307)
3095 254840160 : b(k,203) = b(k,203) - lu(k,3276) * b(k,307)
3096 254840160 : b(k,200) = b(k,200) - lu(k,3275) * b(k,307)
3097 254840160 : b(k,198) = b(k,198) - lu(k,3274) * b(k,307)
3098 254840160 : b(k,197) = b(k,197) - lu(k,3273) * b(k,307)
3099 254840160 : b(k,196) = b(k,196) - lu(k,3272) * b(k,307)
3100 254840160 : b(k,195) = b(k,195) - lu(k,3271) * b(k,307)
3101 254840160 : b(k,194) = b(k,194) - lu(k,3270) * b(k,307)
3102 254840160 : b(k,192) = b(k,192) - lu(k,3269) * b(k,307)
3103 254840160 : b(k,191) = b(k,191) - lu(k,3268) * b(k,307)
3104 254840160 : b(k,190) = b(k,190) - lu(k,3267) * b(k,307)
3105 254840160 : b(k,189) = b(k,189) - lu(k,3266) * b(k,307)
3106 254840160 : b(k,188) = b(k,188) - lu(k,3265) * b(k,307)
3107 254840160 : b(k,187) = b(k,187) - lu(k,3264) * b(k,307)
3108 254840160 : b(k,184) = b(k,184) - lu(k,3263) * b(k,307)
3109 254840160 : b(k,183) = b(k,183) - lu(k,3262) * b(k,307)
3110 254840160 : b(k,182) = b(k,182) - lu(k,3261) * b(k,307)
3111 254840160 : b(k,181) = b(k,181) - lu(k,3260) * b(k,307)
3112 254840160 : b(k,180) = b(k,180) - lu(k,3259) * b(k,307)
3113 254840160 : b(k,179) = b(k,179) - lu(k,3258) * b(k,307)
3114 254840160 : b(k,178) = b(k,178) - lu(k,3257) * b(k,307)
3115 254840160 : b(k,176) = b(k,176) - lu(k,3256) * b(k,307)
3116 254840160 : b(k,175) = b(k,175) - lu(k,3255) * b(k,307)
3117 254840160 : b(k,174) = b(k,174) - lu(k,3254) * b(k,307)
3118 254840160 : b(k,173) = b(k,173) - lu(k,3253) * b(k,307)
3119 254840160 : b(k,172) = b(k,172) - lu(k,3252) * b(k,307)
3120 254840160 : b(k,171) = b(k,171) - lu(k,3251) * b(k,307)
3121 254840160 : b(k,170) = b(k,170) - lu(k,3250) * b(k,307)
3122 254840160 : b(k,169) = b(k,169) - lu(k,3249) * b(k,307)
3123 254840160 : b(k,167) = b(k,167) - lu(k,3248) * b(k,307)
3124 254840160 : b(k,165) = b(k,165) - lu(k,3247) * b(k,307)
3125 254840160 : b(k,164) = b(k,164) - lu(k,3246) * b(k,307)
3126 254840160 : b(k,163) = b(k,163) - lu(k,3245) * b(k,307)
3127 254840160 : b(k,162) = b(k,162) - lu(k,3244) * b(k,307)
3128 254840160 : b(k,161) = b(k,161) - lu(k,3243) * b(k,307)
3129 254840160 : b(k,160) = b(k,160) - lu(k,3242) * b(k,307)
3130 254840160 : b(k,151) = b(k,151) - lu(k,3241) * b(k,307)
3131 254840160 : b(k,148) = b(k,148) - lu(k,3240) * b(k,307)
3132 254840160 : b(k,144) = b(k,144) - lu(k,3239) * b(k,307)
3133 254840160 : b(k,142) = b(k,142) - lu(k,3238) * b(k,307)
3134 254840160 : b(k,139) = b(k,139) - lu(k,3237) * b(k,307)
3135 254840160 : b(k,135) = b(k,135) - lu(k,3236) * b(k,307)
3136 254840160 : b(k,133) = b(k,133) - lu(k,3235) * b(k,307)
3137 254840160 : b(k,132) = b(k,132) - lu(k,3234) * b(k,307)
3138 254840160 : b(k,130) = b(k,130) - lu(k,3233) * b(k,307)
3139 254840160 : b(k,129) = b(k,129) - lu(k,3232) * b(k,307)
3140 254840160 : b(k,128) = b(k,128) - lu(k,3231) * b(k,307)
3141 254840160 : b(k,127) = b(k,127) - lu(k,3230) * b(k,307)
3142 254840160 : b(k,126) = b(k,126) - lu(k,3229) * b(k,307)
3143 254840160 : b(k,124) = b(k,124) - lu(k,3228) * b(k,307)
3144 254840160 : b(k,123) = b(k,123) - lu(k,3227) * b(k,307)
3145 254840160 : b(k,122) = b(k,122) - lu(k,3226) * b(k,307)
3146 254840160 : b(k,117) = b(k,117) - lu(k,3225) * b(k,307)
3147 254840160 : b(k,116) = b(k,116) - lu(k,3224) * b(k,307)
3148 254840160 : b(k,115) = b(k,115) - lu(k,3223) * b(k,307)
3149 254840160 : b(k,114) = b(k,114) - lu(k,3222) * b(k,307)
3150 254840160 : b(k,113) = b(k,113) - lu(k,3221) * b(k,307)
3151 254840160 : b(k,112) = b(k,112) - lu(k,3220) * b(k,307)
3152 254840160 : b(k,109) = b(k,109) - lu(k,3219) * b(k,307)
3153 254840160 : b(k,101) = b(k,101) - lu(k,3218) * b(k,307)
3154 254840160 : b(k,100) = b(k,100) - lu(k,3217) * b(k,307)
3155 254840160 : b(k,68) = b(k,68) - lu(k,3216) * b(k,307)
3156 254840160 : b(k,57) = b(k,57) - lu(k,3215) * b(k,307)
3157 254840160 : b(k,56) = b(k,56) - lu(k,3214) * b(k,307)
3158 254840160 : b(k,55) = b(k,55) - lu(k,3213) * b(k,307)
3159 254840160 : b(k,54) = b(k,54) - lu(k,3212) * b(k,307)
3160 254840160 : b(k,52) = b(k,52) - lu(k,3211) * b(k,307)
3161 254840160 : b(k,51) = b(k,51) - lu(k,3210) * b(k,307)
3162 254840160 : b(k,50) = b(k,50) - lu(k,3209) * b(k,307)
3163 254840160 : b(k,49) = b(k,49) - lu(k,3208) * b(k,307)
3164 254840160 : b(k,48) = b(k,48) - lu(k,3207) * b(k,307)
3165 254840160 : b(k,47) = b(k,47) - lu(k,3206) * b(k,307)
3166 254840160 : b(k,44) = b(k,44) - lu(k,3205) * b(k,307)
3167 254840160 : b(k,43) = b(k,43) - lu(k,3204) * b(k,307)
3168 254840160 : b(k,42) = b(k,42) - lu(k,3203) * b(k,307)
3169 254840160 : b(k,41) = b(k,41) - lu(k,3202) * b(k,307)
3170 254840160 : b(k,40) = b(k,40) - lu(k,3201) * b(k,307)
3171 254840160 : b(k,39) = b(k,39) - lu(k,3200) * b(k,307)
3172 254840160 : b(k,306) = b(k,306) * lu(k,3188)
3173 254840160 : b(k,305) = b(k,305) - lu(k,3187) * b(k,306)
3174 254840160 : b(k,304) = b(k,304) - lu(k,3186) * b(k,306)
3175 254840160 : b(k,303) = b(k,303) - lu(k,3185) * b(k,306)
3176 254840160 : b(k,302) = b(k,302) - lu(k,3184) * b(k,306)
3177 254840160 : b(k,301) = b(k,301) - lu(k,3183) * b(k,306)
3178 254840160 : b(k,279) = b(k,279) - lu(k,3182) * b(k,306)
3179 254840160 : b(k,276) = b(k,276) - lu(k,3181) * b(k,306)
3180 254840160 : b(k,271) = b(k,271) - lu(k,3180) * b(k,306)
3181 254840160 : b(k,251) = b(k,251) - lu(k,3179) * b(k,306)
3182 254840160 : b(k,247) = b(k,247) - lu(k,3178) * b(k,306)
3183 254840160 : b(k,227) = b(k,227) - lu(k,3177) * b(k,306)
3184 254840160 : b(k,213) = b(k,213) - lu(k,3176) * b(k,306)
3185 254840160 : b(k,208) = b(k,208) - lu(k,3175) * b(k,306)
3186 254840160 : b(k,162) = b(k,162) - lu(k,3174) * b(k,306)
3187 254840160 : b(k,305) = b(k,305) * lu(k,3161)
3188 254840160 : b(k,304) = b(k,304) - lu(k,3160) * b(k,305)
3189 254840160 : b(k,303) = b(k,303) - lu(k,3159) * b(k,305)
3190 254840160 : b(k,302) = b(k,302) - lu(k,3158) * b(k,305)
3191 254840160 : b(k,301) = b(k,301) - lu(k,3157) * b(k,305)
3192 254840160 : b(k,279) = b(k,279) - lu(k,3156) * b(k,305)
3193 254840160 : b(k,276) = b(k,276) - lu(k,3155) * b(k,305)
3194 254840160 : b(k,271) = b(k,271) - lu(k,3154) * b(k,305)
3195 254840160 : b(k,251) = b(k,251) - lu(k,3153) * b(k,305)
3196 254840160 : b(k,246) = b(k,246) - lu(k,3152) * b(k,305)
3197 254840160 : b(k,237) = b(k,237) - lu(k,3151) * b(k,305)
3198 254840160 : b(k,223) = b(k,223) - lu(k,3150) * b(k,305)
3199 254840160 : b(k,216) = b(k,216) - lu(k,3149) * b(k,305)
3200 254840160 : b(k,209) = b(k,209) - lu(k,3148) * b(k,305)
3201 254840160 : b(k,208) = b(k,208) - lu(k,3147) * b(k,305)
3202 254840160 : b(k,195) = b(k,195) - lu(k,3146) * b(k,305)
3203 254840160 : b(k,146) = b(k,146) - lu(k,3145) * b(k,305)
3204 254840160 : b(k,143) = b(k,143) - lu(k,3144) * b(k,305)
3205 263009123 : b(k,119) = b(k,119) - lu(k,3143) * b(k,305)
3206 : end do
3207 8168963 : end subroutine lu_slv14
3208 8168963 : subroutine lu_slv15( avec_len, lu, b )
3209 : use shr_kind_mod, only : r8 => shr_kind_r8
3210 : use chem_mods, only : clscnt4, nzcnt
3211 : implicit none
3212 : !-----------------------------------------------------------------------
3213 : ! ... Dummy args
3214 : !-----------------------------------------------------------------------
3215 : integer, intent(in) :: avec_len
3216 : real(r8), intent(in) :: lu(veclen,max(1,nzcnt))
3217 : real(r8), intent(inout) :: b(veclen,clscnt4)
3218 : !-----------------------------------------------------------------------
3219 : ! ... Local variables
3220 : !-----------------------------------------------------------------------
3221 : integer :: k
3222 : !-----------------------------------------------------------------------
3223 : ! ... solve L * y = b
3224 : !-----------------------------------------------------------------------
3225 263009123 : do k = 1,avec_len
3226 254840160 : b(k,304) = b(k,304) * lu(k,3129)
3227 254840160 : b(k,302) = b(k,302) - lu(k,3128) * b(k,304)
3228 254840160 : b(k,301) = b(k,301) - lu(k,3127) * b(k,304)
3229 254840160 : b(k,276) = b(k,276) - lu(k,3126) * b(k,304)
3230 254840160 : b(k,223) = b(k,223) - lu(k,3125) * b(k,304)
3231 254840160 : b(k,209) = b(k,209) - lu(k,3124) * b(k,304)
3232 254840160 : b(k,195) = b(k,195) - lu(k,3123) * b(k,304)
3233 254840160 : b(k,88) = b(k,88) - lu(k,3122) * b(k,304)
3234 254840160 : b(k,75) = b(k,75) - lu(k,3121) * b(k,304)
3235 254840160 : b(k,303) = b(k,303) * lu(k,3106)
3236 254840160 : b(k,302) = b(k,302) - lu(k,3105) * b(k,303)
3237 254840160 : b(k,301) = b(k,301) - lu(k,3104) * b(k,303)
3238 254840160 : b(k,300) = b(k,300) - lu(k,3103) * b(k,303)
3239 254840160 : b(k,299) = b(k,299) - lu(k,3102) * b(k,303)
3240 254840160 : b(k,298) = b(k,298) - lu(k,3101) * b(k,303)
3241 254840160 : b(k,297) = b(k,297) - lu(k,3100) * b(k,303)
3242 254840160 : b(k,296) = b(k,296) - lu(k,3099) * b(k,303)
3243 254840160 : b(k,295) = b(k,295) - lu(k,3098) * b(k,303)
3244 254840160 : b(k,294) = b(k,294) - lu(k,3097) * b(k,303)
3245 254840160 : b(k,293) = b(k,293) - lu(k,3096) * b(k,303)
3246 254840160 : b(k,292) = b(k,292) - lu(k,3095) * b(k,303)
3247 254840160 : b(k,291) = b(k,291) - lu(k,3094) * b(k,303)
3248 254840160 : b(k,290) = b(k,290) - lu(k,3093) * b(k,303)
3249 254840160 : b(k,289) = b(k,289) - lu(k,3092) * b(k,303)
3250 254840160 : b(k,288) = b(k,288) - lu(k,3091) * b(k,303)
3251 254840160 : b(k,287) = b(k,287) - lu(k,3090) * b(k,303)
3252 254840160 : b(k,286) = b(k,286) - lu(k,3089) * b(k,303)
3253 254840160 : b(k,285) = b(k,285) - lu(k,3088) * b(k,303)
3254 254840160 : b(k,284) = b(k,284) - lu(k,3087) * b(k,303)
3255 254840160 : b(k,283) = b(k,283) - lu(k,3086) * b(k,303)
3256 254840160 : b(k,282) = b(k,282) - lu(k,3085) * b(k,303)
3257 254840160 : b(k,281) = b(k,281) - lu(k,3084) * b(k,303)
3258 254840160 : b(k,280) = b(k,280) - lu(k,3083) * b(k,303)
3259 254840160 : b(k,279) = b(k,279) - lu(k,3082) * b(k,303)
3260 254840160 : b(k,278) = b(k,278) - lu(k,3081) * b(k,303)
3261 254840160 : b(k,277) = b(k,277) - lu(k,3080) * b(k,303)
3262 254840160 : b(k,276) = b(k,276) - lu(k,3079) * b(k,303)
3263 254840160 : b(k,275) = b(k,275) - lu(k,3078) * b(k,303)
3264 254840160 : b(k,274) = b(k,274) - lu(k,3077) * b(k,303)
3265 254840160 : b(k,273) = b(k,273) - lu(k,3076) * b(k,303)
3266 254840160 : b(k,272) = b(k,272) - lu(k,3075) * b(k,303)
3267 254840160 : b(k,271) = b(k,271) - lu(k,3074) * b(k,303)
3268 254840160 : b(k,270) = b(k,270) - lu(k,3073) * b(k,303)
3269 254840160 : b(k,269) = b(k,269) - lu(k,3072) * b(k,303)
3270 254840160 : b(k,268) = b(k,268) - lu(k,3071) * b(k,303)
3271 254840160 : b(k,267) = b(k,267) - lu(k,3070) * b(k,303)
3272 254840160 : b(k,266) = b(k,266) - lu(k,3069) * b(k,303)
3273 254840160 : b(k,265) = b(k,265) - lu(k,3068) * b(k,303)
3274 254840160 : b(k,264) = b(k,264) - lu(k,3067) * b(k,303)
3275 254840160 : b(k,263) = b(k,263) - lu(k,3066) * b(k,303)
3276 254840160 : b(k,262) = b(k,262) - lu(k,3065) * b(k,303)
3277 254840160 : b(k,261) = b(k,261) - lu(k,3064) * b(k,303)
3278 254840160 : b(k,260) = b(k,260) - lu(k,3063) * b(k,303)
3279 254840160 : b(k,259) = b(k,259) - lu(k,3062) * b(k,303)
3280 254840160 : b(k,258) = b(k,258) - lu(k,3061) * b(k,303)
3281 254840160 : b(k,257) = b(k,257) - lu(k,3060) * b(k,303)
3282 254840160 : b(k,256) = b(k,256) - lu(k,3059) * b(k,303)
3283 254840160 : b(k,255) = b(k,255) - lu(k,3058) * b(k,303)
3284 254840160 : b(k,254) = b(k,254) - lu(k,3057) * b(k,303)
3285 254840160 : b(k,253) = b(k,253) - lu(k,3056) * b(k,303)
3286 254840160 : b(k,252) = b(k,252) - lu(k,3055) * b(k,303)
3287 254840160 : b(k,250) = b(k,250) - lu(k,3054) * b(k,303)
3288 254840160 : b(k,249) = b(k,249) - lu(k,3053) * b(k,303)
3289 254840160 : b(k,248) = b(k,248) - lu(k,3052) * b(k,303)
3290 254840160 : b(k,247) = b(k,247) - lu(k,3051) * b(k,303)
3291 254840160 : b(k,244) = b(k,244) - lu(k,3050) * b(k,303)
3292 254840160 : b(k,243) = b(k,243) - lu(k,3049) * b(k,303)
3293 254840160 : b(k,242) = b(k,242) - lu(k,3048) * b(k,303)
3294 254840160 : b(k,241) = b(k,241) - lu(k,3047) * b(k,303)
3295 254840160 : b(k,240) = b(k,240) - lu(k,3046) * b(k,303)
3296 254840160 : b(k,239) = b(k,239) - lu(k,3045) * b(k,303)
3297 254840160 : b(k,238) = b(k,238) - lu(k,3044) * b(k,303)
3298 254840160 : b(k,236) = b(k,236) - lu(k,3043) * b(k,303)
3299 254840160 : b(k,235) = b(k,235) - lu(k,3042) * b(k,303)
3300 254840160 : b(k,234) = b(k,234) - lu(k,3041) * b(k,303)
3301 254840160 : b(k,233) = b(k,233) - lu(k,3040) * b(k,303)
3302 254840160 : b(k,232) = b(k,232) - lu(k,3039) * b(k,303)
3303 254840160 : b(k,231) = b(k,231) - lu(k,3038) * b(k,303)
3304 254840160 : b(k,230) = b(k,230) - lu(k,3037) * b(k,303)
3305 254840160 : b(k,227) = b(k,227) - lu(k,3036) * b(k,303)
3306 254840160 : b(k,226) = b(k,226) - lu(k,3035) * b(k,303)
3307 254840160 : b(k,225) = b(k,225) - lu(k,3034) * b(k,303)
3308 254840160 : b(k,224) = b(k,224) - lu(k,3033) * b(k,303)
3309 254840160 : b(k,222) = b(k,222) - lu(k,3032) * b(k,303)
3310 254840160 : b(k,221) = b(k,221) - lu(k,3031) * b(k,303)
3311 254840160 : b(k,215) = b(k,215) - lu(k,3030) * b(k,303)
3312 254840160 : b(k,214) = b(k,214) - lu(k,3029) * b(k,303)
3313 254840160 : b(k,213) = b(k,213) - lu(k,3028) * b(k,303)
3314 254840160 : b(k,211) = b(k,211) - lu(k,3027) * b(k,303)
3315 254840160 : b(k,210) = b(k,210) - lu(k,3026) * b(k,303)
3316 254840160 : b(k,207) = b(k,207) - lu(k,3025) * b(k,303)
3317 254840160 : b(k,206) = b(k,206) - lu(k,3024) * b(k,303)
3318 254840160 : b(k,205) = b(k,205) - lu(k,3023) * b(k,303)
3319 254840160 : b(k,204) = b(k,204) - lu(k,3022) * b(k,303)
3320 254840160 : b(k,203) = b(k,203) - lu(k,3021) * b(k,303)
3321 254840160 : b(k,200) = b(k,200) - lu(k,3020) * b(k,303)
3322 254840160 : b(k,198) = b(k,198) - lu(k,3019) * b(k,303)
3323 254840160 : b(k,197) = b(k,197) - lu(k,3018) * b(k,303)
3324 254840160 : b(k,196) = b(k,196) - lu(k,3017) * b(k,303)
3325 254840160 : b(k,194) = b(k,194) - lu(k,3016) * b(k,303)
3326 254840160 : b(k,193) = b(k,193) - lu(k,3015) * b(k,303)
3327 254840160 : b(k,192) = b(k,192) - lu(k,3014) * b(k,303)
3328 254840160 : b(k,191) = b(k,191) - lu(k,3013) * b(k,303)
3329 254840160 : b(k,190) = b(k,190) - lu(k,3012) * b(k,303)
3330 254840160 : b(k,189) = b(k,189) - lu(k,3011) * b(k,303)
3331 254840160 : b(k,188) = b(k,188) - lu(k,3010) * b(k,303)
3332 254840160 : b(k,187) = b(k,187) - lu(k,3009) * b(k,303)
3333 254840160 : b(k,184) = b(k,184) - lu(k,3008) * b(k,303)
3334 254840160 : b(k,183) = b(k,183) - lu(k,3007) * b(k,303)
3335 254840160 : b(k,182) = b(k,182) - lu(k,3006) * b(k,303)
3336 254840160 : b(k,181) = b(k,181) - lu(k,3005) * b(k,303)
3337 254840160 : b(k,180) = b(k,180) - lu(k,3004) * b(k,303)
3338 254840160 : b(k,179) = b(k,179) - lu(k,3003) * b(k,303)
3339 254840160 : b(k,176) = b(k,176) - lu(k,3002) * b(k,303)
3340 254840160 : b(k,175) = b(k,175) - lu(k,3001) * b(k,303)
3341 254840160 : b(k,174) = b(k,174) - lu(k,3000) * b(k,303)
3342 254840160 : b(k,169) = b(k,169) - lu(k,2999) * b(k,303)
3343 254840160 : b(k,168) = b(k,168) - lu(k,2998) * b(k,303)
3344 254840160 : b(k,164) = b(k,164) - lu(k,2997) * b(k,303)
3345 254840160 : b(k,162) = b(k,162) - lu(k,2996) * b(k,303)
3346 254840160 : b(k,159) = b(k,159) - lu(k,2995) * b(k,303)
3347 254840160 : b(k,152) = b(k,152) - lu(k,2994) * b(k,303)
3348 254840160 : b(k,151) = b(k,151) - lu(k,2993) * b(k,303)
3349 254840160 : b(k,150) = b(k,150) - lu(k,2992) * b(k,303)
3350 254840160 : b(k,145) = b(k,145) - lu(k,2991) * b(k,303)
3351 254840160 : b(k,144) = b(k,144) - lu(k,2990) * b(k,303)
3352 254840160 : b(k,142) = b(k,142) - lu(k,2989) * b(k,303)
3353 254840160 : b(k,139) = b(k,139) - lu(k,2988) * b(k,303)
3354 254840160 : b(k,135) = b(k,135) - lu(k,2987) * b(k,303)
3355 254840160 : b(k,134) = b(k,134) - lu(k,2986) * b(k,303)
3356 254840160 : b(k,132) = b(k,132) - lu(k,2985) * b(k,303)
3357 254840160 : b(k,130) = b(k,130) - lu(k,2984) * b(k,303)
3358 254840160 : b(k,127) = b(k,127) - lu(k,2983) * b(k,303)
3359 254840160 : b(k,121) = b(k,121) - lu(k,2982) * b(k,303)
3360 254840160 : b(k,110) = b(k,110) - lu(k,2981) * b(k,303)
3361 254840160 : b(k,103) = b(k,103) - lu(k,2980) * b(k,303)
3362 254840160 : b(k,101) = b(k,101) - lu(k,2979) * b(k,303)
3363 254840160 : b(k,89) = b(k,89) - lu(k,2978) * b(k,303)
3364 254840160 : b(k,57) = b(k,57) - lu(k,2977) * b(k,303)
3365 254840160 : b(k,56) = b(k,56) - lu(k,2976) * b(k,303)
3366 254840160 : b(k,55) = b(k,55) - lu(k,2975) * b(k,303)
3367 254840160 : b(k,54) = b(k,54) - lu(k,2974) * b(k,303)
3368 254840160 : b(k,52) = b(k,52) - lu(k,2973) * b(k,303)
3369 254840160 : b(k,51) = b(k,51) - lu(k,2972) * b(k,303)
3370 254840160 : b(k,50) = b(k,50) - lu(k,2971) * b(k,303)
3371 254840160 : b(k,49) = b(k,49) - lu(k,2970) * b(k,303)
3372 254840160 : b(k,48) = b(k,48) - lu(k,2969) * b(k,303)
3373 254840160 : b(k,47) = b(k,47) - lu(k,2968) * b(k,303)
3374 254840160 : b(k,44) = b(k,44) - lu(k,2967) * b(k,303)
3375 254840160 : b(k,43) = b(k,43) - lu(k,2966) * b(k,303)
3376 254840160 : b(k,42) = b(k,42) - lu(k,2965) * b(k,303)
3377 254840160 : b(k,41) = b(k,41) - lu(k,2964) * b(k,303)
3378 254840160 : b(k,40) = b(k,40) - lu(k,2963) * b(k,303)
3379 254840160 : b(k,39) = b(k,39) - lu(k,2962) * b(k,303)
3380 254840160 : b(k,302) = b(k,302) * lu(k,2949)
3381 254840160 : b(k,301) = b(k,301) - lu(k,2948) * b(k,302)
3382 254840160 : b(k,279) = b(k,279) - lu(k,2947) * b(k,302)
3383 254840160 : b(k,251) = b(k,251) - lu(k,2946) * b(k,302)
3384 254840160 : b(k,217) = b(k,217) - lu(k,2945) * b(k,302)
3385 254840160 : b(k,107) = b(k,107) - lu(k,2944) * b(k,302)
3386 254840160 : b(k,301) = b(k,301) * lu(k,2931)
3387 254840160 : b(k,279) = b(k,279) - lu(k,2930) * b(k,301)
3388 254840160 : b(k,251) = b(k,251) - lu(k,2929) * b(k,301)
3389 254840160 : b(k,300) = b(k,300) * lu(k,2913)
3390 254840160 : b(k,299) = b(k,299) - lu(k,2912) * b(k,300)
3391 254840160 : b(k,298) = b(k,298) - lu(k,2911) * b(k,300)
3392 254840160 : b(k,297) = b(k,297) - lu(k,2910) * b(k,300)
3393 254840160 : b(k,296) = b(k,296) - lu(k,2909) * b(k,300)
3394 254840160 : b(k,295) = b(k,295) - lu(k,2908) * b(k,300)
3395 254840160 : b(k,294) = b(k,294) - lu(k,2907) * b(k,300)
3396 254840160 : b(k,293) = b(k,293) - lu(k,2906) * b(k,300)
3397 254840160 : b(k,292) = b(k,292) - lu(k,2905) * b(k,300)
3398 254840160 : b(k,291) = b(k,291) - lu(k,2904) * b(k,300)
3399 254840160 : b(k,290) = b(k,290) - lu(k,2903) * b(k,300)
3400 254840160 : b(k,289) = b(k,289) - lu(k,2902) * b(k,300)
3401 254840160 : b(k,288) = b(k,288) - lu(k,2901) * b(k,300)
3402 254840160 : b(k,287) = b(k,287) - lu(k,2900) * b(k,300)
3403 254840160 : b(k,286) = b(k,286) - lu(k,2899) * b(k,300)
3404 254840160 : b(k,285) = b(k,285) - lu(k,2898) * b(k,300)
3405 254840160 : b(k,284) = b(k,284) - lu(k,2897) * b(k,300)
3406 254840160 : b(k,283) = b(k,283) - lu(k,2896) * b(k,300)
3407 254840160 : b(k,282) = b(k,282) - lu(k,2895) * b(k,300)
3408 254840160 : b(k,281) = b(k,281) - lu(k,2894) * b(k,300)
3409 254840160 : b(k,280) = b(k,280) - lu(k,2893) * b(k,300)
3410 254840160 : b(k,279) = b(k,279) - lu(k,2892) * b(k,300)
3411 254840160 : b(k,278) = b(k,278) - lu(k,2891) * b(k,300)
3412 254840160 : b(k,277) = b(k,277) - lu(k,2890) * b(k,300)
3413 254840160 : b(k,275) = b(k,275) - lu(k,2889) * b(k,300)
3414 254840160 : b(k,274) = b(k,274) - lu(k,2888) * b(k,300)
3415 254840160 : b(k,273) = b(k,273) - lu(k,2887) * b(k,300)
3416 254840160 : b(k,272) = b(k,272) - lu(k,2886) * b(k,300)
3417 254840160 : b(k,271) = b(k,271) - lu(k,2885) * b(k,300)
3418 254840160 : b(k,270) = b(k,270) - lu(k,2884) * b(k,300)
3419 254840160 : b(k,269) = b(k,269) - lu(k,2883) * b(k,300)
3420 254840160 : b(k,268) = b(k,268) - lu(k,2882) * b(k,300)
3421 254840160 : b(k,267) = b(k,267) - lu(k,2881) * b(k,300)
3422 254840160 : b(k,266) = b(k,266) - lu(k,2880) * b(k,300)
3423 254840160 : b(k,265) = b(k,265) - lu(k,2879) * b(k,300)
3424 254840160 : b(k,264) = b(k,264) - lu(k,2878) * b(k,300)
3425 254840160 : b(k,263) = b(k,263) - lu(k,2877) * b(k,300)
3426 254840160 : b(k,262) = b(k,262) - lu(k,2876) * b(k,300)
3427 254840160 : b(k,261) = b(k,261) - lu(k,2875) * b(k,300)
3428 254840160 : b(k,259) = b(k,259) - lu(k,2874) * b(k,300)
3429 254840160 : b(k,258) = b(k,258) - lu(k,2873) * b(k,300)
3430 254840160 : b(k,257) = b(k,257) - lu(k,2872) * b(k,300)
3431 254840160 : b(k,256) = b(k,256) - lu(k,2871) * b(k,300)
3432 254840160 : b(k,255) = b(k,255) - lu(k,2870) * b(k,300)
3433 254840160 : b(k,254) = b(k,254) - lu(k,2869) * b(k,300)
3434 254840160 : b(k,253) = b(k,253) - lu(k,2868) * b(k,300)
3435 254840160 : b(k,252) = b(k,252) - lu(k,2867) * b(k,300)
3436 254840160 : b(k,248) = b(k,248) - lu(k,2866) * b(k,300)
3437 254840160 : b(k,247) = b(k,247) - lu(k,2865) * b(k,300)
3438 254840160 : b(k,244) = b(k,244) - lu(k,2864) * b(k,300)
3439 254840160 : b(k,243) = b(k,243) - lu(k,2863) * b(k,300)
3440 254840160 : b(k,242) = b(k,242) - lu(k,2862) * b(k,300)
3441 254840160 : b(k,240) = b(k,240) - lu(k,2861) * b(k,300)
3442 254840160 : b(k,239) = b(k,239) - lu(k,2860) * b(k,300)
3443 254840160 : b(k,233) = b(k,233) - lu(k,2859) * b(k,300)
3444 254840160 : b(k,203) = b(k,203) - lu(k,2858) * b(k,300)
3445 254840160 : b(k,173) = b(k,173) - lu(k,2857) * b(k,300)
3446 254840160 : b(k,163) = b(k,163) - lu(k,2856) * b(k,300)
3447 263009123 : b(k,147) = b(k,147) - lu(k,2855) * b(k,300)
3448 : end do
3449 8168963 : end subroutine lu_slv15
3450 8168963 : subroutine lu_slv16( avec_len, lu, b )
3451 : use shr_kind_mod, only : r8 => shr_kind_r8
3452 : use chem_mods, only : clscnt4, nzcnt
3453 : implicit none
3454 : !-----------------------------------------------------------------------
3455 : ! ... Dummy args
3456 : !-----------------------------------------------------------------------
3457 : integer, intent(in) :: avec_len
3458 : real(r8), intent(in) :: lu(veclen,max(1,nzcnt))
3459 : real(r8), intent(inout) :: b(veclen,clscnt4)
3460 : !-----------------------------------------------------------------------
3461 : ! ... Local variables
3462 : !-----------------------------------------------------------------------
3463 : integer :: k
3464 : !-----------------------------------------------------------------------
3465 : ! ... solve L * y = b
3466 : !-----------------------------------------------------------------------
3467 263009123 : do k = 1,avec_len
3468 254840160 : b(k,299) = b(k,299) * lu(k,2840)
3469 254840160 : b(k,298) = b(k,298) - lu(k,2839) * b(k,299)
3470 254840160 : b(k,297) = b(k,297) - lu(k,2838) * b(k,299)
3471 254840160 : b(k,296) = b(k,296) - lu(k,2837) * b(k,299)
3472 254840160 : b(k,295) = b(k,295) - lu(k,2836) * b(k,299)
3473 254840160 : b(k,294) = b(k,294) - lu(k,2835) * b(k,299)
3474 254840160 : b(k,293) = b(k,293) - lu(k,2834) * b(k,299)
3475 254840160 : b(k,292) = b(k,292) - lu(k,2833) * b(k,299)
3476 254840160 : b(k,291) = b(k,291) - lu(k,2832) * b(k,299)
3477 254840160 : b(k,290) = b(k,290) - lu(k,2831) * b(k,299)
3478 254840160 : b(k,289) = b(k,289) - lu(k,2830) * b(k,299)
3479 254840160 : b(k,288) = b(k,288) - lu(k,2829) * b(k,299)
3480 254840160 : b(k,287) = b(k,287) - lu(k,2828) * b(k,299)
3481 254840160 : b(k,286) = b(k,286) - lu(k,2827) * b(k,299)
3482 254840160 : b(k,285) = b(k,285) - lu(k,2826) * b(k,299)
3483 254840160 : b(k,284) = b(k,284) - lu(k,2825) * b(k,299)
3484 254840160 : b(k,283) = b(k,283) - lu(k,2824) * b(k,299)
3485 254840160 : b(k,282) = b(k,282) - lu(k,2823) * b(k,299)
3486 254840160 : b(k,281) = b(k,281) - lu(k,2822) * b(k,299)
3487 254840160 : b(k,280) = b(k,280) - lu(k,2821) * b(k,299)
3488 254840160 : b(k,278) = b(k,278) - lu(k,2820) * b(k,299)
3489 254840160 : b(k,277) = b(k,277) - lu(k,2819) * b(k,299)
3490 254840160 : b(k,271) = b(k,271) - lu(k,2818) * b(k,299)
3491 254840160 : b(k,255) = b(k,255) - lu(k,2817) * b(k,299)
3492 254840160 : b(k,253) = b(k,253) - lu(k,2816) * b(k,299)
3493 254840160 : b(k,252) = b(k,252) - lu(k,2815) * b(k,299)
3494 254840160 : b(k,247) = b(k,247) - lu(k,2814) * b(k,299)
3495 254840160 : b(k,244) = b(k,244) - lu(k,2813) * b(k,299)
3496 254840160 : b(k,242) = b(k,242) - lu(k,2812) * b(k,299)
3497 254840160 : b(k,220) = b(k,220) - lu(k,2811) * b(k,299)
3498 254840160 : b(k,203) = b(k,203) - lu(k,2810) * b(k,299)
3499 254840160 : b(k,171) = b(k,171) - lu(k,2809) * b(k,299)
3500 254840160 : b(k,125) = b(k,125) - lu(k,2808) * b(k,299)
3501 254840160 : b(k,298) = b(k,298) * lu(k,2792)
3502 254840160 : b(k,297) = b(k,297) - lu(k,2791) * b(k,298)
3503 254840160 : b(k,296) = b(k,296) - lu(k,2790) * b(k,298)
3504 254840160 : b(k,295) = b(k,295) - lu(k,2789) * b(k,298)
3505 254840160 : b(k,294) = b(k,294) - lu(k,2788) * b(k,298)
3506 254840160 : b(k,293) = b(k,293) - lu(k,2787) * b(k,298)
3507 254840160 : b(k,292) = b(k,292) - lu(k,2786) * b(k,298)
3508 254840160 : b(k,291) = b(k,291) - lu(k,2785) * b(k,298)
3509 254840160 : b(k,290) = b(k,290) - lu(k,2784) * b(k,298)
3510 254840160 : b(k,289) = b(k,289) - lu(k,2783) * b(k,298)
3511 254840160 : b(k,288) = b(k,288) - lu(k,2782) * b(k,298)
3512 254840160 : b(k,287) = b(k,287) - lu(k,2781) * b(k,298)
3513 254840160 : b(k,286) = b(k,286) - lu(k,2780) * b(k,298)
3514 254840160 : b(k,285) = b(k,285) - lu(k,2779) * b(k,298)
3515 254840160 : b(k,284) = b(k,284) - lu(k,2778) * b(k,298)
3516 254840160 : b(k,283) = b(k,283) - lu(k,2777) * b(k,298)
3517 254840160 : b(k,282) = b(k,282) - lu(k,2776) * b(k,298)
3518 254840160 : b(k,281) = b(k,281) - lu(k,2775) * b(k,298)
3519 254840160 : b(k,280) = b(k,280) - lu(k,2774) * b(k,298)
3520 254840160 : b(k,278) = b(k,278) - lu(k,2773) * b(k,298)
3521 254840160 : b(k,277) = b(k,277) - lu(k,2772) * b(k,298)
3522 254840160 : b(k,271) = b(k,271) - lu(k,2771) * b(k,298)
3523 254840160 : b(k,255) = b(k,255) - lu(k,2770) * b(k,298)
3524 254840160 : b(k,253) = b(k,253) - lu(k,2769) * b(k,298)
3525 254840160 : b(k,252) = b(k,252) - lu(k,2768) * b(k,298)
3526 254840160 : b(k,247) = b(k,247) - lu(k,2767) * b(k,298)
3527 254840160 : b(k,244) = b(k,244) - lu(k,2766) * b(k,298)
3528 254840160 : b(k,242) = b(k,242) - lu(k,2765) * b(k,298)
3529 254840160 : b(k,203) = b(k,203) - lu(k,2764) * b(k,298)
3530 254840160 : b(k,158) = b(k,158) - lu(k,2763) * b(k,298)
3531 254840160 : b(k,116) = b(k,116) - lu(k,2762) * b(k,298)
3532 254840160 : b(k,297) = b(k,297) * lu(k,2745)
3533 254840160 : b(k,296) = b(k,296) - lu(k,2744) * b(k,297)
3534 254840160 : b(k,295) = b(k,295) - lu(k,2743) * b(k,297)
3535 254840160 : b(k,294) = b(k,294) - lu(k,2742) * b(k,297)
3536 254840160 : b(k,293) = b(k,293) - lu(k,2741) * b(k,297)
3537 254840160 : b(k,292) = b(k,292) - lu(k,2740) * b(k,297)
3538 254840160 : b(k,291) = b(k,291) - lu(k,2739) * b(k,297)
3539 254840160 : b(k,290) = b(k,290) - lu(k,2738) * b(k,297)
3540 254840160 : b(k,289) = b(k,289) - lu(k,2737) * b(k,297)
3541 254840160 : b(k,288) = b(k,288) - lu(k,2736) * b(k,297)
3542 254840160 : b(k,287) = b(k,287) - lu(k,2735) * b(k,297)
3543 254840160 : b(k,286) = b(k,286) - lu(k,2734) * b(k,297)
3544 254840160 : b(k,285) = b(k,285) - lu(k,2733) * b(k,297)
3545 254840160 : b(k,284) = b(k,284) - lu(k,2732) * b(k,297)
3546 254840160 : b(k,283) = b(k,283) - lu(k,2731) * b(k,297)
3547 254840160 : b(k,282) = b(k,282) - lu(k,2730) * b(k,297)
3548 254840160 : b(k,281) = b(k,281) - lu(k,2729) * b(k,297)
3549 254840160 : b(k,280) = b(k,280) - lu(k,2728) * b(k,297)
3550 254840160 : b(k,278) = b(k,278) - lu(k,2727) * b(k,297)
3551 254840160 : b(k,277) = b(k,277) - lu(k,2726) * b(k,297)
3552 254840160 : b(k,271) = b(k,271) - lu(k,2725) * b(k,297)
3553 254840160 : b(k,255) = b(k,255) - lu(k,2724) * b(k,297)
3554 254840160 : b(k,253) = b(k,253) - lu(k,2723) * b(k,297)
3555 254840160 : b(k,252) = b(k,252) - lu(k,2722) * b(k,297)
3556 254840160 : b(k,247) = b(k,247) - lu(k,2721) * b(k,297)
3557 254840160 : b(k,244) = b(k,244) - lu(k,2720) * b(k,297)
3558 254840160 : b(k,242) = b(k,242) - lu(k,2719) * b(k,297)
3559 254840160 : b(k,203) = b(k,203) - lu(k,2718) * b(k,297)
3560 254840160 : b(k,157) = b(k,157) - lu(k,2717) * b(k,297)
3561 254840160 : b(k,115) = b(k,115) - lu(k,2716) * b(k,297)
3562 254840160 : b(k,296) = b(k,296) * lu(k,2701)
3563 254840160 : b(k,295) = b(k,295) - lu(k,2700) * b(k,296)
3564 254840160 : b(k,294) = b(k,294) - lu(k,2699) * b(k,296)
3565 254840160 : b(k,284) = b(k,284) - lu(k,2698) * b(k,296)
3566 254840160 : b(k,280) = b(k,280) - lu(k,2697) * b(k,296)
3567 254840160 : b(k,278) = b(k,278) - lu(k,2696) * b(k,296)
3568 254840160 : b(k,271) = b(k,271) - lu(k,2695) * b(k,296)
3569 254840160 : b(k,247) = b(k,247) - lu(k,2694) * b(k,296)
3570 254840160 : b(k,242) = b(k,242) - lu(k,2693) * b(k,296)
3571 254840160 : b(k,161) = b(k,161) - lu(k,2692) * b(k,296)
3572 254840160 : b(k,295) = b(k,295) * lu(k,2677)
3573 254840160 : b(k,294) = b(k,294) - lu(k,2676) * b(k,295)
3574 254840160 : b(k,284) = b(k,284) - lu(k,2675) * b(k,295)
3575 254840160 : b(k,271) = b(k,271) - lu(k,2674) * b(k,295)
3576 254840160 : b(k,255) = b(k,255) - lu(k,2673) * b(k,295)
3577 254840160 : b(k,247) = b(k,247) - lu(k,2672) * b(k,295)
3578 254840160 : b(k,244) = b(k,244) - lu(k,2671) * b(k,295)
3579 254840160 : b(k,151) = b(k,151) - lu(k,2670) * b(k,295)
3580 254840160 : b(k,294) = b(k,294) * lu(k,2654)
3581 254840160 : b(k,284) = b(k,284) - lu(k,2653) * b(k,294)
3582 254840160 : b(k,271) = b(k,271) - lu(k,2652) * b(k,294)
3583 254840160 : b(k,247) = b(k,247) - lu(k,2651) * b(k,294)
3584 254840160 : b(k,244) = b(k,244) - lu(k,2650) * b(k,294)
3585 254840160 : b(k,238) = b(k,238) - lu(k,2649) * b(k,294)
3586 254840160 : b(k,220) = b(k,220) - lu(k,2648) * b(k,294)
3587 254840160 : b(k,161) = b(k,161) - lu(k,2647) * b(k,294)
3588 254840160 : b(k,293) = b(k,293) * lu(k,2629)
3589 254840160 : b(k,284) = b(k,284) - lu(k,2628) * b(k,293)
3590 254840160 : b(k,271) = b(k,271) - lu(k,2627) * b(k,293)
3591 254840160 : b(k,255) = b(k,255) - lu(k,2626) * b(k,293)
3592 254840160 : b(k,247) = b(k,247) - lu(k,2625) * b(k,293)
3593 254840160 : b(k,244) = b(k,244) - lu(k,2624) * b(k,293)
3594 254840160 : b(k,237) = b(k,237) - lu(k,2623) * b(k,293)
3595 254840160 : b(k,227) = b(k,227) - lu(k,2622) * b(k,293)
3596 254840160 : b(k,213) = b(k,213) - lu(k,2621) * b(k,293)
3597 254840160 : b(k,192) = b(k,192) - lu(k,2620) * b(k,293)
3598 254840160 : b(k,174) = b(k,174) - lu(k,2619) * b(k,293)
3599 254840160 : b(k,292) = b(k,292) * lu(k,2600)
3600 254840160 : b(k,284) = b(k,284) - lu(k,2599) * b(k,292)
3601 254840160 : b(k,282) = b(k,282) - lu(k,2598) * b(k,292)
3602 254840160 : b(k,271) = b(k,271) - lu(k,2597) * b(k,292)
3603 254840160 : b(k,253) = b(k,253) - lu(k,2596) * b(k,292)
3604 254840160 : b(k,252) = b(k,252) - lu(k,2595) * b(k,292)
3605 254840160 : b(k,247) = b(k,247) - lu(k,2594) * b(k,292)
3606 254840160 : b(k,237) = b(k,237) - lu(k,2593) * b(k,292)
3607 254840160 : b(k,227) = b(k,227) - lu(k,2592) * b(k,292)
3608 254840160 : b(k,213) = b(k,213) - lu(k,2591) * b(k,292)
3609 254840160 : b(k,191) = b(k,191) - lu(k,2590) * b(k,292)
3610 254840160 : b(k,291) = b(k,291) * lu(k,2570)
3611 254840160 : b(k,290) = b(k,290) - lu(k,2569) * b(k,291)
3612 254840160 : b(k,284) = b(k,284) - lu(k,2568) * b(k,291)
3613 254840160 : b(k,280) = b(k,280) - lu(k,2567) * b(k,291)
3614 254840160 : b(k,271) = b(k,271) - lu(k,2566) * b(k,291)
3615 254840160 : b(k,253) = b(k,253) - lu(k,2565) * b(k,291)
3616 254840160 : b(k,252) = b(k,252) - lu(k,2564) * b(k,291)
3617 254840160 : b(k,247) = b(k,247) - lu(k,2563) * b(k,291)
3618 254840160 : b(k,244) = b(k,244) - lu(k,2562) * b(k,291)
3619 254840160 : b(k,242) = b(k,242) - lu(k,2561) * b(k,291)
3620 254840160 : b(k,238) = b(k,238) - lu(k,2560) * b(k,291)
3621 254840160 : b(k,215) = b(k,215) - lu(k,2559) * b(k,291)
3622 254840160 : b(k,214) = b(k,214) - lu(k,2558) * b(k,291)
3623 254840160 : b(k,207) = b(k,207) - lu(k,2557) * b(k,291)
3624 254840160 : b(k,197) = b(k,197) - lu(k,2556) * b(k,291)
3625 254840160 : b(k,172) = b(k,172) - lu(k,2555) * b(k,291)
3626 254840160 : b(k,160) = b(k,160) - lu(k,2554) * b(k,291)
3627 254840160 : b(k,290) = b(k,290) * lu(k,2536)
3628 254840160 : b(k,284) = b(k,284) - lu(k,2535) * b(k,290)
3629 254840160 : b(k,271) = b(k,271) - lu(k,2534) * b(k,290)
3630 254840160 : b(k,255) = b(k,255) - lu(k,2533) * b(k,290)
3631 254840160 : b(k,247) = b(k,247) - lu(k,2532) * b(k,290)
3632 254840160 : b(k,244) = b(k,244) - lu(k,2531) * b(k,290)
3633 254840160 : b(k,242) = b(k,242) - lu(k,2530) * b(k,290)
3634 254840160 : b(k,238) = b(k,238) - lu(k,2529) * b(k,290)
3635 254840160 : b(k,215) = b(k,215) - lu(k,2528) * b(k,290)
3636 254840160 : b(k,207) = b(k,207) - lu(k,2527) * b(k,290)
3637 254840160 : b(k,203) = b(k,203) - lu(k,2526) * b(k,290)
3638 254840160 : b(k,194) = b(k,194) - lu(k,2525) * b(k,290)
3639 254840160 : b(k,289) = b(k,289) * lu(k,2505)
3640 254840160 : b(k,284) = b(k,284) - lu(k,2504) * b(k,289)
3641 254840160 : b(k,271) = b(k,271) - lu(k,2503) * b(k,289)
3642 254840160 : b(k,253) = b(k,253) - lu(k,2502) * b(k,289)
3643 254840160 : b(k,252) = b(k,252) - lu(k,2501) * b(k,289)
3644 254840160 : b(k,247) = b(k,247) - lu(k,2500) * b(k,289)
3645 254840160 : b(k,244) = b(k,244) - lu(k,2499) * b(k,289)
3646 254840160 : b(k,242) = b(k,242) - lu(k,2498) * b(k,289)
3647 254840160 : b(k,238) = b(k,238) - lu(k,2497) * b(k,289)
3648 254840160 : b(k,215) = b(k,215) - lu(k,2496) * b(k,289)
3649 254840160 : b(k,214) = b(k,214) - lu(k,2495) * b(k,289)
3650 254840160 : b(k,207) = b(k,207) - lu(k,2494) * b(k,289)
3651 254840160 : b(k,197) = b(k,197) - lu(k,2493) * b(k,289)
3652 254840160 : b(k,172) = b(k,172) - lu(k,2492) * b(k,289)
3653 254840160 : b(k,160) = b(k,160) - lu(k,2491) * b(k,289)
3654 254840160 : b(k,288) = b(k,288) * lu(k,2471)
3655 254840160 : b(k,284) = b(k,284) - lu(k,2470) * b(k,288)
3656 254840160 : b(k,282) = b(k,282) - lu(k,2469) * b(k,288)
3657 254840160 : b(k,280) = b(k,280) - lu(k,2468) * b(k,288)
3658 254840160 : b(k,271) = b(k,271) - lu(k,2467) * b(k,288)
3659 254840160 : b(k,253) = b(k,253) - lu(k,2466) * b(k,288)
3660 254840160 : b(k,252) = b(k,252) - lu(k,2465) * b(k,288)
3661 254840160 : b(k,247) = b(k,247) - lu(k,2464) * b(k,288)
3662 254840160 : b(k,244) = b(k,244) - lu(k,2463) * b(k,288)
3663 254840160 : b(k,238) = b(k,238) - lu(k,2462) * b(k,288)
3664 254840160 : b(k,196) = b(k,196) - lu(k,2461) * b(k,288)
3665 254840160 : b(k,133) = b(k,133) - lu(k,2460) * b(k,288)
3666 254840160 : b(k,287) = b(k,287) * lu(k,2441)
3667 254840160 : b(k,284) = b(k,284) - lu(k,2440) * b(k,287)
3668 254840160 : b(k,282) = b(k,282) - lu(k,2439) * b(k,287)
3669 254840160 : b(k,280) = b(k,280) - lu(k,2438) * b(k,287)
3670 254840160 : b(k,271) = b(k,271) - lu(k,2437) * b(k,287)
3671 254840160 : b(k,255) = b(k,255) - lu(k,2436) * b(k,287)
3672 254840160 : b(k,253) = b(k,253) - lu(k,2435) * b(k,287)
3673 254840160 : b(k,252) = b(k,252) - lu(k,2434) * b(k,287)
3674 254840160 : b(k,247) = b(k,247) - lu(k,2433) * b(k,287)
3675 254840160 : b(k,244) = b(k,244) - lu(k,2432) * b(k,287)
3676 254840160 : b(k,242) = b(k,242) - lu(k,2431) * b(k,287)
3677 254840160 : b(k,238) = b(k,238) - lu(k,2430) * b(k,287)
3678 254840160 : b(k,203) = b(k,203) - lu(k,2429) * b(k,287)
3679 254840160 : b(k,192) = b(k,192) - lu(k,2428) * b(k,287)
3680 263009123 : b(k,161) = b(k,161) - lu(k,2427) * b(k,287)
3681 : end do
3682 8168963 : end subroutine lu_slv16
3683 8168963 : subroutine lu_slv17( avec_len, lu, b )
3684 : use shr_kind_mod, only : r8 => shr_kind_r8
3685 : use chem_mods, only : clscnt4, nzcnt
3686 : implicit none
3687 : !-----------------------------------------------------------------------
3688 : ! ... Dummy args
3689 : !-----------------------------------------------------------------------
3690 : integer, intent(in) :: avec_len
3691 : real(r8), intent(in) :: lu(veclen,max(1,nzcnt))
3692 : real(r8), intent(inout) :: b(veclen,clscnt4)
3693 : !-----------------------------------------------------------------------
3694 : ! ... Local variables
3695 : !-----------------------------------------------------------------------
3696 : integer :: k
3697 : !-----------------------------------------------------------------------
3698 : ! ... solve L * y = b
3699 : !-----------------------------------------------------------------------
3700 263009123 : do k = 1,avec_len
3701 254840160 : b(k,286) = b(k,286) * lu(k,2408)
3702 254840160 : b(k,284) = b(k,284) - lu(k,2407) * b(k,286)
3703 254840160 : b(k,282) = b(k,282) - lu(k,2406) * b(k,286)
3704 254840160 : b(k,271) = b(k,271) - lu(k,2405) * b(k,286)
3705 254840160 : b(k,247) = b(k,247) - lu(k,2404) * b(k,286)
3706 254840160 : b(k,244) = b(k,244) - lu(k,2403) * b(k,286)
3707 254840160 : b(k,238) = b(k,238) - lu(k,2402) * b(k,286)
3708 254840160 : b(k,196) = b(k,196) - lu(k,2401) * b(k,286)
3709 254840160 : b(k,133) = b(k,133) - lu(k,2400) * b(k,286)
3710 254840160 : b(k,44) = b(k,44) - lu(k,2399) * b(k,286)
3711 254840160 : b(k,285) = b(k,285) * lu(k,2380)
3712 254840160 : b(k,284) = b(k,284) - lu(k,2379) * b(k,285)
3713 254840160 : b(k,282) = b(k,282) - lu(k,2378) * b(k,285)
3714 254840160 : b(k,280) = b(k,280) - lu(k,2377) * b(k,285)
3715 254840160 : b(k,271) = b(k,271) - lu(k,2376) * b(k,285)
3716 254840160 : b(k,255) = b(k,255) - lu(k,2375) * b(k,285)
3717 254840160 : b(k,253) = b(k,253) - lu(k,2374) * b(k,285)
3718 254840160 : b(k,252) = b(k,252) - lu(k,2373) * b(k,285)
3719 254840160 : b(k,247) = b(k,247) - lu(k,2372) * b(k,285)
3720 254840160 : b(k,244) = b(k,244) - lu(k,2371) * b(k,285)
3721 254840160 : b(k,242) = b(k,242) - lu(k,2370) * b(k,285)
3722 254840160 : b(k,203) = b(k,203) - lu(k,2369) * b(k,285)
3723 254840160 : b(k,161) = b(k,161) - lu(k,2368) * b(k,285)
3724 254840160 : b(k,284) = b(k,284) * lu(k,2359)
3725 254840160 : b(k,271) = b(k,271) - lu(k,2358) * b(k,284)
3726 254840160 : b(k,283) = b(k,283) * lu(k,2339)
3727 254840160 : b(k,282) = b(k,282) - lu(k,2338) * b(k,283)
3728 254840160 : b(k,271) = b(k,271) - lu(k,2337) * b(k,283)
3729 254840160 : b(k,253) = b(k,253) - lu(k,2336) * b(k,283)
3730 254840160 : b(k,252) = b(k,252) - lu(k,2335) * b(k,283)
3731 254840160 : b(k,247) = b(k,247) - lu(k,2334) * b(k,283)
3732 254840160 : b(k,238) = b(k,238) - lu(k,2333) * b(k,283)
3733 254840160 : b(k,282) = b(k,282) * lu(k,2320)
3734 254840160 : b(k,271) = b(k,271) - lu(k,2319) * b(k,282)
3735 254840160 : b(k,255) = b(k,255) - lu(k,2318) * b(k,282)
3736 254840160 : b(k,244) = b(k,244) - lu(k,2317) * b(k,282)
3737 254840160 : b(k,192) = b(k,192) - lu(k,2316) * b(k,282)
3738 254840160 : b(k,190) = b(k,190) - lu(k,2315) * b(k,282)
3739 254840160 : b(k,281) = b(k,281) * lu(k,2296)
3740 254840160 : b(k,271) = b(k,271) - lu(k,2295) * b(k,281)
3741 254840160 : b(k,247) = b(k,247) - lu(k,2294) * b(k,281)
3742 254840160 : b(k,244) = b(k,244) - lu(k,2293) * b(k,281)
3743 254840160 : b(k,242) = b(k,242) - lu(k,2292) * b(k,281)
3744 254840160 : b(k,238) = b(k,238) - lu(k,2291) * b(k,281)
3745 254840160 : b(k,215) = b(k,215) - lu(k,2290) * b(k,281)
3746 254840160 : b(k,207) = b(k,207) - lu(k,2289) * b(k,281)
3747 254840160 : b(k,280) = b(k,280) * lu(k,2277)
3748 254840160 : b(k,271) = b(k,271) - lu(k,2276) * b(k,280)
3749 254840160 : b(k,266) = b(k,266) - lu(k,2275) * b(k,280)
3750 254840160 : b(k,258) = b(k,258) - lu(k,2274) * b(k,280)
3751 254840160 : b(k,238) = b(k,238) - lu(k,2273) * b(k,280)
3752 254840160 : b(k,224) = b(k,224) - lu(k,2272) * b(k,280)
3753 254840160 : b(k,279) = b(k,279) * lu(k,2259)
3754 254840160 : b(k,271) = b(k,271) - lu(k,2258) * b(k,279)
3755 254840160 : b(k,251) = b(k,251) - lu(k,2257) * b(k,279)
3756 254840160 : b(k,247) = b(k,247) - lu(k,2256) * b(k,279)
3757 254840160 : b(k,217) = b(k,217) - lu(k,2255) * b(k,279)
3758 254840160 : b(k,107) = b(k,107) - lu(k,2254) * b(k,279)
3759 254840160 : b(k,278) = b(k,278) * lu(k,2235)
3760 254840160 : b(k,271) = b(k,271) - lu(k,2234) * b(k,278)
3761 254840160 : b(k,255) = b(k,255) - lu(k,2233) * b(k,278)
3762 254840160 : b(k,247) = b(k,247) - lu(k,2232) * b(k,278)
3763 254840160 : b(k,242) = b(k,242) - lu(k,2231) * b(k,278)
3764 254840160 : b(k,151) = b(k,151) - lu(k,2230) * b(k,278)
3765 254840160 : b(k,277) = b(k,277) * lu(k,2213)
3766 254840160 : b(k,271) = b(k,271) - lu(k,2212) * b(k,277)
3767 254840160 : b(k,247) = b(k,247) - lu(k,2211) * b(k,277)
3768 254840160 : b(k,238) = b(k,238) - lu(k,2210) * b(k,277)
3769 254840160 : b(k,44) = b(k,44) - lu(k,2209) * b(k,277)
3770 254840160 : b(k,276) = b(k,276) * lu(k,2199)
3771 254840160 : b(k,271) = b(k,271) - lu(k,2198) * b(k,276)
3772 254840160 : b(k,208) = b(k,208) - lu(k,2197) * b(k,276)
3773 254840160 : b(k,275) = b(k,275) * lu(k,2180)
3774 254840160 : b(k,274) = b(k,274) - lu(k,2179) * b(k,275)
3775 254840160 : b(k,273) = b(k,273) - lu(k,2178) * b(k,275)
3776 254840160 : b(k,272) = b(k,272) - lu(k,2177) * b(k,275)
3777 254840160 : b(k,271) = b(k,271) - lu(k,2176) * b(k,275)
3778 254840160 : b(k,270) = b(k,270) - lu(k,2175) * b(k,275)
3779 254840160 : b(k,269) = b(k,269) - lu(k,2174) * b(k,275)
3780 254840160 : b(k,266) = b(k,266) - lu(k,2173) * b(k,275)
3781 254840160 : b(k,265) = b(k,265) - lu(k,2172) * b(k,275)
3782 254840160 : b(k,260) = b(k,260) - lu(k,2171) * b(k,275)
3783 254840160 : b(k,259) = b(k,259) - lu(k,2170) * b(k,275)
3784 254840160 : b(k,258) = b(k,258) - lu(k,2169) * b(k,275)
3785 254840160 : b(k,254) = b(k,254) - lu(k,2168) * b(k,275)
3786 254840160 : b(k,250) = b(k,250) - lu(k,2167) * b(k,275)
3787 254840160 : b(k,249) = b(k,249) - lu(k,2166) * b(k,275)
3788 254840160 : b(k,247) = b(k,247) - lu(k,2165) * b(k,275)
3789 254840160 : b(k,245) = b(k,245) - lu(k,2164) * b(k,275)
3790 254840160 : b(k,238) = b(k,238) - lu(k,2163) * b(k,275)
3791 254840160 : b(k,236) = b(k,236) - lu(k,2162) * b(k,275)
3792 254840160 : b(k,234) = b(k,234) - lu(k,2161) * b(k,275)
3793 254840160 : b(k,232) = b(k,232) - lu(k,2160) * b(k,275)
3794 254840160 : b(k,231) = b(k,231) - lu(k,2159) * b(k,275)
3795 254840160 : b(k,227) = b(k,227) - lu(k,2158) * b(k,275)
3796 254840160 : b(k,222) = b(k,222) - lu(k,2157) * b(k,275)
3797 254840160 : b(k,218) = b(k,218) - lu(k,2156) * b(k,275)
3798 254840160 : b(k,212) = b(k,212) - lu(k,2155) * b(k,275)
3799 254840160 : b(k,166) = b(k,166) - lu(k,2154) * b(k,275)
3800 254840160 : b(k,274) = b(k,274) * lu(k,2140)
3801 254840160 : b(k,271) = b(k,271) - lu(k,2139) * b(k,274)
3802 254840160 : b(k,266) = b(k,266) - lu(k,2138) * b(k,274)
3803 254840160 : b(k,265) = b(k,265) - lu(k,2137) * b(k,274)
3804 254840160 : b(k,263) = b(k,263) - lu(k,2136) * b(k,274)
3805 254840160 : b(k,260) = b(k,260) - lu(k,2135) * b(k,274)
3806 254840160 : b(k,259) = b(k,259) - lu(k,2134) * b(k,274)
3807 254840160 : b(k,258) = b(k,258) - lu(k,2133) * b(k,274)
3808 254840160 : b(k,254) = b(k,254) - lu(k,2132) * b(k,274)
3809 254840160 : b(k,249) = b(k,249) - lu(k,2131) * b(k,274)
3810 254840160 : b(k,247) = b(k,247) - lu(k,2130) * b(k,274)
3811 254840160 : b(k,237) = b(k,237) - lu(k,2129) * b(k,274)
3812 254840160 : b(k,236) = b(k,236) - lu(k,2128) * b(k,274)
3813 254840160 : b(k,235) = b(k,235) - lu(k,2127) * b(k,274)
3814 254840160 : b(k,232) = b(k,232) - lu(k,2126) * b(k,274)
3815 254840160 : b(k,185) = b(k,185) - lu(k,2125) * b(k,274)
3816 254840160 : b(k,273) = b(k,273) * lu(k,2110)
3817 254840160 : b(k,271) = b(k,271) - lu(k,2109) * b(k,273)
3818 254840160 : b(k,266) = b(k,266) - lu(k,2108) * b(k,273)
3819 254840160 : b(k,265) = b(k,265) - lu(k,2107) * b(k,273)
3820 254840160 : b(k,263) = b(k,263) - lu(k,2106) * b(k,273)
3821 254840160 : b(k,260) = b(k,260) - lu(k,2105) * b(k,273)
3822 254840160 : b(k,259) = b(k,259) - lu(k,2104) * b(k,273)
3823 254840160 : b(k,258) = b(k,258) - lu(k,2103) * b(k,273)
3824 254840160 : b(k,254) = b(k,254) - lu(k,2102) * b(k,273)
3825 254840160 : b(k,250) = b(k,250) - lu(k,2101) * b(k,273)
3826 254840160 : b(k,247) = b(k,247) - lu(k,2100) * b(k,273)
3827 254840160 : b(k,241) = b(k,241) - lu(k,2099) * b(k,273)
3828 254840160 : b(k,239) = b(k,239) - lu(k,2098) * b(k,273)
3829 254840160 : b(k,237) = b(k,237) - lu(k,2097) * b(k,273)
3830 254840160 : b(k,235) = b(k,235) - lu(k,2096) * b(k,273)
3831 254840160 : b(k,234) = b(k,234) - lu(k,2095) * b(k,273)
3832 254840160 : b(k,232) = b(k,232) - lu(k,2094) * b(k,273)
3833 254840160 : b(k,206) = b(k,206) - lu(k,2093) * b(k,273)
3834 254840160 : b(k,272) = b(k,272) * lu(k,2078)
3835 254840160 : b(k,271) = b(k,271) - lu(k,2077) * b(k,272)
3836 254840160 : b(k,266) = b(k,266) - lu(k,2076) * b(k,272)
3837 254840160 : b(k,265) = b(k,265) - lu(k,2075) * b(k,272)
3838 254840160 : b(k,263) = b(k,263) - lu(k,2074) * b(k,272)
3839 254840160 : b(k,260) = b(k,260) - lu(k,2073) * b(k,272)
3840 254840160 : b(k,259) = b(k,259) - lu(k,2072) * b(k,272)
3841 254840160 : b(k,258) = b(k,258) - lu(k,2071) * b(k,272)
3842 254840160 : b(k,254) = b(k,254) - lu(k,2070) * b(k,272)
3843 254840160 : b(k,250) = b(k,250) - lu(k,2069) * b(k,272)
3844 254840160 : b(k,247) = b(k,247) - lu(k,2068) * b(k,272)
3845 254840160 : b(k,241) = b(k,241) - lu(k,2067) * b(k,272)
3846 254840160 : b(k,237) = b(k,237) - lu(k,2066) * b(k,272)
3847 254840160 : b(k,236) = b(k,236) - lu(k,2065) * b(k,272)
3848 254840160 : b(k,235) = b(k,235) - lu(k,2064) * b(k,272)
3849 254840160 : b(k,234) = b(k,234) - lu(k,2063) * b(k,272)
3850 254840160 : b(k,233) = b(k,233) - lu(k,2062) * b(k,272)
3851 254840160 : b(k,205) = b(k,205) - lu(k,2061) * b(k,272)
3852 254840160 : b(k,271) = b(k,271) * lu(k,2057)
3853 254840160 : b(k,247) = b(k,247) - lu(k,2056) * b(k,271)
3854 254840160 : b(k,270) = b(k,270) * lu(k,2041)
3855 254840160 : b(k,266) = b(k,266) - lu(k,2040) * b(k,270)
3856 254840160 : b(k,265) = b(k,265) - lu(k,2039) * b(k,270)
3857 254840160 : b(k,258) = b(k,258) - lu(k,2038) * b(k,270)
3858 254840160 : b(k,254) = b(k,254) - lu(k,2037) * b(k,270)
3859 254840160 : b(k,247) = b(k,247) - lu(k,2036) * b(k,270)
3860 254840160 : b(k,240) = b(k,240) - lu(k,2035) * b(k,270)
3861 254840160 : b(k,236) = b(k,236) - lu(k,2034) * b(k,270)
3862 254840160 : b(k,230) = b(k,230) - lu(k,2033) * b(k,270)
3863 254840160 : b(k,228) = b(k,228) - lu(k,2032) * b(k,270)
3864 254840160 : b(k,227) = b(k,227) - lu(k,2031) * b(k,270)
3865 254840160 : b(k,269) = b(k,269) * lu(k,2016)
3866 254840160 : b(k,266) = b(k,266) - lu(k,2015) * b(k,269)
3867 254840160 : b(k,259) = b(k,259) - lu(k,2014) * b(k,269)
3868 254840160 : b(k,258) = b(k,258) - lu(k,2013) * b(k,269)
3869 254840160 : b(k,248) = b(k,248) - lu(k,2012) * b(k,269)
3870 254840160 : b(k,247) = b(k,247) - lu(k,2011) * b(k,269)
3871 254840160 : b(k,243) = b(k,243) - lu(k,2010) * b(k,269)
3872 254840160 : b(k,227) = b(k,227) - lu(k,2009) * b(k,269)
3873 254840160 : b(k,268) = b(k,268) * lu(k,1991)
3874 254840160 : b(k,267) = b(k,267) - lu(k,1990) * b(k,268)
3875 254840160 : b(k,266) = b(k,266) - lu(k,1989) * b(k,268)
3876 254840160 : b(k,265) = b(k,265) - lu(k,1988) * b(k,268)
3877 254840160 : b(k,264) = b(k,264) - lu(k,1987) * b(k,268)
3878 254840160 : b(k,263) = b(k,263) - lu(k,1986) * b(k,268)
3879 254840160 : b(k,261) = b(k,261) - lu(k,1985) * b(k,268)
3880 254840160 : b(k,260) = b(k,260) - lu(k,1984) * b(k,268)
3881 254840160 : b(k,259) = b(k,259) - lu(k,1983) * b(k,268)
3882 254840160 : b(k,258) = b(k,258) - lu(k,1982) * b(k,268)
3883 254840160 : b(k,257) = b(k,257) - lu(k,1981) * b(k,268)
3884 254840160 : b(k,254) = b(k,254) - lu(k,1980) * b(k,268)
3885 254840160 : b(k,250) = b(k,250) - lu(k,1979) * b(k,268)
3886 254840160 : b(k,247) = b(k,247) - lu(k,1978) * b(k,268)
3887 254840160 : b(k,241) = b(k,241) - lu(k,1977) * b(k,268)
3888 254840160 : b(k,238) = b(k,238) - lu(k,1976) * b(k,268)
3889 254840160 : b(k,234) = b(k,234) - lu(k,1975) * b(k,268)
3890 254840160 : b(k,200) = b(k,200) - lu(k,1974) * b(k,268)
3891 254840160 : b(k,186) = b(k,186) - lu(k,1973) * b(k,268)
3892 254840160 : b(k,150) = b(k,150) - lu(k,1972) * b(k,268)
3893 254840160 : b(k,97) = b(k,97) - lu(k,1971) * b(k,268)
3894 254840160 : b(k,96) = b(k,96) - lu(k,1970) * b(k,268)
3895 254840160 : b(k,267) = b(k,267) * lu(k,1953)
3896 254840160 : b(k,266) = b(k,266) - lu(k,1952) * b(k,267)
3897 254840160 : b(k,265) = b(k,265) - lu(k,1951) * b(k,267)
3898 254840160 : b(k,264) = b(k,264) - lu(k,1950) * b(k,267)
3899 254840160 : b(k,263) = b(k,263) - lu(k,1949) * b(k,267)
3900 254840160 : b(k,262) = b(k,262) - lu(k,1948) * b(k,267)
3901 254840160 : b(k,260) = b(k,260) - lu(k,1947) * b(k,267)
3902 254840160 : b(k,259) = b(k,259) - lu(k,1946) * b(k,267)
3903 254840160 : b(k,258) = b(k,258) - lu(k,1945) * b(k,267)
3904 254840160 : b(k,256) = b(k,256) - lu(k,1944) * b(k,267)
3905 254840160 : b(k,254) = b(k,254) - lu(k,1943) * b(k,267)
3906 254840160 : b(k,250) = b(k,250) - lu(k,1942) * b(k,267)
3907 254840160 : b(k,247) = b(k,247) - lu(k,1941) * b(k,267)
3908 254840160 : b(k,241) = b(k,241) - lu(k,1940) * b(k,267)
3909 254840160 : b(k,234) = b(k,234) - lu(k,1939) * b(k,267)
3910 254840160 : b(k,210) = b(k,210) - lu(k,1938) * b(k,267)
3911 254840160 : b(k,186) = b(k,186) - lu(k,1937) * b(k,267)
3912 254840160 : b(k,159) = b(k,159) - lu(k,1936) * b(k,267)
3913 254840160 : b(k,95) = b(k,95) - lu(k,1935) * b(k,267)
3914 263009123 : b(k,94) = b(k,94) - lu(k,1934) * b(k,267)
3915 : end do
3916 8168963 : end subroutine lu_slv17
3917 8168963 : subroutine lu_slv18( avec_len, lu, b )
3918 : use shr_kind_mod, only : r8 => shr_kind_r8
3919 : use chem_mods, only : clscnt4, nzcnt
3920 : implicit none
3921 : !-----------------------------------------------------------------------
3922 : ! ... Dummy args
3923 : !-----------------------------------------------------------------------
3924 : integer, intent(in) :: avec_len
3925 : real(r8), intent(in) :: lu(veclen,max(1,nzcnt))
3926 : real(r8), intent(inout) :: b(veclen,clscnt4)
3927 : !-----------------------------------------------------------------------
3928 : ! ... Local variables
3929 : !-----------------------------------------------------------------------
3930 : integer :: k
3931 : !-----------------------------------------------------------------------
3932 : ! ... solve L * y = b
3933 : !-----------------------------------------------------------------------
3934 263009123 : do k = 1,avec_len
3935 254840160 : b(k,266) = b(k,266) * lu(k,1926)
3936 254840160 : b(k,265) = b(k,265) * lu(k,1916)
3937 254840160 : b(k,254) = b(k,254) - lu(k,1915) * b(k,265)
3938 254840160 : b(k,247) = b(k,247) - lu(k,1914) * b(k,265)
3939 254840160 : b(k,236) = b(k,236) - lu(k,1913) * b(k,265)
3940 254840160 : b(k,232) = b(k,232) - lu(k,1912) * b(k,265)
3941 254840160 : b(k,82) = b(k,82) - lu(k,1911) * b(k,265)
3942 254840160 : b(k,264) = b(k,264) * lu(k,1896)
3943 254840160 : b(k,263) = b(k,263) - lu(k,1895) * b(k,264)
3944 254840160 : b(k,260) = b(k,260) - lu(k,1894) * b(k,264)
3945 254840160 : b(k,258) = b(k,258) - lu(k,1893) * b(k,264)
3946 254840160 : b(k,254) = b(k,254) - lu(k,1892) * b(k,264)
3947 254840160 : b(k,247) = b(k,247) - lu(k,1891) * b(k,264)
3948 254840160 : b(k,241) = b(k,241) - lu(k,1890) * b(k,264)
3949 254840160 : b(k,239) = b(k,239) - lu(k,1889) * b(k,264)
3950 254840160 : b(k,235) = b(k,235) - lu(k,1888) * b(k,264)
3951 254840160 : b(k,233) = b(k,233) - lu(k,1887) * b(k,264)
3952 254840160 : b(k,185) = b(k,185) - lu(k,1886) * b(k,264)
3953 254840160 : b(k,170) = b(k,170) - lu(k,1885) * b(k,264)
3954 254840160 : b(k,140) = b(k,140) - lu(k,1884) * b(k,264)
3955 254840160 : b(k,136) = b(k,136) - lu(k,1883) * b(k,264)
3956 254840160 : b(k,263) = b(k,263) * lu(k,1872)
3957 254840160 : b(k,260) = b(k,260) - lu(k,1871) * b(k,263)
3958 254840160 : b(k,258) = b(k,258) - lu(k,1870) * b(k,263)
3959 254840160 : b(k,254) = b(k,254) - lu(k,1869) * b(k,263)
3960 254840160 : b(k,247) = b(k,247) - lu(k,1868) * b(k,263)
3961 254840160 : b(k,235) = b(k,235) - lu(k,1867) * b(k,263)
3962 254840160 : b(k,221) = b(k,221) - lu(k,1866) * b(k,263)
3963 254840160 : b(k,262) = b(k,262) * lu(k,1848)
3964 254840160 : b(k,258) = b(k,258) - lu(k,1847) * b(k,262)
3965 254840160 : b(k,254) = b(k,254) - lu(k,1846) * b(k,262)
3966 254840160 : b(k,247) = b(k,247) - lu(k,1845) * b(k,262)
3967 254840160 : b(k,240) = b(k,240) - lu(k,1844) * b(k,262)
3968 254840160 : b(k,239) = b(k,239) - lu(k,1843) * b(k,262)
3969 254840160 : b(k,238) = b(k,238) - lu(k,1842) * b(k,262)
3970 254840160 : b(k,227) = b(k,227) - lu(k,1841) * b(k,262)
3971 254840160 : b(k,187) = b(k,187) - lu(k,1840) * b(k,262)
3972 254840160 : b(k,186) = b(k,186) - lu(k,1839) * b(k,262)
3973 254840160 : b(k,185) = b(k,185) - lu(k,1838) * b(k,262)
3974 254840160 : b(k,155) = b(k,155) - lu(k,1837) * b(k,262)
3975 254840160 : b(k,153) = b(k,153) - lu(k,1836) * b(k,262)
3976 254840160 : b(k,136) = b(k,136) - lu(k,1835) * b(k,262)
3977 254840160 : b(k,94) = b(k,94) - lu(k,1834) * b(k,262)
3978 254840160 : b(k,261) = b(k,261) * lu(k,1817)
3979 254840160 : b(k,259) = b(k,259) - lu(k,1816) * b(k,261)
3980 254840160 : b(k,258) = b(k,258) - lu(k,1815) * b(k,261)
3981 254840160 : b(k,254) = b(k,254) - lu(k,1814) * b(k,261)
3982 254840160 : b(k,247) = b(k,247) - lu(k,1813) * b(k,261)
3983 254840160 : b(k,243) = b(k,243) - lu(k,1812) * b(k,261)
3984 254840160 : b(k,238) = b(k,238) - lu(k,1811) * b(k,261)
3985 254840160 : b(k,233) = b(k,233) - lu(k,1810) * b(k,261)
3986 254840160 : b(k,187) = b(k,187) - lu(k,1809) * b(k,261)
3987 254840160 : b(k,186) = b(k,186) - lu(k,1808) * b(k,261)
3988 254840160 : b(k,185) = b(k,185) - lu(k,1807) * b(k,261)
3989 254840160 : b(k,155) = b(k,155) - lu(k,1806) * b(k,261)
3990 254840160 : b(k,154) = b(k,154) - lu(k,1805) * b(k,261)
3991 254840160 : b(k,140) = b(k,140) - lu(k,1804) * b(k,261)
3992 254840160 : b(k,96) = b(k,96) - lu(k,1803) * b(k,261)
3993 254840160 : b(k,260) = b(k,260) * lu(k,1793)
3994 254840160 : b(k,259) = b(k,259) - lu(k,1792) * b(k,260)
3995 254840160 : b(k,258) = b(k,258) - lu(k,1791) * b(k,260)
3996 254840160 : b(k,254) = b(k,254) - lu(k,1790) * b(k,260)
3997 254840160 : b(k,247) = b(k,247) - lu(k,1789) * b(k,260)
3998 254840160 : b(k,239) = b(k,239) - lu(k,1788) * b(k,260)
3999 254840160 : b(k,235) = b(k,235) - lu(k,1787) * b(k,260)
4000 254840160 : b(k,233) = b(k,233) - lu(k,1786) * b(k,260)
4001 254840160 : b(k,259) = b(k,259) * lu(k,1778)
4002 254840160 : b(k,258) = b(k,258) - lu(k,1777) * b(k,259)
4003 254840160 : b(k,236) = b(k,236) - lu(k,1776) * b(k,259)
4004 254840160 : b(k,258) = b(k,258) * lu(k,1770)
4005 254840160 : b(k,257) = b(k,257) * lu(k,1754)
4006 254840160 : b(k,254) = b(k,254) - lu(k,1753) * b(k,257)
4007 254840160 : b(k,247) = b(k,247) - lu(k,1752) * b(k,257)
4008 254840160 : b(k,238) = b(k,238) - lu(k,1751) * b(k,257)
4009 254840160 : b(k,233) = b(k,233) - lu(k,1750) * b(k,257)
4010 254840160 : b(k,186) = b(k,186) - lu(k,1749) * b(k,257)
4011 254840160 : b(k,97) = b(k,97) - lu(k,1748) * b(k,257)
4012 254840160 : b(k,256) = b(k,256) * lu(k,1732)
4013 254840160 : b(k,254) = b(k,254) - lu(k,1731) * b(k,256)
4014 254840160 : b(k,247) = b(k,247) - lu(k,1730) * b(k,256)
4015 254840160 : b(k,239) = b(k,239) - lu(k,1729) * b(k,256)
4016 254840160 : b(k,238) = b(k,238) - lu(k,1728) * b(k,256)
4017 254840160 : b(k,186) = b(k,186) - lu(k,1727) * b(k,256)
4018 254840160 : b(k,95) = b(k,95) - lu(k,1726) * b(k,256)
4019 254840160 : b(k,255) = b(k,255) * lu(k,1718)
4020 254840160 : b(k,254) = b(k,254) * lu(k,1712)
4021 254840160 : b(k,247) = b(k,247) - lu(k,1711) * b(k,254)
4022 254840160 : b(k,235) = b(k,235) - lu(k,1710) * b(k,254)
4023 254840160 : b(k,253) = b(k,253) * lu(k,1702)
4024 254840160 : b(k,244) = b(k,244) - lu(k,1701) * b(k,253)
4025 254840160 : b(k,242) = b(k,242) - lu(k,1700) * b(k,253)
4026 254840160 : b(k,215) = b(k,215) - lu(k,1699) * b(k,253)
4027 254840160 : b(k,192) = b(k,192) - lu(k,1698) * b(k,253)
4028 254840160 : b(k,176) = b(k,176) - lu(k,1697) * b(k,253)
4029 254840160 : b(k,252) = b(k,252) * lu(k,1689)
4030 254840160 : b(k,244) = b(k,244) - lu(k,1688) * b(k,252)
4031 254840160 : b(k,215) = b(k,215) - lu(k,1687) * b(k,252)
4032 254840160 : b(k,192) = b(k,192) - lu(k,1686) * b(k,252)
4033 254840160 : b(k,175) = b(k,175) - lu(k,1685) * b(k,252)
4034 254840160 : b(k,251) = b(k,251) * lu(k,1673)
4035 254840160 : b(k,217) = b(k,217) - lu(k,1672) * b(k,251)
4036 254840160 : b(k,107) = b(k,107) - lu(k,1671) * b(k,251)
4037 254840160 : b(k,250) = b(k,250) * lu(k,1659)
4038 254840160 : b(k,247) = b(k,247) - lu(k,1658) * b(k,250)
4039 254840160 : b(k,235) = b(k,235) - lu(k,1657) * b(k,250)
4040 254840160 : b(k,204) = b(k,204) - lu(k,1656) * b(k,250)
4041 254840160 : b(k,249) = b(k,249) * lu(k,1640)
4042 254840160 : b(k,247) = b(k,247) - lu(k,1639) * b(k,249)
4043 254840160 : b(k,236) = b(k,236) - lu(k,1638) * b(k,249)
4044 254840160 : b(k,235) = b(k,235) - lu(k,1637) * b(k,249)
4045 254840160 : b(k,234) = b(k,234) - lu(k,1636) * b(k,249)
4046 254840160 : b(k,232) = b(k,232) - lu(k,1635) * b(k,249)
4047 254840160 : b(k,204) = b(k,204) - lu(k,1634) * b(k,249)
4048 254840160 : b(k,248) = b(k,248) * lu(k,1620)
4049 254840160 : b(k,247) = b(k,247) - lu(k,1619) * b(k,248)
4050 254840160 : b(k,173) = b(k,173) - lu(k,1618) * b(k,248)
4051 254840160 : b(k,163) = b(k,163) - lu(k,1617) * b(k,248)
4052 254840160 : b(k,141) = b(k,141) - lu(k,1616) * b(k,248)
4053 254840160 : b(k,247) = b(k,247) * lu(k,1613)
4054 254840160 : b(k,246) = b(k,246) * lu(k,1600)
4055 254840160 : b(k,216) = b(k,216) - lu(k,1599) * b(k,246)
4056 254840160 : b(k,143) = b(k,143) - lu(k,1598) * b(k,246)
4057 254840160 : b(k,111) = b(k,111) - lu(k,1597) * b(k,246)
4058 254840160 : b(k,245) = b(k,245) * lu(k,1572)
4059 254840160 : b(k,241) = b(k,241) - lu(k,1571) * b(k,245)
4060 254840160 : b(k,237) = b(k,237) - lu(k,1570) * b(k,245)
4061 254840160 : b(k,236) = b(k,236) - lu(k,1569) * b(k,245)
4062 254840160 : b(k,235) = b(k,235) - lu(k,1568) * b(k,245)
4063 254840160 : b(k,234) = b(k,234) - lu(k,1567) * b(k,245)
4064 254840160 : b(k,232) = b(k,232) - lu(k,1566) * b(k,245)
4065 254840160 : b(k,226) = b(k,226) - lu(k,1565) * b(k,245)
4066 254840160 : b(k,218) = b(k,218) - lu(k,1564) * b(k,245)
4067 254840160 : b(k,187) = b(k,187) - lu(k,1563) * b(k,245)
4068 254840160 : b(k,182) = b(k,182) - lu(k,1562) * b(k,245)
4069 254840160 : b(k,244) = b(k,244) * lu(k,1557)
4070 254840160 : b(k,243) = b(k,243) * lu(k,1543)
4071 254840160 : b(k,233) = b(k,233) - lu(k,1542) * b(k,243)
4072 254840160 : b(k,242) = b(k,242) * lu(k,1536)
4073 254840160 : b(k,241) = b(k,241) * lu(k,1524)
4074 254840160 : b(k,235) = b(k,235) - lu(k,1523) * b(k,241)
4075 254840160 : b(k,221) = b(k,221) - lu(k,1522) * b(k,241)
4076 254840160 : b(k,185) = b(k,185) - lu(k,1521) * b(k,241)
4077 254840160 : b(k,240) = b(k,240) * lu(k,1508)
4078 254840160 : b(k,239) = b(k,239) - lu(k,1507) * b(k,240)
4079 254840160 : b(k,238) = b(k,238) - lu(k,1506) * b(k,240)
4080 254840160 : b(k,239) = b(k,239) * lu(k,1498)
4081 254840160 : b(k,238) = b(k,238) * lu(k,1494)
4082 254840160 : b(k,237) = b(k,237) * lu(k,1487)
4083 254840160 : b(k,236) = b(k,236) * lu(k,1481)
4084 254840160 : b(k,235) = b(k,235) * lu(k,1476)
4085 254840160 : b(k,39) = b(k,39) - lu(k,1475) * b(k,235)
4086 254840160 : b(k,234) = b(k,234) * lu(k,1468)
4087 254840160 : b(k,233) = b(k,233) * lu(k,1461)
4088 254840160 : b(k,232) = b(k,232) * lu(k,1454)
4089 254840160 : b(k,231) = b(k,231) * lu(k,1440)
4090 254840160 : b(k,230) = b(k,230) * lu(k,1431)
4091 254840160 : b(k,229) = b(k,229) * lu(k,1410)
4092 254840160 : b(k,227) = b(k,227) - lu(k,1409) * b(k,229)
4093 254840160 : b(k,213) = b(k,213) - lu(k,1408) * b(k,229)
4094 254840160 : b(k,97) = b(k,97) - lu(k,1407) * b(k,229)
4095 254840160 : b(k,96) = b(k,96) - lu(k,1406) * b(k,229)
4096 254840160 : b(k,95) = b(k,95) - lu(k,1405) * b(k,229)
4097 254840160 : b(k,94) = b(k,94) - lu(k,1404) * b(k,229)
4098 254840160 : b(k,51) = b(k,51) - lu(k,1403) * b(k,229)
4099 254840160 : b(k,43) = b(k,43) - lu(k,1402) * b(k,229)
4100 254840160 : b(k,42) = b(k,42) - lu(k,1401) * b(k,229)
4101 254840160 : b(k,228) = b(k,228) * lu(k,1385)
4102 254840160 : b(k,227) = b(k,227) - lu(k,1384) * b(k,228)
4103 254840160 : b(k,189) = b(k,189) - lu(k,1383) * b(k,228)
4104 254840160 : b(k,173) = b(k,173) - lu(k,1382) * b(k,228)
4105 254840160 : b(k,227) = b(k,227) * lu(k,1377)
4106 254840160 : b(k,226) = b(k,226) * lu(k,1361)
4107 254840160 : b(k,187) = b(k,187) - lu(k,1360) * b(k,226)
4108 254840160 : b(k,182) = b(k,182) - lu(k,1359) * b(k,226)
4109 254840160 : b(k,225) = b(k,225) * lu(k,1350)
4110 254840160 : b(k,114) = b(k,114) - lu(k,1349) * b(k,225)
4111 254840160 : b(k,99) = b(k,99) - lu(k,1348) * b(k,225)
4112 254840160 : b(k,224) = b(k,224) * lu(k,1336)
4113 254840160 : b(k,122) = b(k,122) - lu(k,1335) * b(k,224)
4114 254840160 : b(k,223) = b(k,223) * lu(k,1325)
4115 254840160 : b(k,209) = b(k,209) - lu(k,1324) * b(k,223)
4116 254840160 : b(k,75) = b(k,75) - lu(k,1323) * b(k,223)
4117 254840160 : b(k,222) = b(k,222) * lu(k,1309)
4118 254840160 : b(k,221) = b(k,221) * lu(k,1298)
4119 254840160 : b(k,170) = b(k,170) - lu(k,1297) * b(k,221)
4120 254840160 : b(k,220) = b(k,220) * lu(k,1289)
4121 254840160 : b(k,219) = b(k,219) * lu(k,1272)
4122 254840160 : b(k,171) = b(k,171) - lu(k,1271) * b(k,219)
4123 254840160 : b(k,47) = b(k,47) - lu(k,1270) * b(k,219)
4124 254840160 : b(k,43) = b(k,43) - lu(k,1269) * b(k,219)
4125 254840160 : b(k,42) = b(k,42) - lu(k,1268) * b(k,219)
4126 254840160 : b(k,41) = b(k,41) - lu(k,1267) * b(k,219)
4127 254840160 : b(k,40) = b(k,40) - lu(k,1266) * b(k,219)
4128 254840160 : b(k,39) = b(k,39) - lu(k,1265) * b(k,219)
4129 254840160 : b(k,218) = b(k,218) * lu(k,1252)
4130 254840160 : b(k,185) = b(k,185) - lu(k,1251) * b(k,218)
4131 254840160 : b(k,217) = b(k,217) * lu(k,1242)
4132 254840160 : b(k,107) = b(k,107) - lu(k,1241) * b(k,217)
4133 254840160 : b(k,216) = b(k,216) * lu(k,1235)
4134 254840160 : b(k,98) = b(k,98) - lu(k,1234) * b(k,216)
4135 263009123 : b(k,215) = b(k,215) * lu(k,1228)
4136 : end do
4137 8168963 : end subroutine lu_slv18
4138 8168963 : subroutine lu_slv19( avec_len, lu, b )
4139 : use shr_kind_mod, only : r8 => shr_kind_r8
4140 : use chem_mods, only : clscnt4, nzcnt
4141 : implicit none
4142 : !-----------------------------------------------------------------------
4143 : ! ... Dummy args
4144 : !-----------------------------------------------------------------------
4145 : integer, intent(in) :: avec_len
4146 : real(r8), intent(in) :: lu(veclen,max(1,nzcnt))
4147 : real(r8), intent(inout) :: b(veclen,clscnt4)
4148 : !-----------------------------------------------------------------------
4149 : ! ... Local variables
4150 : !-----------------------------------------------------------------------
4151 : integer :: k
4152 : !-----------------------------------------------------------------------
4153 : ! ... solve L * y = b
4154 : !-----------------------------------------------------------------------
4155 263009123 : do k = 1,avec_len
4156 254840160 : b(k,214) = b(k,214) * lu(k,1218)
4157 254840160 : b(k,194) = b(k,194) - lu(k,1217) * b(k,214)
4158 254840160 : b(k,192) = b(k,192) - lu(k,1216) * b(k,214)
4159 254840160 : b(k,213) = b(k,213) * lu(k,1210)
4160 254840160 : b(k,212) = b(k,212) * lu(k,1194)
4161 254840160 : b(k,185) = b(k,185) - lu(k,1193) * b(k,212)
4162 254840160 : b(k,138) = b(k,138) - lu(k,1192) * b(k,212)
4163 254840160 : b(k,211) = b(k,211) * lu(k,1182)
4164 254840160 : b(k,169) = b(k,169) - lu(k,1181) * b(k,211)
4165 254840160 : b(k,168) = b(k,168) - lu(k,1180) * b(k,211)
4166 254840160 : b(k,165) = b(k,165) - lu(k,1179) * b(k,211)
4167 254840160 : b(k,145) = b(k,145) - lu(k,1178) * b(k,211)
4168 254840160 : b(k,210) = b(k,210) * lu(k,1166)
4169 254840160 : b(k,209) = b(k,209) * lu(k,1159)
4170 254840160 : b(k,75) = b(k,75) - lu(k,1158) * b(k,209)
4171 254840160 : b(k,208) = b(k,208) * lu(k,1150)
4172 254840160 : b(k,207) = b(k,207) * lu(k,1143)
4173 254840160 : b(k,206) = b(k,206) * lu(k,1132)
4174 254840160 : b(k,205) = b(k,205) * lu(k,1121)
4175 254840160 : b(k,204) = b(k,204) * lu(k,1110)
4176 254840160 : b(k,203) = b(k,203) * lu(k,1106)
4177 254840160 : b(k,202) = b(k,202) * lu(k,1092)
4178 254840160 : b(k,81) = b(k,81) - lu(k,1091) * b(k,202)
4179 254840160 : b(k,50) = b(k,50) - lu(k,1090) * b(k,202)
4180 254840160 : b(k,43) = b(k,43) - lu(k,1089) * b(k,202)
4181 254840160 : b(k,42) = b(k,42) - lu(k,1088) * b(k,202)
4182 254840160 : b(k,41) = b(k,41) - lu(k,1087) * b(k,202)
4183 254840160 : b(k,40) = b(k,40) - lu(k,1086) * b(k,202)
4184 254840160 : b(k,39) = b(k,39) - lu(k,1085) * b(k,202)
4185 254840160 : b(k,201) = b(k,201) * lu(k,1071)
4186 254840160 : b(k,171) = b(k,171) - lu(k,1070) * b(k,201)
4187 254840160 : b(k,54) = b(k,54) - lu(k,1069) * b(k,201)
4188 254840160 : b(k,43) = b(k,43) - lu(k,1068) * b(k,201)
4189 254840160 : b(k,42) = b(k,42) - lu(k,1067) * b(k,201)
4190 254840160 : b(k,41) = b(k,41) - lu(k,1066) * b(k,201)
4191 254840160 : b(k,40) = b(k,40) - lu(k,1065) * b(k,201)
4192 254840160 : b(k,39) = b(k,39) - lu(k,1064) * b(k,201)
4193 254840160 : b(k,200) = b(k,200) * lu(k,1054)
4194 254840160 : b(k,199) = b(k,199) * lu(k,1041)
4195 254840160 : b(k,171) = b(k,171) - lu(k,1040) * b(k,199)
4196 254840160 : b(k,48) = b(k,48) - lu(k,1039) * b(k,199)
4197 254840160 : b(k,43) = b(k,43) - lu(k,1038) * b(k,199)
4198 254840160 : b(k,42) = b(k,42) - lu(k,1037) * b(k,199)
4199 254840160 : b(k,41) = b(k,41) - lu(k,1036) * b(k,199)
4200 254840160 : b(k,40) = b(k,40) - lu(k,1035) * b(k,199)
4201 254840160 : b(k,39) = b(k,39) - lu(k,1034) * b(k,199)
4202 254840160 : b(k,198) = b(k,198) * lu(k,1024)
4203 254840160 : b(k,123) = b(k,123) - lu(k,1023) * b(k,198)
4204 254840160 : b(k,197) = b(k,197) * lu(k,1015)
4205 254840160 : b(k,192) = b(k,192) - lu(k,1014) * b(k,197)
4206 254840160 : b(k,196) = b(k,196) * lu(k,1006)
4207 254840160 : b(k,192) = b(k,192) - lu(k,1005) * b(k,196)
4208 254840160 : b(k,161) = b(k,161) - lu(k,1004) * b(k,196)
4209 254840160 : b(k,117) = b(k,117) - lu(k,1003) * b(k,196)
4210 254840160 : b(k,195) = b(k,195) * lu(k,995)
4211 254840160 : b(k,88) = b(k,88) - lu(k,994) * b(k,195)
4212 254840160 : b(k,194) = b(k,194) * lu(k,986)
4213 254840160 : b(k,193) = b(k,193) * lu(k,974)
4214 254840160 : b(k,82) = b(k,82) - lu(k,973) * b(k,193)
4215 254840160 : b(k,192) = b(k,192) * lu(k,969)
4216 254840160 : b(k,191) = b(k,191) * lu(k,960)
4217 254840160 : b(k,190) = b(k,190) * lu(k,951)
4218 254840160 : b(k,161) = b(k,161) - lu(k,950) * b(k,190)
4219 254840160 : b(k,151) = b(k,151) - lu(k,949) * b(k,190)
4220 254840160 : b(k,117) = b(k,117) - lu(k,948) * b(k,190)
4221 254840160 : b(k,189) = b(k,189) * lu(k,939)
4222 254840160 : b(k,148) = b(k,148) - lu(k,938) * b(k,189)
4223 254840160 : b(k,188) = b(k,188) * lu(k,929)
4224 254840160 : b(k,187) = b(k,187) * lu(k,924)
4225 254840160 : b(k,186) = b(k,186) * lu(k,919)
4226 254840160 : b(k,185) = b(k,185) * lu(k,914)
4227 254840160 : b(k,184) = b(k,184) * lu(k,906)
4228 254840160 : b(k,183) = b(k,183) * lu(k,895)
4229 254840160 : b(k,180) = b(k,180) - lu(k,894) * b(k,183)
4230 254840160 : b(k,178) = b(k,178) - lu(k,893) * b(k,183)
4231 254840160 : b(k,132) = b(k,132) - lu(k,892) * b(k,183)
4232 254840160 : b(k,121) = b(k,121) - lu(k,891) * b(k,183)
4233 254840160 : b(k,110) = b(k,110) - lu(k,890) * b(k,183)
4234 254840160 : b(k,103) = b(k,103) - lu(k,889) * b(k,183)
4235 254840160 : b(k,182) = b(k,182) * lu(k,883)
4236 254840160 : b(k,181) = b(k,181) * lu(k,873)
4237 254840160 : b(k,180) = b(k,180) - lu(k,872) * b(k,181)
4238 254840160 : b(k,167) = b(k,167) - lu(k,871) * b(k,181)
4239 254840160 : b(k,132) = b(k,132) - lu(k,870) * b(k,181)
4240 254840160 : b(k,121) = b(k,121) - lu(k,869) * b(k,181)
4241 254840160 : b(k,103) = b(k,103) - lu(k,868) * b(k,181)
4242 254840160 : b(k,180) = b(k,180) * lu(k,862)
4243 254840160 : b(k,179) = b(k,179) * lu(k,855)
4244 254840160 : b(k,101) = b(k,101) - lu(k,854) * b(k,179)
4245 254840160 : b(k,68) = b(k,68) - lu(k,853) * b(k,179)
4246 254840160 : b(k,178) = b(k,178) * lu(k,842)
4247 254840160 : b(k,132) = b(k,132) - lu(k,841) * b(k,178)
4248 254840160 : b(k,121) = b(k,121) - lu(k,840) * b(k,178)
4249 254840160 : b(k,110) = b(k,110) - lu(k,839) * b(k,178)
4250 254840160 : b(k,103) = b(k,103) - lu(k,838) * b(k,178)
4251 254840160 : b(k,177) = b(k,177) * lu(k,827)
4252 254840160 : b(k,55) = b(k,55) - lu(k,826) * b(k,177)
4253 254840160 : b(k,43) = b(k,43) - lu(k,825) * b(k,177)
4254 254840160 : b(k,42) = b(k,42) - lu(k,824) * b(k,177)
4255 254840160 : b(k,41) = b(k,41) - lu(k,823) * b(k,177)
4256 254840160 : b(k,40) = b(k,40) - lu(k,822) * b(k,177)
4257 254840160 : b(k,39) = b(k,39) - lu(k,821) * b(k,177)
4258 254840160 : b(k,176) = b(k,176) * lu(k,813)
4259 254840160 : b(k,175) = b(k,175) * lu(k,805)
4260 254840160 : b(k,174) = b(k,174) * lu(k,797)
4261 254840160 : b(k,151) = b(k,151) - lu(k,796) * b(k,174)
4262 254840160 : b(k,173) = b(k,173) * lu(k,791)
4263 254840160 : b(k,172) = b(k,172) * lu(k,783)
4264 254840160 : b(k,171) = b(k,171) * lu(k,778)
4265 254840160 : b(k,170) = b(k,170) * lu(k,770)
4266 254840160 : b(k,169) = b(k,169) * lu(k,763)
4267 254840160 : b(k,109) = b(k,109) - lu(k,762) * b(k,169)
4268 254840160 : b(k,168) = b(k,168) * lu(k,752)
4269 254840160 : b(k,145) = b(k,145) - lu(k,751) * b(k,168)
4270 254840160 : b(k,167) = b(k,167) * lu(k,741)
4271 254840160 : b(k,132) = b(k,132) - lu(k,740) * b(k,167)
4272 254840160 : b(k,121) = b(k,121) - lu(k,739) * b(k,167)
4273 254840160 : b(k,103) = b(k,103) - lu(k,738) * b(k,167)
4274 254840160 : b(k,166) = b(k,166) * lu(k,728)
4275 254840160 : b(k,165) = b(k,165) * lu(k,718)
4276 254840160 : b(k,145) = b(k,145) - lu(k,717) * b(k,165)
4277 254840160 : b(k,164) = b(k,164) * lu(k,711)
4278 254840160 : b(k,135) = b(k,135) - lu(k,710) * b(k,164)
4279 254840160 : b(k,100) = b(k,100) - lu(k,709) * b(k,164)
4280 254840160 : b(k,163) = b(k,163) * lu(k,702)
4281 254840160 : b(k,162) = b(k,162) * lu(k,693)
4282 254840160 : b(k,161) = b(k,161) * lu(k,689)
4283 254840160 : b(k,160) = b(k,160) * lu(k,682)
4284 254840160 : b(k,159) = b(k,159) * lu(k,673)
4285 254840160 : b(k,158) = b(k,158) * lu(k,664)
4286 254840160 : b(k,157) = b(k,157) * lu(k,655)
4287 254840160 : b(k,156) = b(k,156) * lu(k,646)
4288 254840160 : b(k,155) = b(k,155) * lu(k,639)
4289 254840160 : b(k,154) = b(k,154) * lu(k,626)
4290 254840160 : b(k,153) = b(k,153) * lu(k,613)
4291 254840160 : b(k,152) = b(k,152) * lu(k,605)
4292 254840160 : b(k,151) = b(k,151) * lu(k,601)
4293 254840160 : b(k,150) = b(k,150) * lu(k,593)
4294 254840160 : b(k,149) = b(k,149) * lu(k,585)
4295 254840160 : b(k,148) = b(k,148) * lu(k,577)
4296 254840160 : b(k,147) = b(k,147) * lu(k,569)
4297 254840160 : b(k,146) = b(k,146) * lu(k,561)
4298 254840160 : b(k,145) = b(k,145) * lu(k,556)
4299 254840160 : b(k,144) = b(k,144) * lu(k,550)
4300 254840160 : b(k,70) = b(k,70) - lu(k,549) * b(k,144)
4301 254840160 : b(k,143) = b(k,143) * lu(k,543)
4302 254840160 : b(k,142) = b(k,142) * lu(k,536)
4303 254840160 : b(k,126) = b(k,126) - lu(k,535) * b(k,142)
4304 254840160 : b(k,141) = b(k,141) * lu(k,528)
4305 254840160 : b(k,140) = b(k,140) * lu(k,521)
4306 254840160 : b(k,139) = b(k,139) * lu(k,514)
4307 254840160 : b(k,132) = b(k,132) - lu(k,513) * b(k,139)
4308 254840160 : b(k,124) = b(k,124) - lu(k,512) * b(k,139)
4309 254840160 : b(k,138) = b(k,138) * lu(k,502)
4310 254840160 : b(k,137) = b(k,137) * lu(k,495)
4311 254840160 : b(k,136) = b(k,136) * lu(k,488)
4312 254840160 : b(k,135) = b(k,135) * lu(k,484)
4313 254840160 : b(k,134) = b(k,134) * lu(k,477)
4314 254840160 : b(k,80) = b(k,80) - lu(k,476) * b(k,134)
4315 254840160 : b(k,133) = b(k,133) * lu(k,471)
4316 254840160 : b(k,132) = b(k,132) * lu(k,468)
4317 254840160 : b(k,131) = b(k,131) * lu(k,462)
4318 254840160 : b(k,130) = b(k,130) * lu(k,456)
4319 254840160 : b(k,112) = b(k,112) - lu(k,455) * b(k,130)
4320 254840160 : b(k,129) = b(k,129) * lu(k,449)
4321 254840160 : b(k,128) = b(k,128) * lu(k,443)
4322 254840160 : b(k,127) = b(k,127) * lu(k,437)
4323 254840160 : b(k,113) = b(k,113) - lu(k,436) * b(k,127)
4324 254840160 : b(k,89) = b(k,89) - lu(k,435) * b(k,127)
4325 254840160 : b(k,126) = b(k,126) * lu(k,429)
4326 254840160 : b(k,125) = b(k,125) * lu(k,423)
4327 254840160 : b(k,124) = b(k,124) * lu(k,417)
4328 254840160 : b(k,123) = b(k,123) * lu(k,411)
4329 254840160 : b(k,122) = b(k,122) * lu(k,405)
4330 254840160 : b(k,121) = b(k,121) * lu(k,401)
4331 254840160 : b(k,120) = b(k,120) * lu(k,393)
4332 254840160 : b(k,119) = b(k,119) * lu(k,385)
4333 254840160 : b(k,118) = b(k,118) * lu(k,377)
4334 254840160 : b(k,117) = b(k,117) * lu(k,373)
4335 254840160 : b(k,116) = b(k,116) * lu(k,368)
4336 254840160 : b(k,115) = b(k,115) * lu(k,363)
4337 254840160 : b(k,114) = b(k,114) * lu(k,358)
4338 254840160 : b(k,113) = b(k,113) * lu(k,353)
4339 254840160 : b(k,89) = b(k,89) - lu(k,352) * b(k,113)
4340 254840160 : b(k,112) = b(k,112) * lu(k,347)
4341 254840160 : b(k,111) = b(k,111) * lu(k,342)
4342 254840160 : b(k,110) = b(k,110) * lu(k,337)
4343 254840160 : b(k,109) = b(k,109) * lu(k,332)
4344 254840160 : b(k,108) = b(k,108) * lu(k,326)
4345 254840160 : b(k,90) = b(k,90) - lu(k,325) * b(k,108)
4346 254840160 : b(k,107) = b(k,107) * lu(k,322)
4347 254840160 : b(k,106) = b(k,106) * lu(k,316)
4348 254840160 : b(k,105) = b(k,105) * lu(k,310)
4349 254840160 : b(k,104) = b(k,104) * lu(k,304)
4350 254840160 : b(k,103) = b(k,103) * lu(k,301)
4351 254840160 : b(k,102) = b(k,102) * lu(k,295)
4352 254840160 : b(k,101) = b(k,101) * lu(k,291)
4353 254840160 : b(k,100) = b(k,100) * lu(k,287)
4354 254840160 : b(k,99) = b(k,99) * lu(k,283)
4355 254840160 : b(k,98) = b(k,98) * lu(k,279)
4356 263009123 : b(k,69) = b(k,69) - lu(k,278) * b(k,98)
4357 : end do
4358 8168963 : end subroutine lu_slv19
4359 8168963 : subroutine lu_slv20( avec_len, lu, b )
4360 : use shr_kind_mod, only : r8 => shr_kind_r8
4361 : use chem_mods, only : clscnt4, nzcnt
4362 : implicit none
4363 : !-----------------------------------------------------------------------
4364 : ! ... Dummy args
4365 : !-----------------------------------------------------------------------
4366 : integer, intent(in) :: avec_len
4367 : real(r8), intent(in) :: lu(veclen,max(1,nzcnt))
4368 : real(r8), intent(inout) :: b(veclen,clscnt4)
4369 : !-----------------------------------------------------------------------
4370 : ! ... Local variables
4371 : !-----------------------------------------------------------------------
4372 : integer :: k
4373 : !-----------------------------------------------------------------------
4374 : ! ... solve L * y = b
4375 : !-----------------------------------------------------------------------
4376 263009123 : do k = 1,avec_len
4377 254840160 : b(k,97) = b(k,97) * lu(k,275)
4378 254840160 : b(k,96) = b(k,96) * lu(k,272)
4379 254840160 : b(k,95) = b(k,95) * lu(k,269)
4380 254840160 : b(k,94) = b(k,94) * lu(k,266)
4381 254840160 : b(k,93) = b(k,93) * lu(k,261)
4382 254840160 : b(k,90) = b(k,90) - lu(k,260) * b(k,93)
4383 254840160 : b(k,92) = b(k,92) * lu(k,256)
4384 254840160 : b(k,91) = b(k,91) * lu(k,251)
4385 254840160 : b(k,90) = b(k,90) * lu(k,248)
4386 254840160 : b(k,89) = b(k,89) * lu(k,245)
4387 254840160 : b(k,88) = b(k,88) * lu(k,242)
4388 254840160 : b(k,87) = b(k,87) * lu(k,237)
4389 254840160 : b(k,86) = b(k,86) * lu(k,229)
4390 254840160 : b(k,85) = b(k,85) - lu(k,228) * b(k,86)
4391 254840160 : b(k,57) = b(k,57) - lu(k,227) * b(k,86)
4392 254840160 : b(k,85) = b(k,85) * lu(k,223)
4393 254840160 : b(k,84) = b(k,84) * lu(k,218)
4394 254840160 : b(k,83) = b(k,83) * lu(k,211)
4395 254840160 : b(k,56) = b(k,56) - lu(k,210) * b(k,83)
4396 254840160 : b(k,82) = b(k,82) * lu(k,207)
4397 254840160 : b(k,81) = b(k,81) * lu(k,204)
4398 254840160 : b(k,80) = b(k,80) * lu(k,201)
4399 254840160 : b(k,79) = b(k,79) * lu(k,197)
4400 254840160 : b(k,78) = b(k,78) * lu(k,192)
4401 254840160 : b(k,77) = b(k,77) * lu(k,188)
4402 254840160 : b(k,76) = b(k,76) * lu(k,182)
4403 254840160 : b(k,49) = b(k,49) - lu(k,181) * b(k,76)
4404 254840160 : b(k,75) = b(k,75) * lu(k,179)
4405 254840160 : b(k,74) = b(k,74) * lu(k,174)
4406 254840160 : b(k,73) = b(k,73) * lu(k,169)
4407 254840160 : b(k,72) = b(k,72) * lu(k,164)
4408 254840160 : b(k,71) = b(k,71) * lu(k,159)
4409 254840160 : b(k,70) = b(k,70) * lu(k,156)
4410 254840160 : b(k,69) = b(k,69) * lu(k,153)
4411 254840160 : b(k,68) = b(k,68) * lu(k,150)
4412 254840160 : b(k,67) = b(k,67) * lu(k,146)
4413 254840160 : b(k,66) = b(k,66) * lu(k,142)
4414 254840160 : b(k,65) = b(k,65) * lu(k,138)
4415 254840160 : b(k,64) = b(k,64) * lu(k,134)
4416 254840160 : b(k,63) = b(k,63) * lu(k,130)
4417 254840160 : b(k,62) = b(k,62) * lu(k,126)
4418 254840160 : b(k,61) = b(k,61) * lu(k,123)
4419 254840160 : b(k,60) = b(k,60) * lu(k,120)
4420 254840160 : b(k,59) = b(k,59) * lu(k,117)
4421 254840160 : b(k,58) = b(k,58) * lu(k,114)
4422 254840160 : b(k,57) = b(k,57) * lu(k,113)
4423 254840160 : b(k,43) = b(k,43) - lu(k,112) * b(k,57)
4424 254840160 : b(k,42) = b(k,42) - lu(k,111) * b(k,57)
4425 254840160 : b(k,41) = b(k,41) - lu(k,110) * b(k,57)
4426 254840160 : b(k,40) = b(k,40) - lu(k,109) * b(k,57)
4427 254840160 : b(k,39) = b(k,39) - lu(k,108) * b(k,57)
4428 254840160 : b(k,56) = b(k,56) * lu(k,107)
4429 254840160 : b(k,43) = b(k,43) - lu(k,106) * b(k,56)
4430 254840160 : b(k,42) = b(k,42) - lu(k,105) * b(k,56)
4431 254840160 : b(k,41) = b(k,41) - lu(k,104) * b(k,56)
4432 254840160 : b(k,40) = b(k,40) - lu(k,103) * b(k,56)
4433 254840160 : b(k,39) = b(k,39) - lu(k,102) * b(k,56)
4434 254840160 : b(k,55) = b(k,55) * lu(k,101)
4435 254840160 : b(k,43) = b(k,43) - lu(k,100) * b(k,55)
4436 254840160 : b(k,42) = b(k,42) - lu(k,99) * b(k,55)
4437 254840160 : b(k,41) = b(k,41) - lu(k,98) * b(k,55)
4438 254840160 : b(k,40) = b(k,40) - lu(k,97) * b(k,55)
4439 254840160 : b(k,39) = b(k,39) - lu(k,96) * b(k,55)
4440 254840160 : b(k,54) = b(k,54) * lu(k,95)
4441 254840160 : b(k,43) = b(k,43) - lu(k,94) * b(k,54)
4442 254840160 : b(k,42) = b(k,42) - lu(k,93) * b(k,54)
4443 254840160 : b(k,41) = b(k,41) - lu(k,92) * b(k,54)
4444 254840160 : b(k,40) = b(k,40) - lu(k,91) * b(k,54)
4445 254840160 : b(k,39) = b(k,39) - lu(k,90) * b(k,54)
4446 254840160 : b(k,53) = b(k,53) * lu(k,89)
4447 254840160 : b(k,52) = b(k,52) - lu(k,88) * b(k,53)
4448 254840160 : b(k,52) = b(k,52) * lu(k,87)
4449 254840160 : b(k,43) = b(k,43) - lu(k,86) * b(k,52)
4450 254840160 : b(k,42) = b(k,42) - lu(k,85) * b(k,52)
4451 254840160 : b(k,41) = b(k,41) - lu(k,84) * b(k,52)
4452 254840160 : b(k,40) = b(k,40) - lu(k,83) * b(k,52)
4453 254840160 : b(k,39) = b(k,39) - lu(k,82) * b(k,52)
4454 254840160 : b(k,51) = b(k,51) * lu(k,81)
4455 254840160 : b(k,43) = b(k,43) - lu(k,80) * b(k,51)
4456 254840160 : b(k,42) = b(k,42) - lu(k,79) * b(k,51)
4457 254840160 : b(k,41) = b(k,41) - lu(k,78) * b(k,51)
4458 254840160 : b(k,40) = b(k,40) - lu(k,77) * b(k,51)
4459 254840160 : b(k,39) = b(k,39) - lu(k,76) * b(k,51)
4460 254840160 : b(k,50) = b(k,50) * lu(k,75)
4461 254840160 : b(k,43) = b(k,43) - lu(k,74) * b(k,50)
4462 254840160 : b(k,42) = b(k,42) - lu(k,73) * b(k,50)
4463 254840160 : b(k,41) = b(k,41) - lu(k,72) * b(k,50)
4464 254840160 : b(k,40) = b(k,40) - lu(k,71) * b(k,50)
4465 254840160 : b(k,39) = b(k,39) - lu(k,70) * b(k,50)
4466 254840160 : b(k,49) = b(k,49) * lu(k,69)
4467 254840160 : b(k,43) = b(k,43) - lu(k,68) * b(k,49)
4468 254840160 : b(k,42) = b(k,42) - lu(k,67) * b(k,49)
4469 254840160 : b(k,41) = b(k,41) - lu(k,66) * b(k,49)
4470 254840160 : b(k,40) = b(k,40) - lu(k,65) * b(k,49)
4471 254840160 : b(k,39) = b(k,39) - lu(k,64) * b(k,49)
4472 254840160 : b(k,48) = b(k,48) * lu(k,63)
4473 254840160 : b(k,43) = b(k,43) - lu(k,62) * b(k,48)
4474 254840160 : b(k,42) = b(k,42) - lu(k,61) * b(k,48)
4475 254840160 : b(k,41) = b(k,41) - lu(k,60) * b(k,48)
4476 254840160 : b(k,40) = b(k,40) - lu(k,59) * b(k,48)
4477 254840160 : b(k,39) = b(k,39) - lu(k,58) * b(k,48)
4478 254840160 : b(k,47) = b(k,47) * lu(k,57)
4479 254840160 : b(k,43) = b(k,43) - lu(k,56) * b(k,47)
4480 254840160 : b(k,42) = b(k,42) - lu(k,55) * b(k,47)
4481 254840160 : b(k,41) = b(k,41) - lu(k,54) * b(k,47)
4482 254840160 : b(k,40) = b(k,40) - lu(k,53) * b(k,47)
4483 254840160 : b(k,39) = b(k,39) - lu(k,52) * b(k,47)
4484 254840160 : b(k,46) = b(k,46) * lu(k,51)
4485 254840160 : b(k,43) = b(k,43) - lu(k,50) * b(k,46)
4486 254840160 : b(k,42) = b(k,42) - lu(k,49) * b(k,46)
4487 254840160 : b(k,41) = b(k,41) - lu(k,48) * b(k,46)
4488 254840160 : b(k,40) = b(k,40) - lu(k,47) * b(k,46)
4489 254840160 : b(k,39) = b(k,39) - lu(k,46) * b(k,46)
4490 254840160 : b(k,45) = b(k,45) * lu(k,45)
4491 254840160 : b(k,44) = b(k,44) * lu(k,44)
4492 254840160 : b(k,43) = b(k,43) * lu(k,43)
4493 254840160 : b(k,42) = b(k,42) * lu(k,42)
4494 254840160 : b(k,41) = b(k,41) * lu(k,41)
4495 254840160 : b(k,40) = b(k,40) * lu(k,40)
4496 254840160 : b(k,39) = b(k,39) * lu(k,39)
4497 254840160 : b(k,38) = b(k,38) * lu(k,38)
4498 254840160 : b(k,37) = b(k,37) * lu(k,37)
4499 254840160 : b(k,36) = b(k,36) * lu(k,36)
4500 254840160 : b(k,35) = b(k,35) * lu(k,35)
4501 254840160 : b(k,34) = b(k,34) * lu(k,34)
4502 254840160 : b(k,33) = b(k,33) * lu(k,33)
4503 254840160 : b(k,32) = b(k,32) * lu(k,32)
4504 254840160 : b(k,31) = b(k,31) * lu(k,31)
4505 254840160 : b(k,30) = b(k,30) * lu(k,30)
4506 254840160 : b(k,29) = b(k,29) * lu(k,29)
4507 254840160 : b(k,28) = b(k,28) * lu(k,28)
4508 254840160 : b(k,27) = b(k,27) * lu(k,27)
4509 254840160 : b(k,26) = b(k,26) * lu(k,26)
4510 254840160 : b(k,25) = b(k,25) * lu(k,25)
4511 254840160 : b(k,24) = b(k,24) * lu(k,24)
4512 254840160 : b(k,23) = b(k,23) * lu(k,23)
4513 254840160 : b(k,22) = b(k,22) * lu(k,22)
4514 254840160 : b(k,21) = b(k,21) * lu(k,21)
4515 254840160 : b(k,20) = b(k,20) * lu(k,20)
4516 254840160 : b(k,19) = b(k,19) * lu(k,19)
4517 254840160 : b(k,18) = b(k,18) * lu(k,18)
4518 254840160 : b(k,17) = b(k,17) * lu(k,17)
4519 254840160 : b(k,16) = b(k,16) * lu(k,16)
4520 254840160 : b(k,15) = b(k,15) * lu(k,15)
4521 254840160 : b(k,14) = b(k,14) * lu(k,14)
4522 254840160 : b(k,13) = b(k,13) * lu(k,13)
4523 254840160 : b(k,12) = b(k,12) * lu(k,12)
4524 254840160 : b(k,11) = b(k,11) * lu(k,11)
4525 254840160 : b(k,10) = b(k,10) * lu(k,10)
4526 254840160 : b(k,9) = b(k,9) * lu(k,9)
4527 254840160 : b(k,8) = b(k,8) * lu(k,8)
4528 254840160 : b(k,7) = b(k,7) * lu(k,7)
4529 254840160 : b(k,6) = b(k,6) * lu(k,6)
4530 254840160 : b(k,5) = b(k,5) * lu(k,5)
4531 254840160 : b(k,4) = b(k,4) * lu(k,4)
4532 254840160 : b(k,3) = b(k,3) * lu(k,3)
4533 254840160 : b(k,2) = b(k,2) * lu(k,2)
4534 263009123 : b(k,1) = b(k,1) * lu(k,1)
4535 : end do
4536 8168963 : end subroutine lu_slv20
4537 8168963 : subroutine lu_slv( avec_len, lu, b )
4538 : use shr_kind_mod, only : r8 => shr_kind_r8
4539 : use chem_mods, only : clscnt4, nzcnt
4540 : implicit none
4541 : !-----------------------------------------------------------------------
4542 : ! ... Dummy args
4543 : !-----------------------------------------------------------------------
4544 : integer, intent(in) :: avec_len
4545 : real(r8), intent(in) :: lu(veclen,max(1,nzcnt))
4546 : real(r8), intent(inout) :: b(veclen,clscnt4)
4547 8168963 : call lu_slv01( avec_len, lu, b )
4548 8168963 : call lu_slv02( avec_len, lu, b )
4549 8168963 : call lu_slv03( avec_len, lu, b )
4550 8168963 : call lu_slv04( avec_len, lu, b )
4551 8168963 : call lu_slv05( avec_len, lu, b )
4552 8168963 : call lu_slv06( avec_len, lu, b )
4553 8168963 : call lu_slv07( avec_len, lu, b )
4554 8168963 : call lu_slv08( avec_len, lu, b )
4555 8168963 : call lu_slv09( avec_len, lu, b )
4556 8168963 : call lu_slv10( avec_len, lu, b )
4557 8168963 : call lu_slv11( avec_len, lu, b )
4558 8168963 : call lu_slv12( avec_len, lu, b )
4559 8168963 : call lu_slv13( avec_len, lu, b )
4560 8168963 : call lu_slv14( avec_len, lu, b )
4561 8168963 : call lu_slv15( avec_len, lu, b )
4562 8168963 : call lu_slv16( avec_len, lu, b )
4563 8168963 : call lu_slv17( avec_len, lu, b )
4564 8168963 : call lu_slv18( avec_len, lu, b )
4565 8168963 : call lu_slv19( avec_len, lu, b )
4566 8168963 : call lu_slv20( avec_len, lu, b )
4567 8168963 : end subroutine lu_slv
4568 : end module mo_lu_solve
|