Permalink
Browse files

Merge branch 'master' into fix_pk

  • Loading branch information...
raimis committed Sep 27, 2018
2 parents 9bb67fb + 81b7428 commit db4c94e9de955bd4b516f75649f3f6e64d57af5d
Showing with 58,425 additions and 56,831 deletions.
  1. +9 −0 doc/sphinxman/source/prog_style_c.rst
  2. +134 −159 psi4/src/psi4/ccenergy/AO_contribute.cc
  3. +245 −249 psi4/src/psi4/ccenergy/BT2.cc
  4. +95 −108 psi4/src/psi4/ccenergy/BT2_AO.cc
  5. +437 −451 psi4/src/psi4/ccenergy/CT2.cc
  6. +29 −31 psi4/src/psi4/ccenergy/DT2.cc
  7. +132 −134 psi4/src/psi4/ccenergy/ET2.cc
  8. +17 −20 psi4/src/psi4/ccenergy/FT2.cc
  9. +87 −89 psi4/src/psi4/ccenergy/FT2_cc2.cc
  10. +360 −376 psi4/src/psi4/ccenergy/Fae.cc
  11. +98 −100 psi4/src/psi4/ccenergy/FaetT2.cc
  12. +72 −74 psi4/src/psi4/ccenergy/Fme.cc
  13. +269 −279 psi4/src/psi4/ccenergy/Fmi.cc
  14. +101 −103 psi4/src/psi4/ccenergy/FmitT2.cc
  15. +29 −27 psi4/src/psi4/ccenergy/Local.h
  16. +77 −75 psi4/src/psi4/ccenergy/MOInfo.h
  17. +44 −42 psi4/src/psi4/ccenergy/Params.h
  18. +668 −679 psi4/src/psi4/ccenergy/Wmbej.cc
  19. +383 −390 psi4/src/psi4/ccenergy/WmbejT2.cc
  20. +197 −204 psi4/src/psi4/ccenergy/Wmnij.cc
  21. +61 −63 psi4/src/psi4/ccenergy/WmnijT2.cc
  22. +118 −120 psi4/src/psi4/ccenergy/Z.cc
  23. +109 −111 psi4/src/psi4/ccenergy/ZT2.cc
  24. +198 −201 psi4/src/psi4/ccenergy/amp_write.cc
  25. +115 −123 psi4/src/psi4/ccenergy/analyze.cc
  26. +637 −670 psi4/src/psi4/ccenergy/cache.cc
  27. +356 −361 psi4/src/psi4/ccenergy/cc2_Wabei.cc
  28. +133 −134 psi4/src/psi4/ccenergy/cc2_WabeiT2.cc
  29. +31 −32 psi4/src/psi4/ccenergy/cc2_WabijT2.cc
  30. +545 −555 psi4/src/psi4/ccenergy/cc2_Wmbij.cc
  31. +126 −129 psi4/src/psi4/ccenergy/cc2_WmbijT2.cc
  32. +343 −350 psi4/src/psi4/ccenergy/cc2_Wmnij.cc
  33. +132 −133 psi4/src/psi4/ccenergy/cc2_faeT2.cc
  34. +132 −133 psi4/src/psi4/ccenergy/cc2_fmiT2.cc
  35. +21 −22 psi4/src/psi4/ccenergy/cc2_t2.cc
  36. +215 −193 psi4/src/psi4/ccenergy/cc3.cc
  37. +1,030 −1,030 psi4/src/psi4/ccenergy/cc3_Wabei.cc
  38. +253 −254 psi4/src/psi4/ccenergy/cc3_Wamef.cc
  39. +528 −530 psi4/src/psi4/ccenergy/cc3_Wmbij.cc
  40. +268 −271 psi4/src/psi4/ccenergy/cc3_Wmnie.cc
  41. +315 −316 psi4/src/psi4/ccenergy/cc3_Wmnij.cc
  42. +192 −196 psi4/src/psi4/ccenergy/ccenergy.cc
  43. +17 −20 psi4/src/psi4/ccenergy/ccwave.h
  44. +207 −206 psi4/src/psi4/ccenergy/converged.cc
  45. +134 −138 psi4/src/psi4/ccenergy/d1diag.cc
  46. +128 −129 psi4/src/psi4/ccenergy/d2diag.cc
  47. +53 −55 psi4/src/psi4/ccenergy/denom.cc
  48. +112 −118 psi4/src/psi4/ccenergy/diagnostic.cc
  49. +16 −14 psi4/src/psi4/ccenergy/diis.cc
  50. +194 −207 psi4/src/psi4/ccenergy/diis_RHF.cc
  51. +293 −310 psi4/src/psi4/ccenergy/diis_ROHF.cc
  52. +301 −317 psi4/src/psi4/ccenergy/diis_UHF.cc
  53. +65 −67 psi4/src/psi4/ccenergy/dijabT2.cc
  54. +153 −153 psi4/src/psi4/ccenergy/energy.cc
  55. +291 −315 psi4/src/psi4/ccenergy/fock_build.cc
  56. +71 −72 psi4/src/psi4/ccenergy/form_df_ints.cc
  57. +123 −165 psi4/src/psi4/ccenergy/get_moinfo.cc
  58. +197 −199 psi4/src/psi4/ccenergy/get_params.cc
  59. +78 −76 psi4/src/psi4/ccenergy/halftrans.cc
  60. +156 −167 psi4/src/psi4/ccenergy/init_amps.cc
  61. +161 −166 psi4/src/psi4/ccenergy/lmp2.cc
  62. +198 −215 psi4/src/psi4/ccenergy/local.cc
  63. +151 −151 psi4/src/psi4/ccenergy/mp2_energy.cc
  64. +109 −110 psi4/src/psi4/ccenergy/new_d1diag.cc
  65. +182 −184 psi4/src/psi4/ccenergy/pair_energies.cc
  66. +947 −948 psi4/src/psi4/ccenergy/priority.cc
  67. +235 −250 psi4/src/psi4/ccenergy/rotate.cc
  68. +118 −120 psi4/src/psi4/ccenergy/sort_amps.cc
  69. +84 −85 psi4/src/psi4/ccenergy/spinad_amps.cc
  70. +7 −8 psi4/src/psi4/ccenergy/status.cc
  71. +362 −369 psi4/src/psi4/ccenergy/t1.cc
  72. +273 −295 psi4/src/psi4/ccenergy/t1_ijab.cc
  73. +41 −42 psi4/src/psi4/ccenergy/t2.cc
  74. +312 −332 psi4/src/psi4/ccenergy/tau.cc
  75. +300 −320 psi4/src/psi4/ccenergy/taut.cc
  76. +60 −62 psi4/src/psi4/ccenergy/tsave.cc
  77. +6 −6 psi4/src/psi4/ccenergy/update.cc
  78. +438 −464 psi4/src/psi4/cclambda/BL2_AO.cc
  79. +115 −120 psi4/src/psi4/cclambda/DL2.cc
  80. +128 −131 psi4/src/psi4/cclambda/FaeL2.cc
  81. +124 −126 psi4/src/psi4/cclambda/FmiL2.cc
  82. +171 −178 psi4/src/psi4/cclambda/G.cc
  83. +227 −238 psi4/src/psi4/cclambda/GL2.cc
  84. +649 −681 psi4/src/psi4/cclambda/L1.cc
  85. +281 −265 psi4/src/psi4/cclambda/L1FL2.cc
  86. +53 −52 psi4/src/psi4/cclambda/L2.cc
  87. +531 −537 psi4/src/psi4/cclambda/L3_AAA.cc
  88. +515 −524 psi4/src/psi4/cclambda/L3_AAB.cc
  89. +197 −198 psi4/src/psi4/cclambda/Lamp_write.cc
  90. +26 −25 psi4/src/psi4/cclambda/Lmag.cc
  91. +97 −97 psi4/src/psi4/cclambda/Lnorm.cc
  92. +26 −24 psi4/src/psi4/cclambda/Local.h
  93. +51 −53 psi4/src/psi4/cclambda/Lsave.cc
  94. +48 −46 psi4/src/psi4/cclambda/MOInfo.h
  95. +36 −35 psi4/src/psi4/cclambda/Params.h
  96. +31 −30 psi4/src/psi4/cclambda/WabeiL1.cc
  97. +427 −434 psi4/src/psi4/cclambda/WefabL2.cc
  98. +193 −197 psi4/src/psi4/cclambda/WejabL2.cc
  99. +136 −141 psi4/src/psi4/cclambda/WijmbL2.cc
  100. +62 −64 psi4/src/psi4/cclambda/WijmnL2.cc
  101. +239 −242 psi4/src/psi4/cclambda/WmbejL2.cc
  102. +124 −126 psi4/src/psi4/cclambda/c_clean.cc
  103. +639 −671 psi4/src/psi4/cclambda/cache.cc
  104. +84 −84 psi4/src/psi4/cclambda/cc2_Gai.cc
  105. +391 −409 psi4/src/psi4/cclambda/cc2_L1.cc
  106. +28 −27 psi4/src/psi4/cclambda/cc2_L2.cc
  107. +157 −164 psi4/src/psi4/cclambda/cc2_faeL2.cc
  108. +153 −157 psi4/src/psi4/cclambda/cc2_fmiL2.cc
  109. +18 −16 psi4/src/psi4/cclambda/cc2_hbar_extra.cc
  110. +160 −160 psi4/src/psi4/cclambda/cc3_l3l1.cc
  111. +1,497 −1,502 psi4/src/psi4/cclambda/cc3_l3l2.cc
  112. +185 −186 psi4/src/psi4/cclambda/cc3_t3x.cc
  113. +584 −584 psi4/src/psi4/cclambda/cc3_t3z.cc
  114. +388 −423 psi4/src/psi4/cclambda/cclambda.cc
  115. +33 −8 psi4/src/psi4/cclambda/cclambda.h
  116. +141 −144 psi4/src/psi4/cclambda/check_ortho.cc
  117. +66 −69 psi4/src/psi4/cclambda/check_sum.cc
  118. +123 −123 psi4/src/psi4/cclambda/converged.cc
  119. +527 −535 psi4/src/psi4/cclambda/denom.cc
  120. +793 −826 psi4/src/psi4/cclambda/diis.cc
  121. +114 −116 psi4/src/psi4/cclambda/dijabL2.cc
  122. +92 −119 psi4/src/psi4/cclambda/get_moinfo.cc
  123. +383 −411 psi4/src/psi4/cclambda/get_params.cc
  124. +2 −2 psi4/src/psi4/cclambda/globals.h
  125. +77 −76 psi4/src/psi4/cclambda/halftrans.cc
  126. +20 −18 psi4/src/psi4/cclambda/hbar_extra.cc
  127. +336 −346 psi4/src/psi4/cclambda/init_amps.cc
  128. +197 −213 psi4/src/psi4/cclambda/local.cc
  129. +74 −75 psi4/src/psi4/cclambda/ortho_Rs.cc
  130. +182 −178 psi4/src/psi4/cclambda/overlap.cc
  131. +190 −186 psi4/src/psi4/cclambda/overlap_LAMPS.cc
  132. +287 −300 psi4/src/psi4/cclambda/projections.cc
  133. +140 −143 psi4/src/psi4/cclambda/pseudoenergy.cc
  134. +88 −89 psi4/src/psi4/cclambda/sort_amps.cc
  135. +16 −16 psi4/src/psi4/cclambda/spinad_amps.cc
  136. +8 −7 psi4/src/psi4/cclambda/status.cc
  137. +8 −8 psi4/src/psi4/cclambda/update.cc
  138. +471 −475 psi4/src/psi4/cctriples/ET_AAA.cc
  139. +462 −466 psi4/src/psi4/cctriples/ET_AAB.cc
  140. +458 −463 psi4/src/psi4/cctriples/ET_ABB.cc
  141. +471 −475 psi4/src/psi4/cctriples/ET_BBB.cc
  142. +672 −728 psi4/src/psi4/cctriples/ET_RHF.cc
  143. +660 −687 psi4/src/psi4/cctriples/ET_UHF_AAA.cc
  144. +680 −710 psi4/src/psi4/cctriples/ET_UHF_AAB.cc
  145. +669 −686 psi4/src/psi4/cctriples/ET_UHF_ABB.cc
  146. +661 −686 psi4/src/psi4/cctriples/ET_UHF_BBB.cc
  147. +733 −800 psi4/src/psi4/cctriples/EaT_RHF.cc
  148. +38 −36 psi4/src/psi4/cctriples/MOInfo.h
  149. +10 −8 psi4/src/psi4/cctriples/Params.h
  150. +577 −583 psi4/src/psi4/cctriples/T3_UHF_AAA.cc
  151. +586 −594 psi4/src/psi4/cctriples/T3_UHF_AAB.cc
  152. +1,431 −1,461 psi4/src/psi4/cctriples/T3_UHF_ABC.cc
  153. +1,470 −1,568 psi4/src/psi4/cctriples/T3_grad_RHF.cc
  154. +529 −542 psi4/src/psi4/cctriples/T3_grad_UHF_AAA.cc
  155. +1,023 −1,021 psi4/src/psi4/cctriples/T3_grad_UHF_AAB.cc
  156. +1,036 −1,034 psi4/src/psi4/cctriples/T3_grad_UHF_BBA.cc
  157. +544 −554 psi4/src/psi4/cctriples/T3_grad_UHF_BBB.cc
  158. +637 −669 psi4/src/psi4/cctriples/cache.cc
  159. +222 −213 psi4/src/psi4/cctriples/count_ijk.cc
  160. +87 −107 psi4/src/psi4/cctriples/get_moinfo.cc
  161. +2 −2 psi4/src/psi4/cctriples/globals.h
  162. +496 −542 psi4/src/psi4/cctriples/test_abc_loops.cc
  163. +50 −50 psi4/src/psi4/cctriples/transpose_integrals.cc
  164. +203 −226 psi4/src/psi4/cctriples/triples.cc
  165. +0 −2 psi4/src/psi4/dcft/dcft_sort_mo_tpdm.cc
  166. +101 −95 psi4/src/psi4/libdpd/3d_sort.cc
  167. +23 −35 psi4/src/psi4/libdpd/4mat_irrep_print.cc
  168. +132 −141 psi4/src/psi4/libdpd/T3_AAA.cc
  169. +133 −146 psi4/src/psi4/libdpd/T3_AAB.cc
  170. +124 −139 psi4/src/psi4/libdpd/T3_RHF.cc
  171. +112 −131 psi4/src/psi4/libdpd/T3_RHF_ic.cc
  172. +44 −45 psi4/src/psi4/libdpd/block_matrix.cc
  173. +2 −4 psi4/src/psi4/libdpd/buf4_axpbycz.cc
  174. +32 −40 psi4/src/psi4/libdpd/buf4_axpy.cc
  175. +2 −3 psi4/src/psi4/libdpd/buf4_close.cc
  176. +37 −51 psi4/src/psi4/libdpd/buf4_copy.cc
  177. +4 −7 psi4/src/psi4/libdpd/buf4_dirprd.cc
  178. +27 −46 psi4/src/psi4/libdpd/buf4_dot.cc
  179. +6 −8 psi4/src/psi4/libdpd/buf4_dot_self.cc
  180. +27 −28 psi4/src/psi4/libdpd/buf4_dump.cc
  181. +20 −25 psi4/src/psi4/libdpd/buf4_init.cc
  182. +10 −13 psi4/src/psi4/libdpd/buf4_mat_irrep_close.cc
  183. +7 −9 psi4/src/psi4/libdpd/buf4_mat_irrep_close_block.cc
  184. +8 −13 psi4/src/psi4/libdpd/buf4_mat_irrep_init.cc
  185. +3 −5 psi4/src/psi4/libdpd/buf4_mat_irrep_init_block.cc
  186. +366 −375 psi4/src/psi4/libdpd/buf4_mat_irrep_rd.cc
  187. +343 −353 psi4/src/psi4/libdpd/buf4_mat_irrep_rd_block.cc
  188. +4 −5 psi4/src/psi4/libdpd/buf4_mat_irrep_row_close.cc
  189. +3 −4 psi4/src/psi4/libdpd/buf4_mat_irrep_row_init.cc
  190. +319 −327 psi4/src/psi4/libdpd/buf4_mat_irrep_row_rd.cc
  191. +142 −143 psi4/src/psi4/libdpd/buf4_mat_irrep_row_wrt.cc
  192. +4 −7 psi4/src/psi4/libdpd/buf4_mat_irrep_row_zero.cc
  193. +26 −28 psi4/src/psi4/libdpd/buf4_mat_irrep_shift13.cc
  194. +34 −34 psi4/src/psi4/libdpd/buf4_mat_irrep_shift31.cc
  195. +214 −212 psi4/src/psi4/libdpd/buf4_mat_irrep_wrt.cc
  196. +134 −134 psi4/src/psi4/libdpd/buf4_mat_irrep_wrt_block.cc
  197. +18 −23 psi4/src/psi4/libdpd/buf4_print.cc
  198. +29 −33 psi4/src/psi4/libdpd/buf4_scm.cc
  199. +40 −50 psi4/src/psi4/libdpd/buf4_scmcopy.cc
  200. +1,254 −1,269 psi4/src/psi4/libdpd/buf4_sort.cc
  201. +1,408 −1,497 psi4/src/psi4/libdpd/buf4_sort_axpy.cc
  202. +633 −649 psi4/src/psi4/libdpd/buf4_sort_ooc.cc
  203. +15 −17 psi4/src/psi4/libdpd/buf4_symm.cc
  204. +6 −8 psi4/src/psi4/libdpd/buf4_symm2.cc
  205. +11 −13 psi4/src/psi4/libdpd/buf4_trace.cc
  206. +148 −147 psi4/src/psi4/libdpd/cc3_sigma_RHF.cc
  207. +186 −209 psi4/src/psi4/libdpd/cc3_sigma_RHF_ic.cc
  208. +309 −348 psi4/src/psi4/libdpd/cc3_sigma_UHF.cc
  209. +34 −45 psi4/src/psi4/libdpd/close.cc
  210. +55 −32 psi4/src/psi4/libdpd/contract222.cc
  211. +160 −132 psi4/src/psi4/libdpd/contract244.cc
  212. +40 −37 psi4/src/psi4/libdpd/contract422.cc
  213. +146 −125 psi4/src/psi4/libdpd/contract424.cc
  214. +100 −95 psi4/src/psi4/libdpd/contract442.cc
  215. +110 −98 psi4/src/psi4/libdpd/contract444.cc
  216. +29 −37 psi4/src/psi4/libdpd/contract444_df.cc
  217. +26 −28 psi4/src/psi4/libdpd/dot13.cc
  218. +26 −28 psi4/src/psi4/libdpd/dot14.cc
  219. +26 −29 psi4/src/psi4/libdpd/dot23.cc
  220. +26 −28 psi4/src/psi4/libdpd/dot24.cc
  221. +0 −49 psi4/src/psi4/libdpd/dpd.gbl
  222. +237 −246 psi4/src/psi4/libdpd/dpd.h
  223. +63 −78 psi4/src/psi4/libdpd/dpdmospace.cc
  224. +4 −5 psi4/src/psi4/libdpd/dpdmospace.h
  225. +4 −7 psi4/src/psi4/libdpd/error.cc
  226. +2 −5 psi4/src/psi4/libdpd/file2_axpbycz.cc
  227. +11 −17 psi4/src/psi4/libdpd/file2_axpy.cc
  228. +57 −83 psi4/src/psi4/libdpd/file2_cache.cc
  229. +6 −5 psi4/src/psi4/libdpd/file2_close.cc
  230. +8 −11 psi4/src/psi4/libdpd/file2_copy.cc
  231. +4 −9 psi4/src/psi4/libdpd/file2_dirprd.cc
  232. +5 −10 psi4/src/psi4/libdpd/file2_dot.cc
  233. +6 −10 psi4/src/psi4/libdpd/file2_dot_self.cc
  234. +11 −16 psi4/src/psi4/libdpd/file2_init.cc
  235. +6 −9 psi4/src/psi4/libdpd/file2_mat_close.cc
  236. +5 −7 psi4/src/psi4/libdpd/file2_mat_init.cc
  237. +28 −37 psi4/src/psi4/libdpd/file2_mat_print.cc
  238. +9 −10 psi4/src/psi4/libdpd/file2_mat_rd.cc
  239. +9 −10 psi4/src/psi4/libdpd/file2_mat_wrt.cc
  240. +13 −19 psi4/src/psi4/libdpd/file2_print.cc
  241. +9 −10 psi4/src/psi4/libdpd/file2_scm.cc
  242. +9 −11 psi4/src/psi4/libdpd/file2_trace.cc
  243. +146 −207 psi4/src/psi4/libdpd/file4_cache.cc
  244. +6 −5 psi4/src/psi4/libdpd/file4_close.cc
  245. +24 −30 psi4/src/psi4/libdpd/file4_init.cc
  246. +20 −27 psi4/src/psi4/libdpd/file4_init_nocache.cc
  247. +6 −7 psi4/src/psi4/libdpd/file4_mat_irrep_close.cc
  248. +6 −7 psi4/src/psi4/libdpd/file4_mat_irrep_init.cc
  249. +9 −11 psi4/src/psi4/libdpd/file4_mat_irrep_rd.cc
  250. +15 −18 psi4/src/psi4/libdpd/file4_mat_irrep_rd_block.cc
  251. +4 −6 psi4/src/psi4/libdpd/file4_mat_irrep_row_close.cc
  252. +4 −5 psi4/src/psi4/libdpd/file4_mat_irrep_row_init.cc
  253. +14 −16 psi4/src/psi4/libdpd/file4_mat_irrep_row_rd.cc
  254. +16 −18 psi4/src/psi4/libdpd/file4_mat_irrep_row_wrt.cc
  255. +5 −8 psi4/src/psi4/libdpd/file4_mat_irrep_row_zero.cc
  256. +10 −12 psi4/src/psi4/libdpd/file4_mat_irrep_wrt.cc
  257. +17 −21 psi4/src/psi4/libdpd/file4_mat_irrep_wrt_block.cc
  258. +16 −23 psi4/src/psi4/libdpd/file4_print.cc
  259. +356 −391 psi4/src/psi4/libdpd/init.cc
  260. +2 −5 psi4/src/psi4/libdpd/memfree.cc
  261. +41 −32 psi4/src/psi4/libdpd/pairnum.cc
  262. +7 −16 psi4/src/psi4/libdpd/split.cc
  263. +13 −16 psi4/src/psi4/libdpd/trace42_13.cc
  264. +2 −4 psi4/src/psi4/libdpd/trans4_close.cc
  265. +4 −5 psi4/src/psi4/libdpd/trans4_init.cc
  266. +8 −11 psi4/src/psi4/libdpd/trans4_mat_irrep_close.cc
  267. +5 −7 psi4/src/psi4/libdpd/trans4_mat_irrep_init.cc
  268. +5 −6 psi4/src/psi4/libdpd/trans4_mat_irrep_rd.cc
  269. +26 −28 psi4/src/psi4/libdpd/trans4_mat_irrep_shift13.cc
  270. +34 −37 psi4/src/psi4/libdpd/trans4_mat_irrep_shift31.cc
  271. +4 −5 psi4/src/psi4/libdpd/trans4_mat_irrep_wrt.cc
  272. +0 −3 psi4/src/psi4/libtrans/integraltransform.cc
  273. +1 −3 psi4/src/psi4/libtrans/integraltransform_oei.cc
  274. +0 −3 psi4/src/psi4/libtrans/integraltransform_sort_mo_tpdm.cc
  275. +0 −3 psi4/src/psi4/libtrans/integraltransform_sort_so_tei.cc
  276. +0 −3 psi4/src/psi4/libtrans/integraltransform_tei.cc
  277. +1 −4 psi4/src/psi4/libtrans/integraltransform_tei_1st_half.cc
  278. +1 −4 psi4/src/psi4/libtrans/integraltransform_tei_2nd_half.cc
  279. +0 −3 psi4/src/psi4/libtrans/integraltransform_tpdm.cc
  280. +1 −3 psi4/src/psi4/libtrans/integraltransform_tpdm_restricted.cc
  281. +1 −3 psi4/src/psi4/libtrans/integraltransform_tpdm_unrestricted.cc
  282. +966 −0 tests/cubeprop-frontier/CH2s_HOMO.cube.ref
  283. +966 −0 tests/cubeprop-frontier/CH2s_LUMO.cube.ref
  284. +966 −0 tests/cubeprop-frontier/CH2t_3_DOMO.cube.ref
  285. +966 −0 tests/cubeprop-frontier/CH2t_4_SOMO.cube.ref
  286. +966 −0 tests/cubeprop-frontier/CH2t_5_SOMO.cube.ref
  287. +966 −0 tests/cubeprop-frontier/CH2t_6_LVMO.cube.ref
  288. +6 −6 tests/cubeprop-frontier/CMakeLists.txt
  289. +0 −472 tests/cubeprop-frontier/O1_HOMO.cube.ref
  290. +0 −472 tests/cubeprop-frontier/O1_LUMO.cube.ref
  291. +0 −472 tests/cubeprop-frontier/O3_B2g_SOMO.cube.ref
  292. +0 −472 tests/cubeprop-frontier/O3_B3g_SOMO.cube.ref
  293. +0 −472 tests/cubeprop-frontier/O3_DOMO.cube.ref
  294. +0 −472 tests/cubeprop-frontier/O3_LVMO.cube.ref
  295. +17 −15 tests/cubeprop-frontier/input.dat
  296. +532 −0 tests/cubeprop-frontier/output.ref
@@ -105,6 +105,15 @@ Using ``auto`` reduces and/or avoids:
*Reference:* Items 2 and 5 in `[Effective Modern C++] <https://edisciplinas.usp.br/pluginfile.php/1995323/mod_resource/content/1/Effective%20Modern%20C%2B%2B%202014.pdf>`_
.. _`faq:printmem`:
Prefer `GiB` for memory printing
--------------------------------
As memory sizes get larger, we should work in giga (requires decimal printing to not round to zero) rather than mega units.
As it's what we're computing anyways, we should work in 1024-based (mebi, gibi, etc. https://en.wikipedia.org/wiki/Gibibyte) rather than 1000-based units.
As it's a unit, put it in brackets.
Note that users can supply MiB, GB, bytes, or whatever; this guideline is for output printing. ::
outfile->Printf(" DFHelper Memory: AOs need %.3f [GiB]; user supplied %.3f [GiB]. ",
(required * 8 / (1024 * 1024 * 1024.0)),
@@ -42,166 +42,141 @@
#include "psi4/libdpd/dpd.h"
#include "ccwave.h"
namespace psi { namespace ccenergy {
int CCEnergyWavefunction::AO_contribute(struct iwlbuf *InBuf, dpdbuf4 *tau1_AO, dpdbuf4 *tau2_AO)
{
int idx, p, q, r, s;
double value;
Value *valptr;
Label *lblptr;
int Gp, Gq, Gr, Gs, Gpr, Gps, Gqr, Gqs, Grp, Gsp, Grq, Gsq;
int pr, ps, qr, qs, rp, rq, sp, sq, pq, rs;
int count=0;
lblptr = InBuf->labels;
valptr = InBuf->values;
for(idx=4*InBuf->idx; InBuf->idx < InBuf->inbuf; InBuf->idx++) {
p = std::abs((int) lblptr[idx++]);
q = (int) lblptr[idx++];
r = (int) lblptr[idx++];
s = (int) lblptr[idx++];
value = (double) valptr[InBuf->idx];
/*
if(std::fabs(value) > 1e-8)
outfile->Printf(stdout, "%d %d %d %d %20.14f\n", p, q, r, s, value);
*/
count++;
Gp = tau1_AO->params->psym[p];
Gq = tau1_AO->params->psym[q];
Gr = tau1_AO->params->psym[r];
Gs = tau1_AO->params->psym[s];
Gpr = Grp = Gp^Gr;
Gps = Gsp = Gp^Gs;
Gqr = Grq = Gq^Gr;
Gqs = Gsq = Gq^Gs;
pq = tau1_AO->params->rowidx[p][q];
rs = tau1_AO->params->rowidx[r][s];
pr = tau1_AO->params->rowidx[p][r];
rp = tau1_AO->params->rowidx[r][p];
ps = tau1_AO->params->rowidx[p][s];
sp = tau1_AO->params->rowidx[s][p];
qr = tau1_AO->params->rowidx[q][r];
rq = tau1_AO->params->rowidx[r][q];
qs = tau1_AO->params->rowidx[q][s];
sq = tau1_AO->params->rowidx[s][q];
/* (pq|rs) */
if(tau1_AO->params->coltot[Gpr])
C_DAXPY(tau1_AO->params->coltot[Gpr], value, tau1_AO->matrix[Gpr][qs], 1,
tau2_AO->matrix[Gpr][pr], 1);
if(p!=q && r!=s && pq != rs) {
/* (pq|sr) */
if(tau1_AO->params->coltot[Gps])
C_DAXPY(tau1_AO->params->coltot[Gps], value, tau1_AO->matrix[Gps][qr], 1,
tau2_AO->matrix[Gps][ps], 1);
/* (qp|rs) */
if(tau1_AO->params->coltot[Gqr])
C_DAXPY(tau1_AO->params->coltot[Gqr], value, tau1_AO->matrix[Gqr][ps], 1,
tau2_AO->matrix[Gqr][qr], 1);
/* (qp|sr) */
if(tau1_AO->params->coltot[Gqs])
C_DAXPY(tau1_AO->params->coltot[Gqs], value, tau1_AO->matrix[Gqs][pr], 1,
tau2_AO->matrix[Gqs][qs], 1);
/* (rs|pq) */
if(tau1_AO->params->coltot[Grp])
C_DAXPY(tau1_AO->params->coltot[Grp], value, tau1_AO->matrix[Grp][sq], 1,
tau2_AO->matrix[Grp][rp], 1);
/* (sr|pq) */
if(tau1_AO->params->coltot[Gsp])
C_DAXPY(tau1_AO->params->coltot[Gsp], value, tau1_AO->matrix[Gsp][rq], 1,
tau2_AO->matrix[Gsp][sp], 1);
/* (rs|qp) */
if(tau1_AO->params->coltot[Grq])
C_DAXPY(tau1_AO->params->coltot[Grq], value, tau1_AO->matrix[Grq][sp], 1,
tau2_AO->matrix[Grq][rq], 1);
/* (sr|qp) */
if(tau1_AO->params->coltot[Gsq])
C_DAXPY(tau1_AO->params->coltot[Gsq], value, tau1_AO->matrix[Gsq][rp], 1,
tau2_AO->matrix[Gsq][sq],1 );
}
else if(p!=q && r!=s && pq==rs) {
/* (pq|sr) */
if(tau1_AO->params->coltot[Gps])
C_DAXPY(tau1_AO->params->coltot[Gps], value, tau1_AO->matrix[Gps][qr], 1,
tau2_AO->matrix[Gps][ps], 1);
/* (qp|rs) */
if(tau1_AO->params->coltot[Gqr])
C_DAXPY(tau1_AO->params->coltot[Gqr], value, tau1_AO->matrix[Gqr][ps], 1,
tau2_AO->matrix[Gqr][qr], 1);
/* (qp|sr) */
if(tau1_AO->params->coltot[Gqs])
C_DAXPY(tau1_AO->params->coltot[Gqs], value, tau1_AO->matrix[Gqs][pr], 1,
tau2_AO->matrix[Gqs][qs], 1);
}
else if(p!=q && r==s) {
/* (qp|rs) */
if(tau1_AO->params->coltot[Gqr])
C_DAXPY(tau1_AO->params->coltot[Gqr], value, tau1_AO->matrix[Gqr][ps], 1,
tau2_AO->matrix[Gqr][qr], 1);
/* (rs|pq) */
if(tau1_AO->params->coltot[Grp])
C_DAXPY(tau1_AO->params->coltot[Grp], value, tau1_AO->matrix[Grp][sq], 1,
tau2_AO->matrix[Grp][rp], 1);
/* (rs|qp) */
if(tau1_AO->params->coltot[Grq])
C_DAXPY(tau1_AO->params->coltot[Grq], value, tau1_AO->matrix[Grq][sp], 1,
tau2_AO->matrix[Grq][rq], 1);
}
else if(p==q && r!=s) {
/* (pq|sr) */
if(tau1_AO->params->coltot[Gps])
C_DAXPY(tau1_AO->params->coltot[Gps], value, tau1_AO->matrix[Gps][qr], 1,
tau2_AO->matrix[Gps][ps], 1);
/* (rs|pq) */
if(tau1_AO->params->coltot[Grp])
C_DAXPY(tau1_AO->params->coltot[Grp], value, tau1_AO->matrix[Grp][sq], 1,
tau2_AO->matrix[Grp][rp], 1);
/* (sr|pq) */
if(tau1_AO->params->coltot[Gsp])
C_DAXPY(tau1_AO->params->coltot[Gsp], value, tau1_AO->matrix[Gsp][rq], 1,
tau2_AO->matrix[Gsp][sp], 1);
}
else if(p==q && r==s && pq != rs) {
/* (rs|pq) */
if(tau1_AO->params->coltot[Grp])
C_DAXPY(tau1_AO->params->coltot[Grp], value, tau1_AO->matrix[Grp][sq], 1,
tau2_AO->matrix[Grp][rp], 1);
namespace psi {
namespace ccenergy {
int CCEnergyWavefunction::AO_contribute(struct iwlbuf *InBuf, dpdbuf4 *tau1_AO, dpdbuf4 *tau2_AO) {
int idx, p, q, r, s;
double value;
Value *valptr;
Label *lblptr;
int Gp, Gq, Gr, Gs, Gpr, Gps, Gqr, Gqs, Grp, Gsp, Grq, Gsq;
int pr, ps, qr, qs, rp, rq, sp, sq, pq, rs;
int count = 0;
lblptr = InBuf->labels;
valptr = InBuf->values;
for (idx = 4 * InBuf->idx; InBuf->idx < InBuf->inbuf; InBuf->idx++) {
p = std::abs((int)lblptr[idx++]);
q = (int)lblptr[idx++];
r = (int)lblptr[idx++];
s = (int)lblptr[idx++];
value = (double)valptr[InBuf->idx];
/*
if(std::fabs(value) > 1e-8)
outfile->Printf(stdout, "%d %d %d %d %20.14f\n", p, q, r, s, value);
*/
count++;
Gp = tau1_AO->params->psym[p];
Gq = tau1_AO->params->psym[q];
Gr = tau1_AO->params->psym[r];
Gs = tau1_AO->params->psym[s];
Gpr = Grp = Gp ^ Gr;
Gps = Gsp = Gp ^ Gs;
Gqr = Grq = Gq ^ Gr;
Gqs = Gsq = Gq ^ Gs;
pq = tau1_AO->params->rowidx[p][q];
rs = tau1_AO->params->rowidx[r][s];
pr = tau1_AO->params->rowidx[p][r];
rp = tau1_AO->params->rowidx[r][p];
ps = tau1_AO->params->rowidx[p][s];
sp = tau1_AO->params->rowidx[s][p];
qr = tau1_AO->params->rowidx[q][r];
rq = tau1_AO->params->rowidx[r][q];
qs = tau1_AO->params->rowidx[q][s];
sq = tau1_AO->params->rowidx[s][q];
/* (pq|rs) */
if (tau1_AO->params->coltot[Gpr])
C_DAXPY(tau1_AO->params->coltot[Gpr], value, tau1_AO->matrix[Gpr][qs], 1, tau2_AO->matrix[Gpr][pr], 1);
if (p != q && r != s && pq != rs) {
/* (pq|sr) */
if (tau1_AO->params->coltot[Gps])
C_DAXPY(tau1_AO->params->coltot[Gps], value, tau1_AO->matrix[Gps][qr], 1, tau2_AO->matrix[Gps][ps], 1);
/* (qp|rs) */
if (tau1_AO->params->coltot[Gqr])
C_DAXPY(tau1_AO->params->coltot[Gqr], value, tau1_AO->matrix[Gqr][ps], 1, tau2_AO->matrix[Gqr][qr], 1);
/* (qp|sr) */
if (tau1_AO->params->coltot[Gqs])
C_DAXPY(tau1_AO->params->coltot[Gqs], value, tau1_AO->matrix[Gqs][pr], 1, tau2_AO->matrix[Gqs][qs], 1);
/* (rs|pq) */
if (tau1_AO->params->coltot[Grp])
C_DAXPY(tau1_AO->params->coltot[Grp], value, tau1_AO->matrix[Grp][sq], 1, tau2_AO->matrix[Grp][rp], 1);
/* (sr|pq) */
if (tau1_AO->params->coltot[Gsp])
C_DAXPY(tau1_AO->params->coltot[Gsp], value, tau1_AO->matrix[Gsp][rq], 1, tau2_AO->matrix[Gsp][sp], 1);
/* (rs|qp) */
if (tau1_AO->params->coltot[Grq])
C_DAXPY(tau1_AO->params->coltot[Grq], value, tau1_AO->matrix[Grq][sp], 1, tau2_AO->matrix[Grq][rq], 1);
/* (sr|qp) */
if (tau1_AO->params->coltot[Gsq])
C_DAXPY(tau1_AO->params->coltot[Gsq], value, tau1_AO->matrix[Gsq][rp], 1, tau2_AO->matrix[Gsq][sq], 1);
} else if (p != q && r != s && pq == rs) {
/* (pq|sr) */
if (tau1_AO->params->coltot[Gps])
C_DAXPY(tau1_AO->params->coltot[Gps], value, tau1_AO->matrix[Gps][qr], 1, tau2_AO->matrix[Gps][ps], 1);
/* (qp|rs) */
if (tau1_AO->params->coltot[Gqr])
C_DAXPY(tau1_AO->params->coltot[Gqr], value, tau1_AO->matrix[Gqr][ps], 1, tau2_AO->matrix[Gqr][qr], 1);
/* (qp|sr) */
if (tau1_AO->params->coltot[Gqs])
C_DAXPY(tau1_AO->params->coltot[Gqs], value, tau1_AO->matrix[Gqs][pr], 1, tau2_AO->matrix[Gqs][qs], 1);
} else if (p != q && r == s) {
/* (qp|rs) */
if (tau1_AO->params->coltot[Gqr])
C_DAXPY(tau1_AO->params->coltot[Gqr], value, tau1_AO->matrix[Gqr][ps], 1, tau2_AO->matrix[Gqr][qr], 1);
/* (rs|pq) */
if (tau1_AO->params->coltot[Grp])
C_DAXPY(tau1_AO->params->coltot[Grp], value, tau1_AO->matrix[Grp][sq], 1, tau2_AO->matrix[Grp][rp], 1);
/* (rs|qp) */
if (tau1_AO->params->coltot[Grq])
C_DAXPY(tau1_AO->params->coltot[Grq], value, tau1_AO->matrix[Grq][sp], 1, tau2_AO->matrix[Grq][rq], 1);
}
else if (p == q && r != s) {
/* (pq|sr) */
if (tau1_AO->params->coltot[Gps])
C_DAXPY(tau1_AO->params->coltot[Gps], value, tau1_AO->matrix[Gps][qr], 1, tau2_AO->matrix[Gps][ps], 1);
/* (rs|pq) */
if (tau1_AO->params->coltot[Grp])
C_DAXPY(tau1_AO->params->coltot[Grp], value, tau1_AO->matrix[Grp][sq], 1, tau2_AO->matrix[Grp][rp], 1);
/* (sr|pq) */
if (tau1_AO->params->coltot[Gsp])
C_DAXPY(tau1_AO->params->coltot[Gsp], value, tau1_AO->matrix[Gsp][rq], 1, tau2_AO->matrix[Gsp][sp], 1);
}
else if (p == q && r == s && pq != rs) {
/* (rs|pq) */
if (tau1_AO->params->coltot[Grp])
C_DAXPY(tau1_AO->params->coltot[Grp], value, tau1_AO->matrix[Grp][sq], 1, tau2_AO->matrix[Grp][rp], 1);
}
}
}
return count;
return count;
}
}} // namespace psi::ccenergy
} // namespace ccenergy
} // namespace psi
Oops, something went wrong.

0 comments on commit db4c94e

Please sign in to comment.