From dc0f77d5251ffc3477e49ac2547aac4d51f351e9 Mon Sep 17 00:00:00 2001 From: Pierre-Francois Loos Date: Tue, 24 Sep 2024 17:18:45 +0200 Subject: [PATCH] uf ppBSE --- src/GW/RGW_ppBSE.f90 | 8 +++++++- src/GW/RGW_ppBSE_upfolded.f90 | 6 ++++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/src/GW/RGW_ppBSE.f90 b/src/GW/RGW_ppBSE.f90 index 8dd35a9..6ffcb23 100644 --- a/src/GW/RGW_ppBSE.f90 +++ b/src/GW/RGW_ppBSE.f90 @@ -253,6 +253,12 @@ subroutine RGW_ppBSE(TDA_W,TDA,dBSE,dTDA,singlet,triplet,eta,nOrb,nC,nO,nV,nR,nS call RGW_ppBSE_dynamic_perturbation(ispin,dTDA,eta,nOrb,nC,nO,nV,nR,nS,nOO,nVV,eW,eGW,ERI,dipole_int,OmRPA,rho_RPA, & Om1,X1,Y1,Om2,X2,Y2,KB_sta,KC_sta,KD_sta) + !----------------! + ! Upfolded ppBSE ! + !----------------! + + call RGW_ppBSE_upfolded(ispin,nOrb,nC,nO,nV,nR,nS,ERI,rho_RPA,OmRPA,eGW) + deallocate(KB_sta,KC_sta,KD_sta) deallocate(Om1,X1,Y1,Om2,X2,Y2) @@ -369,7 +375,7 @@ subroutine RGW_ppBSE(TDA_W,TDA,dBSE,dTDA,singlet,triplet,eta,nOrb,nC,nO,nV,nR,nS ! Upfolded ppBSE ! !----------------! -! call RGW_ppBSE_upfolded(ispin,nOrb,nC,nO,nV,nR,nS,ERI,rho_RPA,OmRPA,eGW) + call RGW_ppBSE_upfolded(ispin,nOrb,nC,nO,nV,nR,nS,ERI,rho_RPA,OmRPA,eGW) deallocate(KB_sta,KC_sta,KD_sta) deallocate(Om1,X1,Y1,Om2,X2,Y2) diff --git a/src/GW/RGW_ppBSE_upfolded.f90 b/src/GW/RGW_ppBSE_upfolded.f90 index 445e509..3555425 100644 --- a/src/GW/RGW_ppBSE_upfolded.f90 +++ b/src/GW/RGW_ppBSE_upfolded.f90 @@ -182,10 +182,10 @@ subroutine RGW_ppBSE_upfolded(ispin,nOrb,nC,nO,nV,nR,nS,ERI,rho,Om,eGW) H(n2h+1*n3h1p+ijm,kl ) = +tmp1 H(kl ,n2h+1*n3h1p+ijm) = +tmp4 - H(n2h+2*n3h1p+ijm,kl ) = -tmp2 + H(n2h+2*n3h1p+ijm,kl ) = +tmp2 H(kl ,n2h+2*n3h1p+ijm) = +tmp3 - H(n2h+3*n3h1p+ijm,kl ) = -tmp2 + H(n2h+3*n3h1p+ijm,kl ) = +tmp2 H(kl ,n2h+3*n3h1p+ijm) = +tmp4 end do @@ -220,6 +220,8 @@ subroutine RGW_ppBSE_upfolded(ispin,nOrb,nC,nO,nV,nR,nS,ERI,rho,Om,eGW) ! Diagonalize supermatrix ! !-------------------------! + call matout(nH,nH,H) + call diagonalize_general_matrix(nH,H,OmBSE,X) do s=1,nH