1 ANALYSIS OF L AND W2 IN THE SEMI-DIRECT MP2 CODE 2 3ROUTINE OBJECTS LINE 4------------------------------------------------------------------------------- 5mp2_energy lai liy wij wab wai 6 mp2_grad_uhf (mp2_grad_doit.F) lai liy wij wab wai 403 7 mp2_wijab_uhf wij wab 8 mp2_lai_uhf lai liy wai 9---> GA_PRINT liy 10--->GA_PRINT lai liy wij wab wai 11 mp2_make_piy liy 522 12 mp2_make_wiy (mp2_make_piy.F) liy wij 526 13--->GA_PRINT lai wij 14 mp2_lai_fock_uhf lai 547 15--->GA_PRINT lai 16 mp2_make_cphf_rhs lai 573 17 mp2_wij_fock_uhf (mp2_lai_fock_uhf) wij 632 18--->GA_PRINT wij 19 mp2_make_tot_wdens wij wab wai 659 20 21Matrix dimensions 22 lai C+A V 23 liy A C 24 wij C+A C+A 25 wab V V 26 wai C+A V 27 28 29mp2_energy 30 mp2_grad_uhf (mp2_grad_doit.F) 31 mp2_wijab_uhf create wij, wab from amplitudes 32 mp2_lai_uhf lai3(jc) <-- t(jb,ia) (cb|ia) L1 33 lai1(kb) <-- (ia|jk) t(jb,ia) L2 34 lai1(yb) <-- (ia|jy) t(jb,ia) L2 35 liy3(jy) <-- t(jb,ia) (yb|ia) L1 36 37 if C lai3 <-- liy3 38 39 if C liy <-- liy3 40 lai <-- lai3 + lai1 41 wai <-- lai1 42 43---> GA_PRINT liy 44--->GA_PRINT lai liy wij wab wai 45 46 mp2_make_piy piy <-- 0.5 liy (ei-ey)^-1 (liy = L1) 47 mp2_make_wiy (mp2_make_piy.F) wiy <-- 0.5 liy (liy = L1) 48 49--->GA_PRINT lai wij 50 51 mp2_lai_fock_uhf lai <-- fock build 52 53--->GA_PRINT lai 54 55 mp2_make_cphf_rhs 56 mp2_wij_fock_uhf (mp2_lai_fock_uhf) wij <-- fock build 57 58--->GA_PRINT wij 59 60 mp2_make_tot_wdens w <-- wij + wab + wai 61 w(pq) <-- -e(p) p(pq) (ij, ai, ab) 62