diff --git a/input/options b/input/options index 89427ee..c4d633e 100644 --- a/input/options +++ b/input/options @@ -15,4 +15,4 @@ # ACFDT: AC Kx XBS F F T # BSE: phBSE phBSE2 ppBSE dBSE dTDA - T T F T T + T T F T F diff --git a/src/GW/GW_phBSE_dynamic_kernel_B.f90 b/src/GW/GW_phBSE_dynamic_kernel_B.f90 index afc5166..aa6efb4 100644 --- a/src/GW/GW_phBSE_dynamic_kernel_B.f90 +++ b/src/GW/GW_phBSE_dynamic_kernel_B.f90 @@ -1,4 +1,4 @@ -subroutine GW_phBSE_dynamic_kernel_B(eta,nBas,nC,nO,nV,nR,nS,lambda,eGW,OmRPA,rhO,OmBSE,KB) +subroutine GW_phBSE_dynamic_kernel_B(eta,nBas,nC,nO,nV,nR,nS,lambda,eGW,OmRPA,rho,KB) ! Compute the dynamic part of the Bethe-Salpeter equation matrices @@ -18,7 +18,6 @@ subroutine GW_phBSE_dynamic_kernel_B(eta,nBas,nC,nO,nV,nR,nS,lambda,eGW,OmRPA,rh double precision,intent(in) :: eGW(nBas) double precision,intent(in) :: OmRPA(nS) double precision,intent(in) :: rho(nBas,nBas,nS) - double precision,intent(in) :: OmBSE ! Local variables diff --git a/src/GW/GW_phBSE_dynamic_perturbation.f90 b/src/GW/GW_phBSE_dynamic_perturbation.f90 index 09da1af..64f85e7 100644 --- a/src/GW/GW_phBSE_dynamic_perturbation.f90 +++ b/src/GW/GW_phBSE_dynamic_perturbation.f90 @@ -88,16 +88,14 @@ subroutine GW_phBSE_dynamic_perturbation(dophBSE2,dTDA,eta,nBas,nC,nO,nV,nR,nS,e X(:) = 0.5d0*(XpY(ia,:) + XmY(ia,:)) Y(:) = 0.5d0*(XpY(ia,:) - XmY(ia,:)) - ! First-order correction + ! Resonant part of the BSE correction for dynamical TDA + + call GW_phBSE_dynamic_kernel_A(eta,nBas,nC,nO,nV,nR,nS,1d0,eGW,OmRPA,rho_RPA,+OmBSE(ia),KAp_dyn,ZAp_dyn) + + if(dophBSE2) call GW_phBSE2_dynamic_kernel_A(eta,nBas,nC,nO,nV,nR,nS,eGW,W,OmBSE(ia),KAp_dyn,ZAp_dyn) if(dTDA) then - ! Resonant part of the BSE correction for dynamical TDA - - call GW_phBSE_dynamic_kernel_A(eta,nBas,nC,nO,nV,nR,nS,1d0,eGW,OmRPA,rho_RPA,+OmBSE(ia),KAp_dyn,ZAp_dyn) - - if(dophBSE2) call GW_phBSE2_dynamic_kernel_A(eta,nBas,nC,nO,nV,nR,nS,eGW,W,OmBSE(ia),KAp_dyn,ZAp_dyn) - ZDyn(ia) = dot_product(X,matmul(ZAp_dyn,X)) OmDyn(ia) = dot_product(X,matmul(KAp_dyn - KA_sta,X))