mirror of
https://github.com/pfloos/quack
synced 2024-08-24 21:21:46 +02:00
qsGW
This commit is contained in:
parent
e77365c593
commit
9eca749bce
@ -1,5 +1,5 @@
|
|||||||
# RHF UHF KS MOM
|
# RHF UHF KS MOM
|
||||||
T F F T
|
T F F F
|
||||||
# MP2* MP3 MP2-F12
|
# MP2* MP3 MP2-F12
|
||||||
F F F
|
F F F
|
||||||
# CCD DCD CCSD CCSD(T)
|
# CCD DCD CCSD CCSD(T)
|
||||||
@ -13,7 +13,7 @@
|
|||||||
# G0F2* evGF2* qsGF2* G0F3 evGF3
|
# G0F2* evGF2* qsGF2* G0F3 evGF3
|
||||||
F F F F F
|
F F F F F
|
||||||
# G0W0* evGW* qsGW*
|
# G0W0* evGW* qsGW*
|
||||||
F F F
|
T F F
|
||||||
# G0T0 evGT qsGT
|
# G0T0 evGT qsGT
|
||||||
F F F
|
F F F
|
||||||
# MCMP2
|
# MCMP2
|
||||||
|
@ -5,14 +5,14 @@
|
|||||||
# CC: maxSCF thresh DIIS n_diis
|
# CC: maxSCF thresh DIIS n_diis
|
||||||
64 0.00001 T 5
|
64 0.00001 T 5
|
||||||
# spin: TDA singlet triplet spin_conserved spin_flip
|
# spin: TDA singlet triplet spin_conserved spin_flip
|
||||||
T T T T T
|
F T T T T
|
||||||
# GF: maxSCF thresh DIIS n_diis lin eta renorm
|
# GF: maxSCF thresh DIIS n_diis lin eta renorm
|
||||||
256 0.00001 T 5 T 0.0 3
|
256 0.00001 T 5 T 0.0 3
|
||||||
# GW/GT: maxSCF thresh DIIS n_diis lin eta COHSEX SOSEX TDA_W G0W GW0
|
# GW/GT: maxSCF thresh DIIS n_diis lin eta COHSEX SOSEX TDA_W G0W GW0
|
||||||
256 0.0000001 T 5 T 0.0 F F F F F
|
256 0.00001 T 5 T 0.0 F F F F F
|
||||||
# ACFDT: AC Kx XBS
|
# ACFDT: AC Kx XBS
|
||||||
F T T
|
F T T
|
||||||
# BSE: BSE dBSE dTDA evDyn
|
# BSE: BSE dBSE dTDA evDyn
|
||||||
F F T F
|
T F T F
|
||||||
# MCMP2: nMC nEq nWalk dt nPrint iSeed doDrift
|
# MCMP2: nMC nEq nWalk dt nPrint iSeed doDrift
|
||||||
1000000 100000 10 0.3 10000 1234 T
|
1000000 100000 10 0.3 10000 1234 T
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
6
|
6
|
||||||
Ethylene,^1A_g,CC3,aug-cc-pVTZ
|
|
||||||
C 0.00000000 0.66690396 0.00000000
|
C 0.00000000 0.66690396 0.00000000
|
||||||
C 0.00000000 -0.66690396 0.00000000
|
C 0.00000000 -0.66690396 0.00000000
|
||||||
H 0.00000000 1.22952195 0.92229064
|
H 0.00000000 1.22952195 0.92229064
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
2
|
2
|
||||||
|
|
||||||
H 0.0 0.0 0.0
|
H 0.0 0.0 0.0
|
||||||
H 0.0 0.0 100.
|
H 0.0 0.0 0.740848
|
||||||
|
@ -118,6 +118,7 @@ subroutine qsGF2(maxSCF,thresh,max_diis,BSE,TDA,dBSE,dTDA,evDyn,singlet,triplet,
|
|||||||
c(:,:) = cHF(:,:)
|
c(:,:) = cHF(:,:)
|
||||||
F_diis(:,:) = 0d0
|
F_diis(:,:) = 0d0
|
||||||
error_diis(:,:) = 0d0
|
error_diis(:,:) = 0d0
|
||||||
|
rcond = 1d0
|
||||||
|
|
||||||
!------------------------------------------------------------------------
|
!------------------------------------------------------------------------
|
||||||
! Main loop
|
! Main loop
|
||||||
@ -177,15 +178,15 @@ subroutine qsGF2(maxSCF,thresh,max_diis,BSE,TDA,dBSE,dTDA,evDyn,singlet,triplet,
|
|||||||
c = matmul(X,cp)
|
c = matmul(X,cp)
|
||||||
SigCp = matmul(transpose(c),matmul(SigCp,c))
|
SigCp = matmul(transpose(c),matmul(SigCp,c))
|
||||||
|
|
||||||
|
! Compute new density matrix in the AO basis
|
||||||
|
|
||||||
|
P(:,:) = 2d0*matmul(c(:,1:nO),transpose(c(:,1:nO)))
|
||||||
|
|
||||||
! Save quasiparticles energy for next cycle
|
! Save quasiparticles energy for next cycle
|
||||||
|
|
||||||
Conv = maxval(abs(eGF2 - eOld))
|
Conv = maxval(abs(eGF2 - eOld))
|
||||||
eOld(:) = eGF2(:)
|
eOld(:) = eGF2(:)
|
||||||
|
|
||||||
! Compute new density matrix in the AO basis
|
|
||||||
|
|
||||||
P(:,:) = 2d0*matmul(c(:,1:nO),transpose(c(:,1:nO)))
|
|
||||||
|
|
||||||
!------------------------------------------------------------------------
|
!------------------------------------------------------------------------
|
||||||
! Compute total energy
|
! Compute total energy
|
||||||
!------------------------------------------------------------------------
|
!------------------------------------------------------------------------
|
||||||
|
@ -134,6 +134,7 @@ subroutine qsUGF2(maxSCF,thresh,max_diis,BSE,TDA,dBSE,dTDA,evDyn,spin_conserved,
|
|||||||
c(:,:,:) = cHF(:,:,:)
|
c(:,:,:) = cHF(:,:,:)
|
||||||
F_diis(:,:,:) = 0d0
|
F_diis(:,:,:) = 0d0
|
||||||
error_diis(:,:,:) = 0d0
|
error_diis(:,:,:) = 0d0
|
||||||
|
rcond = 1d0
|
||||||
|
|
||||||
!------------------------------------------------------------------------
|
!------------------------------------------------------------------------
|
||||||
! Main loop
|
! Main loop
|
||||||
|
@ -155,6 +155,7 @@ subroutine qsGW(maxSCF,thresh,max_diis,doACFDT,exchange_kernel,doXBS,COHSEX,SOSE
|
|||||||
c(:,:) = cHF(:,:)
|
c(:,:) = cHF(:,:)
|
||||||
F_diis(:,:) = 0d0
|
F_diis(:,:) = 0d0
|
||||||
error_diis(:,:) = 0d0
|
error_diis(:,:) = 0d0
|
||||||
|
rcond = 1d0
|
||||||
|
|
||||||
!------------------------------------------------------------------------
|
!------------------------------------------------------------------------
|
||||||
! Main loop
|
! Main loop
|
||||||
@ -236,15 +237,15 @@ subroutine qsGW(maxSCF,thresh,max_diis,doACFDT,exchange_kernel,doXBS,COHSEX,SOSE
|
|||||||
c = matmul(X,cp)
|
c = matmul(X,cp)
|
||||||
SigCp = matmul(transpose(c),matmul(SigCp,c))
|
SigCp = matmul(transpose(c),matmul(SigCp,c))
|
||||||
|
|
||||||
|
! Compute new density matrix in the AO basis
|
||||||
|
|
||||||
|
P(:,:) = 2d0*matmul(c(:,1:nO),transpose(c(:,1:nO)))
|
||||||
|
|
||||||
! Save quasiparticles energy for next cycle
|
! Save quasiparticles energy for next cycle
|
||||||
|
|
||||||
Conv = maxval(abs(eGW - eOld))
|
Conv = maxval(abs(eGW - eOld))
|
||||||
eOld(:) = eGW(:)
|
eOld(:) = eGW(:)
|
||||||
|
|
||||||
! Compute new density matrix in the AO basis
|
|
||||||
|
|
||||||
P(:,:) = 2d0*matmul(c(:,1:nO),transpose(c(:,1:nO)))
|
|
||||||
|
|
||||||
!------------------------------------------------------------------------
|
!------------------------------------------------------------------------
|
||||||
! Compute total energy
|
! Compute total energy
|
||||||
!------------------------------------------------------------------------
|
!------------------------------------------------------------------------
|
||||||
|
@ -173,6 +173,7 @@ subroutine qsUGW(maxSCF,thresh,max_diis,doACFDT,exchange_kernel,doXBS,COHSEX,SOS
|
|||||||
c(:,:,:) = cHF(:,:,:)
|
c(:,:,:) = cHF(:,:,:)
|
||||||
F_diis(:,:,:) = 0d0
|
F_diis(:,:,:) = 0d0
|
||||||
error_diis(:,:,:) = 0d0
|
error_diis(:,:,:) = 0d0
|
||||||
|
rcond = 1d0
|
||||||
|
|
||||||
!------------------------------------------------------------------------
|
!------------------------------------------------------------------------
|
||||||
! Main loop
|
! Main loop
|
||||||
|
@ -153,7 +153,7 @@ subroutine linear_solve(N,A,b,x,rcond)
|
|||||||
implicit none
|
implicit none
|
||||||
|
|
||||||
integer,intent(in) :: N
|
integer,intent(in) :: N
|
||||||
double precision,intent(in) :: A(N,N),b(N),rcond
|
double precision,intent(out) :: A(N,N),b(N),rcond
|
||||||
double precision,intent(out) :: x(N)
|
double precision,intent(out) :: x(N)
|
||||||
|
|
||||||
integer :: info,lwork
|
integer :: info,lwork
|
||||||
|
Loading…
Reference in New Issue
Block a user