diff --git a/src/ao_one_e_ints/ao_overlap.irp.f b/src/ao_one_e_ints/ao_overlap.irp.f index 5ffc0b1e..e5341f6a 100644 --- a/src/ao_one_e_ints/ao_overlap.irp.f +++ b/src/ao_one_e_ints/ao_overlap.irp.f @@ -1,10 +1,10 @@ ! --- - BEGIN_PROVIDER [ double precision, ao_overlap , (ao_num, ao_num) ] -&BEGIN_PROVIDER [ double precision, ao_overlap_x, (ao_num, ao_num) ] -&BEGIN_PROVIDER [ double precision, ao_overlap_y, (ao_num, ao_num) ] -&BEGIN_PROVIDER [ double precision, ao_overlap_z, (ao_num, ao_num) ] + BEGIN_PROVIDER [double precision, ao_overlap , (ao_num, ao_num)] +&BEGIN_PROVIDER [double precision, ao_overlap_x, (ao_num, ao_num)] +&BEGIN_PROVIDER [double precision, ao_overlap_y, (ao_num, ao_num)] +&BEGIN_PROVIDER [double precision, ao_overlap_z, (ao_num, ao_num)] BEGIN_DOC ! Overlap between atomic basis functions: @@ -48,7 +48,7 @@ !$OMP DEFAULT(NONE) & !$OMP PRIVATE(A_center,B_center,power_A,power_B,& !$OMP overlap_x,overlap_y, overlap_z, overlap, & - !$OMP alpha, beta,i,j,c) & + !$OMP alpha, beta,i,j,n,l,c) & !$OMP SHARED(nucl_coord,ao_power,ao_prim_num, & !$OMP ao_overlap_x,ao_overlap_y,ao_overlap_z,ao_overlap,ao_num,ao_coef_normalized_ordered_transp,ao_nucl, & !$OMP ao_expo_ordered_transp,dim1) diff --git a/src/ao_one_e_ints/aos_cgtos.irp.f b/src/ao_one_e_ints/aos_cgtos.irp.f index 4561a98d..c737d3cd 100644 --- a/src/ao_one_e_ints/aos_cgtos.irp.f +++ b/src/ao_one_e_ints/aos_cgtos.irp.f @@ -1,14 +1,14 @@ ! --- -BEGIN_PROVIDER [double precision, ao_coef_norm_ord_transp_cgtos, (ao_prim_num_max, ao_num)] +BEGIN_PROVIDER [double precision, ao_coef_cgtos_norm_ord_transp, (ao_prim_num_max, ao_num)] implicit none integer :: i, j do j = 1, ao_num do i = 1, ao_prim_num_max - ao_coef_norm_ord_transp_cgtos(i,j) = ao_coef_norm_ord_cgtos(j,i) + ao_coef_cgtos_norm_ord_transp(i,j) = ao_coef_norm_cgtos_ord(j,i) enddo enddo @@ -16,14 +16,20 @@ END_PROVIDER ! --- -BEGIN_PROVIDER [complex*16, ao_expo_ord_transp_cgtos, (ao_prim_num_max, ao_num)] + BEGIN_PROVIDER [complex*16, ao_expo_cgtos_ord_transp, (ao_prim_num_max, ao_num)] +&BEGIN_PROVIDER [complex*16, ao_expo_pw_ord_transp, (3, ao_prim_num_max, ao_num)] +&BEGIN_PROVIDER [complex*16, ao_expo_phase_ord_transp, (3, ao_prim_num_max, ao_num)] implicit none - integer :: i, j + integer :: i, j, m do j = 1, ao_num do i = 1, ao_prim_num_max - ao_expo_ord_transp_cgtos(i,j) = ao_expo_ord_cgtos(j,i) + ao_expo_cgtos_ord_transp(i,j) = ao_expo_cgtos_ord(j,i) + do m = 1, 3 + ao_expo_pw_ord_transp(m,i,j) = ao_expo_pw_ord(m,j,i) + ao_expo_phase_ord_transp(m,i,j) = ao_expo_phase_ord(m,j,i) + enddo enddo enddo @@ -84,8 +90,8 @@ END_PROVIDER ! --- - BEGIN_PROVIDER [double precision, ao_coef_norm_ord_cgtos, (ao_num, ao_prim_num_max)] -&BEGIN_PROVIDER [complex*16 , ao_expo_ord_cgtos, (ao_num, ao_prim_num_max)] + BEGIN_PROVIDER [double precision, ao_coef_norm_cgtos_ord, (ao_num, ao_prim_num_max)] +&BEGIN_PROVIDER [complex*16 , ao_expo_cgtos_ord, (ao_num, ao_prim_num_max)] &BEGIN_PROVIDER [double precision, ao_expo_pw_ord, (3, ao_num, ao_prim_num_max)] &BEGIN_PROVIDER [double precision, ao_expo_phase_ord, (3, ao_num, ao_prim_num_max)] @@ -118,8 +124,8 @@ END_PROVIDER enddo do j = 1, ao_prim_num(i) - ao_expo_ord_cgtos (i,j) = d(j,1) + (0.d0, 1.d0) * d(j,3) - ao_coef_norm_ord_cgtos(i,j) = d(j,2) + ao_expo_cgtos_ord (i,j) = d(j,1) + (0.d0, 1.d0) * d(j,3) + ao_coef_norm_cgtos_ord(i,j) = d(j,2) ao_expo_pw_ord(i,j,1) = d(j,4) ao_expo_pw_ord(i,j,2) = d(j,5) ao_expo_pw_ord(i,j,3) = d(j,6) @@ -139,9 +145,12 @@ END_PROVIDER &BEGIN_PROVIDER [double precision, ao_overlap_cgtos_z, (ao_num, ao_num)] implicit none - integer :: i, j, n, l, dim1, power_A(3), power_B(3) + + integer :: i, j, m, n, l, ii, jj, dim1, power_A(3), power_B(3) double precision :: c, overlap, overlap_x, overlap_y, overlap_z - complex*16 :: alpha, beta, A_center(3), B_center(3) + complex*16 :: alpha, alpha_inv, A_center(3), KA2(3), phiA(3) + complex*16 :: beta, beta_inv, B_center(3), KB2(3), phiB(3) + complex*16 :: C1(1:4), C2(1:4) complex*16 :: overlap1, overlap_x1, overlap_y1, overlap_z1 complex*16 :: overlap2, overlap_x2, overlap_y2, overlap_z2 @@ -152,40 +161,67 @@ END_PROVIDER dim1 = 100 - !$OMP PARALLEL DO SCHEDULE(GUIDED) & - !$OMP DEFAULT(NONE) & - !$OMP PRIVATE(A_center, B_center, power_A, power_B, alpha, beta, i, j, n, l, c, & - !$OMP overlap_x , overlap_y , overlap_z , overlap, & - !$OMP overlap_x1, overlap_y1, overlap_z1, overlap1, & - !$OMP overlap_x2, overlap_y2, overlap_z2, overlap2) & - !$OMP SHARED(nucl_coord, ao_power, ao_prim_num, ao_num, ao_nucl, dim1, & - !$OMP ao_overlap_cgtos_x, ao_overlap_cgtos_y, ao_overlap_cgtos_z, ao_overlap_cgtos, & - !$OMP ao_coef_norm_ord_transp_cgtos, ao_expo_ord_transp_cgtos ) + !$OMP PARALLEL DO SCHEDULE(GUIDED) & + !$OMP DEFAULT(NONE) & + !$OMP PRIVATE(i, j, m, n, l, ii, jj, c, C1, C2, & + !$OMP alpha, alpha_inv, A_center, power_A, KA2, phiA, & + !$OMP beta, beta_inv, B_center, power_B, KB2, phiB, & + !$OMP overlap_x , overlap_y , overlap_z , overlap, & + !$OMP overlap_x1, overlap_y1, overlap_z1, overlap1, & + !$OMP overlap_x2, overlap_y2, overlap_z2, overlap2) & + !$OMP SHARED(nucl_coord, ao_power, ao_prim_num, ao_num, ao_nucl, dim1, & + !$OMP ao_coef_cgtos_norm_ord_transp, ao_expo_cgtos_ord_transp, & + !$OMP ao_expo_pw_ord_transp, ao_expo_phase_ord_transp, & + !$OMP ao_overlap_cgtos_x, ao_overlap_cgtos_y, ao_overlap_cgtos_z, & + !$OMP ao_overlap_cgtos) do j = 1, ao_num - A_center(1) = nucl_coord(ao_nucl(j),1) * (1.d0, 0.d0) - A_center(2) = nucl_coord(ao_nucl(j),2) * (1.d0, 0.d0) - A_center(3) = nucl_coord(ao_nucl(j),3) * (1.d0, 0.d0) - power_A(1) = ao_power(j,1) - power_A(2) = ao_power(j,2) - power_A(3) = ao_power(j,3) + jj = ao_nucl(j) + power_A(1) = ao_power(j,1) + power_A(2) = ao_power(j,2) + power_A(3) = ao_power(j,3) do i = 1, ao_num - B_center(1) = nucl_coord(ao_nucl(i),1) * (1.d0, 0.d0) - B_center(2) = nucl_coord(ao_nucl(i),2) * (1.d0, 0.d0) - B_center(3) = nucl_coord(ao_nucl(i),3) * (1.d0, 0.d0) - power_B(1) = ao_power(i,1) - power_B(2) = ao_power(i,2) - power_B(3) = ao_power(i,3) + ii = ao_nucl(i) + power_B(1) = ao_power(i,1) + power_B(2) = ao_power(i,2) + power_B(3) = ao_power(i,3) do n = 1, ao_prim_num(j) - alpha = ao_expo_ord_transp_cgtos(n,j) + + alpha = ao_expo_cgtos_ord_transp(n,j) + alpha_inv = (1.d0, 0.d0) / alpha + + do m = 1, 3 + phiA(m) = ao_expo_phase_ord_transp(m,n,j) + A_center(m) = nucl_coord(jj,m) - (0.d0, 0.5d0) * alpha_inv * ao_expo_pw_ord_transp(m,n,j) + KA2(m) = ao_expo_pw_ord_transp(m,n,j) * ao_expo_pw_ord_transp(m,n,j) + enddo do l = 1, ao_prim_num(i) - c = ao_coef_norm_ord_transp_cgtos(n,j) * ao_coef_norm_ord_transp_cgtos(l,i) - beta = ao_expo_ord_transp_cgtos(l,i) + + beta = ao_expo_cgtos_ord_transp(l,i) + beta_inv = (1.d0, 0.d0) / beta + + do m = 1, 3 + phiB(m) = ao_expo_phase_ord_transp(m,l,i) + B_center(m) = nucl_coord(ii,m) - (0.d0, 0.5d0) * beta_inv * ao_expo_pw_ord_transp(m,l,i) + KB2(m) = ao_expo_pw_ord_transp(m,l,i) * ao_expo_pw_ord_transp(m,l,i) + enddo + + c = ao_coef_cgtos_norm_ord_transp(n,j) * ao_coef_cgtos_norm_ord_transp(l,i) + + C1(1) = zexp((0.d0, 1.d0) * (-phiA(1) + phiB(1)) - 0.25d0 * (alpha_inv * KA2(1) + beta_inv * KB2(1))) + C1(2) = zexp((0.d0, 1.d0) * (-phiA(2) + phiB(2)) - 0.25d0 * (alpha_inv * KA2(2) + beta_inv * KB2(2))) + C1(3) = zexp((0.d0, 1.d0) * (-phiA(3) + phiB(3)) - 0.25d0 * (alpha_inv * KA2(3) + beta_inv * KB2(3))) + C1(4) = C1(1) * C1(2) * C1(3) + + C2(1) = zexp((0.d0, 1.d0) * (phiA(1) + phiB(1)) - 0.25d0 * (conjg(alpha_inv) * KA2(1) + beta_inv * KB2(1))) + C2(2) = zexp((0.d0, 1.d0) * (phiA(2) + phiB(2)) - 0.25d0 * (conjg(alpha_inv) * KA2(2) + beta_inv * KB2(2))) + C2(3) = zexp((0.d0, 1.d0) * (phiA(3) + phiB(3)) - 0.25d0 * (conjg(alpha_inv) * KA2(3) + beta_inv * KB2(3))) + C2(4) = C2(1) * C2(2) * C2(3) call overlap_cgaussian_xyz(A_center, B_center, alpha, beta, power_A, power_B, & overlap_x1, overlap_y1, overlap_z1, overlap1, dim1) @@ -193,14 +229,14 @@ END_PROVIDER call overlap_cgaussian_xyz(A_center, B_center, conjg(alpha), beta, power_A, power_B, & overlap_x2, overlap_y2, overlap_z2, overlap2, dim1) - overlap_x = 2.d0 * real(overlap_x1 + overlap_x2) - overlap_y = 2.d0 * real(overlap_y1 + overlap_y2) - overlap_z = 2.d0 * real(overlap_z1 + overlap_z2) - overlap = 2.d0 * real(overlap1 + overlap2 ) + overlap_x = 2.d0 * real(C1(1) * overlap_x1 + C2(1) * overlap_x2) + overlap_y = 2.d0 * real(C1(2) * overlap_y1 + C2(2) * overlap_y2) + overlap_z = 2.d0 * real(C1(3) * overlap_z1 + C2(3) * overlap_z2) + overlap = 2.d0 * real(C1(4) * overlap1 + C2(4) * overlap2 ) ao_overlap_cgtos(i,j) = ao_overlap_cgtos(i,j) + c * overlap - if( isnan(ao_overlap_cgtos(i,j)) ) then + if(isnan(ao_overlap_cgtos(i,j))) then print*,'i, j', i, j print*,'l, n', l, n print*,'c, overlap', c, overlap diff --git a/src/ao_one_e_ints/one_e_Coul_integrals_cgtos.irp.f b/src/ao_one_e_ints/one_e_Coul_integrals_cgtos.irp.f index 30fd36d4..9f51b660 100644 --- a/src/ao_one_e_ints/one_e_Coul_integrals_cgtos.irp.f +++ b/src/ao_one_e_ints/one_e_Coul_integrals_cgtos.irp.f @@ -26,7 +26,7 @@ BEGIN_PROVIDER [ double precision, ao_integrals_n_e_cgtos, (ao_num, ao_num)] !$OMP PRIVATE ( i, j, k, l, m, alpha, beta, A_center, B_center, C_center & !$OMP , power_A, power_B, num_A, num_B, Z, c, c1, c2, n_pt_in ) & !$OMP SHARED ( ao_num, ao_prim_num, ao_nucl, nucl_coord, ao_power, nucl_num, nucl_charge & - !$OMP , ao_expo_ord_transp_cgtos, ao_coef_norm_ord_transp_cgtos & + !$OMP , ao_expo_cgtos_ord_transp, ao_coef_cgtos_norm_ord_transp & !$OMP , n_pt_max_integrals, ao_integrals_n_e_cgtos ) n_pt_in = n_pt_max_integrals @@ -44,10 +44,10 @@ BEGIN_PROVIDER [ double precision, ao_integrals_n_e_cgtos, (ao_num, ao_num)] B_center(1:3) = nucl_coord(num_B,1:3) do l = 1, ao_prim_num(j) - alpha = ao_expo_ord_transp_cgtos(l,j) + alpha = ao_expo_cgtos_ord_transp(l,j) do m = 1, ao_prim_num(i) - beta = ao_expo_ord_transp_cgtos(m,i) + beta = ao_expo_cgtos_ord_transp(m,i) c = 0.d0 do k = 1, nucl_num @@ -74,8 +74,8 @@ BEGIN_PROVIDER [ double precision, ao_integrals_n_e_cgtos, (ao_num, ao_num)] enddo ao_integrals_n_e_cgtos(i,j) = ao_integrals_n_e_cgtos(i,j) & - + ao_coef_norm_ord_transp_cgtos(l,j) & - * ao_coef_norm_ord_transp_cgtos(m,i) * c + + ao_coef_cgtos_norm_ord_transp(l,j) & + * ao_coef_cgtos_norm_ord_transp(m,i) * c enddo enddo enddo diff --git a/src/ao_one_e_ints/one_e_kin_integrals_cgtos.irp.f b/src/ao_one_e_ints/one_e_kin_integrals_cgtos.irp.f index a80f0bb2..2d4d0d17 100644 --- a/src/ao_one_e_ints/one_e_kin_integrals_cgtos.irp.f +++ b/src/ao_one_e_ints/one_e_kin_integrals_cgtos.irp.f @@ -40,7 +40,7 @@ !$OMP , overlap_m2_1, overlap_p2_1, overlap_m2_2, overlap_p2_2 & !$OMP , overlap_x0_1, overlap_y0_1, overlap_z0_1, overlap_x0_2, overlap_y0_2, overlap_z0_2 ) & !$OMP SHARED( nucl_coord, ao_power, ao_prim_num, ao_num, ao_nucl, dim1 & - !$OMP , ao_coef_norm_ord_transp_cgtos, ao_expo_ord_transp_cgtos & + !$OMP , ao_coef_cgtos_norm_ord_transp, ao_expo_cgtos_ord_transp & !$OMP , ao_deriv2_cgtos_x, ao_deriv2_cgtos_y, ao_deriv2_cgtos_z ) do j = 1, ao_num @@ -64,11 +64,11 @@ ao_deriv2_cgtos_z(i,j) = 0.d0 do n = 1, ao_prim_num(j) - alpha = ao_expo_ord_transp_cgtos(n,j) + alpha = ao_expo_cgtos_ord_transp(n,j) do l = 1, ao_prim_num(i) - c = ao_coef_norm_ord_transp_cgtos(n,j) * ao_coef_norm_ord_transp_cgtos(l,i) - beta = ao_expo_ord_transp_cgtos(l,i) + c = ao_coef_cgtos_norm_ord_transp(n,j) * ao_coef_cgtos_norm_ord_transp(l,i) + beta = ao_expo_cgtos_ord_transp(l,i) call overlap_cgaussian_xyz( A_center, B_center, alpha, beta, power_A, power_B & , overlap_x0_1, overlap_y0_1, overlap_z0_1, overlap, dim1 ) diff --git a/src/ao_two_e_ints/deb_2eint_cgtos.irp.f b/src/ao_two_e_ints/deb_2eint_cgtos.irp.f index 6bbf1fa8..b871ff5a 100644 --- a/src/ao_two_e_ints/deb_2eint_cgtos.irp.f +++ b/src/ao_two_e_ints/deb_2eint_cgtos.irp.f @@ -48,12 +48,12 @@ subroutine deb_ao_2eint_cgtos(i, j, k, l) enddo do p = 1, ao_prim_num(i) - expo1 = ao_expo_ord_transp_cgtos(p,i) + expo1 = ao_expo_cgtos_ord_transp(p,i) !print*, "expo1 = ", expo1 !print*, "center1 = ", I_center do q = 1, ao_prim_num(j) - expo2 = ao_expo_ord_transp_cgtos(q,j) + expo2 = ao_expo_cgtos_ord_transp(q,j) !print*, "expo2 = ", expo2 !print*, "center2 = ", J_center @@ -66,12 +66,12 @@ subroutine deb_ao_2eint_cgtos(i, j, k, l) iorder_p2(1:3) = I_power(1:3) + J_power(1:3) do r = 1, ao_prim_num(k) - expo3 = ao_expo_ord_transp_cgtos(r,k) + expo3 = ao_expo_cgtos_ord_transp(r,k) !print*, "expo3 = ", expo3 !print*, "center3 = ", K_center do s = 1, ao_prim_num(l) - expo4 = ao_expo_ord_transp_cgtos(s,l) + expo4 = ao_expo_cgtos_ord_transp(s,l) !print*, "expo4 = ", expo4 !print*, "center4 = ", L_center diff --git a/src/ao_two_e_ints/two_e_Coul_integrals_cgtos.irp.f b/src/ao_two_e_ints/two_e_Coul_integrals_cgtos.irp.f index a8624e60..558eaa98 100644 --- a/src/ao_two_e_ints/two_e_Coul_integrals_cgtos.irp.f +++ b/src/ao_two_e_ints/two_e_Coul_integrals_cgtos.irp.f @@ -60,12 +60,12 @@ double precision function ao_two_e_integral_cgtos(i, j, k, l) enddo do p = 1, ao_prim_num(i) - coef1 = ao_coef_norm_ord_transp_cgtos(p,i) - expo1 = ao_expo_ord_transp_cgtos(p,i) + coef1 = ao_coef_cgtos_norm_ord_transp(p,i) + expo1 = ao_expo_cgtos_ord_transp(p,i) do q = 1, ao_prim_num(j) - coef2 = coef1 * ao_coef_norm_ord_transp_cgtos(q,j) - expo2 = ao_expo_ord_transp_cgtos(q,j) + coef2 = coef1 * ao_coef_cgtos_norm_ord_transp(q,j) + expo2 = ao_expo_cgtos_ord_transp(q,j) call give_explicit_cpoly_and_cgaussian(P1_new, P1_center, pp1, fact_p1, iorder_p1, & expo1, expo2, I_power, J_power, I_center, J_center, dim1) @@ -76,12 +76,12 @@ double precision function ao_two_e_integral_cgtos(i, j, k, l) p2_inv = (1.d0, 0.d0) / pp2 do r = 1, ao_prim_num(k) - coef3 = coef2 * ao_coef_norm_ord_transp_cgtos(r,k) - expo3 = ao_expo_ord_transp_cgtos(r,k) + coef3 = coef2 * ao_coef_cgtos_norm_ord_transp(r,k) + expo3 = ao_expo_cgtos_ord_transp(r,k) do s = 1, ao_prim_num(l) - coef4 = coef3 * ao_coef_norm_ord_transp_cgtos(s,l) - expo4 = ao_expo_ord_transp_cgtos(s,l) + coef4 = coef3 * ao_coef_cgtos_norm_ord_transp(s,l) + expo4 = ao_expo_cgtos_ord_transp(s,l) call give_explicit_cpoly_and_cgaussian(Q1_new, Q1_center, qq1, fact_q1, iorder_q1, & expo3, expo4, K_power, L_power, K_center, L_center, dim1) @@ -141,20 +141,20 @@ double precision function ao_two_e_integral_cgtos(i, j, k, l) enddo do p = 1, ao_prim_num(i) - coef1 = ao_coef_norm_ord_transp_cgtos(p,i) - expo1 = ao_expo_ord_transp_cgtos(p,i) + coef1 = ao_coef_cgtos_norm_ord_transp(p,i) + expo1 = ao_expo_cgtos_ord_transp(p,i) do q = 1, ao_prim_num(j) - coef2 = coef1 * ao_coef_norm_ord_transp_cgtos(q,j) - expo2 = ao_expo_ord_transp_cgtos(q,j) + coef2 = coef1 * ao_coef_cgtos_norm_ord_transp(q,j) + expo2 = ao_expo_cgtos_ord_transp(q,j) do r = 1, ao_prim_num(k) - coef3 = coef2 * ao_coef_norm_ord_transp_cgtos(r,k) - expo3 = ao_expo_ord_transp_cgtos(r,k) + coef3 = coef2 * ao_coef_cgtos_norm_ord_transp(r,k) + expo3 = ao_expo_cgtos_ord_transp(r,k) do s = 1, ao_prim_num(l) - coef4 = coef3 * ao_coef_norm_ord_transp_cgtos(s,l) - expo4 = ao_expo_ord_transp_cgtos(s,l) + coef4 = coef3 * ao_coef_cgtos_norm_ord_transp(s,l) + expo4 = ao_expo_cgtos_ord_transp(s,l) integral1 = ERI_cgtos(expo1, expo2, expo3, expo4, & I_power(1), J_power(1), K_power(1), L_power(1), & @@ -274,13 +274,13 @@ double precision function ao_2e_cgtos_schwartz_accel(i, j, k, l) schwartz_kl(0,0) = 0.d0 do r = 1, ao_prim_num(k) - coef1 = ao_coef_norm_ord_transp_cgtos(r,k) * ao_coef_norm_ord_transp_cgtos(r,k) - expo1 = ao_expo_ord_transp_cgtos(r,k) + coef1 = ao_coef_cgtos_norm_ord_transp(r,k) * ao_coef_cgtos_norm_ord_transp(r,k) + expo1 = ao_expo_cgtos_ord_transp(r,k) schwartz_kl(0,r) = 0.d0 do s = 1, ao_prim_num(l) - coef2 = coef1 * ao_coef_norm_ord_transp_cgtos(s,l) * ao_coef_norm_ord_transp_cgtos(s,l) - expo2 = ao_expo_ord_transp_cgtos(s,l) + coef2 = coef1 * ao_coef_cgtos_norm_ord_transp(s,l) * ao_coef_cgtos_norm_ord_transp(s,l) + expo2 = ao_expo_cgtos_ord_transp(s,l) call give_explicit_cpoly_and_cgaussian(P1_new, P1_center, pp1, fact_p1, iorder_p1, & expo1, expo2, K_power, L_power, K_center, L_center, dim1) @@ -334,12 +334,12 @@ double precision function ao_2e_cgtos_schwartz_accel(i, j, k, l) do p = 1, ao_prim_num(i) - coef1 = ao_coef_norm_ord_transp_cgtos(p,i) - expo1 = ao_expo_ord_transp_cgtos(p,i) + coef1 = ao_coef_cgtos_norm_ord_transp(p,i) + expo1 = ao_expo_cgtos_ord_transp(p,i) do q = 1, ao_prim_num(j) - coef2 = coef1 * ao_coef_norm_ord_transp_cgtos(q,j) - expo2 = ao_expo_ord_transp_cgtos(q,j) + coef2 = coef1 * ao_coef_cgtos_norm_ord_transp(q,j) + expo2 = ao_expo_cgtos_ord_transp(q,j) call give_explicit_cpoly_and_cgaussian(P1_new, P1_center, pp1, fact_p1, iorder_p1, & expo1, expo2, I_power, J_power, I_center, J_center, dim1) @@ -390,14 +390,14 @@ double precision function ao_2e_cgtos_schwartz_accel(i, j, k, l) do r = 1, ao_prim_num(k) if(schwartz_kl(0,r)*schwartz_ij < thr) cycle - coef3 = coef2 * ao_coef_norm_ord_transp_cgtos(r,k) - expo3 = ao_expo_ord_transp_cgtos(r,k) + coef3 = coef2 * ao_coef_cgtos_norm_ord_transp(r,k) + expo3 = ao_expo_cgtos_ord_transp(r,k) do s = 1, ao_prim_num(l) if(schwartz_kl(s,r)*schwartz_ij < thr) cycle - coef4 = coef3 * ao_coef_norm_ord_transp_cgtos(s,l) - expo4 = ao_expo_ord_transp_cgtos(s,l) + coef4 = coef3 * ao_coef_cgtos_norm_ord_transp(s,l) + expo4 = ao_expo_cgtos_ord_transp(s,l) call give_explicit_cpoly_and_cgaussian(Q1_new, Q1_center, qq1, fact_q1, iorder_q1, & expo3, expo4, K_power, L_power, K_center, L_center, dim1) @@ -458,13 +458,13 @@ double precision function ao_2e_cgtos_schwartz_accel(i, j, k, l) schwartz_kl(0,0) = 0.d0 do r = 1, ao_prim_num(k) - coef1 = ao_coef_norm_ord_transp_cgtos(r,k) * ao_coef_norm_ord_transp_cgtos(r,k) - expo1 = ao_expo_ord_transp_cgtos(r,k) + coef1 = ao_coef_cgtos_norm_ord_transp(r,k) * ao_coef_cgtos_norm_ord_transp(r,k) + expo1 = ao_expo_cgtos_ord_transp(r,k) schwartz_kl(0,r) = 0.d0 do s = 1, ao_prim_num(l) - coef2 = coef1 * ao_coef_norm_ord_transp_cgtos(s,l) * ao_coef_norm_ord_transp_cgtos(s,l) - expo2 = ao_expo_ord_transp_cgtos(s,l) + coef2 = coef1 * ao_coef_cgtos_norm_ord_transp(s,l) * ao_coef_cgtos_norm_ord_transp(s,l) + expo2 = ao_expo_cgtos_ord_transp(s,l) integral1 = ERI_cgtos(expo1, expo2, expo1, expo2, & K_power(1), L_power(1), K_power(1), L_power(1), & @@ -517,12 +517,12 @@ double precision function ao_2e_cgtos_schwartz_accel(i, j, k, l) enddo do p = 1, ao_prim_num(i) - coef1 = ao_coef_norm_ord_transp_cgtos(p,i) - expo1 = ao_expo_ord_transp_cgtos(p,i) + coef1 = ao_coef_cgtos_norm_ord_transp(p,i) + expo1 = ao_expo_cgtos_ord_transp(p,i) do q = 1, ao_prim_num(j) - coef2 = coef1 * ao_coef_norm_ord_transp_cgtos(q,j) - expo2 = ao_expo_ord_transp_cgtos(q,j) + coef2 = coef1 * ao_coef_cgtos_norm_ord_transp(q,j) + expo2 = ao_expo_cgtos_ord_transp(q,j) integral1 = ERI_cgtos(expo1, expo2, expo1, expo2, & I_power(1), J_power(1), I_power(1), J_power(1), & @@ -572,54 +572,54 @@ double precision function ao_2e_cgtos_schwartz_accel(i, j, k, l) do r = 1, ao_prim_num(k) if(schwartz_kl(0,r)*schwartz_ij < thr) cycle - coef3 = coef2 * ao_coef_norm_ord_transp_cgtos(r,k) - expo3 = ao_expo_ord_transp_cgtos(r,k) + coef3 = coef2 * ao_coef_cgtos_norm_ord_transp(r,k) + expo3 = ao_expo_cgtos_ord_transp(r,k) do s = 1, ao_prim_num(l) if(schwartz_kl(s,r)*schwartz_ij < thr) cycle - coef4 = coef3 * ao_coef_norm_ord_transp_cgtos(s,l) - expo4 = ao_expo_ord_transp_cgtos(s,l) + coef4 = coef3 * ao_coef_cgtos_norm_ord_transp(s,l) + expo4 = ao_expo_cgtos_ord_transp(s,l) integral1 = ERI_cgtos(expo1, expo2, expo3, expo4, & - I_power(1), J_power(1), K_power(1), L_power(1), & - I_power(2), J_power(2), K_power(2), L_power(2), & - I_power(3), J_power(3), K_power(3), L_power(3)) + I_power(1), J_power(1), K_power(1), L_power(1), & + I_power(2), J_power(2), K_power(2), L_power(2), & + I_power(3), J_power(3), K_power(3), L_power(3)) integral2 = ERI_cgtos(expo1, expo2, conjg(expo3), expo4, & - I_power(1), J_power(1), K_power(1), L_power(1), & - I_power(2), J_power(2), K_power(2), L_power(2), & - I_power(3), J_power(3), K_power(3), L_power(3)) + I_power(1), J_power(1), K_power(1), L_power(1), & + I_power(2), J_power(2), K_power(2), L_power(2), & + I_power(3), J_power(3), K_power(3), L_power(3)) integral3 = ERI_cgtos(conjg(expo1), expo2, expo3, expo4, & - I_power(1), J_power(1), K_power(1), L_power(1), & - I_power(2), J_power(2), K_power(2), L_power(2), & - I_power(3), J_power(3), K_power(3), L_power(3)) + I_power(1), J_power(1), K_power(1), L_power(1), & + I_power(2), J_power(2), K_power(2), L_power(2), & + I_power(3), J_power(3), K_power(3), L_power(3)) integral4 = ERI_cgtos(conjg(expo1), expo2, conjg(expo3), expo4, & - I_power(1), J_power(1), K_power(1), L_power(1), & - I_power(2), J_power(2), K_power(2), L_power(2), & - I_power(3), J_power(3), K_power(3), L_power(3)) + I_power(1), J_power(1), K_power(1), L_power(1), & + I_power(2), J_power(2), K_power(2), L_power(2), & + I_power(3), J_power(3), K_power(3), L_power(3)) integral5 = ERI_cgtos(expo1, conjg(expo2), expo3, expo4, & - I_power(1), J_power(1), K_power(1), L_power(1), & - I_power(2), J_power(2), K_power(2), L_power(2), & - I_power(3), J_power(3), K_power(3), L_power(3)) + I_power(1), J_power(1), K_power(1), L_power(1), & + I_power(2), J_power(2), K_power(2), L_power(2), & + I_power(3), J_power(3), K_power(3), L_power(3)) integral6 = ERI_cgtos(expo1, conjg(expo2), conjg(expo3), expo4, & - I_power(1), J_power(1), K_power(1), L_power(1), & - I_power(2), J_power(2), K_power(2), L_power(2), & - I_power(3), J_power(3), K_power(3), L_power(3)) + I_power(1), J_power(1), K_power(1), L_power(1), & + I_power(2), J_power(2), K_power(2), L_power(2), & + I_power(3), J_power(3), K_power(3), L_power(3)) integral7 = ERI_cgtos(conjg(expo1), conjg(expo2), expo3, expo4, & - I_power(1), J_power(1), K_power(1), L_power(1), & - I_power(2), J_power(2), K_power(2), L_power(2), & - I_power(3), J_power(3), K_power(3), L_power(3)) + I_power(1), J_power(1), K_power(1), L_power(1), & + I_power(2), J_power(2), K_power(2), L_power(2), & + I_power(3), J_power(3), K_power(3), L_power(3)) integral8 = ERI_cgtos(conjg(expo1), conjg(expo2), conjg(expo3), expo4, & - I_power(1), J_power(1), K_power(1), L_power(1), & - I_power(2), J_power(2), K_power(2), L_power(2), & - I_power(3), J_power(3), K_power(3), L_power(3)) + I_power(1), J_power(1), K_power(1), L_power(1), & + I_power(2), J_power(2), K_power(2), L_power(2), & + I_power(3), J_power(3), K_power(3), L_power(3)) integral_tot = integral1 + integral2 + integral3 + integral4 + integral5 + integral6 + integral7 + integral8 @@ -666,7 +666,7 @@ END_PROVIDER ! --- complex*16 function general_primitive_integral_cgtos(dim, P_new, P_center, fact_p, p, p_inv, iorder_p, & - Q_new, Q_center, fact_q, q, q_inv, iorder_q) + Q_new, Q_center, fact_q, q, q_inv, iorder_q) BEGIN_DOC !