diff --git a/src/MBPT/Bethe_Salpeter_Tmatrix.f90 b/src/MBPT/Bethe_Salpeter_Tmatrix.f90 index 60c9995..869b7e4 100644 --- a/src/MBPT/Bethe_Salpeter_Tmatrix.f90 +++ b/src/MBPT/Bethe_Salpeter_Tmatrix.f90 @@ -143,8 +143,8 @@ subroutine Bethe_Salpeter_Tmatrix(TDA_T,TDA,dBSE,dTDA,evDyn,singlet,triplet,eta, ! OmBSE(:,ispin),XpY_BSE(:,:,ispin),XmY_BSE(:,:,ispin)) else - call Bethe_Salpeter_dynamic_perturbation(dTDA,eta,nBas,nC,nO,nV,nR,nS,nOOs,nVVs,Omega1s,Omega2s,rho1s,rho2s, & - eT,eGT,dipole_int,OmBSE(:,ispin),XpY_BSE(:,:,ispin),XmY_BSE(:,:,ispin)) + call Bethe_Salpeter_Tmatrix_dynamic_perturbation(dTDA,eta,nBas,nC,nO,nV,nR,nS,nOOs,nVVs,Omega1s,Omega2s,rho1s,rho2s, & + eT,eGT,dipole_int,OmBSE(:,ispin),XpY_BSE(:,:,ispin),XmY_BSE(:,:,ispin)) end if end if @@ -182,8 +182,8 @@ subroutine Bethe_Salpeter_Tmatrix(TDA_T,TDA,dBSE,dTDA,evDyn,singlet,triplet,eta, ! OmBSE(:,ispin),XpY_BSE(:,:,ispin),XmY_BSE(:,:,ispin)) else - call Bethe_Salpeter_dynamic_perturbation(dTDA,eta,nBas,nC,nO,nV,nR,nS,nOOt,nVVt,Omega1t,Omega2t,rho1t,rho2t, & - eT,eGT,dipole_int,OmBSE(:,ispin),XpY_BSE(:,:,ispin),XmY_BSE(:,:,ispin)) + call Bethe_Salpeter_Tmatrix_dynamic_perturbation(dTDA,eta,nBas,nC,nO,nV,nR,nS,nOOt,nVVt,Omega1t,Omega2t,rho1t,rho2t, & + eT,eGT,dipole_int,OmBSE(:,ispin),XpY_BSE(:,:,ispin),XmY_BSE(:,:,ispin)) end if end if diff --git a/src/MBPT/Bethe_Salpeter_Tmatrix_dynamic_perturbation.f90 b/src/MBPT/Bethe_Salpeter_Tmatrix_dynamic_perturbation.f90 index 8e9d516..e0cab84 100644 --- a/src/MBPT/Bethe_Salpeter_Tmatrix_dynamic_perturbation.f90 +++ b/src/MBPT/Bethe_Salpeter_Tmatrix_dynamic_perturbation.f90 @@ -1,7 +1,5 @@ -subroutine Bethe_Salpeter_Tmatrix_dynamic_perturbation(dTDA,eta,nBas,nC,nO,nV,nR,nS,nOO,nVV, & - Omega1,Omega2,rho1,rho2, & +subroutine Bethe_Salpeter_Tmatrix_dynamic_perturbation(dTDA,eta,nBas,nC,nO,nV,nR,nS,nOO,nVV,Omega1,Omega2,rho1,rho2, & eT,eGT,dipole_int,OmBSE,XpY,XmY) - ! Compute dynamical effects via perturbation theory for BSE@GT implicit none @@ -90,7 +88,7 @@ subroutine Bethe_Salpeter_Tmatrix_dynamic_perturbation(dTDA,eta,nBas,nC,nO,nV,nR ! Resonant part of the BSE correction for dynamical TDA - call dynamic_Tmatrix_TA(eta,nBas,nC,nO,nV,nR,nS,nOO,nVV,1d0,eGT,Omega1,Omega2,rho1,rho2,OmBSE(ia),Ap_dyn) + call dynamic_Tmatrix_A(eta,nBas,nC,nO,nV,nR,nS,nOO,nVV,1d0,eGT,Omega1,Omega2,rho1,rho2,OmBSE(ia),Ap_dyn) ! Renormalization factor of the resonant parts for dynamical TDA diff --git a/src/MBPT/dynamic_Tmatrix_A.f90 b/src/MBPT/dynamic_Tmatrix_A.f90 index 469ebe8..5882652 100644 --- a/src/MBPT/dynamic_Tmatrix_A.f90 +++ b/src/MBPT/dynamic_Tmatrix_A.f90 @@ -77,7 +77,7 @@ subroutine dynamic_Tmatrix_A(eta,nBas,nC,nO,nV,nR,nS,nOO,nVV,lambda,eGT,Omega1,O chi = chi + rho2(i,j,kl)*rho2(a,b,kl)*eps/(eps**2 + eta**2) end do - A_dyn(ia,jb) = A_dyn(ia,jb) - 2d0*lambda*chi + A_dyn(ia,jb) = A_dyn(ia,jb) - lambda*chi end do end do diff --git a/src/MBPT/dynamic_Tmatrix_ZA.f90 b/src/MBPT/dynamic_Tmatrix_ZA.f90 index fe58db4..741718a 100644 --- a/src/MBPT/dynamic_Tmatrix_ZA.f90 +++ b/src/MBPT/dynamic_Tmatrix_ZA.f90 @@ -63,7 +63,7 @@ subroutine dynamic_Tmatrix_ZA(eta,nBas,nC,nO,nV,nR,nS,nOO,nVV,lambda,eGT,Omega1, chi = chi + rho2(i,j,kl)*rho2(a,b,kl)*(eps**2 - eta**2)/(eps**2 + eta**2)**2 end do - ZA_dyn(ia,jb) = ZA_dyn(ia,jb) + 2d0*lambda*chi + ZA_dyn(ia,jb) = ZA_dyn(ia,jb) + lambda*chi end do end do