mirror of
https://github.com/pfloos/quack
synced 2024-12-22 20:34:46 +01:00
COHSEX done and debugged
This commit is contained in:
parent
8c2b2f5e86
commit
fb4251e419
57
input/basis
57
input/basis
@ -1,52 +1,9 @@
|
||||
1 9
|
||||
S 9 1.00
|
||||
1.469000D+03 7.660000D-04
|
||||
2.205000D+02 5.892000D-03
|
||||
5.026000D+01 2.967100D-02
|
||||
1.424000D+01 1.091800D-01
|
||||
4.581000D+00 2.827890D-01
|
||||
1.580000D+00 4.531230D-01
|
||||
5.640000D-01 2.747740D-01
|
||||
7.345000D-02 9.751000D-03
|
||||
2.805000D-02 -3.180000D-03
|
||||
S 9 1.00
|
||||
1.469000D+03 -1.200000D-04
|
||||
2.205000D+02 -9.230000D-04
|
||||
5.026000D+01 -4.689000D-03
|
||||
1.424000D+01 -1.768200D-02
|
||||
4.581000D+00 -4.890200D-02
|
||||
1.580000D+00 -9.600900D-02
|
||||
5.640000D-01 -1.363800D-01
|
||||
7.345000D-02 5.751020D-01
|
||||
2.805000D-02 5.176610D-01
|
||||
1 3
|
||||
S 3 1.00
|
||||
38.3600000 0.0238090
|
||||
5.7700000 0.1548910
|
||||
1.2400000 0.4699870
|
||||
S 1 1.00
|
||||
2.805000D-02 1.000000D+00
|
||||
S 1 1.00
|
||||
8.600000D-03 1.000000D+00
|
||||
P 4 1.00
|
||||
1.534000D+00 2.278400D-02
|
||||
2.749000D-01 1.391070D-01
|
||||
7.362000D-02 5.003750D-01
|
||||
2.403000D-02 5.084740D-01
|
||||
0.2976000 1.0000000
|
||||
P 1 1.00
|
||||
2.403000D-02 1.000000D+00
|
||||
P 1 1.00
|
||||
5.800000D-03 1.000000D+00
|
||||
D 1 1.00
|
||||
1.144000D-01 1.0000000
|
||||
D 1 1.00
|
||||
7.330000D-02 1.000000D+00
|
||||
2 5
|
||||
S 4 1.00
|
||||
1.301000D+01 1.968500D-02
|
||||
1.962000D+00 1.379770D-01
|
||||
4.446000D-01 4.781480D-01
|
||||
1.220000D-01 5.012400D-01
|
||||
S 1 1.00
|
||||
1.220000D-01 1.000000D+00
|
||||
S 1 1.00
|
||||
0.0297400 1.0000000
|
||||
P 1 1.00
|
||||
7.270000D-01 1.0000000
|
||||
P 1 1.00
|
||||
0.1410000 1.0000000
|
||||
1.2750000 1.0000000
|
||||
|
@ -5,12 +5,12 @@
|
||||
# CCD CCSD CCSD(T)
|
||||
F F F
|
||||
# CIS TDHF ppRPA ADC
|
||||
F F T F
|
||||
F F F F
|
||||
# GF2 GF3
|
||||
F F
|
||||
# G0W0 evGW qsGW
|
||||
F F F
|
||||
# G0T0 evGT qsGT
|
||||
T F F
|
||||
# G0T0 evGT qsGT
|
||||
F F F
|
||||
# MCMP2
|
||||
F
|
||||
|
@ -1,5 +1,4 @@
|
||||
# nAt nEla nElb nCore nRyd
|
||||
2 2 2 0 0
|
||||
1 1 1 0 0
|
||||
# Znuc x y z
|
||||
Li 0. 0. 0.
|
||||
H 0. 0. 3.09839495
|
||||
He 0.0 0.0 0.0
|
||||
|
@ -9,6 +9,6 @@
|
||||
# GF: maxSCF thresh DIIS n_diis renormalization
|
||||
64 0.00001 T 10 3
|
||||
# GW: maxSCF thresh DIIS n_diis COHSEX SOSEX BSE TDA G0W GW0 linearize eta
|
||||
256 0.0000001 T 5 F F T F F F T 0.000
|
||||
256 0.0000001 T 5 T F F F F F F 0.000
|
||||
# MCMP2: nMC nEq nWalk dt nPrint iSeed doDrift
|
||||
1000000 100000 10 0.3 10000 1234 T
|
||||
|
57
input/weight
57
input/weight
@ -1,52 +1,9 @@
|
||||
1 9
|
||||
S 9 1.00
|
||||
1.469000D+03 7.660000D-04
|
||||
2.205000D+02 5.892000D-03
|
||||
5.026000D+01 2.967100D-02
|
||||
1.424000D+01 1.091800D-01
|
||||
4.581000D+00 2.827890D-01
|
||||
1.580000D+00 4.531230D-01
|
||||
5.640000D-01 2.747740D-01
|
||||
7.345000D-02 9.751000D-03
|
||||
2.805000D-02 -3.180000D-03
|
||||
S 9 1.00
|
||||
1.469000D+03 -1.200000D-04
|
||||
2.205000D+02 -9.230000D-04
|
||||
5.026000D+01 -4.689000D-03
|
||||
1.424000D+01 -1.768200D-02
|
||||
4.581000D+00 -4.890200D-02
|
||||
1.580000D+00 -9.600900D-02
|
||||
5.640000D-01 -1.363800D-01
|
||||
7.345000D-02 5.751020D-01
|
||||
2.805000D-02 5.176610D-01
|
||||
1 3
|
||||
S 3 1.00
|
||||
38.3600000 0.0238090
|
||||
5.7700000 0.1548910
|
||||
1.2400000 0.4699870
|
||||
S 1 1.00
|
||||
2.805000D-02 1.000000D+00
|
||||
S 1 1.00
|
||||
8.600000D-03 1.000000D+00
|
||||
P 4 1.00
|
||||
1.534000D+00 2.278400D-02
|
||||
2.749000D-01 1.391070D-01
|
||||
7.362000D-02 5.003750D-01
|
||||
2.403000D-02 5.084740D-01
|
||||
0.2976000 1.0000000
|
||||
P 1 1.00
|
||||
2.403000D-02 1.000000D+00
|
||||
P 1 1.00
|
||||
5.800000D-03 1.000000D+00
|
||||
D 1 1.00
|
||||
1.144000D-01 1.0000000
|
||||
D 1 1.00
|
||||
7.330000D-02 1.000000D+00
|
||||
2 5
|
||||
S 4 1.00
|
||||
1.301000D+01 1.968500D-02
|
||||
1.962000D+00 1.379770D-01
|
||||
4.446000D-01 4.781480D-01
|
||||
1.220000D-01 5.012400D-01
|
||||
S 1 1.00
|
||||
1.220000D-01 1.000000D+00
|
||||
S 1 1.00
|
||||
0.0297400 1.0000000
|
||||
P 1 1.00
|
||||
7.270000D-01 1.0000000
|
||||
P 1 1.00
|
||||
0.1410000 1.0000000
|
||||
1.2750000 1.0000000
|
||||
|
@ -89,18 +89,10 @@ subroutine G0W0(COHSEX,SOSEX,BSE,TDA,singlet_manifold,triplet_manifold,eta, &
|
||||
call self_energy_correlation_diag(COHSEX,SOSEX,eta,nBas,nC,nO,nV,nR,nS,eHF, &
|
||||
Omega(:,ispin),rho(:,:,:,ispin),rhox(:,:,:,ispin),EcGM,SigC)
|
||||
|
||||
! COHSEX static approximation
|
||||
! Compute renormalization factor
|
||||
|
||||
if(COHSEX) then
|
||||
|
||||
Z(:) = 1d0
|
||||
|
||||
else
|
||||
|
||||
call renormalization_factor(SOSEX,eta,nBas,nC,nO,nV,nR,nS,eHF, &
|
||||
Omega(:,ispin),rho(:,:,:,ispin),rhox(:,:,:,ispin),Z(:))
|
||||
|
||||
endif
|
||||
call renormalization_factor(COHSEX,SOSEX,eta,nBas,nC,nO,nV,nR,nS,eHF, &
|
||||
Omega(:,ispin),rho(:,:,:,ispin),rhox(:,:,:,ispin),Z(:))
|
||||
|
||||
! Solve the quasi-particle equation
|
||||
|
||||
|
@ -128,13 +128,15 @@ subroutine evGW(maxSCF,thresh,max_diis,COHSEX,SOSEX,BSE,TDA,G0W,GW0,singlet_mani
|
||||
|
||||
call self_energy_correlation_diag(COHSEX,SOSEX,eta,nBas,nC,nO,nV,nR,nS,eHF, &
|
||||
Omega(:,ispin),rho(:,:,:,ispin),rhox(:,:,:,ispin),EcGM,SigC)
|
||||
call renormalization_factor(SOSEX,eta,nBas,nC,nO,nV,nR,nS,eHF,Omega(:,ispin),rho(:,:,:,ispin),rhox(:,:,:,ispin),Z(:))
|
||||
call renormalization_factor(COHSEX,SOSEX,eta,nBas,nC,nO,nV,nR,nS,eHF, &
|
||||
Omega(:,ispin),rho(:,:,:,ispin),rhox(:,:,:,ispin),Z(:))
|
||||
|
||||
else
|
||||
|
||||
call self_energy_correlation_diag(COHSEX,SOSEX,eta,nBas,nC,nO,nV,nR,nS,eGW, &
|
||||
Omega(:,ispin),rho(:,:,:,ispin),rhox(:,:,:,ispin),EcGM,SigC)
|
||||
call renormalization_factor(SOSEX,eta,nBas,nC,nO,nV,nR,nS,eGW,Omega(:,ispin),rho(:,:,:,ispin),rhox(:,:,:,ispin),Z(:))
|
||||
call renormalization_factor(COHSEX,SOSEX,eta,nBas,nC,nO,nV,nR,nS,eGW, &
|
||||
Omega(:,ispin),rho(:,:,:,ispin),rhox(:,:,:,ispin),Z(:))
|
||||
|
||||
endif
|
||||
|
||||
|
@ -90,6 +90,6 @@ subroutine linear_response(ispin,dRPA,TDA,BSE,nBas,nC,nO,nV,nR,nS,e,ERI,rho,EcRP
|
||||
|
||||
EcRPA = 0.5d0*(sum(Omega) - trace_matrix(nS,A))
|
||||
|
||||
print*,'EcRPA = ',EcRPA
|
||||
! print*,'EcRPA = ',EcRPA
|
||||
|
||||
end subroutine linear_response
|
||||
|
@ -60,8 +60,8 @@ subroutine linear_response_pp(ispin,BSE,nBas,nC,nO,nV,nR,nOO,nVV,e,ERI,Omega1,X1
|
||||
|
||||
! Off-diagonal blocks
|
||||
|
||||
M( 1:nVV ,nVV+1:nOO+nVV) = + B(1:nVV,1:nOO)
|
||||
M(nVV+1:nOO+nVV, 1:nVV) = - transpose(B(1:nVV,1:nOO))
|
||||
M( 1:nVV ,nVV+1:nOO+nVV) = - B(1:nVV,1:nOO)
|
||||
M(nVV+1:nOO+nVV, 1:nVV) = + transpose(B(1:nVV,1:nOO))
|
||||
|
||||
! print*, 'pp-RPA matrix'
|
||||
! call matout(nOO+nVV,nOO+nVV,M(:,:))
|
||||
|
@ -151,13 +151,15 @@ subroutine qsGW(maxSCF,thresh,max_diis,COHSEX,SOSEX,BSE,TDA,G0W,GW0,singlet_mani
|
||||
|
||||
call self_energy_correlation(COHSEX,SOSEX,eta,nBas,nC,nO,nV,nR,nS,eHF, &
|
||||
Omega(:,ispin),rho(:,:,:,ispin),rhox(:,:,:,ispin),EcGM,SigC)
|
||||
call renormalization_factor(SOSEX,eta,nBas,nC,nO,nV,nR,nS,eHF,Omega(:,ispin),rho(:,:,:,ispin),rhox(:,:,:,ispin),Z)
|
||||
call renormalization_factor(COHSEX,SOSEX,eta,nBas,nC,nO,nV,nR,nS,eHF, &
|
||||
Omega(:,ispin),rho(:,:,:,ispin),rhox(:,:,:,ispin),Z)
|
||||
|
||||
else
|
||||
|
||||
call self_energy_correlation(COHSEX,SOSEX,eta,nBas,nC,nO,nV,nR,nS,e, &
|
||||
Omega(:,ispin),rho(:,:,:,ispin),rhox(:,:,:,ispin),EcGM,SigC)
|
||||
call renormalization_factor(SOSEX,eta,nBas,nC,nO,nV,nR,nS,e,Omega(:,ispin),rho(:,:,:,ispin),rhox(:,:,:,ispin),Z)
|
||||
call renormalization_factor(COHSEX,SOSEX,eta,nBas,nC,nO,nV,nR,nS,e, &
|
||||
Omega(:,ispin),rho(:,:,:,ispin),rhox(:,:,:,ispin),Z)
|
||||
|
||||
endif
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
subroutine renormalization_factor(SOSEX,eta,nBas,nC,nO,nV,nR,nS,e,Omega,rho,rhox,Z)
|
||||
subroutine renormalization_factor(COHSEX,SOSEX,eta,nBas,nC,nO,nV,nR,nS,e,Omega,rho,rhox,Z)
|
||||
|
||||
! Compute renormalization factor for GW
|
||||
|
||||
@ -7,6 +7,7 @@ subroutine renormalization_factor(SOSEX,eta,nBas,nC,nO,nV,nR,nS,e,Omega,rho,rhox
|
||||
|
||||
! Input variables
|
||||
|
||||
logical,intent(in) :: COHSEX
|
||||
logical,intent(in) :: SOSEX
|
||||
double precision,intent(in) :: eta
|
||||
integer,intent(in) :: nBas,nC,nO,nV,nR,nS
|
||||
@ -28,6 +29,15 @@ subroutine renormalization_factor(SOSEX,eta,nBas,nC,nO,nV,nR,nS,e,Omega,rho,rhox
|
||||
|
||||
Z(:) = 0d0
|
||||
|
||||
! static COHSEX approximation
|
||||
|
||||
if(COHSEX) then
|
||||
|
||||
Z(:) = 1d0
|
||||
return
|
||||
|
||||
end if
|
||||
|
||||
! Occupied part of the correlation self-energy
|
||||
|
||||
do x=nC+1,nBas-nR
|
||||
@ -38,10 +48,10 @@ subroutine renormalization_factor(SOSEX,eta,nBas,nC,nO,nV,nR,nS,e,Omega,rho,rhox
|
||||
jb = jb + 1
|
||||
eps = e(x) - e(i) + Omega(jb)
|
||||
Z(x) = Z(x) - 2d0*rho(x,i,jb)**2*(eps/(eps**2 + eta**2))**2
|
||||
enddo
|
||||
enddo
|
||||
enddo
|
||||
enddo
|
||||
end do
|
||||
end do
|
||||
end do
|
||||
end do
|
||||
|
||||
! Virtual part of the correlation self-energy
|
||||
|
||||
@ -53,10 +63,10 @@ subroutine renormalization_factor(SOSEX,eta,nBas,nC,nO,nV,nR,nS,e,Omega,rho,rhox
|
||||
jb = jb + 1
|
||||
eps = e(x) - e(a) - Omega(jb)
|
||||
Z(x) = Z(x) - 2d0*rho(x,a,jb)**2*(eps/(eps**2 + eta**2))**2
|
||||
enddo
|
||||
enddo
|
||||
enddo
|
||||
enddo
|
||||
end do
|
||||
end do
|
||||
end do
|
||||
end do
|
||||
|
||||
! SOSEX correction
|
||||
|
||||
@ -72,10 +82,10 @@ subroutine renormalization_factor(SOSEX,eta,nBas,nC,nO,nV,nR,nS,e,Omega,rho,rhox
|
||||
jb = jb + 1
|
||||
eps = e(x) - e(i) + Omega(jb)
|
||||
Z(x) = Z(x) - (rho(x,i,jb)/eps)*(rhox(x,i,jb)/eps)
|
||||
enddo
|
||||
enddo
|
||||
enddo
|
||||
enddo
|
||||
end do
|
||||
end do
|
||||
end do
|
||||
end do
|
||||
|
||||
! Virtual part of the correlation self-energy
|
||||
|
||||
@ -87,10 +97,10 @@ subroutine renormalization_factor(SOSEX,eta,nBas,nC,nO,nV,nR,nS,e,Omega,rho,rhox
|
||||
jb = jb + 1
|
||||
eps = e(x) - e(a) - Omega(jb)
|
||||
Z(x) = Z(x) - (rho(x,a,jb)/eps)*(rhox(x,a,jb)/eps)
|
||||
enddo
|
||||
enddo
|
||||
enddo
|
||||
enddo
|
||||
end do
|
||||
end do
|
||||
end do
|
||||
end do
|
||||
|
||||
endif
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user