mirror of
https://github.com/pfloos/quack
synced 2024-12-22 20:34:46 +01:00
fix QP graph everywhere
This commit is contained in:
parent
cf3b2cba58
commit
354afba786
@ -148,7 +148,7 @@ subroutine G0T0eh(doACFDT,exchange_kernel,doXBS,dophBSE,dophBSE2,TDA_T,TDA,dBSE,
|
|||||||
write(*,*) ' *** Quasiparticle energies obtained by root search (experimental) *** '
|
write(*,*) ' *** Quasiparticle energies obtained by root search (experimental) *** '
|
||||||
write(*,*)
|
write(*,*)
|
||||||
|
|
||||||
call GTeh_QP_graph(eta,nBas,nC,nO,nV,nR,nS,eHF,Om,rhoL,rhoR,eGTlin,eGT,Z)
|
call GTeh_QP_graph(eta,nBas,nC,nO,nV,nR,nS,eHF,Om,rhoL,rhoR,eGTlin,eHF,eGT,Z)
|
||||||
|
|
||||||
end if
|
end if
|
||||||
|
|
||||||
|
@ -195,7 +195,7 @@ subroutine G0T0pp(doACFDT,exchange_kernel,doXBS,dophBSE,TDA_T,TDA,dBSE,dTDA,dopp
|
|||||||
write(*,*)
|
write(*,*)
|
||||||
|
|
||||||
call GTpp_QP_graph(eta,nBas,nC,nO,nV,nR,nOOs,nVVs,nOOt,nVVt,eHF,Om1s,rho1s,Om2s,rho2s, &
|
call GTpp_QP_graph(eta,nBas,nC,nO,nV,nR,nOOs,nVVs,nOOt,nVVt,eHF,Om1s,rho1s,Om2s,rho2s, &
|
||||||
Om1t,rho1t,Om2t,rho2t,eGTlin,eGT,Z)
|
Om1t,rho1t,Om2t,rho2t,eGTlin,eHF,eGT,Z)
|
||||||
|
|
||||||
end if
|
end if
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
subroutine GTeh_QP_graph(eta,nBas,nC,nO,nV,nR,nS,eHF,Om,rhoL,rhoR,eGTlin,eGT,Z)
|
subroutine GTeh_QP_graph(eta,nBas,nC,nO,nV,nR,nS,eHF,Om,rhoL,rhoR,eGTlin,eOld,eGT,Z)
|
||||||
|
|
||||||
|
|
||||||
! Compute the graphical solution of the QP equation
|
! Compute the graphical solution of the QP equation
|
||||||
@ -22,6 +22,7 @@ subroutine GTeh_QP_graph(eta,nBas,nC,nO,nV,nR,nS,eHF,Om,rhoL,rhoR,eGTlin,eGT,Z)
|
|||||||
double precision,intent(in) :: rhoR(nBas,nBas,nS)
|
double precision,intent(in) :: rhoR(nBas,nBas,nS)
|
||||||
|
|
||||||
double precision,intent(in) :: eGTlin(nBas)
|
double precision,intent(in) :: eGTlin(nBas)
|
||||||
|
double precision,intent(in) :: eOld(nBas)
|
||||||
|
|
||||||
! Local variables
|
! Local variables
|
||||||
|
|
||||||
@ -55,8 +56,8 @@ subroutine GTeh_QP_graph(eta,nBas,nC,nO,nV,nR,nS,eHF,Om,rhoL,rhoR,eGTlin,eGT,Z)
|
|||||||
|
|
||||||
nIt = nIt + 1
|
nIt = nIt + 1
|
||||||
|
|
||||||
SigC = GTeh_SigC(p,w,eta,nBas,nC,nO,nV,nR,nS,eGTlin,Om,rhoL,rhoR)
|
SigC = GTeh_SigC(p,w,eta,nBas,nC,nO,nV,nR,nS,eOld,Om,rhoL,rhoR)
|
||||||
dSigC = GTeh_dSigC(p,w,eta,nBas,nC,nO,nV,nR,nS,eGTlin,Om,rhoL,rhoR)
|
dSigC = GTeh_dSigC(p,w,eta,nBas,nC,nO,nV,nR,nS,eOld,Om,rhoL,rhoR)
|
||||||
f = w - eHF(p) - SigC
|
f = w - eHF(p) - SigC
|
||||||
df = 1d0/(1d0 - dSigC)
|
df = 1d0/(1d0 - dSigC)
|
||||||
w = w - df*f
|
w = w - df*f
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
subroutine GTpp_QP_graph(eta,nBas,nC,nO,nV,nR,nOOs,nVVs,nOOt,nVVt,eHF,Om1s,rho1s,Om2s,rho2s, &
|
subroutine GTpp_QP_graph(eta,nBas,nC,nO,nV,nR,nOOs,nVVs,nOOt,nVVt,eHF,Om1s,rho1s,Om2s,rho2s, &
|
||||||
Om1t,rho1t,Om2t,rho2t,eGTlin,eGT,Z)
|
Om1t,rho1t,Om2t,rho2t,eGTlin,eOld,eGT,Z)
|
||||||
|
|
||||||
! Compute the graphical solution of the QP equation
|
! Compute the graphical solution of the QP equation
|
||||||
|
|
||||||
@ -24,6 +24,7 @@ subroutine GTpp_QP_graph(eta,nBas,nC,nO,nV,nR,nOOs,nVVs,nOOt,nVVt,eHF,Om1s,rho1s
|
|||||||
double precision,intent(in) :: rho2s(nBas,nBas,nOOs),rho2t(nBas,nBas,nOOt)
|
double precision,intent(in) :: rho2s(nBas,nBas,nOOs),rho2t(nBas,nBas,nOOt)
|
||||||
|
|
||||||
double precision,intent(in) :: eGTlin(nBas)
|
double precision,intent(in) :: eGTlin(nBas)
|
||||||
|
double precision,intent(in) :: eOld(nBas)
|
||||||
|
|
||||||
! Local variables
|
! Local variables
|
||||||
|
|
||||||
@ -60,8 +61,8 @@ subroutine GTpp_QP_graph(eta,nBas,nC,nO,nV,nR,nOOs,nVVs,nOOt,nVVt,eHF,Om1s,rho1s
|
|||||||
|
|
||||||
nIt = nIt + 1
|
nIt = nIt + 1
|
||||||
|
|
||||||
SigC = GTpp_SigC(p,w,eta,nBas,nC,nO,nV,nR,nOOs,nVVs,nOOt,nVVt,eGTlin,Om1s,rho1s,Om2s,rho2s,Om1t,rho1t,Om2t,rho2t)
|
SigC = GTpp_SigC(p,w,eta,nBas,nC,nO,nV,nR,nOOs,nVVs,nOOt,nVVt,eOld,Om1s,rho1s,Om2s,rho2s,Om1t,rho1t,Om2t,rho2t)
|
||||||
dSigC = GTpp_dSigC(p,w,eta,nBas,nC,nO,nV,nR,nOOs,nVVs,nOOt,nVVt,eGTlin,Om1s,rho1s,Om2s,rho2s,Om1t,rho1t,Om2t,rho2t)
|
dSigC = GTpp_dSigC(p,w,eta,nBas,nC,nO,nV,nR,nOOs,nVVs,nOOt,nVVt,eOld,Om1s,rho1s,Om2s,rho2s,Om1t,rho1t,Om2t,rho2t)
|
||||||
f = w - eHF(p) - SigC
|
f = w - eHF(p) - SigC
|
||||||
df = 1d0/(1d0 - dSigC)
|
df = 1d0/(1d0 - dSigC)
|
||||||
w = w - df*f
|
w = w - df*f
|
||||||
|
@ -153,7 +153,7 @@ subroutine evGTeh(maxSCF,thresh,max_diis,doACFDT,exchange_kernel,doXBS,dophBSE,d
|
|||||||
write(*,*) ' *** Quasiparticle energies obtained by root search (experimental) *** '
|
write(*,*) ' *** Quasiparticle energies obtained by root search (experimental) *** '
|
||||||
write(*,*)
|
write(*,*)
|
||||||
|
|
||||||
call GTeh_QP_graph(eta,nBas,nC,nO,nV,nR,nS,eHF,Om,rhoL,rhoR,eOld,eGT,Z)
|
call GTeh_QP_graph(eta,nBas,nC,nO,nV,nR,nS,eHF,Om,rhoL,rhoR,eOld,eOld,eGT,Z)
|
||||||
|
|
||||||
end if
|
end if
|
||||||
|
|
||||||
|
@ -210,7 +210,7 @@ subroutine evGTpp(maxSCF,thresh,max_diis,doACFDT,exchange_kernel,doXBS,BSE,TDA_T
|
|||||||
write(*,*)
|
write(*,*)
|
||||||
|
|
||||||
call GTpp_QP_graph(eta,nBas,nC,nO,nV,nR,nOOs,nVVs,nOOt,nVVt,eHF,Om1s,rho1s,Om2s,rho2s, &
|
call GTpp_QP_graph(eta,nBas,nC,nO,nV,nR,nOOs,nVVs,nOOt,nVVt,eHF,Om1s,rho1s,Om2s,rho2s, &
|
||||||
Om1t,rho1t,Om2t,rho2t,eOld,eGT,Z)
|
Om1t,rho1t,Om2t,rho2t,eOld,eOld,eGT,Z)
|
||||||
|
|
||||||
end if
|
end if
|
||||||
|
|
||||||
|
@ -20,6 +20,7 @@ subroutine GW_QP_graph(eta,nBas,nC,nO,nV,nR,nS,eHF,Om,rho,eGWlin,eOld,eGW,Z)
|
|||||||
double precision,intent(in) :: rho(nBas,nBas,nS)
|
double precision,intent(in) :: rho(nBas,nBas,nS)
|
||||||
|
|
||||||
double precision,intent(in) :: eGWlin(nBas)
|
double precision,intent(in) :: eGWlin(nBas)
|
||||||
|
double precision,intent(in) :: eOld(nBas)
|
||||||
|
|
||||||
! Local variables
|
! Local variables
|
||||||
|
|
||||||
@ -34,7 +35,6 @@ subroutine GW_QP_graph(eta,nBas,nC,nO,nV,nR,nS,eHF,Om,rho,eGWlin,eOld,eGW,Z)
|
|||||||
|
|
||||||
! Output variables
|
! Output variables
|
||||||
|
|
||||||
double precision,intent(out) :: eOld(nBas)
|
|
||||||
double precision,intent(out) :: eGW(nBas)
|
double precision,intent(out) :: eGW(nBas)
|
||||||
double precision,intent(out) :: Z(nBas)
|
double precision,intent(out) :: Z(nBas)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user