diff --git a/src/tc_scf/fock_three_bi_ortho_new_new.irp.f b/src/tc_scf/fock_three_bi_ortho_new_new.irp.f index 0e3aba61..fc4bbd6a 100644 --- a/src/tc_scf/fock_three_bi_ortho_new_new.irp.f +++ b/src/tc_scf/fock_three_bi_ortho_new_new.irp.f @@ -52,14 +52,16 @@ BEGIN_PROVIDER [double precision, fock_a_tot_3e_bi_orth_new, (mo_num, mo_num)] do i = 1, mo_num do a = 1, mo_num - do j = 1, elec_beta_num - do k = 1, elec_beta_num - call contrib_3e_sss(a,i,j,k,contrib_sss) - call contrib_3e_soo(a,i,j,k,contrib_soo) - call contrib_3e_sos(a,i,j,k,contrib_sos) - fock_a_tot_3e_bi_orth_new(a,i) += 0.5d0 * (contrib_sss + contrib_soo) + contrib_sos - enddo - enddo +! do j = 1, elec_beta_num +! do k = 1, elec_beta_num +! call contrib_3e_sss(a,i,j,k,contrib_sss) +! call contrib_3e_soo(a,i,j,k,contrib_soo) +! call contrib_3e_sos(a,i,j,k,contrib_sos) +! fock_a_tot_3e_bi_orth_new(a,i) += 0.5d0 * (contrib_sss + contrib_soo) + contrib_sos +! enddo +! enddo + + fock_a_tot_3e_bi_orth_new(a,i) += fock_cs_3e_bi_orth(a,i) do j = elec_beta_num + 1, elec_alpha_num do k = 1, elec_beta_num @@ -87,6 +89,28 @@ BEGIN_PROVIDER [double precision, fock_a_tot_3e_bi_orth_new, (mo_num, mo_num)] enddo END_PROVIDER +BEGIN_PROVIDER [double precision, fock_cs_3e_bi_orth, (mo_num, mo_num)] + implicit none + integer :: i,a,j,k + double precision :: contrib_sss, contrib_sos, contrib_soo + fock_cs_3e_bi_orth = 0.d0 + do i = 1, mo_num + do a = 1, mo_num + + do j = 1, elec_beta_num + do k = 1, elec_beta_num + call contrib_3e_sss(a,i,j,k,contrib_sss) + call contrib_3e_soo(a,i,j,k,contrib_soo) + call contrib_3e_sos(a,i,j,k,contrib_sos) + fock_cs_3e_bi_orth(a,i) += 0.5d0 * (contrib_sss + contrib_soo) + contrib_sos + enddo + enddo + + enddo + enddo + +END_PROVIDER + BEGIN_PROVIDER [double precision, fock_b_tot_3e_bi_orth_new, (mo_num, mo_num)] implicit none integer :: i,a,j,k @@ -103,11 +127,12 @@ BEGIN_PROVIDER [double precision, fock_b_tot_3e_bi_orth_new, (mo_num, mo_num)] fock_b_tot_3e_bi_orth_new(a,i) += 0.5d0 * (contrib_sss + contrib_soo) + contrib_sos enddo enddo +! fock_b_tot_3e_bi_orth_new(a,i) += fock_cs_3e_bi_orth(a,i) do j = elec_beta_num + 1, elec_alpha_num do k = 1, elec_beta_num - call contrib_3e_sss(a,i,j,k,contrib_sss) - fock_b_tot_3e_bi_orth_new(a,i) += 0.5d0 * contrib_sss + call contrib_3e_soo(a,i,j,k,contrib_soo) + fock_b_tot_3e_bi_orth_new(a,i) += 0.5d0 * contrib_soo enddo enddo @@ -119,10 +144,10 @@ BEGIN_PROVIDER [double precision, fock_b_tot_3e_bi_orth_new, (mo_num, mo_num)] enddo enddo - do j = elec_beta_num + 1, elec_alpha_num + do j = elec_beta_num+1, elec_alpha_num do k = elec_beta_num+1, elec_alpha_num - call contrib_3e_sss(a,i,j,k,contrib_sss) - fock_b_tot_3e_bi_orth_new(a,i) += 0.5d0 * contrib_sss + call contrib_3e_soo(a,i,j,k,contrib_soo) + fock_b_tot_3e_bi_orth_new(a,i) += 0.5d0 * contrib_soo enddo enddo