1 //
2 // BAGEL - Brilliantly Advanced General Electronic Structure Library
3 // Filename: CASPT2_densityqq.cc
4 // Copyright (C) 2014 Toru Shiozaki
5 //
6 // Author: Toru Shiozaki <shiozaki@northwestern.edu>
7 // Maintainer: Shiozaki group
8 //
9 // This file is part of the BAGEL package.
10 //
11 // This program is free software: you can redistribute it and/or modify
12 // it under the terms of the GNU General Public License as published by
13 // the Free Software Foundation, either version 3 of the License, or
14 // (at your option) any later version.
15 //
16 // This program is distributed in the hope that it will be useful,
17 // but WITHOUT ANY WARRANTY; without even the implied warranty of
18 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
19 // GNU General Public License for more details.
20 //
21 // You should have received a copy of the GNU General Public License
22 // along with this program.  If not, see <http://www.gnu.org/licenses/>.
23 //
24 
25 #include <bagel_config.h>
26 #ifdef COMPILE_SMITH
27 
28 
29 #include <src/smith/caspt2/CASPT2.h>
30 #include <src/smith/caspt2/CASPT2_tasks.h>
31 
32 using namespace std;
33 using namespace bagel;
34 using namespace bagel::SMITH;
35 
make_densityq(const bool reset,const bool diagonal)36 shared_ptr<Queue> CASPT2::CASPT2::make_densityq(const bool reset, const bool diagonal) {
37 
38   array<shared_ptr<const IndexRange>,3> pindex = {{rclosed_, ractive_, rvirt_}};
39   auto densityq = make_shared<Queue>();
40   auto tensor265 = vector<shared_ptr<Tensor>>{den2};
41   auto task265 = make_shared<Task265>(tensor265, reset);
42   densityq->add_task(task265);
43 
44   vector<IndexRange> I360_index = {active_, active_};
45   auto I360 = make_shared<Tensor>(I360_index);
46   auto tensor266 = vector<shared_ptr<Tensor>>{den2, I360};
47   auto task266 = make_shared<Task266>(tensor266, pindex);
48   task266->add_dep(task265);
49   densityq->add_task(task266);
50 
51   vector<IndexRange> I361_index = {active_, active_, active_, active_};
52   auto I361 = make_shared<Tensor>(I361_index);
53   auto tensor267 = vector<shared_ptr<Tensor>>{I360, Gamma138_(), I361};
54   auto task267 = make_shared<Task267>(tensor267, pindex);
55   task266->add_dep(task267);
56   task267->add_dep(task265);
57   densityq->add_task(task267);
58 
59   auto tensor268 = vector<shared_ptr<Tensor>>{I361, t2};
60   auto task268 = make_shared<Task268>(tensor268, pindex);
61   task267->add_dep(task268);
62   task268->add_dep(task265);
63   densityq->add_task(task268);
64 
65   vector<IndexRange> I454_index = {active_, active_, active_, active_};
66   auto I454 = make_shared<Tensor>(I454_index);
67   auto tensor269 = vector<shared_ptr<Tensor>>{I360, Gamma169_(), I454};
68   auto task269 = make_shared<Task269>(tensor269, pindex);
69   task266->add_dep(task269);
70   task269->add_dep(task265);
71   densityq->add_task(task269);
72 
73   auto tensor270 = vector<shared_ptr<Tensor>>{I454, t2};
74   auto task270 = make_shared<Task270>(tensor270, pindex);
75   task269->add_dep(task270);
76   task270->add_dep(task265);
77   densityq->add_task(task270);
78 
79   vector<IndexRange> I463_index = {active_, active_, active_, active_};
80   auto I463 = make_shared<Tensor>(I463_index);
81   auto tensor271 = vector<shared_ptr<Tensor>>{I360, Gamma172_(), I463};
82   auto task271 = make_shared<Task271>(tensor271, pindex);
83   task266->add_dep(task271);
84   task271->add_dep(task265);
85   densityq->add_task(task271);
86 
87   auto tensor272 = vector<shared_ptr<Tensor>>{I463, t2};
88   auto task272 = make_shared<Task272>(tensor272, pindex);
89   task271->add_dep(task272);
90   task272->add_dep(task265);
91   densityq->add_task(task272);
92 
93   vector<IndexRange> I497_index = {active_, virt_, closed_, active_};
94   auto I497 = make_shared<Tensor>(I497_index);
95   auto tensor273 = vector<shared_ptr<Tensor>>{I463, t2, I497};
96   auto task273 = make_shared<Task273>(tensor273, pindex);
97   task271->add_dep(task273);
98   task273->add_dep(task265);
99   densityq->add_task(task273);
100 
101   auto tensor274 = vector<shared_ptr<Tensor>>{I497, t2};
102   auto task274 = make_shared<Task274>(tensor274, pindex);
103   task273->add_dep(task274);
104   task274->add_dep(task265);
105   densityq->add_task(task274);
106 
107   vector<IndexRange> I645_index = {active_, active_, active_, active_};
108   auto I645 = make_shared<Tensor>(I645_index);
109   auto tensor275 = vector<shared_ptr<Tensor>>{I360, Gamma230_(), I645};
110   auto task275 = make_shared<Task275>(tensor275, pindex);
111   task266->add_dep(task275);
112   task275->add_dep(task265);
113   densityq->add_task(task275);
114 
115   auto tensor276 = vector<shared_ptr<Tensor>>{I645, t2};
116   auto task276 = make_shared<Task276>(tensor276, pindex);
117   task275->add_dep(task276);
118   task276->add_dep(task265);
119   densityq->add_task(task276);
120 
121   vector<IndexRange> I363_index = {closed_, closed_};
122   auto I363 = make_shared<Tensor>(I363_index);
123   auto tensor277 = vector<shared_ptr<Tensor>>{den2, I363};
124   auto task277 = make_shared<Task277>(tensor277, pindex);
125   task277->add_dep(task265);
126   densityq->add_task(task277);
127 
128   vector<IndexRange> I364_index = {closed_, closed_, active_, active_};
129   auto I364 = make_shared<Tensor>(I364_index);
130   auto tensor278 = vector<shared_ptr<Tensor>>{I363, t2, I364};
131   auto task278 = make_shared<Task278>(tensor278, pindex);
132   task277->add_dep(task278);
133   task278->add_dep(task265);
134   densityq->add_task(task278);
135 
136   auto tensor279 = vector<shared_ptr<Tensor>>{I364, Gamma92_(), t2};
137   auto task279 = make_shared<Task279>(tensor279, pindex);
138   task278->add_dep(task279);
139   task279->add_dep(task265);
140   densityq->add_task(task279);
141 
142   vector<IndexRange> I457_index = {closed_, virt_, active_, active_};
143   auto I457 = make_shared<Tensor>(I457_index);
144   auto tensor280 = vector<shared_ptr<Tensor>>{I363, t2, I457};
145   auto task280 = make_shared<Task280>(tensor280, pindex);
146   task277->add_dep(task280);
147   task280->add_dep(task265);
148   densityq->add_task(task280);
149 
150   auto tensor281 = vector<shared_ptr<Tensor>>{I457, Gamma32_(), t2};
151   auto task281 = make_shared<Task281>(tensor281, pindex);
152   task280->add_dep(task281);
153   task281->add_dep(task265);
154   densityq->add_task(task281);
155 
156   vector<IndexRange> I466_index = {closed_, virt_, active_, active_};
157   auto I466 = make_shared<Tensor>(I466_index);
158   auto tensor282 = vector<shared_ptr<Tensor>>{I363, t2, I466};
159   auto task282 = make_shared<Task282>(tensor282, pindex);
160   task277->add_dep(task282);
161   task282->add_dep(task265);
162   densityq->add_task(task282);
163 
164   auto tensor283 = vector<shared_ptr<Tensor>>{I466, Gamma35_(), t2};
165   auto task283 = make_shared<Task283>(tensor283, pindex);
166   task282->add_dep(task283);
167   task283->add_dep(task265);
168   densityq->add_task(task283);
169 
170   vector<IndexRange> I366_index = {active_, closed_};
171   auto I366 = make_shared<Tensor>(I366_index);
172   auto tensor284 = vector<shared_ptr<Tensor>>{den2, I366};
173   auto task284 = make_shared<Task284>(tensor284, pindex);
174   task284->add_dep(task265);
175   densityq->add_task(task284);
176 
177   vector<IndexRange> I367_index = {closed_, active_, active_, active_};
178   auto I367 = make_shared<Tensor>(I367_index);
179   auto tensor285 = vector<shared_ptr<Tensor>>{I366, t2, I367};
180   auto task285 = make_shared<Task285>(tensor285, pindex);
181   task284->add_dep(task285);
182   task285->add_dep(task265);
183   densityq->add_task(task285);
184 
185   auto tensor286 = vector<shared_ptr<Tensor>>{I367, Gamma2_(), t2};
186   auto task286 = make_shared<Task286>(tensor286, pindex);
187   task285->add_dep(task286);
188   task286->add_dep(task265);
189   densityq->add_task(task286);
190 
191   vector<IndexRange> I472_index = {virt_, active_, active_, active_};
192   auto I472 = make_shared<Tensor>(I472_index);
193   auto tensor287 = vector<shared_ptr<Tensor>>{I366, t2, I472};
194   auto task287 = make_shared<Task287>(tensor287, pindex);
195   task284->add_dep(task287);
196   task287->add_dep(task265);
197   densityq->add_task(task287);
198 
199   auto tensor288 = vector<shared_ptr<Tensor>>{I472, Gamma37_(), t2};
200   auto task288 = make_shared<Task288>(tensor288, pindex);
201   task287->add_dep(task288);
202   task288->add_dep(task265);
203   densityq->add_task(task288);
204 
205   vector<IndexRange> I369_index = {active_, virt_};
206   auto I369 = make_shared<Tensor>(I369_index);
207   auto tensor289 = vector<shared_ptr<Tensor>>{den2, I369};
208   auto task289 = make_shared<Task289>(tensor289, pindex);
209   task289->add_dep(task265);
210   densityq->add_task(task289);
211 
212   vector<IndexRange> I370_index = {closed_, closed_, active_, active_};
213   auto I370 = make_shared<Tensor>(I370_index);
214   auto tensor290 = vector<shared_ptr<Tensor>>{I369, t2, I370};
215   auto task290 = make_shared<Task290>(tensor290, pindex);
216   task289->add_dep(task290);
217   task290->add_dep(task265);
218   densityq->add_task(task290);
219 
220   auto tensor291 = vector<shared_ptr<Tensor>>{I370, Gamma3_(), t2};
221   auto task291 = make_shared<Task291>(tensor291, pindex);
222   task290->add_dep(task291);
223   task291->add_dep(task265);
224   densityq->add_task(task291);
225 
226   vector<IndexRange> I481_index = {closed_, virt_, active_, active_};
227   auto I481 = make_shared<Tensor>(I481_index);
228   auto tensor292 = vector<shared_ptr<Tensor>>{I369, t2, I481};
229   auto task292 = make_shared<Task292>(tensor292, pindex);
230   task289->add_dep(task292);
231   task292->add_dep(task265);
232   densityq->add_task(task292);
233 
234   auto tensor293 = vector<shared_ptr<Tensor>>{I481, Gamma35_(), t2};
235   auto task293 = make_shared<Task293>(tensor293, pindex);
236   task292->add_dep(task293);
237   task293->add_dep(task265);
238   densityq->add_task(task293);
239 
240   vector<IndexRange> I484_index = {closed_, virt_, active_, active_};
241   auto I484 = make_shared<Tensor>(I484_index);
242   auto tensor294 = vector<shared_ptr<Tensor>>{I369, t2, I484};
243   auto task294 = make_shared<Task294>(tensor294, pindex);
244   task289->add_dep(task294);
245   task294->add_dep(task265);
246   densityq->add_task(task294);
247 
248   auto tensor295 = vector<shared_ptr<Tensor>>{I484, Gamma32_(), t2};
249   auto task295 = make_shared<Task295>(tensor295, pindex);
250   task294->add_dep(task295);
251   task295->add_dep(task265);
252   densityq->add_task(task295);
253 
254   vector<IndexRange> I523_index = {virt_, closed_, active_, active_};
255   auto I523 = make_shared<Tensor>(I523_index);
256   auto tensor296 = vector<shared_ptr<Tensor>>{I369, t2, I523};
257   auto task296 = make_shared<Task296>(tensor296, pindex);
258   task289->add_dep(task296);
259   task296->add_dep(task265);
260   densityq->add_task(task296);
261 
262   auto tensor297 = vector<shared_ptr<Tensor>>{I523, Gamma35_(), t2};
263   auto task297 = make_shared<Task297>(tensor297, pindex);
264   task296->add_dep(task297);
265   task297->add_dep(task265);
266   densityq->add_task(task297);
267 
268   vector<IndexRange> I526_index = {virt_, closed_, active_, active_};
269   auto I526 = make_shared<Tensor>(I526_index);
270   auto tensor298 = vector<shared_ptr<Tensor>>{I369, t2, I526};
271   auto task298 = make_shared<Task298>(tensor298, pindex);
272   task289->add_dep(task298);
273   task298->add_dep(task265);
274   densityq->add_task(task298);
275 
276   auto tensor299 = vector<shared_ptr<Tensor>>{I526, Gamma35_(), t2};
277   auto task299 = make_shared<Task299>(tensor299, pindex);
278   task298->add_dep(task299);
279   task299->add_dep(task265);
280   densityq->add_task(task299);
281 
282   vector<IndexRange> I372_index = {active_, closed_};
283   auto I372 = make_shared<Tensor>(I372_index);
284   auto tensor300 = vector<shared_ptr<Tensor>>{den2, I372};
285   auto task300 = make_shared<Task300>(tensor300, pindex);
286   task300->add_dep(task265);
287   densityq->add_task(task300);
288 
289   vector<IndexRange> I373_index = {closed_, active_, active_, active_};
290   auto I373 = make_shared<Tensor>(I373_index);
291   auto tensor301 = vector<shared_ptr<Tensor>>{I372, t2, I373};
292   auto task301 = make_shared<Task301>(tensor301, pindex);
293   task300->add_dep(task301);
294   task301->add_dep(task265);
295   densityq->add_task(task301);
296 
297   auto tensor302 = vector<shared_ptr<Tensor>>{I373, Gamma4_(), t2};
298   auto task302 = make_shared<Task302>(tensor302, pindex);
299   task301->add_dep(task302);
300   task302->add_dep(task265);
301   densityq->add_task(task302);
302 
303   vector<IndexRange> I529_index = {virt_, active_, active_, active_};
304   auto I529 = make_shared<Tensor>(I529_index);
305   auto tensor303 = vector<shared_ptr<Tensor>>{I372, t2, I529};
306   auto task303 = make_shared<Task303>(tensor303, pindex);
307   task300->add_dep(task303);
308   task303->add_dep(task265);
309   densityq->add_task(task303);
310 
311   auto tensor304 = vector<shared_ptr<Tensor>>{I529, Gamma56_(), t2};
312   auto task304 = make_shared<Task304>(tensor304, pindex);
313   task303->add_dep(task304);
314   task304->add_dep(task265);
315   densityq->add_task(task304);
316 
317   vector<IndexRange> I532_index = {virt_, active_, active_, active_};
318   auto I532 = make_shared<Tensor>(I532_index);
319   auto tensor305 = vector<shared_ptr<Tensor>>{I372, t2, I532};
320   auto task305 = make_shared<Task305>(tensor305, pindex);
321   task300->add_dep(task305);
322   task305->add_dep(task265);
323   densityq->add_task(task305);
324 
325   auto tensor306 = vector<shared_ptr<Tensor>>{I532, Gamma57_(), t2};
326   auto task306 = make_shared<Task306>(tensor306, pindex);
327   task305->add_dep(task306);
328   task306->add_dep(task265);
329   densityq->add_task(task306);
330 
331   vector<IndexRange> I375_index = {active_, active_};
332   auto I375 = make_shared<Tensor>(I375_index);
333   auto tensor307 = vector<shared_ptr<Tensor>>{den2, I375};
334   auto task307 = make_shared<Task307>(tensor307, pindex);
335   task307->add_dep(task265);
336   densityq->add_task(task307);
337 
338   vector<IndexRange> I376_index = {active_, active_, active_, active_, active_, active_};
339   auto I376 = make_shared<Tensor>(I376_index);
340   auto tensor308 = vector<shared_ptr<Tensor>>{I375, Gamma143_(), I376};
341   auto task308 = make_shared<Task308>(tensor308, pindex);
342   task307->add_dep(task308);
343   task308->add_dep(task265);
344   densityq->add_task(task308);
345 
346   auto tensor309 = vector<shared_ptr<Tensor>>{I376, t2};
347   auto task309 = make_shared<Task309>(tensor309, pindex);
348   task308->add_dep(task309);
349   task309->add_dep(task265);
350   densityq->add_task(task309);
351 
352   vector<IndexRange> I535_index = {active_, active_, active_, active_, active_, active_};
353   auto I535 = make_shared<Tensor>(I535_index);
354   auto tensor310 = vector<shared_ptr<Tensor>>{I375, Gamma196_(), I535};
355   auto task310 = make_shared<Task310>(tensor310, pindex);
356   task307->add_dep(task310);
357   task310->add_dep(task265);
358   densityq->add_task(task310);
359 
360   auto tensor311 = vector<shared_ptr<Tensor>>{I535, t2};
361   auto task311 = make_shared<Task311>(tensor311, pindex);
362   task310->add_dep(task311);
363   task311->add_dep(task265);
364   densityq->add_task(task311);
365 
366   vector<IndexRange> I378_index = {closed_, closed_};
367   auto I378 = make_shared<Tensor>(I378_index);
368   auto tensor312 = vector<shared_ptr<Tensor>>{den2, I378};
369   auto task312 = make_shared<Task312>(tensor312, pindex);
370   task312->add_dep(task265);
371   densityq->add_task(task312);
372 
373   vector<IndexRange> I379_index = {closed_, active_, active_, active_};
374   auto I379 = make_shared<Tensor>(I379_index);
375   auto tensor313 = vector<shared_ptr<Tensor>>{I378, t2, I379};
376   auto task313 = make_shared<Task313>(tensor313, pindex);
377   task312->add_dep(task313);
378   task313->add_dep(task265);
379   densityq->add_task(task313);
380 
381   auto tensor314 = vector<shared_ptr<Tensor>>{I379, Gamma6_(), t2};
382   auto task314 = make_shared<Task314>(tensor314, pindex);
383   task313->add_dep(task314);
384   task314->add_dep(task265);
385   densityq->add_task(task314);
386 
387   vector<IndexRange> I381_index = {closed_, virt_};
388   auto I381 = make_shared<Tensor>(I381_index);
389   auto tensor315 = vector<shared_ptr<Tensor>>{den2, I381};
390   auto task315 = make_shared<Task315>(tensor315, pindex);
391   task315->add_dep(task265);
392   densityq->add_task(task315);
393 
394   vector<IndexRange> I382_index = {closed_, active_};
395   auto I382 = make_shared<Tensor>(I382_index);
396   auto tensor316 = vector<shared_ptr<Tensor>>{I381, t2, I382};
397   auto task316 = make_shared<Task316>(tensor316, pindex);
398   task315->add_dep(task316);
399   task316->add_dep(task265);
400   densityq->add_task(task316);
401 
402   auto tensor317 = vector<shared_ptr<Tensor>>{I382, Gamma7_(), t2};
403   auto task317 = make_shared<Task317>(tensor317, pindex);
404   task316->add_dep(task317);
405   task317->add_dep(task265);
406   densityq->add_task(task317);
407 
408   vector<IndexRange> I385_index = {closed_, active_};
409   auto I385 = make_shared<Tensor>(I385_index);
410   auto tensor318 = vector<shared_ptr<Tensor>>{I381, t2, I385};
411   auto task318 = make_shared<Task318>(tensor318, pindex);
412   task315->add_dep(task318);
413   task318->add_dep(task265);
414   densityq->add_task(task318);
415 
416   auto tensor319 = vector<shared_ptr<Tensor>>{I385, Gamma7_(), t2};
417   auto task319 = make_shared<Task319>(tensor319, pindex);
418   task318->add_dep(task319);
419   task319->add_dep(task265);
420   densityq->add_task(task319);
421 
422   vector<IndexRange> I541_index = {virt_, active_};
423   auto I541 = make_shared<Tensor>(I541_index);
424   auto tensor320 = vector<shared_ptr<Tensor>>{I381, t2, I541};
425   auto task320 = make_shared<Task320>(tensor320, pindex);
426   task315->add_dep(task320);
427   task320->add_dep(task265);
428   densityq->add_task(task320);
429 
430   auto tensor321 = vector<shared_ptr<Tensor>>{I541, Gamma60_(), t2};
431   auto task321 = make_shared<Task321>(tensor321, pindex);
432   task320->add_dep(task321);
433   task321->add_dep(task265);
434   densityq->add_task(task321);
435 
436   vector<IndexRange> I544_index = {virt_, active_};
437   auto I544 = make_shared<Tensor>(I544_index);
438   auto tensor322 = vector<shared_ptr<Tensor>>{I381, t2, I544};
439   auto task322 = make_shared<Task322>(tensor322, pindex);
440   task315->add_dep(task322);
441   task322->add_dep(task265);
442   densityq->add_task(task322);
443 
444   auto tensor323 = vector<shared_ptr<Tensor>>{I544, Gamma60_(), t2};
445   auto task323 = make_shared<Task323>(tensor323, pindex);
446   task322->add_dep(task323);
447   task323->add_dep(task265);
448   densityq->add_task(task323);
449 
450   vector<IndexRange> I387_index = {active_, virt_};
451   auto I387 = make_shared<Tensor>(I387_index);
452   auto tensor324 = vector<shared_ptr<Tensor>>{den2, I387};
453   auto task324 = make_shared<Task324>(tensor324, pindex);
454   task324->add_dep(task265);
455   densityq->add_task(task324);
456 
457   vector<IndexRange> I388_index = {closed_, active_, active_, active_};
458   auto I388 = make_shared<Tensor>(I388_index);
459   auto tensor325 = vector<shared_ptr<Tensor>>{I387, t2, I388};
460   auto task325 = make_shared<Task325>(tensor325, pindex);
461   task324->add_dep(task325);
462   task325->add_dep(task265);
463   densityq->add_task(task325);
464 
465   auto tensor326 = vector<shared_ptr<Tensor>>{I388, Gamma9_(), t2};
466   auto task326 = make_shared<Task326>(tensor326, pindex);
467   task325->add_dep(task326);
468   task326->add_dep(task265);
469   densityq->add_task(task326);
470 
471   vector<IndexRange> I391_index = {closed_, active_, active_, active_};
472   auto I391 = make_shared<Tensor>(I391_index);
473   auto tensor327 = vector<shared_ptr<Tensor>>{I387, t2, I391};
474   auto task327 = make_shared<Task327>(tensor327, pindex);
475   task324->add_dep(task327);
476   task327->add_dep(task265);
477   densityq->add_task(task327);
478 
479   auto tensor328 = vector<shared_ptr<Tensor>>{I391, Gamma6_(), t2};
480   auto task328 = make_shared<Task328>(tensor328, pindex);
481   task327->add_dep(task328);
482   task328->add_dep(task265);
483   densityq->add_task(task328);
484 
485   vector<IndexRange> I547_index = {virt_, active_, active_, active_};
486   auto I547 = make_shared<Tensor>(I547_index);
487   auto tensor329 = vector<shared_ptr<Tensor>>{I387, t2, I547};
488   auto task329 = make_shared<Task329>(tensor329, pindex);
489   task324->add_dep(task329);
490   task329->add_dep(task265);
491   densityq->add_task(task329);
492 
493   auto tensor330 = vector<shared_ptr<Tensor>>{I547, Gamma59_(), t2};
494   auto task330 = make_shared<Task330>(tensor330, pindex);
495   task329->add_dep(task330);
496   task330->add_dep(task265);
497   densityq->add_task(task330);
498 
499   vector<IndexRange> I393_index = {active_, virt_};
500   auto I393 = make_shared<Tensor>(I393_index);
501   auto tensor331 = vector<shared_ptr<Tensor>>{den2, I393};
502   auto task331 = make_shared<Task331>(tensor331, pindex);
503   task331->add_dep(task265);
504   densityq->add_task(task331);
505 
506   vector<IndexRange> I394_index = {closed_, closed_, active_, active_};
507   auto I394 = make_shared<Tensor>(I394_index);
508   auto tensor332 = vector<shared_ptr<Tensor>>{I393, t2, I394};
509   auto task332 = make_shared<Task332>(tensor332, pindex);
510   task331->add_dep(task332);
511   task332->add_dep(task265);
512   densityq->add_task(task332);
513 
514   auto tensor333 = vector<shared_ptr<Tensor>>{I394, Gamma3_(), t2};
515   auto task333 = make_shared<Task333>(tensor333, pindex);
516   task332->add_dep(task333);
517   task333->add_dep(task265);
518   densityq->add_task(task333);
519 
520   vector<IndexRange> I396_index = {virt_, closed_};
521   auto I396 = make_shared<Tensor>(I396_index);
522   auto tensor334 = vector<shared_ptr<Tensor>>{den2, I396};
523   auto task334 = make_shared<Task334>(tensor334, pindex);
524   task334->add_dep(task265);
525   densityq->add_task(task334);
526 
527   vector<IndexRange> I397_index = {closed_, active_};
528   auto I397 = make_shared<Tensor>(I397_index);
529   auto tensor335 = vector<shared_ptr<Tensor>>{I396, t2, I397};
530   auto task335 = make_shared<Task335>(tensor335, pindex);
531   task334->add_dep(task335);
532   task335->add_dep(task265);
533   densityq->add_task(task335);
534 
535   auto tensor336 = vector<shared_ptr<Tensor>>{I397, Gamma12_(), t2};
536   auto task336 = make_shared<Task336>(tensor336, pindex);
537   task335->add_dep(task336);
538   task336->add_dep(task265);
539   densityq->add_task(task336);
540 
541   vector<IndexRange> I399_index = {closed_, virt_};
542   auto I399 = make_shared<Tensor>(I399_index);
543   auto tensor337 = vector<shared_ptr<Tensor>>{den2, I399};
544   auto task337 = make_shared<Task337>(tensor337, pindex);
545   task337->add_dep(task265);
546   densityq->add_task(task337);
547 
548   vector<IndexRange> I400_index = {closed_, active_};
549   auto I400 = make_shared<Tensor>(I400_index);
550   auto tensor338 = vector<shared_ptr<Tensor>>{I399, t2, I400};
551   auto task338 = make_shared<Task338>(tensor338, pindex);
552   task337->add_dep(task338);
553   task338->add_dep(task265);
554   densityq->add_task(task338);
555 
556   auto tensor339 = vector<shared_ptr<Tensor>>{I400, Gamma12_(), t2};
557   auto task339 = make_shared<Task339>(tensor339, pindex);
558   task338->add_dep(task339);
559   task339->add_dep(task265);
560   densityq->add_task(task339);
561 
562   vector<IndexRange> I556_index = {virt_, closed_};
563   auto I556 = make_shared<Tensor>(I556_index);
564   auto tensor340 = vector<shared_ptr<Tensor>>{I399, t2, I556};
565   auto task340 = make_shared<Task340>(tensor340, pindex);
566   task337->add_dep(task340);
567   task340->add_dep(task265);
568   densityq->add_task(task340);
569 
570   vector<IndexRange> I557_index = {active_, virt_, closed_, active_};
571   auto I557 = make_shared<Tensor>(I557_index);
572   auto tensor341 = vector<shared_ptr<Tensor>>{I556, Gamma38_(), I557};
573   auto task341 = make_shared<Task341>(tensor341, pindex);
574   task340->add_dep(task341);
575   task341->add_dep(task265);
576   densityq->add_task(task341);
577 
578   auto tensor342 = vector<shared_ptr<Tensor>>{I557, t2};
579   auto task342 = make_shared<Task342>(tensor342, pindex);
580   task341->add_dep(task342);
581   task342->add_dep(task265);
582   densityq->add_task(task342);
583 
584   vector<IndexRange> I402_index = {active_, active_};
585   auto I402 = make_shared<Tensor>(I402_index);
586   auto tensor343 = vector<shared_ptr<Tensor>>{den2, I402};
587   auto task343 = make_shared<Task343>(tensor343, pindex);
588   task343->add_dep(task265);
589   densityq->add_task(task343);
590 
591   vector<IndexRange> I403_index = {active_, active_};
592   auto I403 = make_shared<Tensor>(I403_index);
593   auto tensor344 = vector<shared_ptr<Tensor>>{I402, Gamma152_(), I403};
594   auto task344 = make_shared<Task344>(tensor344, pindex);
595   task343->add_dep(task344);
596   task344->add_dep(task265);
597   densityq->add_task(task344);
598 
599   vector<IndexRange> I404_index = {closed_, virt_, closed_, active_};
600   auto I404 = make_shared<Tensor>(I404_index);
601   auto tensor345 = vector<shared_ptr<Tensor>>{I403, t2, I404};
602   auto task345 = make_shared<Task345>(tensor345, pindex);
603   task344->add_dep(task345);
604   task345->add_dep(task265);
605   densityq->add_task(task345);
606 
607   auto tensor346 = vector<shared_ptr<Tensor>>{I404, t2};
608   auto task346 = make_shared<Task346>(tensor346, pindex);
609   task345->add_dep(task346);
610   task346->add_dep(task265);
611   densityq->add_task(task346);
612 
613   vector<IndexRange> I612_index = {active_, active_};
614   auto I612 = make_shared<Tensor>(I612_index);
615   auto tensor347 = vector<shared_ptr<Tensor>>{I402, Gamma60_(), I612};
616   auto task347 = make_shared<Task347>(tensor347, pindex);
617   task343->add_dep(task347);
618   task347->add_dep(task265);
619   densityq->add_task(task347);
620 
621   vector<IndexRange> I613_index = {active_, virt_, closed_, virt_};
622   auto I613 = make_shared<Tensor>(I613_index);
623   auto tensor348 = vector<shared_ptr<Tensor>>{I612, t2, I613};
624   auto task348 = make_shared<Task348>(tensor348, pindex);
625   task347->add_dep(task348);
626   task348->add_dep(task265);
627   densityq->add_task(task348);
628 
629   auto tensor349 = vector<shared_ptr<Tensor>>{I613, t2};
630   auto task349 = make_shared<Task349>(tensor349, pindex);
631   task348->add_dep(task349);
632   task349->add_dep(task265);
633   densityq->add_task(task349);
634 
635   vector<IndexRange> I408_index = {closed_, closed_};
636   auto I408 = make_shared<Tensor>(I408_index);
637   auto tensor350 = vector<shared_ptr<Tensor>>{den2, I408};
638   auto task350 = make_shared<Task350>(tensor350, pindex);
639   task350->add_dep(task265);
640   densityq->add_task(task350);
641 
642   vector<IndexRange> I409_index = {closed_, virt_, closed_, active_};
643   auto I409 = make_shared<Tensor>(I409_index);
644   auto tensor351 = vector<shared_ptr<Tensor>>{I408, t2, I409};
645   auto task351 = make_shared<Task351>(tensor351, pindex);
646   task350->add_dep(task351);
647   task351->add_dep(task265);
648   densityq->add_task(task351);
649 
650   auto tensor352 = vector<shared_ptr<Tensor>>{I409, Gamma16_(), t2};
651   auto task352 = make_shared<Task352>(tensor352, pindex);
652   task351->add_dep(task352);
653   task352->add_dep(task265);
654   densityq->add_task(task352);
655 
656   vector<IndexRange> I412_index = {closed_, virt_, closed_, active_};
657   auto I412 = make_shared<Tensor>(I412_index);
658   auto tensor353 = vector<shared_ptr<Tensor>>{I408, t2, I412};
659   auto task353 = make_shared<Task353>(tensor353, pindex);
660   task350->add_dep(task353);
661   task353->add_dep(task265);
662   densityq->add_task(task353);
663 
664   auto tensor354 = vector<shared_ptr<Tensor>>{I412, Gamma16_(), t2};
665   auto task354 = make_shared<Task354>(tensor354, pindex);
666   task353->add_dep(task354);
667   task354->add_dep(task265);
668   densityq->add_task(task354);
669 
670   vector<IndexRange> I414_index = {closed_, closed_};
671   auto I414 = make_shared<Tensor>(I414_index);
672   auto tensor355 = vector<shared_ptr<Tensor>>{den2, I414};
673   auto task355 = make_shared<Task355>(tensor355, pindex);
674   task355->add_dep(task265);
675   densityq->add_task(task355);
676 
677   vector<IndexRange> I415_index = {closed_, virt_, closed_, active_};
678   auto I415 = make_shared<Tensor>(I415_index);
679   auto tensor356 = vector<shared_ptr<Tensor>>{I414, t2, I415};
680   auto task356 = make_shared<Task356>(tensor356, pindex);
681   task355->add_dep(task356);
682   task356->add_dep(task265);
683   densityq->add_task(task356);
684 
685   auto tensor357 = vector<shared_ptr<Tensor>>{I415, Gamma16_(), t2};
686   auto task357 = make_shared<Task357>(tensor357, pindex);
687   task356->add_dep(task357);
688   task357->add_dep(task265);
689   densityq->add_task(task357);
690 
691   vector<IndexRange> I421_index = {closed_, virt_, closed_, active_};
692   auto I421 = make_shared<Tensor>(I421_index);
693   auto tensor358 = vector<shared_ptr<Tensor>>{I414, t2, I421};
694   auto task358 = make_shared<Task358>(tensor358, pindex);
695   task355->add_dep(task358);
696   task358->add_dep(task265);
697   densityq->add_task(task358);
698 
699   auto tensor359 = vector<shared_ptr<Tensor>>{I421, Gamma16_(), t2};
700   auto task359 = make_shared<Task359>(tensor359, pindex);
701   task358->add_dep(task359);
702   task359->add_dep(task265);
703   densityq->add_task(task359);
704 
705   vector<IndexRange> I417_index = {virt_, virt_};
706   auto I417 = make_shared<Tensor>(I417_index);
707   auto tensor360 = vector<shared_ptr<Tensor>>{den2, I417};
708   auto task360 = make_shared<Task360>(tensor360, pindex);
709   task360->add_dep(task265);
710   densityq->add_task(task360);
711 
712   vector<IndexRange> I418_index = {closed_, virt_, closed_, active_};
713   auto I418 = make_shared<Tensor>(I418_index);
714   auto tensor361 = vector<shared_ptr<Tensor>>{I417, t2, I418};
715   auto task361 = make_shared<Task361>(tensor361, pindex);
716   task360->add_dep(task361);
717   task361->add_dep(task265);
718   densityq->add_task(task361);
719 
720   auto tensor362 = vector<shared_ptr<Tensor>>{I418, Gamma16_(), t2};
721   auto task362 = make_shared<Task362>(tensor362, pindex);
722   task361->add_dep(task362);
723   task362->add_dep(task265);
724   densityq->add_task(task362);
725 
726   vector<IndexRange> I424_index = {closed_, virt_, closed_, active_};
727   auto I424 = make_shared<Tensor>(I424_index);
728   auto tensor363 = vector<shared_ptr<Tensor>>{I417, t2, I424};
729   auto task363 = make_shared<Task363>(tensor363, pindex);
730   task360->add_dep(task363);
731   task363->add_dep(task265);
732   densityq->add_task(task363);
733 
734   auto tensor364 = vector<shared_ptr<Tensor>>{I424, Gamma16_(), t2};
735   auto task364 = make_shared<Task364>(tensor364, pindex);
736   task363->add_dep(task364);
737   task364->add_dep(task265);
738   densityq->add_task(task364);
739 
740   vector<IndexRange> I426_index = {active_, closed_};
741   auto I426 = make_shared<Tensor>(I426_index);
742   auto tensor365 = vector<shared_ptr<Tensor>>{den2, I426};
743   auto task365 = make_shared<Task365>(tensor365, pindex);
744   task365->add_dep(task265);
745   densityq->add_task(task365);
746 
747   vector<IndexRange> I427_index = {virt_, closed_, active_, active_};
748   auto I427 = make_shared<Tensor>(I427_index);
749   auto tensor366 = vector<shared_ptr<Tensor>>{I426, t2, I427};
750   auto task366 = make_shared<Task366>(tensor366, pindex);
751   task365->add_dep(task366);
752   task366->add_dep(task265);
753   densityq->add_task(task366);
754 
755   auto tensor367 = vector<shared_ptr<Tensor>>{I427, Gamma22_(), t2};
756   auto task367 = make_shared<Task367>(tensor367, pindex);
757   task366->add_dep(task367);
758   task367->add_dep(task265);
759   densityq->add_task(task367);
760 
761   auto tensor368 = vector<shared_ptr<Tensor>>{I427, Gamma12_(), t2};
762   auto task368 = make_shared<Task368>(tensor368, pindex);
763   task366->add_dep(task368);
764   task368->add_dep(task265);
765   densityq->add_task(task368);
766 
767   vector<IndexRange> I429_index = {active_, closed_};
768   auto I429 = make_shared<Tensor>(I429_index);
769   auto tensor369 = vector<shared_ptr<Tensor>>{den2, I429};
770   auto task369 = make_shared<Task369>(tensor369, pindex);
771   task369->add_dep(task265);
772   densityq->add_task(task369);
773 
774   vector<IndexRange> I430_index = {virt_, closed_, active_, active_};
775   auto I430 = make_shared<Tensor>(I430_index);
776   auto tensor370 = vector<shared_ptr<Tensor>>{I429, t2, I430};
777   auto task370 = make_shared<Task370>(tensor370, pindex);
778   task369->add_dep(task370);
779   task370->add_dep(task265);
780   densityq->add_task(task370);
781 
782   vector<IndexRange> I431_index = {active_, virt_, closed_, active_};
783   auto I431 = make_shared<Tensor>(I431_index);
784   auto tensor371 = vector<shared_ptr<Tensor>>{I430, Gamma12_(), I431};
785   auto task371 = make_shared<Task371>(tensor371, pindex);
786   task370->add_dep(task371);
787   task371->add_dep(task265);
788   densityq->add_task(task371);
789 
790   auto tensor372 = vector<shared_ptr<Tensor>>{I431, t2};
791   auto task372 = make_shared<Task372>(tensor372, pindex);
792   task371->add_dep(task372);
793   task372->add_dep(task265);
794   densityq->add_task(task372);
795 
796   vector<IndexRange> I438_index = {virt_, active_};
797   auto I438 = make_shared<Tensor>(I438_index);
798   auto tensor373 = vector<shared_ptr<Tensor>>{den2, I438};
799   auto task373 = make_shared<Task373>(tensor373, pindex);
800   task373->add_dep(task265);
801   densityq->add_task(task373);
802 
803   vector<IndexRange> I439_index = {virt_, active_};
804   auto I439 = make_shared<Tensor>(I439_index);
805   auto tensor374 = vector<shared_ptr<Tensor>>{I438, Gamma16_(), I439};
806   auto task374 = make_shared<Task374>(tensor374, pindex);
807   task373->add_dep(task374);
808   task374->add_dep(task265);
809   densityq->add_task(task374);
810 
811   vector<IndexRange> I440_index = {closed_, virt_, closed_, virt_};
812   auto I440 = make_shared<Tensor>(I440_index);
813   auto tensor375 = vector<shared_ptr<Tensor>>{I439, t2, I440};
814   auto task375 = make_shared<Task375>(tensor375, pindex);
815   task374->add_dep(task375);
816   task375->add_dep(task265);
817   densityq->add_task(task375);
818 
819   auto tensor376 = vector<shared_ptr<Tensor>>{I440, t2};
820   auto task376 = make_shared<Task376>(tensor376, pindex);
821   task375->add_dep(task376);
822   task376->add_dep(task265);
823   densityq->add_task(task376);
824 
825   vector<IndexRange> I444_index = {active_, virt_};
826   auto I444 = make_shared<Tensor>(I444_index);
827   auto tensor377 = vector<shared_ptr<Tensor>>{den2, I444};
828   auto task377 = make_shared<Task377>(tensor377, pindex);
829   task377->add_dep(task265);
830   densityq->add_task(task377);
831 
832   vector<IndexRange> I445_index = {closed_, active_, active_, active_};
833   auto I445 = make_shared<Tensor>(I445_index);
834   auto tensor378 = vector<shared_ptr<Tensor>>{I444, t2, I445};
835   auto task378 = make_shared<Task378>(tensor378, pindex);
836   task377->add_dep(task378);
837   task378->add_dep(task265);
838   densityq->add_task(task378);
839 
840   auto tensor379 = vector<shared_ptr<Tensor>>{I445, Gamma28_(), t2};
841   auto task379 = make_shared<Task379>(tensor379, pindex);
842   task378->add_dep(task379);
843   task379->add_dep(task265);
844   densityq->add_task(task379);
845 
846   vector<IndexRange> I447_index = {active_, closed_};
847   auto I447 = make_shared<Tensor>(I447_index);
848   auto tensor380 = vector<shared_ptr<Tensor>>{den2, I447};
849   auto task380 = make_shared<Task380>(tensor380, pindex);
850   task380->add_dep(task265);
851   densityq->add_task(task380);
852 
853   vector<IndexRange> I448_index = {closed_, virt_, active_, active_};
854   auto I448 = make_shared<Tensor>(I448_index);
855   auto tensor381 = vector<shared_ptr<Tensor>>{I447, t2, I448};
856   auto task381 = make_shared<Task381>(tensor381, pindex);
857   task380->add_dep(task381);
858   task381->add_dep(task265);
859   densityq->add_task(task381);
860 
861   auto tensor382 = vector<shared_ptr<Tensor>>{I448, Gamma29_(), t2};
862   auto task382 = make_shared<Task382>(tensor382, pindex);
863   task381->add_dep(task382);
864   task382->add_dep(task265);
865   densityq->add_task(task382);
866 
867   vector<IndexRange> I451_index = {closed_, virt_, active_, active_};
868   auto I451 = make_shared<Tensor>(I451_index);
869   auto tensor383 = vector<shared_ptr<Tensor>>{I447, t2, I451};
870   auto task383 = make_shared<Task383>(tensor383, pindex);
871   task380->add_dep(task383);
872   task383->add_dep(task265);
873   densityq->add_task(task383);
874 
875   auto tensor384 = vector<shared_ptr<Tensor>>{I451, Gamma7_(), t2};
876   auto task384 = make_shared<Task384>(tensor384, pindex);
877   task383->add_dep(task384);
878   task384->add_dep(task265);
879   densityq->add_task(task384);
880 
881   vector<IndexRange> I490_index = {virt_, closed_, active_, active_};
882   auto I490 = make_shared<Tensor>(I490_index);
883   auto tensor385 = vector<shared_ptr<Tensor>>{I447, t2, I490};
884   auto task385 = make_shared<Task385>(tensor385, pindex);
885   task380->add_dep(task385);
886   task385->add_dep(task265);
887   densityq->add_task(task385);
888 
889   auto tensor386 = vector<shared_ptr<Tensor>>{I490, Gamma7_(), t2};
890   auto task386 = make_shared<Task386>(tensor386, pindex);
891   task385->add_dep(task386);
892   task386->add_dep(task265);
893   densityq->add_task(task386);
894 
895   vector<IndexRange> I493_index = {virt_, closed_, active_, active_};
896   auto I493 = make_shared<Tensor>(I493_index);
897   auto tensor387 = vector<shared_ptr<Tensor>>{I447, t2, I493};
898   auto task387 = make_shared<Task387>(tensor387, pindex);
899   task380->add_dep(task387);
900   task387->add_dep(task265);
901   densityq->add_task(task387);
902 
903   auto tensor388 = vector<shared_ptr<Tensor>>{I493, Gamma7_(), t2};
904   auto task388 = make_shared<Task388>(tensor388, pindex);
905   task387->add_dep(task388);
906   task388->add_dep(task265);
907   densityq->add_task(task388);
908 
909   vector<IndexRange> I642_index = {virt_, virt_, active_, active_};
910   auto I642 = make_shared<Tensor>(I642_index);
911   auto tensor389 = vector<shared_ptr<Tensor>>{I447, t2, I642};
912   auto task389 = make_shared<Task389>(tensor389, pindex);
913   task380->add_dep(task389);
914   task389->add_dep(task265);
915   densityq->add_task(task389);
916 
917   auto tensor390 = vector<shared_ptr<Tensor>>{I642, Gamma60_(), t2};
918   auto task390 = make_shared<Task390>(tensor390, pindex);
919   task389->add_dep(task390);
920   task390->add_dep(task265);
921   densityq->add_task(task390);
922 
923   vector<IndexRange> I459_index = {virt_, virt_};
924   auto I459 = make_shared<Tensor>(I459_index);
925   auto tensor391 = vector<shared_ptr<Tensor>>{den2, I459};
926   auto task391 = make_shared<Task391>(tensor391, pindex);
927   task391->add_dep(task265);
928   densityq->add_task(task391);
929 
930   vector<IndexRange> I460_index = {closed_, virt_, active_, active_};
931   auto I460 = make_shared<Tensor>(I460_index);
932   auto tensor392 = vector<shared_ptr<Tensor>>{I459, t2, I460};
933   auto task392 = make_shared<Task392>(tensor392, pindex);
934   task391->add_dep(task392);
935   task392->add_dep(task265);
936   densityq->add_task(task392);
937 
938   auto tensor393 = vector<shared_ptr<Tensor>>{I460, Gamma32_(), t2};
939   auto task393 = make_shared<Task393>(tensor393, pindex);
940   task392->add_dep(task393);
941   task393->add_dep(task265);
942   densityq->add_task(task393);
943 
944   vector<IndexRange> I469_index = {closed_, virt_, active_, active_};
945   auto I469 = make_shared<Tensor>(I469_index);
946   auto tensor394 = vector<shared_ptr<Tensor>>{I459, t2, I469};
947   auto task394 = make_shared<Task394>(tensor394, pindex);
948   task391->add_dep(task394);
949   task394->add_dep(task265);
950   densityq->add_task(task394);
951 
952   auto tensor395 = vector<shared_ptr<Tensor>>{I469, Gamma35_(), t2};
953   auto task395 = make_shared<Task395>(tensor395, pindex);
954   task394->add_dep(task395);
955   task395->add_dep(task265);
956   densityq->add_task(task395);
957 
958   vector<IndexRange> I474_index = {virt_, closed_};
959   auto I474 = make_shared<Tensor>(I474_index);
960   auto tensor396 = vector<shared_ptr<Tensor>>{den2, I474};
961   auto task396 = make_shared<Task396>(tensor396, pindex);
962   task396->add_dep(task265);
963   densityq->add_task(task396);
964 
965   vector<IndexRange> I475_index = {closed_, virt_};
966   auto I475 = make_shared<Tensor>(I475_index);
967   auto tensor397 = vector<shared_ptr<Tensor>>{I474, t2, I475};
968   auto task397 = make_shared<Task397>(tensor397, pindex);
969   task396->add_dep(task397);
970   task397->add_dep(task265);
971   densityq->add_task(task397);
972 
973   auto tensor398 = vector<shared_ptr<Tensor>>{I475, Gamma38_(), t2};
974   auto task398 = make_shared<Task398>(tensor398, pindex);
975   task397->add_dep(task398);
976   task398->add_dep(task265);
977   densityq->add_task(task398);
978 
979   vector<IndexRange> I478_index = {closed_, virt_};
980   auto I478 = make_shared<Tensor>(I478_index);
981   auto tensor399 = vector<shared_ptr<Tensor>>{I474, t2, I478};
982   auto task399 = make_shared<Task399>(tensor399, pindex);
983   task396->add_dep(task399);
984   task399->add_dep(task265);
985   densityq->add_task(task399);
986 
987   auto tensor400 = vector<shared_ptr<Tensor>>{I478, Gamma38_(), t2};
988   auto task400 = make_shared<Task400>(tensor400, pindex);
989   task399->add_dep(task400);
990   task400->add_dep(task265);
991   densityq->add_task(task400);
992 
993   vector<IndexRange> I517_index = {virt_, closed_};
994   auto I517 = make_shared<Tensor>(I517_index);
995   auto tensor401 = vector<shared_ptr<Tensor>>{I474, t2, I517};
996   auto task401 = make_shared<Task401>(tensor401, pindex);
997   task396->add_dep(task401);
998   task401->add_dep(task265);
999   densityq->add_task(task401);
1000 
1001   auto tensor402 = vector<shared_ptr<Tensor>>{I517, Gamma38_(), t2};
1002   auto task402 = make_shared<Task402>(tensor402, pindex);
1003   task401->add_dep(task402);
1004   task402->add_dep(task265);
1005   densityq->add_task(task402);
1006 
1007   vector<IndexRange> I520_index = {virt_, closed_};
1008   auto I520 = make_shared<Tensor>(I520_index);
1009   auto tensor403 = vector<shared_ptr<Tensor>>{I474, t2, I520};
1010   auto task403 = make_shared<Task403>(tensor403, pindex);
1011   task396->add_dep(task403);
1012   task403->add_dep(task265);
1013   densityq->add_task(task403);
1014 
1015   auto tensor404 = vector<shared_ptr<Tensor>>{I520, Gamma38_(), t2};
1016   auto task404 = make_shared<Task404>(tensor404, pindex);
1017   task403->add_dep(task404);
1018   task404->add_dep(task265);
1019   densityq->add_task(task404);
1020 
1021   vector<IndexRange> I486_index = {active_, virt_};
1022   auto I486 = make_shared<Tensor>(I486_index);
1023   auto tensor405 = vector<shared_ptr<Tensor>>{den2, I486};
1024   auto task405 = make_shared<Task405>(tensor405, pindex);
1025   task405->add_dep(task265);
1026   densityq->add_task(task405);
1027 
1028   vector<IndexRange> I487_index = {closed_, active_, active_, active_};
1029   auto I487 = make_shared<Tensor>(I487_index);
1030   auto tensor406 = vector<shared_ptr<Tensor>>{I486, t2, I487};
1031   auto task406 = make_shared<Task406>(tensor406, pindex);
1032   task405->add_dep(task406);
1033   task406->add_dep(task265);
1034   densityq->add_task(task406);
1035 
1036   auto tensor407 = vector<shared_ptr<Tensor>>{I487, Gamma6_(), t2};
1037   auto task407 = make_shared<Task407>(tensor407, pindex);
1038   task406->add_dep(task407);
1039   task407->add_dep(task265);
1040   densityq->add_task(task407);
1041 
1042   vector<IndexRange> I639_index = {virt_, active_, active_, active_};
1043   auto I639 = make_shared<Tensor>(I639_index);
1044   auto tensor408 = vector<shared_ptr<Tensor>>{I486, t2, I639};
1045   auto task408 = make_shared<Task408>(tensor408, pindex);
1046   task405->add_dep(task408);
1047   task408->add_dep(task265);
1048   densityq->add_task(task408);
1049 
1050   auto tensor409 = vector<shared_ptr<Tensor>>{I639, Gamma59_(), t2};
1051   auto task409 = make_shared<Task409>(tensor409, pindex);
1052   task408->add_dep(task409);
1053   task409->add_dep(task265);
1054   densityq->add_task(task409);
1055 
1056   vector<IndexRange> I498_index = {closed_, closed_};
1057   auto I498 = make_shared<Tensor>(I498_index);
1058   auto tensor410 = vector<shared_ptr<Tensor>>{den2, I498};
1059   auto task410 = make_shared<Task410>(tensor410, pindex);
1060   task410->add_dep(task265);
1061   densityq->add_task(task410);
1062 
1063   vector<IndexRange> I499_index = {virt_, closed_, active_, active_};
1064   auto I499 = make_shared<Tensor>(I499_index);
1065   auto tensor411 = vector<shared_ptr<Tensor>>{I498, t2, I499};
1066   auto task411 = make_shared<Task411>(tensor411, pindex);
1067   task410->add_dep(task411);
1068   task411->add_dep(task265);
1069   densityq->add_task(task411);
1070 
1071   auto tensor412 = vector<shared_ptr<Tensor>>{I499, Gamma35_(), t2};
1072   auto task412 = make_shared<Task412>(tensor412, pindex);
1073   task411->add_dep(task412);
1074   task412->add_dep(task265);
1075   densityq->add_task(task412);
1076 
1077   vector<IndexRange> I508_index = {virt_, closed_, active_, active_};
1078   auto I508 = make_shared<Tensor>(I508_index);
1079   auto tensor413 = vector<shared_ptr<Tensor>>{I498, t2, I508};
1080   auto task413 = make_shared<Task413>(tensor413, pindex);
1081   task410->add_dep(task413);
1082   task413->add_dep(task265);
1083   densityq->add_task(task413);
1084 
1085   auto tensor414 = vector<shared_ptr<Tensor>>{I508, Gamma35_(), t2};
1086   auto task414 = make_shared<Task414>(tensor414, pindex);
1087   task413->add_dep(task414);
1088   task414->add_dep(task265);
1089   densityq->add_task(task414);
1090 
1091   vector<IndexRange> I501_index = {virt_, virt_};
1092   auto I501 = make_shared<Tensor>(I501_index);
1093   auto tensor415 = vector<shared_ptr<Tensor>>{den2, I501};
1094   auto task415 = make_shared<Task415>(tensor415, pindex);
1095   task415->add_dep(task265);
1096   densityq->add_task(task415);
1097 
1098   vector<IndexRange> I502_index = {virt_, closed_, active_, active_};
1099   auto I502 = make_shared<Tensor>(I502_index);
1100   auto tensor416 = vector<shared_ptr<Tensor>>{I501, t2, I502};
1101   auto task416 = make_shared<Task416>(tensor416, pindex);
1102   task415->add_dep(task416);
1103   task416->add_dep(task265);
1104   densityq->add_task(task416);
1105 
1106   auto tensor417 = vector<shared_ptr<Tensor>>{I502, Gamma35_(), t2};
1107   auto task417 = make_shared<Task417>(tensor417, pindex);
1108   task416->add_dep(task417);
1109   task417->add_dep(task265);
1110   densityq->add_task(task417);
1111 
1112   vector<IndexRange> I511_index = {virt_, closed_, active_, active_};
1113   auto I511 = make_shared<Tensor>(I511_index);
1114   auto tensor418 = vector<shared_ptr<Tensor>>{I501, t2, I511};
1115   auto task418 = make_shared<Task418>(tensor418, pindex);
1116   task415->add_dep(task418);
1117   task418->add_dep(task265);
1118   densityq->add_task(task418);
1119 
1120   auto tensor419 = vector<shared_ptr<Tensor>>{I511, Gamma35_(), t2};
1121   auto task419 = make_shared<Task419>(tensor419, pindex);
1122   task418->add_dep(task419);
1123   task419->add_dep(task265);
1124   densityq->add_task(task419);
1125 
1126   vector<IndexRange> I648_index = {virt_, virt_, active_, active_};
1127   auto I648 = make_shared<Tensor>(I648_index);
1128   auto tensor420 = vector<shared_ptr<Tensor>>{I501, t2, I648};
1129   auto task420 = make_shared<Task420>(tensor420, pindex);
1130   task415->add_dep(task420);
1131   task420->add_dep(task265);
1132   densityq->add_task(task420);
1133 
1134   auto tensor421 = vector<shared_ptr<Tensor>>{I648, Gamma60_(), t2};
1135   auto task421 = make_shared<Task421>(tensor421, pindex);
1136   task420->add_dep(task421);
1137   task421->add_dep(task265);
1138   densityq->add_task(task421);
1139 
1140   vector<IndexRange> I513_index = {active_, closed_};
1141   auto I513 = make_shared<Tensor>(I513_index);
1142   auto tensor422 = vector<shared_ptr<Tensor>>{den2, I513};
1143   auto task422 = make_shared<Task422>(tensor422, pindex);
1144   task422->add_dep(task265);
1145   densityq->add_task(task422);
1146 
1147   vector<IndexRange> I514_index = {virt_, active_, active_, active_};
1148   auto I514 = make_shared<Tensor>(I514_index);
1149   auto tensor423 = vector<shared_ptr<Tensor>>{I513, t2, I514};
1150   auto task423 = make_shared<Task423>(tensor423, pindex);
1151   task422->add_dep(task423);
1152   task423->add_dep(task265);
1153   densityq->add_task(task423);
1154 
1155   auto tensor424 = vector<shared_ptr<Tensor>>{I514, Gamma51_(), t2};
1156   auto task424 = make_shared<Task424>(tensor424, pindex);
1157   task423->add_dep(task424);
1158   task424->add_dep(task265);
1159   densityq->add_task(task424);
1160 
1161   vector<IndexRange> I537_index = {virt_, virt_};
1162   auto I537 = make_shared<Tensor>(I537_index);
1163   auto tensor425 = vector<shared_ptr<Tensor>>{den2, I537};
1164   auto task425 = make_shared<Task425>(tensor425, pindex);
1165   task425->add_dep(task265);
1166   densityq->add_task(task425);
1167 
1168   vector<IndexRange> I538_index = {virt_, active_, active_, active_};
1169   auto I538 = make_shared<Tensor>(I538_index);
1170   auto tensor426 = vector<shared_ptr<Tensor>>{I537, t2, I538};
1171   auto task426 = make_shared<Task426>(tensor426, pindex);
1172   task425->add_dep(task426);
1173   task426->add_dep(task265);
1174   densityq->add_task(task426);
1175 
1176   auto tensor427 = vector<shared_ptr<Tensor>>{I538, Gamma59_(), t2};
1177   auto task427 = make_shared<Task427>(tensor427, pindex);
1178   task426->add_dep(task427);
1179   task427->add_dep(task265);
1180   densityq->add_task(task427);
1181 
1182   vector<IndexRange> I549_index = {virt_, active_};
1183   auto I549 = make_shared<Tensor>(I549_index);
1184   auto tensor428 = vector<shared_ptr<Tensor>>{den2, I549};
1185   auto task428 = make_shared<Task428>(tensor428, pindex);
1186   task428->add_dep(task265);
1187   densityq->add_task(task428);
1188 
1189   vector<IndexRange> I550_index = {active_, virt_};
1190   auto I550 = make_shared<Tensor>(I550_index);
1191   auto tensor429 = vector<shared_ptr<Tensor>>{I549, Gamma16_(), I550};
1192   auto task429 = make_shared<Task429>(tensor429, pindex);
1193   task428->add_dep(task429);
1194   task429->add_dep(task265);
1195   densityq->add_task(task429);
1196 
1197   auto tensor430 = vector<shared_ptr<Tensor>>{I550, t2};
1198   auto task430 = make_shared<Task430>(tensor430, pindex);
1199   task429->add_dep(task430);
1200   task430->add_dep(task265);
1201   densityq->add_task(task430);
1202 
1203   vector<IndexRange> I552_index = {virt_, active_};
1204   auto I552 = make_shared<Tensor>(I552_index);
1205   auto tensor431 = vector<shared_ptr<Tensor>>{den2, I552};
1206   auto task431 = make_shared<Task431>(tensor431, pindex);
1207   task431->add_dep(task265);
1208   densityq->add_task(task431);
1209 
1210   vector<IndexRange> I553_index = {active_, virt_};
1211   auto I553 = make_shared<Tensor>(I553_index);
1212   auto tensor432 = vector<shared_ptr<Tensor>>{I552, Gamma16_(), I553};
1213   auto task432 = make_shared<Task432>(tensor432, pindex);
1214   task431->add_dep(task432);
1215   task432->add_dep(task265);
1216   densityq->add_task(task432);
1217 
1218   auto tensor433 = vector<shared_ptr<Tensor>>{I553, t2};
1219   auto task433 = make_shared<Task433>(tensor433, pindex);
1220   task432->add_dep(task433);
1221   task433->add_dep(task265);
1222   densityq->add_task(task433);
1223 
1224   vector<IndexRange> I558_index = {virt_, closed_};
1225   auto I558 = make_shared<Tensor>(I558_index);
1226   auto tensor434 = vector<shared_ptr<Tensor>>{den2, I558};
1227   auto task434 = make_shared<Task434>(tensor434, pindex);
1228   task434->add_dep(task265);
1229   densityq->add_task(task434);
1230 
1231   vector<IndexRange> I559_index = {virt_, closed_};
1232   auto I559 = make_shared<Tensor>(I559_index);
1233   auto tensor435 = vector<shared_ptr<Tensor>>{I558, t2, I559};
1234   auto task435 = make_shared<Task435>(tensor435, pindex);
1235   task434->add_dep(task435);
1236   task435->add_dep(task265);
1237   densityq->add_task(task435);
1238 
1239   vector<IndexRange> I560_index = {active_, virt_, closed_, active_};
1240   auto I560 = make_shared<Tensor>(I560_index);
1241   auto tensor436 = vector<shared_ptr<Tensor>>{I559, Gamma38_(), I560};
1242   auto task436 = make_shared<Task436>(tensor436, pindex);
1243   task435->add_dep(task436);
1244   task436->add_dep(task265);
1245   densityq->add_task(task436);
1246 
1247   auto tensor437 = vector<shared_ptr<Tensor>>{I560, t2};
1248   auto task437 = make_shared<Task437>(tensor437, pindex);
1249   task436->add_dep(task437);
1250   task437->add_dep(task265);
1251   densityq->add_task(task437);
1252 
1253   vector<IndexRange> I567_index = {active_, active_};
1254   auto I567 = make_shared<Tensor>(I567_index);
1255   auto tensor438 = vector<shared_ptr<Tensor>>{den2, I567};
1256   auto task438 = make_shared<Task438>(tensor438, pindex);
1257   task438->add_dep(task265);
1258   densityq->add_task(task438);
1259 
1260   vector<IndexRange> I568_index;
1261   auto I568 = make_shared<Tensor>(I568_index);
1262   auto tensor439 = vector<shared_ptr<Tensor>>{I567, Gamma38_(), I568};
1263   auto task439 = make_shared<Task439>(tensor439, pindex);
1264   task438->add_dep(task439);
1265   task439->add_dep(task265);
1266   densityq->add_task(task439);
1267 
1268   vector<IndexRange> I569_index = {closed_, virt_, closed_, virt_};
1269   auto I569 = make_shared<Tensor>(I569_index);
1270   auto tensor440 = vector<shared_ptr<Tensor>>{I568, t2, I569};
1271   auto task440 = make_shared<Task440>(tensor440, pindex);
1272   task439->add_dep(task440);
1273   task440->add_dep(task265);
1274   densityq->add_task(task440);
1275 
1276   auto tensor441 = vector<shared_ptr<Tensor>>{I569, t2};
1277   auto task441 = make_shared<Task441>(tensor441, pindex);
1278   task440->add_dep(task441);
1279   task441->add_dep(task265);
1280   densityq->add_task(task441);
1281 
1282   shared_ptr<Tensor> I573;
1283   if (diagonal) {
1284     vector<IndexRange> I573_index = {closed_, closed_};
1285     I573 = make_shared<Tensor>(I573_index);
1286   }
1287   shared_ptr<Task442> task442;
1288   if (diagonal) {
1289     auto tensor442 = vector<shared_ptr<Tensor>>{den2, I573};
1290     task442 = make_shared<Task442>(tensor442, pindex);
1291     task442->add_dep(task265);
1292     densityq->add_task(task442);
1293   }
1294 
1295   shared_ptr<Tensor> I574;
1296   if (diagonal) {
1297     vector<IndexRange> I574_index = {closed_, virt_, closed_, virt_};
1298     I574 = make_shared<Tensor>(I574_index);
1299   }
1300   shared_ptr<Task443> task443;
1301   if (diagonal) {
1302     auto tensor443 = vector<shared_ptr<Tensor>>{I573, t2, I574};
1303     task443 = make_shared<Task443>(tensor443, pindex);
1304     task442->add_dep(task443);
1305     task443->add_dep(task265);
1306     densityq->add_task(task443);
1307   }
1308 
1309   shared_ptr<Task444> task444;
1310   if (diagonal) {
1311     auto tensor444 = vector<shared_ptr<Tensor>>{I574, t2};
1312     task444 = make_shared<Task444>(tensor444, pindex);
1313     task443->add_dep(task444);
1314     task444->add_dep(task265);
1315     densityq->add_task(task444);
1316   }
1317 
1318   shared_ptr<Tensor> I577;
1319   if (diagonal) {
1320     vector<IndexRange> I577_index = {virt_, virt_};
1321     I577 = make_shared<Tensor>(I577_index);
1322   }
1323   shared_ptr<Task445> task445;
1324   if (diagonal) {
1325     auto tensor445 = vector<shared_ptr<Tensor>>{den2, I577};
1326     task445 = make_shared<Task445>(tensor445, pindex);
1327     task445->add_dep(task265);
1328     densityq->add_task(task445);
1329   }
1330 
1331   shared_ptr<Tensor> I578;
1332   if (diagonal) {
1333     vector<IndexRange> I578_index = {closed_, virt_, closed_, virt_};
1334     I578 = make_shared<Tensor>(I578_index);
1335   }
1336   shared_ptr<Task446> task446;
1337   if (diagonal) {
1338     auto tensor446 = vector<shared_ptr<Tensor>>{I577, t2, I578};
1339     task446 = make_shared<Task446>(tensor446, pindex);
1340     task445->add_dep(task446);
1341     task446->add_dep(task265);
1342     densityq->add_task(task446);
1343   }
1344 
1345   shared_ptr<Task447> task447;
1346   if (diagonal) {
1347     auto tensor447 = vector<shared_ptr<Tensor>>{I578, t2};
1348     task447 = make_shared<Task447>(tensor447, pindex);
1349     task446->add_dep(task447);
1350     task447->add_dep(task265);
1351     densityq->add_task(task447);
1352   }
1353 
1354   vector<IndexRange> I581_index = {closed_, active_};
1355   auto I581 = make_shared<Tensor>(I581_index);
1356   auto tensor448 = vector<shared_ptr<Tensor>>{den2, I581};
1357   auto task448 = make_shared<Task448>(tensor448, pindex);
1358   task448->add_dep(task265);
1359   densityq->add_task(task448);
1360 
1361   vector<IndexRange> I582_index = {active_, closed_};
1362   auto I582 = make_shared<Tensor>(I582_index);
1363   auto tensor449 = vector<shared_ptr<Tensor>>{I581, Gamma38_(), I582};
1364   auto task449 = make_shared<Task449>(tensor449, pindex);
1365   task448->add_dep(task449);
1366   task449->add_dep(task265);
1367   densityq->add_task(task449);
1368 
1369   vector<IndexRange> I583_index = {active_, virt_, closed_, virt_};
1370   auto I583 = make_shared<Tensor>(I583_index);
1371   auto tensor450 = vector<shared_ptr<Tensor>>{I582, t2, I583};
1372   auto task450 = make_shared<Task450>(tensor450, pindex);
1373   task449->add_dep(task450);
1374   task450->add_dep(task265);
1375   densityq->add_task(task450);
1376 
1377   auto tensor451 = vector<shared_ptr<Tensor>>{I583, t2};
1378   auto task451 = make_shared<Task451>(tensor451, pindex);
1379   task450->add_dep(task451);
1380   task451->add_dep(task265);
1381   densityq->add_task(task451);
1382 
1383   vector<IndexRange> I587_index = {active_, virt_};
1384   auto I587 = make_shared<Tensor>(I587_index);
1385   auto tensor452 = vector<shared_ptr<Tensor>>{den2, I587};
1386   auto task452 = make_shared<Task452>(tensor452, pindex);
1387   task452->add_dep(task265);
1388   densityq->add_task(task452);
1389 
1390   vector<IndexRange> I588_index = {virt_, closed_, active_, active_};
1391   auto I588 = make_shared<Tensor>(I588_index);
1392   auto tensor453 = vector<shared_ptr<Tensor>>{I587, t2, I588};
1393   auto task453 = make_shared<Task453>(tensor453, pindex);
1394   task452->add_dep(task453);
1395   task453->add_dep(task265);
1396   densityq->add_task(task453);
1397 
1398   vector<IndexRange> I589_index = {active_, virt_, closed_, active_};
1399   auto I589 = make_shared<Tensor>(I589_index);
1400   auto tensor454 = vector<shared_ptr<Tensor>>{I588, Gamma35_(), I589};
1401   auto task454 = make_shared<Task454>(tensor454, pindex);
1402   task453->add_dep(task454);
1403   task454->add_dep(task265);
1404   densityq->add_task(task454);
1405 
1406   auto tensor455 = vector<shared_ptr<Tensor>>{I589, t2};
1407   auto task455 = make_shared<Task455>(tensor455, pindex);
1408   task454->add_dep(task455);
1409   task455->add_dep(task265);
1410   densityq->add_task(task455);
1411 
1412   vector<IndexRange> I590_index = {active_, virt_};
1413   auto I590 = make_shared<Tensor>(I590_index);
1414   auto tensor456 = vector<shared_ptr<Tensor>>{den2, I590};
1415   auto task456 = make_shared<Task456>(tensor456, pindex);
1416   task456->add_dep(task265);
1417   densityq->add_task(task456);
1418 
1419   vector<IndexRange> I591_index = {virt_, closed_, active_, active_};
1420   auto I591 = make_shared<Tensor>(I591_index);
1421   auto tensor457 = vector<shared_ptr<Tensor>>{I590, t2, I591};
1422   auto task457 = make_shared<Task457>(tensor457, pindex);
1423   task456->add_dep(task457);
1424   task457->add_dep(task265);
1425   densityq->add_task(task457);
1426 
1427   auto tensor458 = vector<shared_ptr<Tensor>>{I591, Gamma32_(), t2};
1428   auto task458 = make_shared<Task458>(tensor458, pindex);
1429   task457->add_dep(task458);
1430   task458->add_dep(task265);
1431   densityq->add_task(task458);
1432 
1433   auto tensor459 = vector<shared_ptr<Tensor>>{I591, Gamma35_(), t2};
1434   auto task459 = make_shared<Task459>(tensor459, pindex);
1435   task457->add_dep(task459);
1436   task459->add_dep(task265);
1437   densityq->add_task(task459);
1438 
1439   vector<IndexRange> I599_index = {closed_, virt_};
1440   auto I599 = make_shared<Tensor>(I599_index);
1441   auto tensor460 = vector<shared_ptr<Tensor>>{den2, I599};
1442   auto task460 = make_shared<Task460>(tensor460, pindex);
1443   task460->add_dep(task265);
1444   densityq->add_task(task460);
1445 
1446   vector<IndexRange> I600_index = {virt_, active_};
1447   auto I600 = make_shared<Tensor>(I600_index);
1448   auto tensor461 = vector<shared_ptr<Tensor>>{I599, t2, I600};
1449   auto task461 = make_shared<Task461>(tensor461, pindex);
1450   task460->add_dep(task461);
1451   task461->add_dep(task265);
1452   densityq->add_task(task461);
1453 
1454   auto tensor462 = vector<shared_ptr<Tensor>>{I600, Gamma60_(), t2};
1455   auto task462 = make_shared<Task462>(tensor462, pindex);
1456   task461->add_dep(task462);
1457   task462->add_dep(task265);
1458   densityq->add_task(task462);
1459 
1460   vector<IndexRange> I602_index = {virt_, closed_};
1461   auto I602 = make_shared<Tensor>(I602_index);
1462   auto tensor463 = vector<shared_ptr<Tensor>>{den2, I602};
1463   auto task463 = make_shared<Task463>(tensor463, pindex);
1464   task463->add_dep(task265);
1465   densityq->add_task(task463);
1466 
1467   vector<IndexRange> I603_index = {virt_, active_};
1468   auto I603 = make_shared<Tensor>(I603_index);
1469   auto tensor464 = vector<shared_ptr<Tensor>>{I602, t2, I603};
1470   auto task464 = make_shared<Task464>(tensor464, pindex);
1471   task463->add_dep(task464);
1472   task464->add_dep(task265);
1473   densityq->add_task(task464);
1474 
1475   auto tensor465 = vector<shared_ptr<Tensor>>{I603, Gamma60_(), t2};
1476   auto task465 = make_shared<Task465>(tensor465, pindex);
1477   task464->add_dep(task465);
1478   task465->add_dep(task265);
1479   densityq->add_task(task465);
1480 
1481   vector<IndexRange> I605_index = {closed_, active_};
1482   auto I605 = make_shared<Tensor>(I605_index);
1483   auto tensor466 = vector<shared_ptr<Tensor>>{den2, I605};
1484   auto task466 = make_shared<Task466>(tensor466, pindex);
1485   task466->add_dep(task265);
1486   densityq->add_task(task466);
1487 
1488   vector<IndexRange> I606_index = {closed_, active_};
1489   auto I606 = make_shared<Tensor>(I606_index);
1490   auto tensor467 = vector<shared_ptr<Tensor>>{I605, Gamma38_(), I606};
1491   auto task467 = make_shared<Task467>(tensor467, pindex);
1492   task466->add_dep(task467);
1493   task467->add_dep(task265);
1494   densityq->add_task(task467);
1495 
1496   vector<IndexRange> I607_index = {closed_, virt_, closed_, virt_};
1497   auto I607 = make_shared<Tensor>(I607_index);
1498   auto tensor468 = vector<shared_ptr<Tensor>>{I606, t2, I607};
1499   auto task468 = make_shared<Task468>(tensor468, pindex);
1500   task467->add_dep(task468);
1501   task468->add_dep(task265);
1502   densityq->add_task(task468);
1503 
1504   auto tensor469 = vector<shared_ptr<Tensor>>{I607, t2};
1505   auto task469 = make_shared<Task469>(tensor469, pindex);
1506   task468->add_dep(task469);
1507   task469->add_dep(task265);
1508   densityq->add_task(task469);
1509 
1510   vector<IndexRange> I617_index = {closed_, closed_};
1511   auto I617 = make_shared<Tensor>(I617_index);
1512   auto tensor470 = vector<shared_ptr<Tensor>>{den2, I617};
1513   auto task470 = make_shared<Task470>(tensor470, pindex);
1514   task470->add_dep(task265);
1515   densityq->add_task(task470);
1516 
1517   vector<IndexRange> I618_index = {virt_, closed_, virt_, active_};
1518   auto I618 = make_shared<Tensor>(I618_index);
1519   auto tensor471 = vector<shared_ptr<Tensor>>{I617, t2, I618};
1520   auto task471 = make_shared<Task471>(tensor471, pindex);
1521   task470->add_dep(task471);
1522   task471->add_dep(task265);
1523   densityq->add_task(task471);
1524 
1525   auto tensor472 = vector<shared_ptr<Tensor>>{I618, Gamma38_(), t2};
1526   auto task472 = make_shared<Task472>(tensor472, pindex);
1527   task471->add_dep(task472);
1528   task472->add_dep(task265);
1529   densityq->add_task(task472);
1530 
1531   vector<IndexRange> I621_index = {virt_, closed_, virt_, active_};
1532   auto I621 = make_shared<Tensor>(I621_index);
1533   auto tensor473 = vector<shared_ptr<Tensor>>{I617, t2, I621};
1534   auto task473 = make_shared<Task473>(tensor473, pindex);
1535   task470->add_dep(task473);
1536   task473->add_dep(task265);
1537   densityq->add_task(task473);
1538 
1539   auto tensor474 = vector<shared_ptr<Tensor>>{I621, Gamma38_(), t2};
1540   auto task474 = make_shared<Task474>(tensor474, pindex);
1541   task473->add_dep(task474);
1542   task474->add_dep(task265);
1543   densityq->add_task(task474);
1544 
1545   vector<IndexRange> I623_index = {virt_, virt_};
1546   auto I623 = make_shared<Tensor>(I623_index);
1547   auto tensor475 = vector<shared_ptr<Tensor>>{den2, I623};
1548   auto task475 = make_shared<Task475>(tensor475, pindex);
1549   task475->add_dep(task265);
1550   densityq->add_task(task475);
1551 
1552   vector<IndexRange> I624_index = {virt_, closed_, virt_, active_};
1553   auto I624 = make_shared<Tensor>(I624_index);
1554   auto tensor476 = vector<shared_ptr<Tensor>>{I623, t2, I624};
1555   auto task476 = make_shared<Task476>(tensor476, pindex);
1556   task475->add_dep(task476);
1557   task476->add_dep(task265);
1558   densityq->add_task(task476);
1559 
1560   auto tensor477 = vector<shared_ptr<Tensor>>{I624, Gamma38_(), t2};
1561   auto task477 = make_shared<Task477>(tensor477, pindex);
1562   task476->add_dep(task477);
1563   task477->add_dep(task265);
1564   densityq->add_task(task477);
1565 
1566   vector<IndexRange> I627_index = {virt_, closed_, virt_, active_};
1567   auto I627 = make_shared<Tensor>(I627_index);
1568   auto tensor478 = vector<shared_ptr<Tensor>>{I623, t2, I627};
1569   auto task478 = make_shared<Task478>(tensor478, pindex);
1570   task475->add_dep(task478);
1571   task478->add_dep(task265);
1572   densityq->add_task(task478);
1573 
1574   auto tensor479 = vector<shared_ptr<Tensor>>{I627, Gamma38_(), t2};
1575   auto task479 = make_shared<Task479>(tensor479, pindex);
1576   task478->add_dep(task479);
1577   task479->add_dep(task265);
1578   densityq->add_task(task479);
1579 
1580   vector<IndexRange> I629_index = {virt_, virt_};
1581   auto I629 = make_shared<Tensor>(I629_index);
1582   auto tensor480 = vector<shared_ptr<Tensor>>{den2, I629};
1583   auto task480 = make_shared<Task480>(tensor480, pindex);
1584   task480->add_dep(task265);
1585   densityq->add_task(task480);
1586 
1587   vector<IndexRange> I630_index = {virt_, closed_, virt_, active_};
1588   auto I630 = make_shared<Tensor>(I630_index);
1589   auto tensor481 = vector<shared_ptr<Tensor>>{I629, t2, I630};
1590   auto task481 = make_shared<Task481>(tensor481, pindex);
1591   task480->add_dep(task481);
1592   task481->add_dep(task265);
1593   densityq->add_task(task481);
1594 
1595   auto tensor482 = vector<shared_ptr<Tensor>>{I630, Gamma38_(), t2};
1596   auto task482 = make_shared<Task482>(tensor482, pindex);
1597   task481->add_dep(task482);
1598   task482->add_dep(task265);
1599   densityq->add_task(task482);
1600 
1601   vector<IndexRange> I633_index = {virt_, closed_, virt_, active_};
1602   auto I633 = make_shared<Tensor>(I633_index);
1603   auto tensor483 = vector<shared_ptr<Tensor>>{I629, t2, I633};
1604   auto task483 = make_shared<Task483>(tensor483, pindex);
1605   task480->add_dep(task483);
1606   task483->add_dep(task265);
1607   densityq->add_task(task483);
1608 
1609   auto tensor484 = vector<shared_ptr<Tensor>>{I633, Gamma38_(), t2};
1610   auto task484 = make_shared<Task484>(tensor484, pindex);
1611   task483->add_dep(task484);
1612   task484->add_dep(task265);
1613   densityq->add_task(task484);
1614 
1615   vector<IndexRange> I635_index = {active_, closed_};
1616   auto I635 = make_shared<Tensor>(I635_index);
1617   auto tensor485 = vector<shared_ptr<Tensor>>{den2, I635};
1618   auto task485 = make_shared<Task485>(tensor485, pindex);
1619   task485->add_dep(task265);
1620   densityq->add_task(task485);
1621 
1622   vector<IndexRange> I636_index = {virt_, virt_, active_, active_};
1623   auto I636 = make_shared<Tensor>(I636_index);
1624   auto tensor486 = vector<shared_ptr<Tensor>>{I635, t2, I636};
1625   auto task486 = make_shared<Task486>(tensor486, pindex);
1626   task485->add_dep(task486);
1627   task486->add_dep(task265);
1628   densityq->add_task(task486);
1629 
1630   auto tensor487 = vector<shared_ptr<Tensor>>{I636, Gamma60_(), t2};
1631   auto task487 = make_shared<Task487>(tensor487, pindex);
1632   task486->add_dep(task487);
1633   task487->add_dep(task265);
1634   densityq->add_task(task487);
1635 
1636   return densityq;
1637 }
1638 
1639 
1640 #endif
1641