From 7efe34629d00f94460b0ea068518da4f39e37b65 Mon Sep 17 00:00:00 2001 From: Qiming Sun Date: Tue, 2 Jul 2019 17:51:38 -0700 Subject: [PATCH] * Fix undefined varialbe in nabla-rinv integral * Add integral < i | nabla-rinv | j > --- CMakeLists.txt | 2 +- ChangeLog | 3 + README | 4 +- scripts/auto_intor.cl | 3 +- scripts/gen-code.cl | 82 +++---- src/autocode/breit1.c | 8 - src/autocode/dkb.c | 16 +- src/autocode/grad1.c | 135 ++++-------- src/autocode/hess.c | 336 ++++++++++++++--------------- src/autocode/int3c2e.c | 6 +- src/autocode/intor1.c | 473 ++++++++++++++++++++++++----------------- src/autocode/intor2.c | 16 +- src/autocode/intor3.c | 178 ++++++++-------- 13 files changed, 641 insertions(+), 621 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index b363822c..0b1775d5 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,7 +1,7 @@ cmake_minimum_required (VERSION 2.6) project (cint C) set(cint_SOVERSION "3") -set(cint_VERSION "3.0.17") +set(cint_VERSION "3.0.18") #set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -O2 -DNDEBUG") if ("${CMAKE_BUILD_TYPE}" STREQUAL "") diff --git a/ChangeLog b/ChangeLog index 0b1cea48..04057dbe 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,6 @@ +Version 3.0.18 (2019-07-02): + * Fix undefined varialbe in nabla-rinv integral + * Add integral < i | nabla-rinv | j > Version 3.0.17 (2019-04-29): * 3c2e and 2c2e integrals for Gaussian type geminals Version 3.0.16 (2019-03-23): diff --git a/README b/README index e969830e..416ddd76 100644 --- a/README +++ b/README @@ -1,8 +1,8 @@ libcint ======= -version 3.0.17 -2019-04-28 +version 3.0.18 +2019-07-02 What is libcint diff --git a/scripts/auto_intor.cl b/scripts/auto_intor.cl index 9e206cea..7249bb22 100644 --- a/scripts/auto_intor.cl +++ b/scripts/auto_intor.cl @@ -43,6 +43,8 @@ '("int1e_ggkin" (.5 \| g g nabla dot nabla \|)) '("int1e_ggnuc" ( \| g g nuc \|)) '("int1e_grjxp" ( \| g r cross p \|)) + '("int1e_rinv" (\| rinv \|)) + '("int1e_drinv" (\| nabla-rinv \|)) ) (gen-cint "intor2.c" @@ -125,7 +127,6 @@ '("int1e_kinip" (.5 \| p dot p nabla)) '("int1e_ipnuc" (nabla \| nuc \|)) '("int1e_iprinv" (nabla \| rinv \|)) - '("int1e_rinv" (\| rinv \|)) '("int1e_ipspnucsp" (nabla sigma dot p \| nuc \| sigma dot p)) '("int1e_ipsprinvsp" (nabla sigma dot p \| rinv \| sigma dot p)) '("int1e_ippnucp" (p* nabla \| nuc dot p \|)) diff --git a/scripts/gen-code.cl b/scripts/gen-code.cl index 606bee64..aa60dd74 100644 --- a/scripts/gen-code.cl +++ b/scripts/gen-code.cl @@ -320,6 +320,14 @@ iz = idx[2];~%") (format nil "&c2s_sph_~a" sfx)) (t (format nil "&c2s_cart_~a" sfx)))) +;;; g-intermediates are g0, g1, g2, ... +(defun num-g-intermediates (tot-bits op i-len j-len) + (if (and (intersection *act-left-right* op) + ; nabla-rinv is the last one in the operation list + (<= (+ i-len (length op) j-len) 1)) + (ash 1 tot-bits) + (1- (ash 1 tot-bits)))) + ;!!! Be very cautious of the reverse on i-operators and k operators! ;!!! When multiple tensor components (>= rank 2) provided by the operators ;!!! on bra functions, the ordering of the multiple tensor components are @@ -341,8 +349,8 @@ FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g;~%") (loop - for i in (range (1- (ash 1 tot-bits))) do - (format fout "double *g~a = g~a + envs->g_size * 3;~%" (1+ i) i)) + for i in (range (num-g-intermediates tot-bits op i-len j-len)) do + (format fout "double *g~a = g~a + envs->g_size * 3;~%" (1+ i) i)) (dump-declare-dri-for-rc fout bra-i "i") (dump-declare-dri-for-rc fout (append op ket-j) "j") (dump-declare-giao-ij fout bra-i (append op ket-j)) @@ -411,10 +419,10 @@ iz = idx[2+n*3];~%") FINT *atm, FINT natm, FINT *bas, FINT nbas, double *env, CINTOpt *opt, double *cache) {~%" intname) (format fout envs-common) (when (member 'g raw-infix) - (format fout "FINT i, nout; -FINT counts[4];~%") (when (or (member 'g bra-i) (member 'g ket-j)) (format fout "if (out != NULL && envs.shls[0] == envs.shls[1]) { +FINT i, nout; +FINT counts[4]; counts[0] = envs.nfi * envs.x_ctr[0]; counts[1] = envs.nfj * envs.x_ctr[1]; counts[2] = 1; @@ -431,10 +439,10 @@ return 0; }~%"))) FINT *atm, FINT natm, FINT *bas, FINT nbas, double *env, CINTOpt *opt, double *cache) {~%" intname) (format fout envs-common) (when (member 'g raw-infix) - (format fout "FINT i, nout; -FINT counts[4];~%") (when (or (member 'g bra-i) (member 'g ket-j)) (format fout "if (out != NULL && envs.shls[0] == envs.shls[1]) { +FINT i, nout; +FINT counts[4]; counts[0] = (envs.i_l*2+1) * envs.x_ctr[0]; counts[1] = (envs.j_l*2+1) * envs.x_ctr[1]; counts[2] = 1; @@ -451,10 +459,10 @@ return 0; }~%"))) FINT *atm, FINT natm, FINT *bas, FINT nbas, double *env, CINTOpt *opt, double *cache) {~%" intname) (format fout envs-common) (when (member 'g raw-infix) - (format fout "FINT i, nout; -FINT counts[4];~%") (when (or (member 'g bra-i) (member 'g ket-j)) (format fout "if (out != NULL && envs.shls[0] == envs.shls[1]) { +FINT i, nout; +FINT counts[4]; counts[0] = CINTcgto_spinor(envs.shls[0], envs.bas); counts[1] = CINTcgto_spinor(envs.shls[1], envs.bas); counts[2] = 1; @@ -569,11 +577,9 @@ double *g, FINT *idx, CINTEnvVars *envs, FINT gout_empty) {~%" intname) FINT nrys_roots = envs->nrys_roots; FINT ix, iy, iz, i, n; double *g0 = g;~%") - (if (intersection *act-left-right* op) - (loop for i in (range (ash 1 tot-bits)) do - (format fout "double *g~a = g~a + envs->g_size * 3;~%" (1+ i) i)) - (loop for i in (range (1- (ash 1 tot-bits))) do - (format fout "double *g~a = g~a + envs->g_size * 3;~%" (1+ i) i))) + (loop + for i in (range (num-g-intermediates tot-bits op i-len j-len)) do + (format fout "double *g~a = g~a + envs->g_size * 3;~%" (1+ i) i)) (dump-declare-dri-for-rc fout bra-i "i") (dump-declare-dri-for-rc fout ket-j "j") (dump-declare-dri-for-rc fout bra-k "k") @@ -770,11 +776,9 @@ double *g, FINT *idx, CINTEnvVars *envs, FINT gout_empty) {~%" intname) FINT nrys_roots = envs->nrys_roots; FINT ix, iy, iz, i, n; double *g0 = g;~%") - (if (intersection *act-left-right* op) - (loop for i in (range (ash 1 tot-bits)) do - (format fout "double *g~a = g~a + envs->g_size * 3;~%" (1+ i) i)) - (loop for i in (range (1- (ash 1 tot-bits))) do - (format fout "double *g~a = g~a + envs->g_size * 3;~%" (1+ i) i))) + (loop + for i in (range (num-g-intermediates tot-bits op i-len j-len)) do + (format fout "double *g~a = g~a + envs->g_size * 3;~%" (1+ i) i)) (dump-declare-dri-for-rc fout bra-i "i") (dump-declare-dri-for-rc fout ket-j "j") (dump-declare-dri-for-rc fout bra-k "k") @@ -791,7 +795,7 @@ double *g0 = g;~%") (fmt-l "")) (dump-combo-braket fout fmt-k fmt-op fmt-l k-rev '() '() 0))) (let ((fmt-i "G2E_~aI(g~a, g~a, envs->i_l+~a, envs->j_l, envs->k_l, 0);~%") - (fmt-op (mkstr "G2E_~aJ_SIMD1(g~a, g~a, envs->i_l+~d, envs->j_l+~a, envs->k_l, 0); + (fmt-op (mkstr "G2E_~aJ(g~a, g~a, envs->i_l+~d, envs->j_l+~a, envs->k_l, 0); G2E_~aI(g~a, g~a, envs->i_l+~a, envs->j_l+~a, envs->k_l, 0); for (ix = 0; ix < envs->g_size * 3; ix++) {g~a[ix] += g~a[ix];}~%")) (fmt-j (mkstr "G2E_~aJ(g~a, g~a, envs->i_l+~d, envs->j_l+~a, envs->k_l, 0);~%"))) @@ -849,10 +853,10 @@ for (ix = 0; ix < envs->g_size * 3; ix++) {g~a[ix] += g~a[ix];}~%")) FINT *atm, FINT natm, FINT *bas, FINT nbas, double *env, CINTOpt *opt, double *cache) {~%" intname) (format fout envs-common) (when (member 'g raw-infix) - (format fout "FINT i, nout; -FINT counts[4];~%") (when (or (member 'g bra-i) (member 'g ket-j)) (format fout "if (out != NULL && envs.shls[0] == envs.shls[1]) { +FINT i, nout; +FINT counts[4]; counts[0] = envs.nfi * envs.x_ctr[0]; counts[1] = envs.nfj * envs.x_ctr[1]; counts[2] = envs.nfk * envs.x_ctr[2]; @@ -868,10 +872,10 @@ return 0; }~%"))) FINT *atm, FINT natm, FINT *bas, FINT nbas, double *env, CINTOpt *opt, double *cache) {~%" intname) (format fout envs-common) (when (member 'g raw-infix) - (format fout "FINT i, nout; -FINT counts[4];~%") (when (or (member 'g bra-i) (member 'g ket-j)) (format fout "if (out != NULL && envs.shls[0] == envs.shls[1]) { +FINT i, nout; +FINT counts[4]; counts[0] = (envs.i_l*2+1) * envs.x_ctr[0]; counts[1] = (envs.j_l*2+1) * envs.x_ctr[1]; counts[2] = (envs.k_l*2+1) * envs.x_ctr[2]; @@ -888,10 +892,10 @@ return 0; }~%"))) FINT *atm, FINT natm, FINT *bas, FINT nbas, double *env, CINTOpt *opt, double *cache) {~%" intname) (format fout envs-common) (when (member 'g raw-infix) - (format fout "FINT i, nout; -FINT counts[4];~%") (when (or (member 'g bra-i) (member 'g ket-j)) (format fout "if (out != NULL && envs.shls[0] == envs.shls[1]) { +FINT i, nout; +FINT counts[4]; counts[0] = CINTcgto_spinor(envs.shls[0], envs.bas); counts[1] = CINTcgto_spinor(envs.shls[1], envs.bas); counts[2] = (envs.k_l*2+1) * envs.x_ctr[2]; @@ -924,11 +928,9 @@ double *g, FINT *idx, CINTEnvVars *envs, FINT gout_empty) {~%" intname) FINT nrys_roots = envs->nrys_roots; FINT ix, iy, iz, i, n; double *g0 = g;~%") - (if (intersection *act-left-right* op) - (loop for i in (range (ash 1 tot-bits)) do - (format fout "double *g~a = g~a + envs->g_size * 3;~%" (1+ i) i)) - (loop for i in (range (1- (ash 1 tot-bits))) do - (format fout "double *g~a = g~a + envs->g_size * 3;~%" (1+ i) i))) + (loop + for i in (range (num-g-intermediates tot-bits op i-len 0)) do + (format fout "double *g~a = g~a + envs->g_size * 3;~%" (1+ i) i)) (dump-declare-dri-for-rc fout bra-i "i") (dump-declare-dri-for-rc fout bra-k "k") (if (intersection *act-left-right* op) @@ -1032,11 +1034,9 @@ double *g, FINT *idx, CINTEnvVars *envs, FINT gout_empty) {~%" intname) (format fout "FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g;~%") - (if (intersection *act-left-right* op) - (loop for i in (range (ash 1 tot-bits)) do - (format fout "double *g~a = g~a + envs->g_size * 3;~%" (1+ i) i)) - (loop for i in (range (1- (ash 1 tot-bits))) do - (format fout "double *g~a = g~a + envs->g_size * 3;~%" (1+ i) i))) + (loop + for i in (range (num-g-intermediates tot-bits op i-len j-len)) do + (format fout "double *g~a = g~a + envs->g_size * 3;~%" (1+ i) i)) (dump-declare-dri-for-rc fout bra-i "i") (dump-declare-dri-for-rc fout (append op ket-j) "j") (dump-declare-dri-for-rc fout bra-k "k") @@ -1119,10 +1119,10 @@ iz = idx[2+n*3];~%") FINT *atm, FINT natm, FINT *bas, FINT nbas, double *env, CINTOpt *opt, double *cache) {~%" intname) (format fout envs-common) (when (member 'g raw-infix) - (format fout "FINT i, nout; -FINT counts[4];~%") (when (or (member 'g bra-i) (member 'g ket-j)) (format fout "if (out != NULL && envs.shls[0] == envs.shls[1]) { +FINT i, nout; +FINT counts[4]; counts[0] = envs.nfi * envs.x_ctr[0]; counts[1] = envs.nfj * envs.x_ctr[1]; counts[2] = envs.nfk * envs.x_ctr[2]; @@ -1139,10 +1139,10 @@ return 0; }~%"))) FINT *atm, FINT natm, FINT *bas, FINT nbas, double *env, CINTOpt *opt, double *cache) {~%" intname) (format fout envs-common) (when (member 'g raw-infix) - (format fout "FINT i, nout; -FINT counts[4];~%") (when (or (member 'g bra-i) (member 'g ket-j)) (format fout "if (out != NULL && envs.shls[0] == envs.shls[1]) { +FINT i, nout; +FINT counts[4]; counts[0] = (envs.i_l*2+1) * envs.x_ctr[0]; counts[1] = (envs.j_l*2+1) * envs.x_ctr[1]; counts[2] = (envs.k_l*2+1) * envs.x_ctr[2]; @@ -1159,10 +1159,10 @@ return 0; }~%"))) FINT *atm, FINT natm, FINT *bas, FINT nbas, double *env, CINTOpt *opt, double *cache) {~%" intname) (format fout envs-common) (when (member 'g raw-infix) - (format fout "FINT i, nout; -FINT counts[4];~%") (when (or (member 'g bra-i) (member 'g ket-j)) (format fout "if (out != NULL && envs.shls[0] == envs.shls[1]) { +FINT i, nout; +FINT counts[4]; counts[0] = CINTcgto_spinor(envs.shls[0], envs.bas); counts[1] = CINTcgto_spinor(envs.shls[1], envs.bas); counts[2] = (envs.k_l*2+1) * envs.x_ctr[2]; diff --git a/src/autocode/breit1.c b/src/autocode/breit1.c index 301c462b..d5c7c954 100644 --- a/src/autocode/breit1.c +++ b/src/autocode/breit1.c @@ -35,7 +35,6 @@ double *g12 = g11 + envs->g_size * 3; double *g13 = g12 + envs->g_size * 3; double *g14 = g13 + envs->g_size * 3; double *g15 = g14 + envs->g_size * 3; -double *g16 = g15 + envs->g_size * 3; G2E_D_L(g1, g0, envs->i_l+1, envs->j_l+3, envs->k_l+0, envs->l_l+0); G2E_D_J(g2, g0, envs->i_l+0, envs->j_l+0, envs->k_l, envs->l_l); G2E_D_J(g3, g1, envs->i_l+0, envs->j_l+0, envs->k_l, envs->l_l); @@ -234,7 +233,6 @@ double *g12 = g11 + envs->g_size * 3; double *g13 = g12 + envs->g_size * 3; double *g14 = g13 + envs->g_size * 3; double *g15 = g14 + envs->g_size * 3; -double *g16 = g15 + envs->g_size * 3; G2E_D_K(g1, g0, envs->i_l+1, envs->j_l+3, envs->k_l+0, envs->l_l); G2E_D_J(g2, g0, envs->i_l+0, envs->j_l+0, envs->k_l, envs->l_l); G2E_D_J(g3, g1, envs->i_l+0, envs->j_l+0, envs->k_l, envs->l_l); @@ -433,7 +431,6 @@ double *g12 = g11 + envs->g_size * 3; double *g13 = g12 + envs->g_size * 3; double *g14 = g13 + envs->g_size * 3; double *g15 = g14 + envs->g_size * 3; -double *g16 = g15 + envs->g_size * 3; G2E_D_L(g1, g0, envs->i_l+2, envs->j_l+2, envs->k_l+0, envs->l_l+0); G2E_R0J(g2, g0, envs->i_l+1, envs->j_l+0, envs->k_l, envs->l_l); G2E_R0J(g3, g1, envs->i_l+1, envs->j_l+0, envs->k_l, envs->l_l); @@ -632,7 +629,6 @@ double *g12 = g11 + envs->g_size * 3; double *g13 = g12 + envs->g_size * 3; double *g14 = g13 + envs->g_size * 3; double *g15 = g14 + envs->g_size * 3; -double *g16 = g15 + envs->g_size * 3; G2E_D_K(g1, g0, envs->i_l+2, envs->j_l+2, envs->k_l+0, envs->l_l); G2E_R0J(g2, g0, envs->i_l+1, envs->j_l+0, envs->k_l, envs->l_l); G2E_R0J(g3, g1, envs->i_l+1, envs->j_l+0, envs->k_l, envs->l_l); @@ -831,7 +827,6 @@ double *g12 = g11 + envs->g_size * 3; double *g13 = g12 + envs->g_size * 3; double *g14 = g13 + envs->g_size * 3; double *g15 = g14 + envs->g_size * 3; -double *g16 = g15 + envs->g_size * 3; G2E_D_L(g1, g0, envs->i_l+1, envs->j_l+2, envs->k_l+0, envs->l_l+0); G2E_R0L(g2, g0, envs->i_l+1, envs->j_l+2, envs->k_l+0, envs->l_l+1); G2E_D_L(g3, g2, envs->i_l+1, envs->j_l+2, envs->k_l+0, envs->l_l+0); @@ -1034,7 +1029,6 @@ double *g12 = g11 + envs->g_size * 3; double *g13 = g12 + envs->g_size * 3; double *g14 = g13 + envs->g_size * 3; double *g15 = g14 + envs->g_size * 3; -double *g16 = g15 + envs->g_size * 3; G2E_R0L(g1, g0, envs->i_l+1, envs->j_l+2, envs->k_l+1, envs->l_l+0); G2E_D_K(g2, g0, envs->i_l+1, envs->j_l+2, envs->k_l+0, envs->l_l); G2E_D_K(g3, g1, envs->i_l+1, envs->j_l+2, envs->k_l+0, envs->l_l); @@ -1237,7 +1231,6 @@ double *g12 = g11 + envs->g_size * 3; double *g13 = g12 + envs->g_size * 3; double *g14 = g13 + envs->g_size * 3; double *g15 = g14 + envs->g_size * 3; -double *g16 = g15 + envs->g_size * 3; G2E_D_L(g1, g0, envs->i_l+2, envs->j_l+1, envs->k_l+0, envs->l_l+0); G2E_R0L(g2, g0, envs->i_l+2, envs->j_l+1, envs->k_l+0, envs->l_l+1); G2E_D_L(g3, g2, envs->i_l+2, envs->j_l+1, envs->k_l+0, envs->l_l+0); @@ -1440,7 +1433,6 @@ double *g12 = g11 + envs->g_size * 3; double *g13 = g12 + envs->g_size * 3; double *g14 = g13 + envs->g_size * 3; double *g15 = g14 + envs->g_size * 3; -double *g16 = g15 + envs->g_size * 3; G2E_R0L(g1, g0, envs->i_l+2, envs->j_l+1, envs->k_l+1, envs->l_l+0); G2E_D_K(g2, g0, envs->i_l+2, envs->j_l+1, envs->k_l+0, envs->l_l); G2E_D_K(g3, g1, envs->i_l+2, envs->j_l+1, envs->k_l+0, envs->l_l); diff --git a/src/autocode/dkb.c b/src/autocode/dkb.c index de346223..1e982e12 100644 --- a/src/autocode/dkb.c +++ b/src/autocode/dkb.c @@ -17,13 +17,13 @@ void CINTgout1e_int1e_spspsp(double *gout, double *g, FINT *idx, CINTEnvVars *en FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; -double *g4 = g3 + envs->g_size * 3; -double *g5 = g4 + envs->g_size * 3; -double *g6 = g5 + envs->g_size * 3; -double *g7 = g6 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; +double *g4 = g3 + envs->g_size * 3; +double *g5 = g4 + envs->g_size * 3; +double *g6 = g5 + envs->g_size * 3; +double *g7 = g6 + envs->g_size * 3; double s[27]; G1E_D_J(g1, g0, envs->i_l+1, envs->j_l+0, 0); G1E_D_J(g2, g0, envs->i_l+1, envs->j_l+1, 0); @@ -103,7 +103,7 @@ void CINTgout1e_int1e_spnuc(double *gout, double *g, FINT *idx, CINTEnvVars *env FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; double s[3]; G1E_D_I(g1, g0, envs->i_l+0, envs->j_l, 0); for (n = 0; n < nf; n++) { diff --git a/src/autocode/grad1.c b/src/autocode/grad1.c index bd8ca28b..5fdb0c62 100644 --- a/src/autocode/grad1.c +++ b/src/autocode/grad1.c @@ -17,7 +17,7 @@ void CINTgout1e_int1e_ipovlp(double *gout, double *g, FINT *idx, CINTEnvVars *en FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; double s[3]; G1E_D_I(g1, g0, envs->i_l+0, envs->j_l, 0); for (n = 0; n < nf; n++) { @@ -66,7 +66,7 @@ void CINTgout1e_int1e_ovlpip(double *gout, double *g, FINT *idx, CINTEnvVars *en FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; double s[3]; G1E_D_J(g1, g0, envs->i_l+0, envs->j_l+0, 0); for (n = 0; n < nf; n++) { @@ -115,13 +115,13 @@ void CINTgout1e_int1e_ipkin(double *gout, double *g, FINT *idx, CINTEnvVars *env FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; -double *g4 = g3 + envs->g_size * 3; -double *g5 = g4 + envs->g_size * 3; -double *g6 = g5 + envs->g_size * 3; -double *g7 = g6 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; +double *g4 = g3 + envs->g_size * 3; +double *g5 = g4 + envs->g_size * 3; +double *g6 = g5 + envs->g_size * 3; +double *g7 = g6 + envs->g_size * 3; double s[27]; G1E_D_J(g1, g0, envs->i_l+1, envs->j_l+0, 0); G1E_D_J(g2, g0, envs->i_l+1, envs->j_l+1, 0); @@ -203,13 +203,13 @@ void CINTgout1e_int1e_kinip(double *gout, double *g, FINT *idx, CINTEnvVars *env FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; -double *g4 = g3 + envs->g_size * 3; -double *g5 = g4 + envs->g_size * 3; -double *g6 = g5 + envs->g_size * 3; -double *g7 = g6 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; +double *g4 = g3 + envs->g_size * 3; +double *g5 = g4 + envs->g_size * 3; +double *g6 = g5 + envs->g_size * 3; +double *g7 = g6 + envs->g_size * 3; double s[27]; G1E_D_J(g1, g0, envs->i_l+0, envs->j_l+0, 0); G1E_D_J(g2, g0, envs->i_l+0, envs->j_l+1, 0); @@ -291,7 +291,7 @@ void CINTgout1e_int1e_ipnuc(double *gout, double *g, FINT *idx, CINTEnvVars *env FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; double s[3]; G1E_D_I(g1, g0, envs->i_l+0, envs->j_l, 0); for (n = 0; n < nf; n++) { @@ -340,7 +340,7 @@ void CINTgout1e_int1e_iprinv(double *gout, double *g, FINT *idx, CINTEnvVars *en FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; double s[3]; G1E_D_I(g1, g0, envs->i_l+0, envs->j_l, 0); for (n = 0; n < nf; n++) { @@ -384,61 +384,18 @@ return CINT1e_spinor_drv(out, dims, &envs, cache, &c2s_sf_1e, 1); } // int1e_iprinv_spinor ALL_CINT1E(int1e_iprinv) ALL_CINT1E_FORTRAN_(int1e_iprinv) -/* */ -void CINTgout1e_int1e_rinv(double *gout, double *g, FINT *idx, CINTEnvVars *envs, FINT gout_empty) { -FINT nf = envs->nf; -FINT ix, iy, iz, n; -double *g0 = g; -double s[1]; -for (n = 0; n < nf; n++) { -ix = idx[0+n*3]; -iy = idx[1+n*3]; -iz = idx[2+n*3]; -s[0] = + g0[ix+0]*g0[iy+0]*g0[iz+0]; -gout[n*1+0] += + s[0]; -}} -void int1e_rinv_optimizer(CINTOpt **opt, FINT *atm, FINT natm, FINT *bas, FINT nbas, double *env) { -FINT ng[] = {0, 0, 0, 0, 0, 1, 0, 1}; -CINTall_1e_optimizer(opt, ng, atm, natm, bas, nbas, env); -} -FINT int1e_rinv_cart(double *out, FINT *dims, FINT *shls, -FINT *atm, FINT natm, FINT *bas, FINT nbas, double *env, CINTOpt *opt, double *cache) { -FINT ng[] = {0, 0, 0, 0, 0, 1, 0, 1}; -CINTEnvVars envs; -CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); -envs.f_gout = &CINTgout1e_int1e_rinv; -return CINT1e_drv(out, dims, &envs, cache, &c2s_cart_1e, 1); -} // int1e_rinv_cart -FINT int1e_rinv_sph(double *out, FINT *dims, FINT *shls, -FINT *atm, FINT natm, FINT *bas, FINT nbas, double *env, CINTOpt *opt, double *cache) { -FINT ng[] = {0, 0, 0, 0, 0, 1, 0, 1}; -CINTEnvVars envs; -CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); -envs.f_gout = &CINTgout1e_int1e_rinv; -return CINT1e_drv(out, dims, &envs, cache, &c2s_sph_1e, 1); -} // int1e_rinv_sph -FINT int1e_rinv_spinor(double complex *out, FINT *dims, FINT *shls, -FINT *atm, FINT natm, FINT *bas, FINT nbas, double *env, CINTOpt *opt, double *cache) { -FINT ng[] = {0, 0, 0, 0, 0, 1, 0, 1}; -CINTEnvVars envs; -CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); -envs.f_gout = &CINTgout1e_int1e_rinv; -return CINT1e_spinor_drv(out, dims, &envs, cache, &c2s_sf_1e, 1); -} // int1e_rinv_spinor -ALL_CINT1E(int1e_rinv) -ALL_CINT1E_FORTRAN_(int1e_rinv) /* */ void CINTgout1e_int1e_ipspnucsp(double *gout, double *g, FINT *idx, CINTEnvVars *envs, FINT gout_empty) { FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; -double *g4 = g3 + envs->g_size * 3; -double *g5 = g4 + envs->g_size * 3; -double *g6 = g5 + envs->g_size * 3; -double *g7 = g6 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; +double *g4 = g3 + envs->g_size * 3; +double *g5 = g4 + envs->g_size * 3; +double *g6 = g5 + envs->g_size * 3; +double *g7 = g6 + envs->g_size * 3; double s[27]; G1E_D_J(g1, g0, envs->i_l+2, envs->j_l+0, 0); G1E_D_I(g2, g0, envs->i_l+1, envs->j_l, 0); @@ -526,13 +483,13 @@ void CINTgout1e_int1e_ipsprinvsp(double *gout, double *g, FINT *idx, CINTEnvVars FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; -double *g4 = g3 + envs->g_size * 3; -double *g5 = g4 + envs->g_size * 3; -double *g6 = g5 + envs->g_size * 3; -double *g7 = g6 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; +double *g4 = g3 + envs->g_size * 3; +double *g5 = g4 + envs->g_size * 3; +double *g6 = g5 + envs->g_size * 3; +double *g7 = g6 + envs->g_size * 3; double s[27]; G1E_D_J(g1, g0, envs->i_l+2, envs->j_l+0, 0); G1E_D_I(g2, g0, envs->i_l+1, envs->j_l, 0); @@ -620,13 +577,13 @@ void CINTgout1e_int1e_ippnucp(double *gout, double *g, FINT *idx, CINTEnvVars *e FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; -double *g4 = g3 + envs->g_size * 3; -double *g5 = g4 + envs->g_size * 3; -double *g6 = g5 + envs->g_size * 3; -double *g7 = g6 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; +double *g4 = g3 + envs->g_size * 3; +double *g5 = g4 + envs->g_size * 3; +double *g6 = g5 + envs->g_size * 3; +double *g7 = g6 + envs->g_size * 3; double s[27]; G1E_D_J(g1, g0, envs->i_l+2, envs->j_l+0, 0); G1E_D_I(g2, g0, envs->i_l+1, envs->j_l, 0); @@ -705,13 +662,13 @@ void CINTgout1e_int1e_ipprinvp(double *gout, double *g, FINT *idx, CINTEnvVars * FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; -double *g4 = g3 + envs->g_size * 3; -double *g5 = g4 + envs->g_size * 3; -double *g6 = g5 + envs->g_size * 3; -double *g7 = g6 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; +double *g4 = g3 + envs->g_size * 3; +double *g5 = g4 + envs->g_size * 3; +double *g6 = g5 + envs->g_size * 3; +double *g7 = g6 + envs->g_size * 3; double s[27]; G1E_D_J(g1, g0, envs->i_l+2, envs->j_l+0, 0); G1E_D_I(g2, g0, envs->i_l+1, envs->j_l, 0); diff --git a/src/autocode/hess.c b/src/autocode/hess.c index 8ce60bd0..4d3a91f5 100644 --- a/src/autocode/hess.c +++ b/src/autocode/hess.c @@ -17,9 +17,9 @@ void CINTgout1e_int1e_ipipovlp(double *gout, double *g, FINT *idx, CINTEnvVars * FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double s[9]; G1E_D_I(g1, g0, envs->i_l+1, envs->j_l, 0); G1E_D_I(g2, g0, envs->i_l+0, envs->j_l, 0); @@ -82,9 +82,9 @@ void CINTgout1e_int1e_ipovlpip(double *gout, double *g, FINT *idx, CINTEnvVars * FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double s[9]; G1E_D_J(g1, g0, envs->i_l+1, envs->j_l+0, 0); G1E_D_I(g2, g0, envs->i_l+0, envs->j_l, 0); @@ -147,21 +147,21 @@ void CINTgout1e_int1e_ipipkin(double *gout, double *g, FINT *idx, CINTEnvVars *e FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; -double *g4 = g3 + envs->g_size * 3; -double *g5 = g4 + envs->g_size * 3; -double *g6 = g5 + envs->g_size * 3; -double *g7 = g6 + envs->g_size * 3; -double *g8 = g7 + envs->g_size * 3; -double *g9 = g8 + envs->g_size * 3; -double *g10 = g9 + envs->g_size * 3; -double *g11 = g10 + envs->g_size * 3; -double *g12 = g11 + envs->g_size * 3; -double *g13 = g12 + envs->g_size * 3; -double *g14 = g13 + envs->g_size * 3; -double *g15 = g14 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; +double *g4 = g3 + envs->g_size * 3; +double *g5 = g4 + envs->g_size * 3; +double *g6 = g5 + envs->g_size * 3; +double *g7 = g6 + envs->g_size * 3; +double *g8 = g7 + envs->g_size * 3; +double *g9 = g8 + envs->g_size * 3; +double *g10 = g9 + envs->g_size * 3; +double *g11 = g10 + envs->g_size * 3; +double *g12 = g11 + envs->g_size * 3; +double *g13 = g12 + envs->g_size * 3; +double *g14 = g13 + envs->g_size * 3; +double *g15 = g14 + envs->g_size * 3; double s[81]; G1E_D_J(g1, g0, envs->i_l+2, envs->j_l+0, 0); G1E_D_J(g2, g0, envs->i_l+2, envs->j_l+1, 0); @@ -311,21 +311,21 @@ void CINTgout1e_int1e_ipkinip(double *gout, double *g, FINT *idx, CINTEnvVars *e FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; -double *g4 = g3 + envs->g_size * 3; -double *g5 = g4 + envs->g_size * 3; -double *g6 = g5 + envs->g_size * 3; -double *g7 = g6 + envs->g_size * 3; -double *g8 = g7 + envs->g_size * 3; -double *g9 = g8 + envs->g_size * 3; -double *g10 = g9 + envs->g_size * 3; -double *g11 = g10 + envs->g_size * 3; -double *g12 = g11 + envs->g_size * 3; -double *g13 = g12 + envs->g_size * 3; -double *g14 = g13 + envs->g_size * 3; -double *g15 = g14 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; +double *g4 = g3 + envs->g_size * 3; +double *g5 = g4 + envs->g_size * 3; +double *g6 = g5 + envs->g_size * 3; +double *g7 = g6 + envs->g_size * 3; +double *g8 = g7 + envs->g_size * 3; +double *g9 = g8 + envs->g_size * 3; +double *g10 = g9 + envs->g_size * 3; +double *g11 = g10 + envs->g_size * 3; +double *g12 = g11 + envs->g_size * 3; +double *g13 = g12 + envs->g_size * 3; +double *g14 = g13 + envs->g_size * 3; +double *g15 = g14 + envs->g_size * 3; double s[81]; G1E_D_J(g1, g0, envs->i_l+1, envs->j_l+0, 0); G1E_D_J(g2, g0, envs->i_l+1, envs->j_l+1, 0); @@ -475,9 +475,9 @@ void CINTgout1e_int1e_ipipnuc(double *gout, double *g, FINT *idx, CINTEnvVars *e FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double s[9]; G1E_D_I(g1, g0, envs->i_l+1, envs->j_l, 0); G1E_D_I(g2, g0, envs->i_l+0, envs->j_l, 0); @@ -540,9 +540,9 @@ void CINTgout1e_int1e_ipnucip(double *gout, double *g, FINT *idx, CINTEnvVars *e FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double s[9]; G1E_D_J(g1, g0, envs->i_l+1, envs->j_l+0, 0); G1E_D_I(g2, g0, envs->i_l+0, envs->j_l, 0); @@ -605,9 +605,9 @@ void CINTgout1e_int1e_ipiprinv(double *gout, double *g, FINT *idx, CINTEnvVars * FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double s[9]; G1E_D_I(g1, g0, envs->i_l+1, envs->j_l, 0); G1E_D_I(g2, g0, envs->i_l+0, envs->j_l, 0); @@ -670,9 +670,9 @@ void CINTgout1e_int1e_iprinvip(double *gout, double *g, FINT *idx, CINTEnvVars * FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double s[9]; G1E_D_J(g1, g0, envs->i_l+1, envs->j_l+0, 0); G1E_D_I(g2, g0, envs->i_l+0, envs->j_l, 0); @@ -981,21 +981,21 @@ void CINTgout1e_int1e_ipippnucp(double *gout, double *g, FINT *idx, CINTEnvVars FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; -double *g4 = g3 + envs->g_size * 3; -double *g5 = g4 + envs->g_size * 3; -double *g6 = g5 + envs->g_size * 3; -double *g7 = g6 + envs->g_size * 3; -double *g8 = g7 + envs->g_size * 3; -double *g9 = g8 + envs->g_size * 3; -double *g10 = g9 + envs->g_size * 3; -double *g11 = g10 + envs->g_size * 3; -double *g12 = g11 + envs->g_size * 3; -double *g13 = g12 + envs->g_size * 3; -double *g14 = g13 + envs->g_size * 3; -double *g15 = g14 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; +double *g4 = g3 + envs->g_size * 3; +double *g5 = g4 + envs->g_size * 3; +double *g6 = g5 + envs->g_size * 3; +double *g7 = g6 + envs->g_size * 3; +double *g8 = g7 + envs->g_size * 3; +double *g9 = g8 + envs->g_size * 3; +double *g10 = g9 + envs->g_size * 3; +double *g11 = g10 + envs->g_size * 3; +double *g12 = g11 + envs->g_size * 3; +double *g13 = g12 + envs->g_size * 3; +double *g14 = g13 + envs->g_size * 3; +double *g15 = g14 + envs->g_size * 3; double s[81]; G1E_D_J(g1, g0, envs->i_l+3, envs->j_l+0, 0); G1E_D_I(g2, g0, envs->i_l+2, envs->j_l, 0); @@ -1142,21 +1142,21 @@ void CINTgout1e_int1e_ippnucpip(double *gout, double *g, FINT *idx, CINTEnvVars FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; -double *g4 = g3 + envs->g_size * 3; -double *g5 = g4 + envs->g_size * 3; -double *g6 = g5 + envs->g_size * 3; -double *g7 = g6 + envs->g_size * 3; -double *g8 = g7 + envs->g_size * 3; -double *g9 = g8 + envs->g_size * 3; -double *g10 = g9 + envs->g_size * 3; -double *g11 = g10 + envs->g_size * 3; -double *g12 = g11 + envs->g_size * 3; -double *g13 = g12 + envs->g_size * 3; -double *g14 = g13 + envs->g_size * 3; -double *g15 = g14 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; +double *g4 = g3 + envs->g_size * 3; +double *g5 = g4 + envs->g_size * 3; +double *g6 = g5 + envs->g_size * 3; +double *g7 = g6 + envs->g_size * 3; +double *g8 = g7 + envs->g_size * 3; +double *g9 = g8 + envs->g_size * 3; +double *g10 = g9 + envs->g_size * 3; +double *g11 = g10 + envs->g_size * 3; +double *g12 = g11 + envs->g_size * 3; +double *g13 = g12 + envs->g_size * 3; +double *g14 = g13 + envs->g_size * 3; +double *g15 = g14 + envs->g_size * 3; double s[81]; G1E_D_J(g1, g0, envs->i_l+2, envs->j_l+0, 0); G1E_D_J(g2, g0, envs->i_l+2, envs->j_l+1, 0); @@ -1303,21 +1303,21 @@ void CINTgout1e_int1e_ipipprinvp(double *gout, double *g, FINT *idx, CINTEnvVars FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; -double *g4 = g3 + envs->g_size * 3; -double *g5 = g4 + envs->g_size * 3; -double *g6 = g5 + envs->g_size * 3; -double *g7 = g6 + envs->g_size * 3; -double *g8 = g7 + envs->g_size * 3; -double *g9 = g8 + envs->g_size * 3; -double *g10 = g9 + envs->g_size * 3; -double *g11 = g10 + envs->g_size * 3; -double *g12 = g11 + envs->g_size * 3; -double *g13 = g12 + envs->g_size * 3; -double *g14 = g13 + envs->g_size * 3; -double *g15 = g14 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; +double *g4 = g3 + envs->g_size * 3; +double *g5 = g4 + envs->g_size * 3; +double *g6 = g5 + envs->g_size * 3; +double *g7 = g6 + envs->g_size * 3; +double *g8 = g7 + envs->g_size * 3; +double *g9 = g8 + envs->g_size * 3; +double *g10 = g9 + envs->g_size * 3; +double *g11 = g10 + envs->g_size * 3; +double *g12 = g11 + envs->g_size * 3; +double *g13 = g12 + envs->g_size * 3; +double *g14 = g13 + envs->g_size * 3; +double *g15 = g14 + envs->g_size * 3; double s[81]; G1E_D_J(g1, g0, envs->i_l+3, envs->j_l+0, 0); G1E_D_I(g2, g0, envs->i_l+2, envs->j_l, 0); @@ -1464,21 +1464,21 @@ void CINTgout1e_int1e_ipprinvpip(double *gout, double *g, FINT *idx, CINTEnvVars FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; -double *g4 = g3 + envs->g_size * 3; -double *g5 = g4 + envs->g_size * 3; -double *g6 = g5 + envs->g_size * 3; -double *g7 = g6 + envs->g_size * 3; -double *g8 = g7 + envs->g_size * 3; -double *g9 = g8 + envs->g_size * 3; -double *g10 = g9 + envs->g_size * 3; -double *g11 = g10 + envs->g_size * 3; -double *g12 = g11 + envs->g_size * 3; -double *g13 = g12 + envs->g_size * 3; -double *g14 = g13 + envs->g_size * 3; -double *g15 = g14 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; +double *g4 = g3 + envs->g_size * 3; +double *g5 = g4 + envs->g_size * 3; +double *g6 = g5 + envs->g_size * 3; +double *g7 = g6 + envs->g_size * 3; +double *g8 = g7 + envs->g_size * 3; +double *g9 = g8 + envs->g_size * 3; +double *g10 = g9 + envs->g_size * 3; +double *g11 = g10 + envs->g_size * 3; +double *g12 = g11 + envs->g_size * 3; +double *g13 = g12 + envs->g_size * 3; +double *g14 = g13 + envs->g_size * 3; +double *g15 = g14 + envs->g_size * 3; double s[81]; G1E_D_J(g1, g0, envs->i_l+2, envs->j_l+0, 0); G1E_D_J(g2, g0, envs->i_l+2, envs->j_l+1, 0); @@ -1625,21 +1625,21 @@ void CINTgout1e_int1e_ipipspnucsp(double *gout, double *g, FINT *idx, CINTEnvVar FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; -double *g4 = g3 + envs->g_size * 3; -double *g5 = g4 + envs->g_size * 3; -double *g6 = g5 + envs->g_size * 3; -double *g7 = g6 + envs->g_size * 3; -double *g8 = g7 + envs->g_size * 3; -double *g9 = g8 + envs->g_size * 3; -double *g10 = g9 + envs->g_size * 3; -double *g11 = g10 + envs->g_size * 3; -double *g12 = g11 + envs->g_size * 3; -double *g13 = g12 + envs->g_size * 3; -double *g14 = g13 + envs->g_size * 3; -double *g15 = g14 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; +double *g4 = g3 + envs->g_size * 3; +double *g5 = g4 + envs->g_size * 3; +double *g6 = g5 + envs->g_size * 3; +double *g7 = g6 + envs->g_size * 3; +double *g8 = g7 + envs->g_size * 3; +double *g9 = g8 + envs->g_size * 3; +double *g10 = g9 + envs->g_size * 3; +double *g11 = g10 + envs->g_size * 3; +double *g12 = g11 + envs->g_size * 3; +double *g13 = g12 + envs->g_size * 3; +double *g14 = g13 + envs->g_size * 3; +double *g15 = g14 + envs->g_size * 3; double s[81]; G1E_D_J(g1, g0, envs->i_l+3, envs->j_l+0, 0); G1E_D_I(g2, g0, envs->i_l+2, envs->j_l, 0); @@ -1813,21 +1813,21 @@ void CINTgout1e_int1e_ipspnucspip(double *gout, double *g, FINT *idx, CINTEnvVar FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; -double *g4 = g3 + envs->g_size * 3; -double *g5 = g4 + envs->g_size * 3; -double *g6 = g5 + envs->g_size * 3; -double *g7 = g6 + envs->g_size * 3; -double *g8 = g7 + envs->g_size * 3; -double *g9 = g8 + envs->g_size * 3; -double *g10 = g9 + envs->g_size * 3; -double *g11 = g10 + envs->g_size * 3; -double *g12 = g11 + envs->g_size * 3; -double *g13 = g12 + envs->g_size * 3; -double *g14 = g13 + envs->g_size * 3; -double *g15 = g14 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; +double *g4 = g3 + envs->g_size * 3; +double *g5 = g4 + envs->g_size * 3; +double *g6 = g5 + envs->g_size * 3; +double *g7 = g6 + envs->g_size * 3; +double *g8 = g7 + envs->g_size * 3; +double *g9 = g8 + envs->g_size * 3; +double *g10 = g9 + envs->g_size * 3; +double *g11 = g10 + envs->g_size * 3; +double *g12 = g11 + envs->g_size * 3; +double *g13 = g12 + envs->g_size * 3; +double *g14 = g13 + envs->g_size * 3; +double *g15 = g14 + envs->g_size * 3; double s[81]; G1E_D_J(g1, g0, envs->i_l+2, envs->j_l+0, 0); G1E_D_J(g2, g0, envs->i_l+2, envs->j_l+1, 0); @@ -2001,21 +2001,21 @@ void CINTgout1e_int1e_ipipsprinvsp(double *gout, double *g, FINT *idx, CINTEnvVa FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; -double *g4 = g3 + envs->g_size * 3; -double *g5 = g4 + envs->g_size * 3; -double *g6 = g5 + envs->g_size * 3; -double *g7 = g6 + envs->g_size * 3; -double *g8 = g7 + envs->g_size * 3; -double *g9 = g8 + envs->g_size * 3; -double *g10 = g9 + envs->g_size * 3; -double *g11 = g10 + envs->g_size * 3; -double *g12 = g11 + envs->g_size * 3; -double *g13 = g12 + envs->g_size * 3; -double *g14 = g13 + envs->g_size * 3; -double *g15 = g14 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; +double *g4 = g3 + envs->g_size * 3; +double *g5 = g4 + envs->g_size * 3; +double *g6 = g5 + envs->g_size * 3; +double *g7 = g6 + envs->g_size * 3; +double *g8 = g7 + envs->g_size * 3; +double *g9 = g8 + envs->g_size * 3; +double *g10 = g9 + envs->g_size * 3; +double *g11 = g10 + envs->g_size * 3; +double *g12 = g11 + envs->g_size * 3; +double *g13 = g12 + envs->g_size * 3; +double *g14 = g13 + envs->g_size * 3; +double *g15 = g14 + envs->g_size * 3; double s[81]; G1E_D_J(g1, g0, envs->i_l+3, envs->j_l+0, 0); G1E_D_I(g2, g0, envs->i_l+2, envs->j_l, 0); @@ -2189,21 +2189,21 @@ void CINTgout1e_int1e_ipsprinvspip(double *gout, double *g, FINT *idx, CINTEnvVa FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; -double *g4 = g3 + envs->g_size * 3; -double *g5 = g4 + envs->g_size * 3; -double *g6 = g5 + envs->g_size * 3; -double *g7 = g6 + envs->g_size * 3; -double *g8 = g7 + envs->g_size * 3; -double *g9 = g8 + envs->g_size * 3; -double *g10 = g9 + envs->g_size * 3; -double *g11 = g10 + envs->g_size * 3; -double *g12 = g11 + envs->g_size * 3; -double *g13 = g12 + envs->g_size * 3; -double *g14 = g13 + envs->g_size * 3; -double *g15 = g14 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; +double *g4 = g3 + envs->g_size * 3; +double *g5 = g4 + envs->g_size * 3; +double *g6 = g5 + envs->g_size * 3; +double *g7 = g6 + envs->g_size * 3; +double *g8 = g7 + envs->g_size * 3; +double *g9 = g8 + envs->g_size * 3; +double *g10 = g9 + envs->g_size * 3; +double *g11 = g10 + envs->g_size * 3; +double *g12 = g11 + envs->g_size * 3; +double *g13 = g12 + envs->g_size * 3; +double *g14 = g13 + envs->g_size * 3; +double *g15 = g14 + envs->g_size * 3; double s[81]; G1E_D_J(g1, g0, envs->i_l+2, envs->j_l+0, 0); G1E_D_J(g2, g0, envs->i_l+2, envs->j_l+1, 0); diff --git a/src/autocode/int3c2e.c b/src/autocode/int3c2e.c index b25cea5d..d30e81bf 100644 --- a/src/autocode/int3c2e.c +++ b/src/autocode/int3c2e.c @@ -539,9 +539,9 @@ CINTEnvVars envs; CINTinit_int3c2e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout2e_int3c2e_ig1; envs.common_factor *= 0.5; +if (out != NULL && envs.shls[0] == envs.shls[1]) { FINT i, nout; FINT counts[4]; -if (out != NULL && envs.shls[0] == envs.shls[1]) { counts[0] = envs.nfi * envs.x_ctr[0]; counts[1] = envs.nfj * envs.x_ctr[1]; counts[2] = envs.nfk * envs.x_ctr[2]; @@ -560,9 +560,9 @@ CINTEnvVars envs; CINTinit_int3c2e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout2e_int3c2e_ig1; envs.common_factor *= 0.5; +if (out != NULL && envs.shls[0] == envs.shls[1]) { FINT i, nout; FINT counts[4]; -if (out != NULL && envs.shls[0] == envs.shls[1]) { counts[0] = (envs.i_l*2+1) * envs.x_ctr[0]; counts[1] = (envs.j_l*2+1) * envs.x_ctr[1]; counts[2] = (envs.k_l*2+1) * envs.x_ctr[2]; @@ -581,9 +581,9 @@ CINTEnvVars envs; CINTinit_int3c2e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout2e_int3c2e_ig1; envs.common_factor *= 0.5; +if (out != NULL && envs.shls[0] == envs.shls[1]) { FINT i, nout; FINT counts[4]; -if (out != NULL && envs.shls[0] == envs.shls[1]) { counts[0] = CINTcgto_spinor(envs.shls[0], envs.bas); counts[1] = CINTcgto_spinor(envs.shls[1], envs.bas); counts[2] = (envs.k_l*2+1) * envs.x_ctr[2]; diff --git a/src/autocode/intor1.c b/src/autocode/intor1.c index c4a5f6d3..2f19d32a 100644 --- a/src/autocode/intor1.c +++ b/src/autocode/intor1.c @@ -103,9 +103,9 @@ void CINTgout1e_int1e_kin(double *gout, double *g, FINT *idx, CINTEnvVars *envs, FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double s[9]; G1E_D_J(g1, g0, envs->i_l+0, envs->j_l+0, 0); G1E_D_J(g2, g0, envs->i_l+0, envs->j_l+1, 0); @@ -163,9 +163,9 @@ void CINTgout1e_int1e_ia01p(double *gout, double *g, FINT *idx, CINTEnvVars *env FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double s[9]; G1E_D_J(g1, g0, envs->i_l+0, envs->j_l+0, 0); G1E_D_J(g2, g0, envs->i_l+0, envs->j_l+1, 0); @@ -224,9 +224,9 @@ void CINTgout1e_int1e_giao_irjxp(double *gout, double *g, FINT *idx, CINTEnvVars FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double s[9]; G1E_D_J(g1, g0, envs->i_l+0, envs->j_l+0, 0); G1E_R_J(g2, g0, envs->i_l+0, envs->j_l+1, 0); @@ -283,9 +283,9 @@ void CINTgout1e_int1e_cg_irxp(double *gout, double *g, FINT *idx, CINTEnvVars *e FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double drj[3]; drj[0] = envs->rj[0] - envs->env[PTR_COMMON_ORIG+0]; drj[1] = envs->rj[1] - envs->env[PTR_COMMON_ORIG+1]; @@ -346,9 +346,9 @@ void CINTgout1e_int1e_giao_a11part(double *gout, double *g, FINT *idx, CINTEnvVa FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double s[9]; G1E_R_J(g1, g0, envs->i_l+0, envs->j_l+0, 0); G1E_D_J(g2, g0, envs->i_l+0, envs->j_l+1, 0); @@ -416,9 +416,9 @@ void CINTgout1e_int1e_cg_a11part(double *gout, double *g, FINT *idx, CINTEnvVars FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double drj[3]; drj[0] = envs->rj[0] - envs->env[PTR_COMMON_ORIG+0]; drj[1] = envs->rj[1] - envs->env[PTR_COMMON_ORIG+1]; @@ -490,13 +490,13 @@ void CINTgout1e_int1e_a01gp(double *gout, double *g, FINT *idx, CINTEnvVars *env FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; -double *g4 = g3 + envs->g_size * 3; -double *g5 = g4 + envs->g_size * 3; -double *g6 = g5 + envs->g_size * 3; -double *g7 = g6 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; +double *g4 = g3 + envs->g_size * 3; +double *g5 = g4 + envs->g_size * 3; +double *g6 = g5 + envs->g_size * 3; +double *g7 = g6 + envs->g_size * 3; double rirj[3], c[3]; rirj[0] = envs->ri[0] - envs->rj[0]; rirj[1] = envs->ri[1] - envs->rj[1]; @@ -566,9 +566,9 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_a01gp; envs.common_factor *= 0.5; +if (out != NULL && envs.shls[0] == envs.shls[1]) { FINT i, nout; FINT counts[4]; -if (out != NULL && envs.shls[0] == envs.shls[1]) { counts[0] = envs.nfi * envs.x_ctr[0]; counts[1] = envs.nfj * envs.x_ctr[1]; counts[2] = 1; @@ -587,9 +587,9 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_a01gp; envs.common_factor *= 0.5; +if (out != NULL && envs.shls[0] == envs.shls[1]) { FINT i, nout; FINT counts[4]; -if (out != NULL && envs.shls[0] == envs.shls[1]) { counts[0] = (envs.i_l*2+1) * envs.x_ctr[0]; counts[1] = (envs.j_l*2+1) * envs.x_ctr[1]; counts[2] = 1; @@ -608,9 +608,9 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_a01gp; envs.common_factor *= 0.5; +if (out != NULL && envs.shls[0] == envs.shls[1]) { FINT i, nout; FINT counts[4]; -if (out != NULL && envs.shls[0] == envs.shls[1]) { counts[0] = CINTcgto_spinor(envs.shls[0], envs.bas); counts[1] = CINTcgto_spinor(envs.shls[1], envs.bas); counts[2] = 1; @@ -629,13 +629,13 @@ void CINTgout1e_int1e_igkin(double *gout, double *g, FINT *idx, CINTEnvVars *env FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; -double *g4 = g3 + envs->g_size * 3; -double *g5 = g4 + envs->g_size * 3; -double *g6 = g5 + envs->g_size * 3; -double *g7 = g6 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; +double *g4 = g3 + envs->g_size * 3; +double *g5 = g4 + envs->g_size * 3; +double *g6 = g5 + envs->g_size * 3; +double *g7 = g6 + envs->g_size * 3; double rirj[3], c[3]; rirj[0] = envs->ri[0] - envs->rj[0]; rirj[1] = envs->ri[1] - envs->rj[1]; @@ -697,9 +697,9 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_igkin; envs.common_factor *= 0.25; +if (out != NULL && envs.shls[0] == envs.shls[1]) { FINT i, nout; FINT counts[4]; -if (out != NULL && envs.shls[0] == envs.shls[1]) { counts[0] = envs.nfi * envs.x_ctr[0]; counts[1] = envs.nfj * envs.x_ctr[1]; counts[2] = 1; @@ -718,9 +718,9 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_igkin; envs.common_factor *= 0.25; +if (out != NULL && envs.shls[0] == envs.shls[1]) { FINT i, nout; FINT counts[4]; -if (out != NULL && envs.shls[0] == envs.shls[1]) { counts[0] = (envs.i_l*2+1) * envs.x_ctr[0]; counts[1] = (envs.j_l*2+1) * envs.x_ctr[1]; counts[2] = 1; @@ -739,9 +739,9 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_igkin; envs.common_factor *= 0.25; +if (out != NULL && envs.shls[0] == envs.shls[1]) { FINT i, nout; FINT counts[4]; -if (out != NULL && envs.shls[0] == envs.shls[1]) { counts[0] = CINTcgto_spinor(envs.shls[0], envs.bas); counts[1] = CINTcgto_spinor(envs.shls[1], envs.bas); counts[2] = 1; @@ -760,7 +760,7 @@ void CINTgout1e_int1e_igovlp(double *gout, double *g, FINT *idx, CINTEnvVars *en FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; double rirj[3], c[3]; rirj[0] = envs->ri[0] - envs->rj[0]; rirj[1] = envs->ri[1] - envs->rj[1]; @@ -792,9 +792,9 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_igovlp; envs.common_factor *= 0.5; +if (out != NULL && envs.shls[0] == envs.shls[1]) { FINT i, nout; FINT counts[4]; -if (out != NULL && envs.shls[0] == envs.shls[1]) { counts[0] = envs.nfi * envs.x_ctr[0]; counts[1] = envs.nfj * envs.x_ctr[1]; counts[2] = 1; @@ -813,9 +813,9 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_igovlp; envs.common_factor *= 0.5; +if (out != NULL && envs.shls[0] == envs.shls[1]) { FINT i, nout; FINT counts[4]; -if (out != NULL && envs.shls[0] == envs.shls[1]) { counts[0] = (envs.i_l*2+1) * envs.x_ctr[0]; counts[1] = (envs.j_l*2+1) * envs.x_ctr[1]; counts[2] = 1; @@ -834,9 +834,9 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_igovlp; envs.common_factor *= 0.5; +if (out != NULL && envs.shls[0] == envs.shls[1]) { FINT i, nout; FINT counts[4]; -if (out != NULL && envs.shls[0] == envs.shls[1]) { counts[0] = CINTcgto_spinor(envs.shls[0], envs.bas); counts[1] = CINTcgto_spinor(envs.shls[1], envs.bas); counts[2] = 1; @@ -855,7 +855,7 @@ void CINTgout1e_int1e_ignuc(double *gout, double *g, FINT *idx, CINTEnvVars *env FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; double rirj[3], c[3]; rirj[0] = envs->ri[0] - envs->rj[0]; rirj[1] = envs->ri[1] - envs->rj[1]; @@ -887,9 +887,9 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_ignuc; envs.common_factor *= 0.5; +if (out != NULL && envs.shls[0] == envs.shls[1]) { FINT i, nout; FINT counts[4]; -if (out != NULL && envs.shls[0] == envs.shls[1]) { counts[0] = envs.nfi * envs.x_ctr[0]; counts[1] = envs.nfj * envs.x_ctr[1]; counts[2] = 1; @@ -908,9 +908,9 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_ignuc; envs.common_factor *= 0.5; +if (out != NULL && envs.shls[0] == envs.shls[1]) { FINT i, nout; FINT counts[4]; -if (out != NULL && envs.shls[0] == envs.shls[1]) { counts[0] = (envs.i_l*2+1) * envs.x_ctr[0]; counts[1] = (envs.j_l*2+1) * envs.x_ctr[1]; counts[2] = 1; @@ -929,9 +929,9 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_ignuc; envs.common_factor *= 0.5; +if (out != NULL && envs.shls[0] == envs.shls[1]) { FINT i, nout; FINT counts[4]; -if (out != NULL && envs.shls[0] == envs.shls[1]) { counts[0] = CINTcgto_spinor(envs.shls[0], envs.bas); counts[1] = CINTcgto_spinor(envs.shls[1], envs.bas); counts[2] = 1; @@ -950,9 +950,9 @@ void CINTgout1e_int1e_pnucp(double *gout, double *g, FINT *idx, CINTEnvVars *env FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double s[9]; G1E_D_J(g1, g0, envs->i_l+1, envs->j_l+0, 0); G1E_D_I(g2, g0, envs->i_l+0, envs->j_l, 0); @@ -1007,7 +1007,7 @@ void CINTgout1e_int1e_z(double *gout, double *g, FINT *idx, CINTEnvVars *envs, F FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; double drj[3]; drj[0] = envs->rj[0] - envs->env[PTR_COMMON_ORIG+0]; drj[1] = envs->rj[1] - envs->env[PTR_COMMON_ORIG+1]; @@ -1058,9 +1058,9 @@ void CINTgout1e_int1e_zz(double *gout, double *g, FINT *idx, CINTEnvVars *envs, FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double drj[3]; drj[0] = envs->rj[0] - envs->env[PTR_COMMON_ORIG+0]; drj[1] = envs->rj[1] - envs->env[PTR_COMMON_ORIG+1]; @@ -1119,7 +1119,7 @@ void CINTgout1e_int1e_r(double *gout, double *g, FINT *idx, CINTEnvVars *envs, F FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; double drj[3]; drj[0] = envs->rj[0] - envs->env[PTR_COMMON_ORIG+0]; drj[1] = envs->rj[1] - envs->env[PTR_COMMON_ORIG+1]; @@ -1172,9 +1172,9 @@ void CINTgout1e_int1e_r2(double *gout, double *g, FINT *idx, CINTEnvVars *envs, FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double drj[3]; drj[0] = envs->rj[0] - envs->env[PTR_COMMON_ORIG+0]; drj[1] = envs->rj[1] - envs->env[PTR_COMMON_ORIG+1]; @@ -1233,9 +1233,9 @@ void CINTgout1e_int1e_rr(double *gout, double *g, FINT *idx, CINTEnvVars *envs, FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double drj[3]; drj[0] = envs->rj[0] - envs->env[PTR_COMMON_ORIG+0]; drj[1] = envs->rj[1] - envs->env[PTR_COMMON_ORIG+1]; @@ -1302,13 +1302,13 @@ void CINTgout1e_int1e_rrr(double *gout, double *g, FINT *idx, CINTEnvVars *envs, FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; -double *g4 = g3 + envs->g_size * 3; -double *g5 = g4 + envs->g_size * 3; -double *g6 = g5 + envs->g_size * 3; -double *g7 = g6 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; +double *g4 = g3 + envs->g_size * 3; +double *g5 = g4 + envs->g_size * 3; +double *g6 = g5 + envs->g_size * 3; +double *g7 = g6 + envs->g_size * 3; double drj[3]; drj[0] = envs->rj[0] - envs->env[PTR_COMMON_ORIG+0]; drj[1] = envs->rj[1] - envs->env[PTR_COMMON_ORIG+1]; @@ -1415,21 +1415,21 @@ void CINTgout1e_int1e_rrrr(double *gout, double *g, FINT *idx, CINTEnvVars *envs FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; -double *g4 = g3 + envs->g_size * 3; -double *g5 = g4 + envs->g_size * 3; -double *g6 = g5 + envs->g_size * 3; -double *g7 = g6 + envs->g_size * 3; -double *g8 = g7 + envs->g_size * 3; -double *g9 = g8 + envs->g_size * 3; -double *g10 = g9 + envs->g_size * 3; -double *g11 = g10 + envs->g_size * 3; -double *g12 = g11 + envs->g_size * 3; -double *g13 = g12 + envs->g_size * 3; -double *g14 = g13 + envs->g_size * 3; -double *g15 = g14 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; +double *g4 = g3 + envs->g_size * 3; +double *g5 = g4 + envs->g_size * 3; +double *g6 = g5 + envs->g_size * 3; +double *g7 = g6 + envs->g_size * 3; +double *g8 = g7 + envs->g_size * 3; +double *g9 = g8 + envs->g_size * 3; +double *g10 = g9 + envs->g_size * 3; +double *g11 = g10 + envs->g_size * 3; +double *g12 = g11 + envs->g_size * 3; +double *g13 = g12 + envs->g_size * 3; +double *g14 = g13 + envs->g_size * 3; +double *g15 = g14 + envs->g_size * 3; double drj[3]; drj[0] = envs->rj[0] - envs->env[PTR_COMMON_ORIG+0]; drj[1] = envs->rj[1] - envs->env[PTR_COMMON_ORIG+1]; @@ -1652,7 +1652,7 @@ void CINTgout1e_int1e_z_origj(double *gout, double *g, FINT *idx, CINTEnvVars *e FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; double s[3]; G1E_R_J(g1, g0, envs->i_l+0, envs->j_l+0, 0); for (n = 0; n < nf; n++) { @@ -1699,9 +1699,9 @@ void CINTgout1e_int1e_zz_origj(double *gout, double *g, FINT *idx, CINTEnvVars * FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double s[9]; G1E_R_J(g1, g0, envs->i_l+0, envs->j_l+0, 0); G1E_R_J(g2, g0, envs->i_l+0, envs->j_l+1, 0); @@ -1756,7 +1756,7 @@ void CINTgout1e_int1e_r_origj(double *gout, double *g, FINT *idx, CINTEnvVars *e FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; double s[3]; G1E_R_J(g1, g0, envs->i_l+0, envs->j_l+0, 0); for (n = 0; n < nf; n++) { @@ -1805,9 +1805,9 @@ void CINTgout1e_int1e_rr_origj(double *gout, double *g, FINT *idx, CINTEnvVars * FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double s[9]; G1E_R_J(g1, g0, envs->i_l+0, envs->j_l+0, 0); G1E_R_J(g2, g0, envs->i_l+0, envs->j_l+1, 0); @@ -1870,9 +1870,9 @@ void CINTgout1e_int1e_r2_origj(double *gout, double *g, FINT *idx, CINTEnvVars * FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double s[9]; G1E_R_J(g1, g0, envs->i_l+0, envs->j_l+0, 0); G1E_R_J(g2, g0, envs->i_l+0, envs->j_l+1, 0); @@ -1927,21 +1927,21 @@ void CINTgout1e_int1e_r4_origj(double *gout, double *g, FINT *idx, CINTEnvVars * FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; -double *g4 = g3 + envs->g_size * 3; -double *g5 = g4 + envs->g_size * 3; -double *g6 = g5 + envs->g_size * 3; -double *g7 = g6 + envs->g_size * 3; -double *g8 = g7 + envs->g_size * 3; -double *g9 = g8 + envs->g_size * 3; -double *g10 = g9 + envs->g_size * 3; -double *g11 = g10 + envs->g_size * 3; -double *g12 = g11 + envs->g_size * 3; -double *g13 = g12 + envs->g_size * 3; -double *g14 = g13 + envs->g_size * 3; -double *g15 = g14 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; +double *g4 = g3 + envs->g_size * 3; +double *g5 = g4 + envs->g_size * 3; +double *g6 = g5 + envs->g_size * 3; +double *g7 = g6 + envs->g_size * 3; +double *g8 = g7 + envs->g_size * 3; +double *g9 = g8 + envs->g_size * 3; +double *g10 = g9 + envs->g_size * 3; +double *g11 = g10 + envs->g_size * 3; +double *g12 = g11 + envs->g_size * 3; +double *g13 = g12 + envs->g_size * 3; +double *g14 = g13 + envs->g_size * 3; +double *g15 = g14 + envs->g_size * 3; double s[81]; G1E_R_J(g1, g0, envs->i_l+0, envs->j_l+0, 0); G1E_R_J(g2, g0, envs->i_l+0, envs->j_l+1, 0); @@ -2080,21 +2080,21 @@ void CINTgout1e_int1e_p4(double *gout, double *g, FINT *idx, CINTEnvVars *envs, FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; -double *g4 = g3 + envs->g_size * 3; -double *g5 = g4 + envs->g_size * 3; -double *g6 = g5 + envs->g_size * 3; -double *g7 = g6 + envs->g_size * 3; -double *g8 = g7 + envs->g_size * 3; -double *g9 = g8 + envs->g_size * 3; -double *g10 = g9 + envs->g_size * 3; -double *g11 = g10 + envs->g_size * 3; -double *g12 = g11 + envs->g_size * 3; -double *g13 = g12 + envs->g_size * 3; -double *g14 = g13 + envs->g_size * 3; -double *g15 = g14 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; +double *g4 = g3 + envs->g_size * 3; +double *g5 = g4 + envs->g_size * 3; +double *g6 = g5 + envs->g_size * 3; +double *g7 = g6 + envs->g_size * 3; +double *g8 = g7 + envs->g_size * 3; +double *g9 = g8 + envs->g_size * 3; +double *g10 = g9 + envs->g_size * 3; +double *g11 = g10 + envs->g_size * 3; +double *g12 = g11 + envs->g_size * 3; +double *g13 = g12 + envs->g_size * 3; +double *g14 = g13 + envs->g_size * 3; +double *g15 = g14 + envs->g_size * 3; double s[81]; G1E_D_J(g1, g0, envs->i_l+2, envs->j_l+0, 0); G1E_D_J(g2, g0, envs->i_l+2, envs->j_l+1, 0); @@ -2233,9 +2233,9 @@ void CINTgout1e_int1e_prinvp(double *gout, double *g, FINT *idx, CINTEnvVars *en FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double s[9]; G1E_D_J(g1, g0, envs->i_l+1, envs->j_l+0, 0); G1E_D_I(g2, g0, envs->i_l+0, envs->j_l, 0); @@ -2290,9 +2290,9 @@ void CINTgout1e_int1e_prinvxp(double *gout, double *g, FINT *idx, CINTEnvVars *e FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double s[9]; G1E_D_J(g1, g0, envs->i_l+1, envs->j_l+0, 0); G1E_D_I(g2, g0, envs->i_l+0, envs->j_l, 0); @@ -2349,9 +2349,9 @@ void CINTgout1e_int1e_pnucxp(double *gout, double *g, FINT *idx, CINTEnvVars *en FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double s[9]; G1E_D_J(g1, g0, envs->i_l+1, envs->j_l+0, 0); G1E_D_I(g2, g0, envs->i_l+0, envs->j_l, 0); @@ -2408,9 +2408,9 @@ void CINTgout1e_int1e_irp(double *gout, double *g, FINT *idx, CINTEnvVars *envs, FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double drj[3]; drj[0] = envs->rj[0] - envs->env[PTR_COMMON_ORIG+0]; drj[1] = envs->rj[1] - envs->env[PTR_COMMON_ORIG+1]; @@ -2477,13 +2477,13 @@ void CINTgout1e_int1e_irrp(double *gout, double *g, FINT *idx, CINTEnvVars *envs FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; -double *g4 = g3 + envs->g_size * 3; -double *g5 = g4 + envs->g_size * 3; -double *g6 = g5 + envs->g_size * 3; -double *g7 = g6 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; +double *g4 = g3 + envs->g_size * 3; +double *g5 = g4 + envs->g_size * 3; +double *g6 = g5 + envs->g_size * 3; +double *g7 = g6 + envs->g_size * 3; double drj[3]; drj[0] = envs->rj[0] - envs->env[PTR_COMMON_ORIG+0]; drj[1] = envs->rj[1] - envs->env[PTR_COMMON_ORIG+1]; @@ -2590,13 +2590,13 @@ void CINTgout1e_int1e_irpr(double *gout, double *g, FINT *idx, CINTEnvVars *envs FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; -double *g4 = g3 + envs->g_size * 3; -double *g5 = g4 + envs->g_size * 3; -double *g6 = g5 + envs->g_size * 3; -double *g7 = g6 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; +double *g4 = g3 + envs->g_size * 3; +double *g5 = g4 + envs->g_size * 3; +double *g6 = g5 + envs->g_size * 3; +double *g7 = g6 + envs->g_size * 3; double drj[3]; drj[0] = envs->rj[0] - envs->env[PTR_COMMON_ORIG+0]; drj[1] = envs->rj[1] - envs->env[PTR_COMMON_ORIG+1]; @@ -2703,9 +2703,9 @@ void CINTgout1e_int1e_ggovlp(double *gout, double *g, FINT *idx, CINTEnvVars *en FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double rirj[3], c[9]; rirj[0] = envs->ri[0] - envs->rj[0]; rirj[1] = envs->ri[1] - envs->rj[1]; @@ -2757,8 +2757,6 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_ggovlp; envs.common_factor *= 0.25; -FINT i, nout; -FINT counts[4]; return CINT1e_drv(out, dims, &envs, cache, &c2s_cart_1e, 0); } // int1e_ggovlp_cart FINT int1e_ggovlp_sph(double *out, FINT *dims, FINT *shls, @@ -2768,8 +2766,6 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_ggovlp; envs.common_factor *= 0.25; -FINT i, nout; -FINT counts[4]; return CINT1e_drv(out, dims, &envs, cache, &c2s_sph_1e, 0); } // int1e_ggovlp_sph FINT int1e_ggovlp_spinor(double complex *out, FINT *dims, FINT *shls, @@ -2779,8 +2775,6 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_ggovlp; envs.common_factor *= 0.25; -FINT i, nout; -FINT counts[4]; return CINT1e_spinor_drv(out, dims, &envs, cache, &c2s_sf_1e, 0); } // int1e_ggovlp_spinor ALL_CINT1E(int1e_ggovlp) @@ -2790,21 +2784,21 @@ void CINTgout1e_int1e_ggkin(double *gout, double *g, FINT *idx, CINTEnvVars *env FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; -double *g4 = g3 + envs->g_size * 3; -double *g5 = g4 + envs->g_size * 3; -double *g6 = g5 + envs->g_size * 3; -double *g7 = g6 + envs->g_size * 3; -double *g8 = g7 + envs->g_size * 3; -double *g9 = g8 + envs->g_size * 3; -double *g10 = g9 + envs->g_size * 3; -double *g11 = g10 + envs->g_size * 3; -double *g12 = g11 + envs->g_size * 3; -double *g13 = g12 + envs->g_size * 3; -double *g14 = g13 + envs->g_size * 3; -double *g15 = g14 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; +double *g4 = g3 + envs->g_size * 3; +double *g5 = g4 + envs->g_size * 3; +double *g6 = g5 + envs->g_size * 3; +double *g7 = g6 + envs->g_size * 3; +double *g8 = g7 + envs->g_size * 3; +double *g9 = g8 + envs->g_size * 3; +double *g10 = g9 + envs->g_size * 3; +double *g11 = g10 + envs->g_size * 3; +double *g12 = g11 + envs->g_size * 3; +double *g13 = g12 + envs->g_size * 3; +double *g14 = g13 + envs->g_size * 3; +double *g15 = g14 + envs->g_size * 3; double rirj[3], c[9]; rirj[0] = envs->ri[0] - envs->rj[0]; rirj[1] = envs->ri[1] - envs->rj[1]; @@ -2940,8 +2934,6 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_ggkin; envs.common_factor *= 0.125; -FINT i, nout; -FINT counts[4]; return CINT1e_drv(out, dims, &envs, cache, &c2s_cart_1e, 0); } // int1e_ggkin_cart FINT int1e_ggkin_sph(double *out, FINT *dims, FINT *shls, @@ -2951,8 +2943,6 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_ggkin; envs.common_factor *= 0.125; -FINT i, nout; -FINT counts[4]; return CINT1e_drv(out, dims, &envs, cache, &c2s_sph_1e, 0); } // int1e_ggkin_sph FINT int1e_ggkin_spinor(double complex *out, FINT *dims, FINT *shls, @@ -2962,8 +2952,6 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_ggkin; envs.common_factor *= 0.125; -FINT i, nout; -FINT counts[4]; return CINT1e_spinor_drv(out, dims, &envs, cache, &c2s_sf_1e, 0); } // int1e_ggkin_spinor ALL_CINT1E(int1e_ggkin) @@ -2973,9 +2961,9 @@ void CINTgout1e_int1e_ggnuc(double *gout, double *g, FINT *idx, CINTEnvVars *env FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double rirj[3], c[9]; rirj[0] = envs->ri[0] - envs->rj[0]; rirj[1] = envs->ri[1] - envs->rj[1]; @@ -3027,8 +3015,6 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_ggnuc; envs.common_factor *= 0.25; -FINT i, nout; -FINT counts[4]; return CINT1e_drv(out, dims, &envs, cache, &c2s_cart_1e, 2); } // int1e_ggnuc_cart FINT int1e_ggnuc_sph(double *out, FINT *dims, FINT *shls, @@ -3038,8 +3024,6 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_ggnuc; envs.common_factor *= 0.25; -FINT i, nout; -FINT counts[4]; return CINT1e_drv(out, dims, &envs, cache, &c2s_sph_1e, 2); } // int1e_ggnuc_sph FINT int1e_ggnuc_spinor(double complex *out, FINT *dims, FINT *shls, @@ -3049,8 +3033,6 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_ggnuc; envs.common_factor *= 0.25; -FINT i, nout; -FINT counts[4]; return CINT1e_spinor_drv(out, dims, &envs, cache, &c2s_sf_1e, 2); } // int1e_ggnuc_spinor ALL_CINT1E(int1e_ggnuc) @@ -3060,13 +3042,13 @@ void CINTgout1e_int1e_grjxp(double *gout, double *g, FINT *idx, CINTEnvVars *env FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; -double *g4 = g3 + envs->g_size * 3; -double *g5 = g4 + envs->g_size * 3; -double *g6 = g5 + envs->g_size * 3; -double *g7 = g6 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; +double *g4 = g3 + envs->g_size * 3; +double *g5 = g4 + envs->g_size * 3; +double *g6 = g5 + envs->g_size * 3; +double *g7 = g6 + envs->g_size * 3; double rirj[3], c[3]; rirj[0] = envs->ri[0] - envs->rj[0]; rirj[1] = envs->ri[1] - envs->rj[1]; @@ -3134,8 +3116,6 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_grjxp; envs.common_factor *= 0.5; -FINT i, nout; -FINT counts[4]; return CINT1e_drv(out, dims, &envs, cache, &c2s_cart_1e, 0); } // int1e_grjxp_cart FINT int1e_grjxp_sph(double *out, FINT *dims, FINT *shls, @@ -3145,8 +3125,6 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_grjxp; envs.common_factor *= 0.5; -FINT i, nout; -FINT counts[4]; return CINT1e_drv(out, dims, &envs, cache, &c2s_sph_1e, 0); } // int1e_grjxp_sph FINT int1e_grjxp_spinor(double complex *out, FINT *dims, FINT *shls, @@ -3156,9 +3134,102 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_grjxp; envs.common_factor *= 0.5; -FINT i, nout; -FINT counts[4]; return CINT1e_spinor_drv(out, dims, &envs, cache, &c2s_sf_1e, 0); } // int1e_grjxp_spinor ALL_CINT1E(int1e_grjxp) ALL_CINT1E_FORTRAN_(int1e_grjxp) +/* */ +void CINTgout1e_int1e_rinv(double *gout, double *g, FINT *idx, CINTEnvVars *envs, FINT gout_empty) { +FINT nf = envs->nf; +FINT ix, iy, iz, n; +double *g0 = g; +double s[1]; +for (n = 0; n < nf; n++) { +ix = idx[0+n*3]; +iy = idx[1+n*3]; +iz = idx[2+n*3]; +s[0] = + g0[ix+0]*g0[iy+0]*g0[iz+0]; +gout[n*1+0] += + s[0]; +}} +void int1e_rinv_optimizer(CINTOpt **opt, FINT *atm, FINT natm, FINT *bas, FINT nbas, double *env) { +FINT ng[] = {0, 0, 0, 0, 0, 1, 0, 1}; +CINTall_1e_optimizer(opt, ng, atm, natm, bas, nbas, env); +} +FINT int1e_rinv_cart(double *out, FINT *dims, FINT *shls, +FINT *atm, FINT natm, FINT *bas, FINT nbas, double *env, CINTOpt *opt, double *cache) { +FINT ng[] = {0, 0, 0, 0, 0, 1, 0, 1}; +CINTEnvVars envs; +CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); +envs.f_gout = &CINTgout1e_int1e_rinv; +return CINT1e_drv(out, dims, &envs, cache, &c2s_cart_1e, 1); +} // int1e_rinv_cart +FINT int1e_rinv_sph(double *out, FINT *dims, FINT *shls, +FINT *atm, FINT natm, FINT *bas, FINT nbas, double *env, CINTOpt *opt, double *cache) { +FINT ng[] = {0, 0, 0, 0, 0, 1, 0, 1}; +CINTEnvVars envs; +CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); +envs.f_gout = &CINTgout1e_int1e_rinv; +return CINT1e_drv(out, dims, &envs, cache, &c2s_sph_1e, 1); +} // int1e_rinv_sph +FINT int1e_rinv_spinor(double complex *out, FINT *dims, FINT *shls, +FINT *atm, FINT natm, FINT *bas, FINT nbas, double *env, CINTOpt *opt, double *cache) { +FINT ng[] = {0, 0, 0, 0, 0, 1, 0, 1}; +CINTEnvVars envs; +CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); +envs.f_gout = &CINTgout1e_int1e_rinv; +return CINT1e_spinor_drv(out, dims, &envs, cache, &c2s_sf_1e, 1); +} // int1e_rinv_spinor +ALL_CINT1E(int1e_rinv) +ALL_CINT1E_FORTRAN_(int1e_rinv) +/* */ +void CINTgout1e_int1e_drinv(double *gout, double *g, FINT *idx, CINTEnvVars *envs, FINT gout_empty) { +FINT nf = envs->nf; +FINT ix, iy, iz, n; +double *g0 = g; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double s[3]; +G1E_D_J(g1, g0, envs->i_l+0, envs->j_l+0, 0); +G1E_D_I(g2, g0, envs->i_l+0, envs->j_l+0, 0); +for (ix = 0; ix < envs->g_size * 3; ix++) {g1[ix] += g2[ix];} +for (n = 0; n < nf; n++) { +ix = idx[0+n*3]; +iy = idx[1+n*3]; +iz = idx[2+n*3]; +s[0] = + g1[ix+0]*g0[iy+0]*g0[iz+0]; +s[1] = + g0[ix+0]*g1[iy+0]*g0[iz+0]; +s[2] = + g0[ix+0]*g0[iy+0]*g1[iz+0]; +gout[n*3+0] += + s[0]; +gout[n*3+1] += + s[1]; +gout[n*3+2] += + s[2]; +}} +void int1e_drinv_optimizer(CINTOpt **opt, FINT *atm, FINT natm, FINT *bas, FINT nbas, double *env) { +FINT ng[] = {0, 1, 0, 0, 1, 1, 0, 3}; +CINTall_1e_optimizer(opt, ng, atm, natm, bas, nbas, env); +} +FINT int1e_drinv_cart(double *out, FINT *dims, FINT *shls, +FINT *atm, FINT natm, FINT *bas, FINT nbas, double *env, CINTOpt *opt, double *cache) { +FINT ng[] = {0, 1, 0, 0, 1, 1, 0, 3}; +CINTEnvVars envs; +CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); +envs.f_gout = &CINTgout1e_int1e_drinv; +return CINT1e_drv(out, dims, &envs, cache, &c2s_cart_1e, 1); +} // int1e_drinv_cart +FINT int1e_drinv_sph(double *out, FINT *dims, FINT *shls, +FINT *atm, FINT natm, FINT *bas, FINT nbas, double *env, CINTOpt *opt, double *cache) { +FINT ng[] = {0, 1, 0, 0, 1, 1, 0, 3}; +CINTEnvVars envs; +CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); +envs.f_gout = &CINTgout1e_int1e_drinv; +return CINT1e_drv(out, dims, &envs, cache, &c2s_sph_1e, 1); +} // int1e_drinv_sph +FINT int1e_drinv_spinor(double complex *out, FINT *dims, FINT *shls, +FINT *atm, FINT natm, FINT *bas, FINT nbas, double *env, CINTOpt *opt, double *cache) { +FINT ng[] = {0, 1, 0, 0, 1, 1, 0, 3}; +CINTEnvVars envs; +CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); +envs.f_gout = &CINTgout1e_int1e_drinv; +return CINT1e_spinor_drv(out, dims, &envs, cache, &c2s_sf_1e, 1); +} // int1e_drinv_spinor +ALL_CINT1E(int1e_drinv) +ALL_CINT1E_FORTRAN_(int1e_drinv) diff --git a/src/autocode/intor2.c b/src/autocode/intor2.c index c4e29e96..c6a190b3 100644 --- a/src/autocode/intor2.c +++ b/src/autocode/intor2.c @@ -526,7 +526,6 @@ double *g0 = g; double *g1 = g0 + envs->g_size * 3; double *g2 = g1 + envs->g_size * 3; double *g3 = g2 + envs->g_size * 3; -double *g4 = g3 + envs->g_size * 3; double drj[3]; drj[0] = envs->rj[0] - envs->env[PTR_COMMON_ORIG+0]; drj[1] = envs->rj[1] - envs->env[PTR_COMMON_ORIG+1]; @@ -615,7 +614,6 @@ double *g0 = g; double *g1 = g0 + envs->g_size * 3; double *g2 = g1 + envs->g_size * 3; double *g3 = g2 + envs->g_size * 3; -double *g4 = g3 + envs->g_size * 3; G2E_R_J(g1, g0, envs->i_l+0, envs->j_l+0, envs->k_l, envs->l_l); G2E_D_J(g2, g0, envs->i_l+0, envs->j_l+1, envs->k_l, envs->l_l); G2E_D_I(g3, g0, envs->i_l+0, envs->j_l+1, envs->k_l, envs->l_l); @@ -704,7 +702,6 @@ double *g4 = g3 + envs->g_size * 3; double *g5 = g4 + envs->g_size * 3; double *g6 = g5 + envs->g_size * 3; double *g7 = g6 + envs->g_size * 3; -double *g8 = g7 + envs->g_size * 3; double rirj[3]; rirj[0] = envs->ri[0] - envs->rj[0]; rirj[1] = envs->ri[1] - envs->rj[1]; @@ -862,7 +859,6 @@ double *g4 = g3 + envs->g_size * 3; double *g5 = g4 + envs->g_size * 3; double *g6 = g5 + envs->g_size * 3; double *g7 = g6 + envs->g_size * 3; -double *g8 = g7 + envs->g_size * 3; double rkrl[3]; rkrl[0] = envs->rk[0] - envs->rl[0]; rkrl[1] = envs->rk[1] - envs->rl[1]; @@ -1012,9 +1008,9 @@ void CINTgout1e_int1e_inuc_rcxp(double *gout, double *g, FINT *idx, CINTEnvVars FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double drj[3]; drj[0] = envs->rj[0] - envs->env[PTR_COMMON_ORIG+0]; drj[1] = envs->rj[1] - envs->env[PTR_COMMON_ORIG+1]; @@ -1075,9 +1071,9 @@ void CINTgout1e_int1e_inuc_rxp(double *gout, double *g, FINT *idx, CINTEnvVars * FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double s[9]; G1E_D_J(g1, g0, envs->i_l+0, envs->j_l+0, 0); G1E_R_J(g2, g0, envs->i_l+0, envs->j_l+1, 0); diff --git a/src/autocode/intor3.c b/src/autocode/intor3.c index cb13f842..da153996 100644 --- a/src/autocode/intor3.c +++ b/src/autocode/intor3.c @@ -71,9 +71,9 @@ void CINTgout1e_int1e_spsigmasp(double *gout, double *g, FINT *idx, CINTEnvVars FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double s[9]; G1E_D_J(g1, g0, envs->i_l+1, envs->j_l+0, 0); G1E_D_I(g2, g0, envs->i_l+0, envs->j_l, 0); @@ -139,9 +139,9 @@ void CINTgout1e_int1e_srsr(double *gout, double *g, FINT *idx, CINTEnvVars *envs FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double s[9]; G1E_R_J(g1, g0, envs->i_l+1, envs->j_l+0, 0); G1E_R_I(g2, g0, envs->i_l+0, envs->j_l, 0); @@ -199,7 +199,7 @@ void CINTgout1e_int1e_sr(double *gout, double *g, FINT *idx, CINTEnvVars *envs, FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; double s[3]; G1E_R_I(g1, g0, envs->i_l+0, envs->j_l, 0); for (n = 0; n < nf; n++) { @@ -249,9 +249,9 @@ void CINTgout1e_int1e_srsp(double *gout, double *g, FINT *idx, CINTEnvVars *envs FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double s[9]; G1E_D_J(g1, g0, envs->i_l+1, envs->j_l+0, 0); G1E_R_I(g2, g0, envs->i_l+0, envs->j_l, 0); @@ -309,9 +309,9 @@ void CINTgout1e_int1e_spsp(double *gout, double *g, FINT *idx, CINTEnvVars *envs FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double s[9]; G1E_D_J(g1, g0, envs->i_l+1, envs->j_l+0, 0); G1E_D_I(g2, g0, envs->i_l+0, envs->j_l, 0); @@ -366,7 +366,7 @@ void CINTgout1e_int1e_sp(double *gout, double *g, FINT *idx, CINTEnvVars *envs, FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; double s[3]; G1E_D_I(g1, g0, envs->i_l+0, envs->j_l, 0); for (n = 0; n < nf; n++) { @@ -416,9 +416,9 @@ void CINTgout1e_int1e_spnucsp(double *gout, double *g, FINT *idx, CINTEnvVars *e FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double s[9]; G1E_D_J(g1, g0, envs->i_l+1, envs->j_l+0, 0); G1E_D_I(g2, g0, envs->i_l+0, envs->j_l, 0); @@ -476,9 +476,9 @@ void CINTgout1e_int1e_sprinvsp(double *gout, double *g, FINT *idx, CINTEnvVars * FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double s[9]; G1E_D_J(g1, g0, envs->i_l+1, envs->j_l+0, 0); G1E_D_I(g2, g0, envs->i_l+0, envs->j_l, 0); @@ -536,9 +536,9 @@ void CINTgout1e_int1e_srnucsr(double *gout, double *g, FINT *idx, CINTEnvVars *e FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double s[9]; G1E_R_J(g1, g0, envs->i_l+1, envs->j_l+0, 0); G1E_R_I(g2, g0, envs->i_l+0, envs->j_l, 0); @@ -596,13 +596,13 @@ void CINTgout1e_int1e_sprsp(double *gout, double *g, FINT *idx, CINTEnvVars *env FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; -double *g4 = g3 + envs->g_size * 3; -double *g5 = g4 + envs->g_size * 3; -double *g6 = g5 + envs->g_size * 3; -double *g7 = g6 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; +double *g4 = g3 + envs->g_size * 3; +double *g5 = g4 + envs->g_size * 3; +double *g6 = g5 + envs->g_size * 3; +double *g7 = g6 + envs->g_size * 3; double drj[3]; drj[0] = envs->rj[0] - envs->env[PTR_COMMON_ORIG+0]; drj[1] = envs->rj[1] - envs->env[PTR_COMMON_ORIG+1]; @@ -694,7 +694,7 @@ void CINTgout1e_int1e_govlp(double *gout, double *g, FINT *idx, CINTEnvVars *env FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; double rirj[3], c[3]; rirj[0] = envs->ri[0] - envs->rj[0]; rirj[1] = envs->ri[1] - envs->rj[1]; @@ -726,9 +726,9 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_govlp; envs.common_factor *= 0.5; +if (out != NULL && envs.shls[0] == envs.shls[1]) { FINT i, nout; FINT counts[4]; -if (out != NULL && envs.shls[0] == envs.shls[1]) { counts[0] = envs.nfi * envs.x_ctr[0]; counts[1] = envs.nfj * envs.x_ctr[1]; counts[2] = 1; @@ -747,9 +747,9 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_govlp; envs.common_factor *= 0.5; +if (out != NULL && envs.shls[0] == envs.shls[1]) { FINT i, nout; FINT counts[4]; -if (out != NULL && envs.shls[0] == envs.shls[1]) { counts[0] = (envs.i_l*2+1) * envs.x_ctr[0]; counts[1] = (envs.j_l*2+1) * envs.x_ctr[1]; counts[2] = 1; @@ -768,9 +768,9 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_govlp; envs.common_factor *= 0.5; +if (out != NULL && envs.shls[0] == envs.shls[1]) { FINT i, nout; FINT counts[4]; -if (out != NULL && envs.shls[0] == envs.shls[1]) { counts[0] = CINTcgto_spinor(envs.shls[0], envs.bas); counts[1] = CINTcgto_spinor(envs.shls[1], envs.bas); counts[2] = 1; @@ -789,7 +789,7 @@ void CINTgout1e_int1e_gnuc(double *gout, double *g, FINT *idx, CINTEnvVars *envs FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; double rirj[3], c[3]; rirj[0] = envs->ri[0] - envs->rj[0]; rirj[1] = envs->ri[1] - envs->rj[1]; @@ -821,9 +821,9 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_gnuc; envs.common_factor *= 0.5; +if (out != NULL && envs.shls[0] == envs.shls[1]) { FINT i, nout; FINT counts[4]; -if (out != NULL && envs.shls[0] == envs.shls[1]) { counts[0] = envs.nfi * envs.x_ctr[0]; counts[1] = envs.nfj * envs.x_ctr[1]; counts[2] = 1; @@ -842,9 +842,9 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_gnuc; envs.common_factor *= 0.5; +if (out != NULL && envs.shls[0] == envs.shls[1]) { FINT i, nout; FINT counts[4]; -if (out != NULL && envs.shls[0] == envs.shls[1]) { counts[0] = (envs.i_l*2+1) * envs.x_ctr[0]; counts[1] = (envs.j_l*2+1) * envs.x_ctr[1]; counts[2] = 1; @@ -863,9 +863,9 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_gnuc; envs.common_factor *= 0.5; +if (out != NULL && envs.shls[0] == envs.shls[1]) { FINT i, nout; FINT counts[4]; -if (out != NULL && envs.shls[0] == envs.shls[1]) { counts[0] = CINTcgto_spinor(envs.shls[0], envs.bas); counts[1] = CINTcgto_spinor(envs.shls[1], envs.bas); counts[2] = 1; @@ -884,9 +884,9 @@ void CINTgout1e_int1e_cg_sa10sa01(double *gout, double *g, FINT *idx, CINTEnvVar FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double dri[3]; dri[0] = envs->ri[0] - envs->env[PTR_COMMON_ORIG+0]; dri[1] = envs->ri[1] - envs->env[PTR_COMMON_ORIG+1]; @@ -985,9 +985,9 @@ void CINTgout1e_int1e_cg_sa10sp(double *gout, double *g, FINT *idx, CINTEnvVars FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double dri[3]; dri[0] = envs->ri[0] - envs->env[PTR_COMMON_ORIG+0]; dri[1] = envs->ri[1] - envs->env[PTR_COMMON_ORIG+1]; @@ -1060,9 +1060,9 @@ void CINTgout1e_int1e_cg_sa10nucsp(double *gout, double *g, FINT *idx, CINTEnvVa FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double dri[3]; dri[0] = envs->ri[0] - envs->env[PTR_COMMON_ORIG+0]; dri[1] = envs->ri[1] - envs->env[PTR_COMMON_ORIG+1]; @@ -1135,9 +1135,9 @@ void CINTgout1e_int1e_giao_sa10sa01(double *gout, double *g, FINT *idx, CINTEnvV FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double s[9]; G1E_D_J(g1, g0, envs->i_l+1, envs->j_l+0, 0); G1E_D_I(g2, g0, envs->i_l+1, envs->j_l+0, 0); @@ -1232,9 +1232,9 @@ void CINTgout1e_int1e_giao_sa10sp(double *gout, double *g, FINT *idx, CINTEnvVar FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double s[9]; G1E_D_J(g1, g0, envs->i_l+1, envs->j_l+0, 0); G1E_R_I(g2, g0, envs->i_l+0, envs->j_l, 0); @@ -1303,9 +1303,9 @@ void CINTgout1e_int1e_giao_sa10nucsp(double *gout, double *g, FINT *idx, CINTEnv FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double s[9]; G1E_D_J(g1, g0, envs->i_l+1, envs->j_l+0, 0); G1E_R_I(g2, g0, envs->i_l+0, envs->j_l, 0); @@ -1374,9 +1374,9 @@ void CINTgout1e_int1e_sa01sp(double *gout, double *g, FINT *idx, CINTEnvVars *en FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; double s[9]; G1E_D_J(g1, g0, envs->i_l+0, envs->j_l+0, 0); G1E_D_J(g2, g0, envs->i_l+0, envs->j_l+1, 0); @@ -1444,13 +1444,13 @@ void CINTgout1e_int1e_spgsp(double *gout, double *g, FINT *idx, CINTEnvVars *env FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; -double *g4 = g3 + envs->g_size * 3; -double *g5 = g4 + envs->g_size * 3; -double *g6 = g5 + envs->g_size * 3; -double *g7 = g6 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; +double *g4 = g3 + envs->g_size * 3; +double *g5 = g4 + envs->g_size * 3; +double *g6 = g5 + envs->g_size * 3; +double *g7 = g6 + envs->g_size * 3; double rirj[3], c[3]; rirj[0] = envs->ri[0] - envs->rj[0]; rirj[1] = envs->ri[1] - envs->rj[1]; @@ -1521,9 +1521,9 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_spgsp; envs.common_factor *= 0.5; +if (out != NULL && envs.shls[0] == envs.shls[1]) { FINT i, nout; FINT counts[4]; -if (out != NULL && envs.shls[0] == envs.shls[1]) { counts[0] = envs.nfi * envs.x_ctr[0]; counts[1] = envs.nfj * envs.x_ctr[1]; counts[2] = 1; @@ -1542,9 +1542,9 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_spgsp; envs.common_factor *= 0.5; +if (out != NULL && envs.shls[0] == envs.shls[1]) { FINT i, nout; FINT counts[4]; -if (out != NULL && envs.shls[0] == envs.shls[1]) { counts[0] = (envs.i_l*2+1) * envs.x_ctr[0]; counts[1] = (envs.j_l*2+1) * envs.x_ctr[1]; counts[2] = 1; @@ -1563,9 +1563,9 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_spgsp; envs.common_factor *= 0.5; +if (out != NULL && envs.shls[0] == envs.shls[1]) { FINT i, nout; FINT counts[4]; -if (out != NULL && envs.shls[0] == envs.shls[1]) { counts[0] = CINTcgto_spinor(envs.shls[0], envs.bas); counts[1] = CINTcgto_spinor(envs.shls[1], envs.bas); counts[2] = 1; @@ -1584,13 +1584,13 @@ void CINTgout1e_int1e_spgnucsp(double *gout, double *g, FINT *idx, CINTEnvVars * FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; -double *g4 = g3 + envs->g_size * 3; -double *g5 = g4 + envs->g_size * 3; -double *g6 = g5 + envs->g_size * 3; -double *g7 = g6 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; +double *g4 = g3 + envs->g_size * 3; +double *g5 = g4 + envs->g_size * 3; +double *g6 = g5 + envs->g_size * 3; +double *g7 = g6 + envs->g_size * 3; double rirj[3], c[3]; rirj[0] = envs->ri[0] - envs->rj[0]; rirj[1] = envs->ri[1] - envs->rj[1]; @@ -1661,9 +1661,9 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_spgnucsp; envs.common_factor *= 0.5; +if (out != NULL && envs.shls[0] == envs.shls[1]) { FINT i, nout; FINT counts[4]; -if (out != NULL && envs.shls[0] == envs.shls[1]) { counts[0] = envs.nfi * envs.x_ctr[0]; counts[1] = envs.nfj * envs.x_ctr[1]; counts[2] = 1; @@ -1682,9 +1682,9 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_spgnucsp; envs.common_factor *= 0.5; +if (out != NULL && envs.shls[0] == envs.shls[1]) { FINT i, nout; FINT counts[4]; -if (out != NULL && envs.shls[0] == envs.shls[1]) { counts[0] = (envs.i_l*2+1) * envs.x_ctr[0]; counts[1] = (envs.j_l*2+1) * envs.x_ctr[1]; counts[2] = 1; @@ -1703,9 +1703,9 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_spgnucsp; envs.common_factor *= 0.5; +if (out != NULL && envs.shls[0] == envs.shls[1]) { FINT i, nout; FINT counts[4]; -if (out != NULL && envs.shls[0] == envs.shls[1]) { counts[0] = CINTcgto_spinor(envs.shls[0], envs.bas); counts[1] = CINTcgto_spinor(envs.shls[1], envs.bas); counts[2] = 1; @@ -1724,13 +1724,13 @@ void CINTgout1e_int1e_spgsa01(double *gout, double *g, FINT *idx, CINTEnvVars *e FINT nf = envs->nf; FINT ix, iy, iz, n; double *g0 = g; -double *g1 = g0 + envs->g_size * 3; -double *g2 = g1 + envs->g_size * 3; -double *g3 = g2 + envs->g_size * 3; -double *g4 = g3 + envs->g_size * 3; -double *g5 = g4 + envs->g_size * 3; -double *g6 = g5 + envs->g_size * 3; -double *g7 = g6 + envs->g_size * 3; +double *g1 = g0 + envs->g_size * 3; +double *g2 = g1 + envs->g_size * 3; +double *g3 = g2 + envs->g_size * 3; +double *g4 = g3 + envs->g_size * 3; +double *g5 = g4 + envs->g_size * 3; +double *g6 = g5 + envs->g_size * 3; +double *g7 = g6 + envs->g_size * 3; double rirj[3], c[3]; rirj[0] = envs->ri[0] - envs->rj[0]; rirj[1] = envs->ri[1] - envs->rj[1]; @@ -1827,9 +1827,9 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_spgsa01; envs.common_factor *= 0.5; +if (out != NULL && envs.shls[0] == envs.shls[1]) { FINT i, nout; FINT counts[4]; -if (out != NULL && envs.shls[0] == envs.shls[1]) { counts[0] = envs.nfi * envs.x_ctr[0]; counts[1] = envs.nfj * envs.x_ctr[1]; counts[2] = 1; @@ -1848,9 +1848,9 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_spgsa01; envs.common_factor *= 0.5; +if (out != NULL && envs.shls[0] == envs.shls[1]) { FINT i, nout; FINT counts[4]; -if (out != NULL && envs.shls[0] == envs.shls[1]) { counts[0] = (envs.i_l*2+1) * envs.x_ctr[0]; counts[1] = (envs.j_l*2+1) * envs.x_ctr[1]; counts[2] = 1; @@ -1869,9 +1869,9 @@ CINTEnvVars envs; CINTinit_int1e_EnvVars(&envs, ng, shls, atm, natm, bas, nbas, env); envs.f_gout = &CINTgout1e_int1e_spgsa01; envs.common_factor *= 0.5; +if (out != NULL && envs.shls[0] == envs.shls[1]) { FINT i, nout; FINT counts[4]; -if (out != NULL && envs.shls[0] == envs.shls[1]) { counts[0] = CINTcgto_spinor(envs.shls[0], envs.bas); counts[1] = CINTcgto_spinor(envs.shls[1], envs.bas); counts[2] = 1;