mirror of
https://github.com/pfloos/quack
synced 2024-09-13 06:58:31 +02:00
debugging ind energy for VWN
This commit is contained in:
parent
210e4b5e7c
commit
363bc11fa8
10
input/dft
10
input/dft
@ -6,7 +6,7 @@
|
|||||||
# GGA = 2: B88,G96,PBE
|
# GGA = 2: B88,G96,PBE
|
||||||
# MGGA = 3:
|
# MGGA = 3:
|
||||||
# Hybrid = 4 HF,B3LYP,PBE
|
# Hybrid = 4 HF,B3LYP,PBE
|
||||||
1 CC-S51
|
1 S51
|
||||||
# correlation rung:
|
# correlation rung:
|
||||||
# Hartree = 0: H
|
# Hartree = 0: H
|
||||||
# LDA = 1: PW92,VWN3,VWN5,eVWN5
|
# LDA = 1: PW92,VWN3,VWN5,eVWN5
|
||||||
@ -31,11 +31,11 @@
|
|||||||
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
|
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
|
||||||
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
|
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
|
||||||
# Ensemble weights: wEns(1),...,wEns(nEns-1)
|
# Ensemble weights: wEns(1),...,wEns(nEns-1)
|
||||||
0.0 0.0 0.0
|
0.95 0.0 0.0
|
||||||
# Ncentered ?
|
# Ncentered ?
|
||||||
T
|
F
|
||||||
# Parameters for CC weight-dependent exchange functional
|
# Parameters for CC weight-dependent exchange functional
|
||||||
-0.766201 -0.155585 0.00130104
|
-0.766201 -0.155585 0.00130104 0.0
|
||||||
0.00 0.00 0.00 0.00
|
0.00 0.00 0.00 0.00 0.0
|
||||||
# choice of UCC exchange coefficient : 1 for Cx1, 2 for Cx2, 3 for Cx1*Cx2
|
# choice of UCC exchange coefficient : 1 for Cx1, 2 for Cx2, 3 for Cx1*Cx2
|
||||||
1
|
1
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# RHF UHF KS MOM
|
# RHF UHF KS MOM
|
||||||
T F F F
|
F F T F
|
||||||
# MP2* MP3 MP2-F12
|
# MP2* MP3 MP2-F12
|
||||||
F F F
|
F F F
|
||||||
# CCD pCCD DCD CCSD CCSD(T)
|
# CCD pCCD DCD CCSD CCSD(T)
|
||||||
@ -9,7 +9,7 @@
|
|||||||
# CIS* CIS(D) CID CISD FCI
|
# CIS* CIS(D) CID CISD FCI
|
||||||
F F F F F
|
F F F F F
|
||||||
# RPA* RPAx* crRPA ppRPA
|
# RPA* RPAx* crRPA ppRPA
|
||||||
F F F T
|
F F F F
|
||||||
# G0F2* evGF2* qsGF2* G0F3 evGF3
|
# G0F2* evGF2* qsGF2* G0F3 evGF3
|
||||||
F F F F F
|
F F F F F
|
||||||
# G0W0* evGW* qsGW* ufG0W0 ufGW
|
# G0W0* evGW* qsGW* ufG0W0 ufGW
|
||||||
|
@ -67,49 +67,46 @@ subroutine UVWN5_lda_correlation_individual_energy(nGrid,weight,rhow,rho,doNcent
|
|||||||
raI = max(0d0,rho(iG,1))
|
raI = max(0d0,rho(iG,1))
|
||||||
rbI = max(0d0,rho(iG,2))
|
rbI = max(0d0,rho(iG,2))
|
||||||
|
|
||||||
! spin-up contribution
|
|
||||||
|
|
||||||
r = ra
|
|
||||||
rI = raI
|
|
||||||
|
|
||||||
if(r > threshold) then
|
|
||||||
|
|
||||||
rs = (4d0*pi*r/3d0)**(-1d0/3d0)
|
|
||||||
x = sqrt(rs)
|
|
||||||
|
|
||||||
x_f = x*x + b_f*x + c_f
|
|
||||||
xx0_f = x0_f*x0_f + b_f*x0_f + c_f
|
|
||||||
q_f = sqrt(4d0*c_f - b_f*b_f)
|
|
||||||
|
|
||||||
ec_f = a_f*( log(x**2/x_f) + 2d0*b_f/q_f*atan(q_f/(2d0*x + b_f)) &
|
|
||||||
- b_f*x0_f/xx0_f*( log((x - x0_f)**2/x_f) + 2d0*(b_f + 2d0*x0_f)/q_f*atan(q_f/(2d0*x + b_f)) ) )
|
|
||||||
|
|
||||||
drsdr = - (36d0*pi)**(-1d0/3d0)*r**(-4d0/3d0)
|
|
||||||
dxdrs = 0.5d0/sqrt(rs)
|
|
||||||
|
|
||||||
dxdx_f = 2d0*x + b_f
|
|
||||||
|
|
||||||
decdx_f = a_f*( 2d0/x - 4d0*b_f/( (b_f+2d0*x)**2 + q_f**2) - dxdx_f/x_f &
|
|
||||||
- b_f*x0_f/xx0_f*( 2/(x-x0_f) - 4d0*(b_f+2d0*x0_f)/( (b_f+2d0*x)**2 + q_f**2) - dxdx_f/x_f ) )
|
|
||||||
|
|
||||||
decdr_f = drsdr*dxdrs*decdx_f
|
|
||||||
|
|
||||||
Ecrr(1) = Ecrr(1) - weight(iG)*decdr_f*r*r
|
|
||||||
|
|
||||||
if(rI > threshold) then
|
|
||||||
|
|
||||||
EcrI(1) = EcrI(1) + weight(iG)*ec_f*rI
|
|
||||||
EcrrI(1) = EcrrI(1) + weight(iG)*decdr_f*r*rI
|
|
||||||
|
|
||||||
end if
|
|
||||||
|
|
||||||
end if
|
|
||||||
|
|
||||||
! up-down contribution
|
|
||||||
|
|
||||||
r = ra + rb
|
r = ra + rb
|
||||||
rI = raI + rbI
|
rI = raI + rbI
|
||||||
|
|
||||||
|
! spin-up contribution
|
||||||
|
|
||||||
|
! if(r > threshold) then
|
||||||
|
|
||||||
|
! rs = (4d0*pi*r/3d0)**(-1d0/3d0)
|
||||||
|
! x = sqrt(rs)
|
||||||
|
!
|
||||||
|
! x_f = x*x + b_f*x + c_f
|
||||||
|
! xx0_f = x0_f*x0_f + b_f*x0_f + c_f
|
||||||
|
! q_f = sqrt(4d0*c_f - b_f*b_f)
|
||||||
|
!
|
||||||
|
! ec_f = a_f*( log(x**2/x_f) + 2d0*b_f/q_f*atan(q_f/(2d0*x + b_f)) &
|
||||||
|
! - b_f*x0_f/xx0_f*( log((x - x0_f)**2/x_f) + 2d0*(b_f + 2d0*x0_f)/q_f*atan(q_f/(2d0*x + b_f)) ) )
|
||||||
|
!
|
||||||
|
! drsdr = - (36d0*pi)**(-1d0/3d0)*r**(-4d0/3d0)
|
||||||
|
! dxdrs = 0.5d0/sqrt(rs)
|
||||||
|
|
||||||
|
! dxdx_f = 2d0*x + b_f
|
||||||
|
|
||||||
|
! decdx_f = a_f*( 2d0/x - 4d0*b_f/( (b_f+2d0*x)**2 + q_f**2) - dxdx_f/x_f &
|
||||||
|
! - b_f*x0_f/xx0_f*( 2/(x-x0_f) - 4d0*(b_f+2d0*x0_f)/( (b_f+2d0*x)**2 + q_f**2) - dxdx_f/x_f ) )
|
||||||
|
|
||||||
|
! decdr_f = drsdr*dxdrs*decdx_f
|
||||||
|
|
||||||
|
! Ecrr(1) = Ecrr(1) - weight(iG)*decdr_f*r*r
|
||||||
|
|
||||||
|
! if(rI > threshold) then
|
||||||
|
|
||||||
|
! EcrI(1) = EcrI(1) + weight(iG)*ec_f*rI
|
||||||
|
! EcrrI(1) = EcrrI(1) + weight(iG)*decdr_f*r*rI
|
||||||
|
|
||||||
|
! end if
|
||||||
|
!
|
||||||
|
! end if
|
||||||
|
|
||||||
|
! up-down contribution
|
||||||
|
|
||||||
if(r > threshold) then
|
if(r > threshold) then
|
||||||
|
|
||||||
rs = (4d0*pi*r/3d0)**(-1d0/3d0)
|
rs = (4d0*pi*r/3d0)**(-1d0/3d0)
|
||||||
@ -171,6 +168,8 @@ subroutine UVWN5_lda_correlation_individual_energy(nGrid,weight,rhow,rho,doNcent
|
|||||||
decdr = decdr_p + decdr_a*fz/d2fz*(1d0-z**4) + ec_a*dfzdr/d2fz*(1d0-z**4) - 4d0*ec_a*fz/d2fz*dzdr*z**3 &
|
decdr = decdr_p + decdr_a*fz/d2fz*(1d0-z**4) + ec_a*dfzdr/d2fz*(1d0-z**4) - 4d0*ec_a*fz/d2fz*dzdr*z**3 &
|
||||||
+ (decdr_f - decdr_p)*fz*z**4 + (ec_f - ec_p)*dfzdr*z**4 + 4d0*(ec_f - ec_p)*fz*dzdr*z**3
|
+ (decdr_f - decdr_p)*fz*z**4 + (ec_f - ec_p)*dfzdr*z**4 + 4d0*(ec_f - ec_p)*fz*dzdr*z**3
|
||||||
|
|
||||||
|
decdr = ec_z + decdr*r
|
||||||
|
|
||||||
Ecrr(2) = Ecrr(2) - weight(iG)*decdr*r*r
|
Ecrr(2) = Ecrr(2) - weight(iG)*decdr*r*r
|
||||||
|
|
||||||
if(rI > threshold) then
|
if(rI > threshold) then
|
||||||
@ -184,41 +183,38 @@ subroutine UVWN5_lda_correlation_individual_energy(nGrid,weight,rhow,rho,doNcent
|
|||||||
|
|
||||||
! spin-down contribution
|
! spin-down contribution
|
||||||
|
|
||||||
r = rb
|
! if(r > threshold) then
|
||||||
rI = rbI
|
|
||||||
|
|
||||||
if(r > threshold) then
|
|
||||||
|
|
||||||
rs = (4d0*pi*r/3d0)**(-1d0/3d0)
|
! rs = (4d0*pi*r/3d0)**(-1d0/3d0)
|
||||||
x = sqrt(rs)
|
! x = sqrt(rs)
|
||||||
|
|
||||||
x_f = x*x + b_f*x + c_f
|
! x_f = x*x + b_f*x + c_f
|
||||||
xx0_f = x0_f*x0_f + b_f*x0_f + c_f
|
! xx0_f = x0_f*x0_f + b_f*x0_f + c_f
|
||||||
q_f = sqrt(4d0*c_f - b_f*b_f)
|
! q_f = sqrt(4d0*c_f - b_f*b_f)
|
||||||
|
|
||||||
ec_f = a_f*( log(x**2/x_f) + 2d0*b_f/q_f*atan(q_f/(2d0*x + b_f)) &
|
! ec_f = a_f*( log(x**2/x_f) + 2d0*b_f/q_f*atan(q_f/(2d0*x + b_f)) &
|
||||||
- b_f*x0_f/xx0_f*( log((x - x0_f)**2/x_f) + 2d0*(b_f + 2d0*x0_f)/q_f*atan(q_f/(2d0*x + b_f)) ) )
|
! - b_f*x0_f/xx0_f*( log((x - x0_f)**2/x_f) + 2d0*(b_f + 2d0*x0_f)/q_f*atan(q_f/(2d0*x + b_f)) ) )
|
||||||
|
|
||||||
drsdr = - (36d0*pi)**(-1d0/3d0)*r**(-4d0/3d0)
|
! drsdr = - (36d0*pi)**(-1d0/3d0)*r**(-4d0/3d0)
|
||||||
dxdrs = 0.5d0/sqrt(rs)
|
! dxdrs = 0.5d0/sqrt(rs)
|
||||||
|
|
||||||
dxdx_f = 2d0*x + b_f
|
! dxdx_f = 2d0*x + b_f
|
||||||
|
|
||||||
decdx_f = a_f*( 2d0/x - 4d0*b_f/( (b_f+2d0*x)**2 + q_f**2) - dxdx_f/x_f &
|
! decdx_f = a_f*( 2d0/x - 4d0*b_f/( (b_f+2d0*x)**2 + q_f**2) - dxdx_f/x_f &
|
||||||
- b_f*x0_f/xx0_f*( 2/(x-x0_f) - 4d0*(b_f+2d0*x0_f)/( (b_f+2d0*x)**2 + q_f**2) - dxdx_f/x_f ) )
|
! - b_f*x0_f/xx0_f*( 2/(x-x0_f) - 4d0*(b_f+2d0*x0_f)/( (b_f+2d0*x)**2 + q_f**2) - dxdx_f/x_f ) )
|
||||||
|
|
||||||
decdr_f = drsdr*dxdrs*decdx_f
|
! decdr_f = drsdr*dxdrs*decdx_f
|
||||||
|
|
||||||
Ecrr(3) = Ecrr(3) - weight(iG)*decdr_f*r*r
|
! Ecrr(3) = Ecrr(3) - weight(iG)*decdr_f*r*r
|
||||||
|
|
||||||
if(rI > threshold) then
|
! if(rI > threshold) then
|
||||||
|
|
||||||
EcrI(3) = EcrI(3) + weight(iG)*ec_f*rI
|
! EcrI(3) = EcrI(3) + weight(iG)*ec_f*rI
|
||||||
EcrrI(3) = EcrrI(3) + weight(iG)*decdr_f*r*rI
|
! EcrrI(3) = EcrrI(3) + weight(iG)*decdr_f*r*rI
|
||||||
|
|
||||||
end if
|
! end if
|
||||||
|
|
||||||
end if
|
! end if
|
||||||
|
|
||||||
end do
|
end do
|
||||||
|
|
||||||
|
@ -149,134 +149,68 @@ subroutine print_unrestricted_individual_energy(nEns,ENuc,Ew,ET,EV,EJ,Ex,Ec,Exc,
|
|||||||
! Total Energy and IP and EA
|
! Total Energy and IP and EA
|
||||||
!------------------------------------------------------------------------
|
!------------------------------------------------------------------------
|
||||||
|
|
||||||
write(*,'(A60)') '-------------------------------------------------'
|
write(*,'(A60)') '-------------------------------------------------'
|
||||||
write(*,'(A60)') ' IP AND EA FROM AUXILIARY ENERGIES '
|
write(*,'(A60)') ' IP AND EA FROM AUXILIARY ENERGIES '
|
||||||
write(*,'(A60)') '-------------------------------------------------'
|
write(*,'(A60)') '-------------------------------------------------'
|
||||||
|
|
||||||
write(*,'(A43,F16.10,A4)') ' Ionization Potential 1 -> 2:',Omaux(2)+OmxcDD(2),' au'
|
do iEns=2,nEns
|
||||||
write(*,*)
|
write(*,'(A40,I2,A1,F16.10,A3)') ' Energy difference 1 -> ',iEns,':',Omaux(iEns)+OmxcDD(iEns),' au'
|
||||||
write(*,'(A44, F16.10,A3)') ' auxiliary energy contribution : ',Omaux(2), ' au'
|
write(*,*)
|
||||||
write(*,'(A44, F16.10,A3)') ' x ensemble derivative : ',OmxDD(2), ' au'
|
write(*,'(A44, F16.10,A3)') ' auxiliary energy contribution : ',Omaux(iEns), ' au'
|
||||||
write(*,'(A44, F16.10,A3)') ' c ensemble derivative : ',OmcDD(2), ' au'
|
write(*,'(A44, F16.10,A3)') ' x ensemble derivative : ',OmxDD(iEns), ' au'
|
||||||
write(*,'(A44, F16.10,A3)') ' xc ensemble derivative : ',OmxcDD(2),' au'
|
write(*,'(A44, F16.10,A3)') ' c ensemble derivative : ',OmcDD(iEns), ' au'
|
||||||
write(*,*)
|
write(*,'(A44, F16.10,A3)') ' xc ensemble derivative : ',OmxcDD(iEns),' au'
|
||||||
write(*,'(A43,F16.10,A4)') ' Electronic Affinity 1 -> 3:',-(Omaux(3)+OmxcDD(3)),' au'
|
write(*,*)
|
||||||
write(*,*)
|
|
||||||
write(*,'(A44, F16.10,A3)') ' auxiliary energy contribution : ',-Omaux(3), ' au'
|
|
||||||
write(*,'(A44, F16.10,A3)') ' x ensemble derivative : ',-OmxDD(3), ' au'
|
|
||||||
write(*,'(A44, F16.10,A3)') ' c ensemble derivative : ',-OmcDD(3), ' au'
|
|
||||||
write(*,'(A44, F16.10,A3)') ' xc ensemble derivative : ',-OmxcDD(3),' au'
|
|
||||||
write(*,*)
|
|
||||||
write(*,'(A43,F16.10,A4)') ' Fundamental Gap :',Omaux(2)+OmxcDD(2)+(Omaux(3)+OmxcDD(3)),' au'
|
|
||||||
write(*,*)
|
|
||||||
write(*,'(A44, F16.10,A3)') ' auxiliary energy contribution : ',Omaux(2)+Omaux(3), ' au'
|
|
||||||
write(*,'(A44, F16.10,A3)') ' x ensemble derivative : ',OmxDD(2)+OmxDD(3), ' au'
|
|
||||||
write(*,'(A44, F16.10,A3)') ' c ensemble derivative : ',OmcDD(2)+OmcDD(3), ' au'
|
|
||||||
write(*,'(A44, F16.10,A3)') ' xc ensemble derivative : ',OmxcDD(2)+OmxcDD(3),' au'
|
|
||||||
write(*,*)
|
|
||||||
|
|
||||||
write(*,'(A60)') '-------------------------------------------------'
|
write(*,'(A60)') '-------------------------------------------------'
|
||||||
write(*,*)
|
write(*,*)
|
||||||
|
|
||||||
write(*,'(A40,F16.10,A3)') ' Ionization Potential 1 -> 2:',(Omaux(2)+OmxcDD(2))*HaToeV,' eV'
|
write(*,'(A40,I2,A1,F16.10,A3)') ' Energy difference 1 -> ',iEns,':',(Omaux(iEns)+OmxcDD(iEns))*HaToeV,' eV'
|
||||||
write(*,*)
|
write(*,*)
|
||||||
write(*,'(A44, F16.10,A3)') ' auxiliary energy contribution : ',Omaux(2)*HaToeV, ' eV'
|
write(*,'(A44, F16.10,A3)') ' auxiliary energy contribution : ',Omaux(iEns)*HaToeV, ' eV'
|
||||||
write(*,'(A44, F16.10,A3)') ' x ensemble derivative : ',OmxDD(2)*HaToeV, ' eV'
|
write(*,'(A44, F16.10,A3)') ' x ensemble derivative : ',OmxDD(iEns)*HaToeV, ' eV'
|
||||||
write(*,'(A44, F16.10,A3)') ' c ensemble derivative : ',OmcDD(2)*HaToeV, ' eV'
|
write(*,'(A44, F16.10,A3)') ' c ensemble derivative : ',OmcDD(iEns)*HaToeV, ' eV'
|
||||||
write(*,'(A44, F16.10,A3)') ' xc ensemble derivative : ',OmxcDD(2)*HaToeV,' eV'
|
write(*,'(A44, F16.10,A3)') ' xc ensemble derivative : ',OmxcDD(iEns)*HaToeV,' eV'
|
||||||
write(*,*)
|
write(*,*)
|
||||||
write(*,'(A40,F16.10,A3)') ' Electronic Affinity 1 -> 3:',-(Omaux(3)+OmxcDD(3))*HaToeV,' eV'
|
end do
|
||||||
write(*,*)
|
|
||||||
write(*,'(A44, F16.10,A3)') ' auxiliary energy contribution : ',-Omaux(3)*HaToeV, ' eV'
|
|
||||||
write(*,'(A44, F16.10,A3)') ' x ensemble derivative : ',-OmxDD(3)*HaToeV, ' eV'
|
|
||||||
write(*,'(A44, F16.10,A3)') ' c ensemble derivative : ',-OmcDD(3)*HaToeV, ' eV'
|
|
||||||
write(*,'(A44, F16.10,A3)') ' xc ensemble derivative : ',-OmxcDD(3)*HaToeV,' eV'
|
|
||||||
write(*,*)
|
|
||||||
write(*,'(A43,F16.10,A4)') ' Fundamental Gap :',(Omaux(2)+OmxcDD(2)+(Omaux(3)+OmxcDD(3)))*HaToeV,' eV'
|
|
||||||
write(*,*)
|
|
||||||
write(*,'(A44, F16.10,A3)') ' auxiliary energy contribution : ',(Omaux(2)+Omaux(3))*HaToeV, ' eV'
|
|
||||||
write(*,'(A44, F16.10,A3)') ' x ensemble derivative : ',(OmxDD(2)+OmxDD(3))*HaToeV, ' eV'
|
|
||||||
write(*,'(A44, F16.10,A3)') ' c ensemble derivative : ',(OmcDD(2)+OmcDD(3))*HaToeV, ' eV'
|
|
||||||
write(*,'(A44, F16.10,A3)') ' xc ensemble derivative : ',(OmxcDD(2)+OmxcDD(3))*HaToeV,' eV'
|
|
||||||
write(*,*)
|
|
||||||
|
|
||||||
write(*,'(A60)') '-------------------------------------------------'
|
write(*,'(A60)') '-------------------------------------------------'
|
||||||
write(*,*)
|
write(*,*)
|
||||||
|
|
||||||
write(*,'(A60)') '-------------------------------------------------'
|
write(*,'(A60)') '-------------------------------------------------'
|
||||||
write(*,'(A60)') ' IP and EA FROM INDIVIDUAL ENERGIES '
|
write(*,'(A60)') ' IP and EA FROM INDIVIDUAL ENERGIES '
|
||||||
write(*,'(A60)') '-------------------------------------------------'
|
write(*,'(A60)') '-------------------------------------------------'
|
||||||
do iEns=1,nEns
|
do iEns=1,nEns
|
||||||
write(*,'(A40,I2,A2,F16.10,A3)') ' Individual energy state ',iEns,': ',E(iEns) + ENuc,' au'
|
write(*,'(A40,I2,A2,F16.10,A3)') ' Individual energy state ',iEns,': ',E(iEns) + ENuc,' au'
|
||||||
end do
|
end do
|
||||||
write(*,'(A60)') '-------------------------------------------------'
|
write(*,'(A60)') '-------------------------------------------------'
|
||||||
|
|
||||||
write(*,'(A43,F16.10,A4)') ' Ionization Potential 1 -> 2:',Om(2), ' au'
|
do iEns=2,nEns
|
||||||
write(*,*)
|
write(*,'(A40,I2,A1,F16.10,A3)') ' Energy difference 1 -> ',iEns,':',Om(iEns), ' au'
|
||||||
write(*,'(A44, F16.10,A3)') ' x energy contribution : ',Omx(2), ' au'
|
write(*,*)
|
||||||
write(*,'(A44, F16.10,A3)') ' c energy contribution : ',Omc(2), ' au'
|
write(*,'(A44, F16.10,A3)') ' x energy contribution : ',Omx(iEns), ' au'
|
||||||
write(*,'(A44, F16.10,A3)') ' xc energy contribution : ',Omxc(2), ' au'
|
write(*,'(A44, F16.10,A3)') ' c energy contribution : ',Omc(iEns), ' au'
|
||||||
write(*,*)
|
write(*,'(A44, F16.10,A3)') ' xc energy contribution : ',Omxc(iEns), ' au'
|
||||||
write(*,'(A44, F16.10,A3)') ' x ensemble derivative : ',OmxDD(2), ' au'
|
write(*,*)
|
||||||
write(*,'(A44, F16.10,A3)') ' c ensemble derivative : ',OmcDD(2), ' au'
|
write(*,'(A44, F16.10,A3)') ' x ensemble derivative : ',OmxDD(iEns), ' au'
|
||||||
write(*,'(A44, F16.10,A3)') ' xc ensemble derivative : ',OmxcDD(2),' au'
|
write(*,'(A44, F16.10,A3)') ' c ensemble derivative : ',OmcDD(iEns), ' au'
|
||||||
write(*,*)
|
write(*,'(A44, F16.10,A3)') ' xc ensemble derivative : ',OmxcDD(iENs),' au'
|
||||||
write(*,'(A43,F16.10,A4)') ' Electronic Affinity 1 -> 3:',-Om(3), ' au'
|
write(*,*)
|
||||||
write(*,*)
|
|
||||||
write(*,'(A44, F16.10,A3)') ' x energy contribution : ',-Omx(3), ' au'
|
|
||||||
write(*,'(A44, F16.10,A3)') ' c energy contribution : ',-Omc(3), ' au'
|
|
||||||
write(*,'(A44, F16.10,A3)') ' xc energy contribution : ',-Omxc(3), ' au'
|
|
||||||
write(*,*)
|
|
||||||
write(*,'(A44, F16.10,A3)') ' x ensemble derivative : ',-OmxDD(3), ' au'
|
|
||||||
write(*,'(A44, F16.10,A3)') ' c ensemble derivative : ',-OmcDD(3), ' au'
|
|
||||||
write(*,'(A44, F16.10,A3)') ' xc ensemble derivative : ',-OmxcDD(3),' au'
|
|
||||||
write(*,*)
|
|
||||||
write(*,'(A43,F16.10,A4)') ' Fundamental Gap :',Om(2)+Om(3), ' au'
|
|
||||||
write(*,*)
|
|
||||||
write(*,'(A44, F16.10,A3)') ' x energy contribution : ',Omx(2)+Omx(3), ' au'
|
|
||||||
write(*,'(A44, F16.10,A3)') ' c energy contribution : ',Omc(2)+Omc(3), ' au'
|
|
||||||
write(*,'(A44, F16.10,A3)') ' xc energy contribution : ',Omxc(2)+Omxc(3), ' au'
|
|
||||||
write(*,*)
|
|
||||||
write(*,'(A44, F16.10,A3)') ' x ensemble derivative : ',OmxDD(2)+OmxDD(3), ' au'
|
|
||||||
write(*,'(A44, F16.10,A3)') ' c ensemble derivative : ',OmcDD(2)+OmcDD(3), ' au'
|
|
||||||
write(*,'(A44, F16.10,A3)') ' xc ensemble derivative : ',OmxcDD(2)+OmxcDD(3),' au'
|
|
||||||
write(*,*)
|
|
||||||
|
|
||||||
write(*,'(A60)') '-------------------------------------------------'
|
|
||||||
|
|
||||||
write(*,'(A43,F16.10,A4)') ' Ionization Potential 1 -> 2:',Om(2)*HaToeV, ' eV'
|
|
||||||
write(*,*)
|
|
||||||
write(*,'(A44, F16.10,A3)') ' x energy contribution : ',Omx(2)*HaToeV, ' eV'
|
|
||||||
write(*,'(A44, F16.10,A3)') ' c energy contribution : ',Omc(2)*HaToeV, ' eV'
|
|
||||||
write(*,'(A44, F16.10,A3)') ' xc energy contribution : ',Omxc(2)*HaToeV, ' eV'
|
|
||||||
write(*,*)
|
|
||||||
write(*,'(A44, F16.10,A3)') ' x ensemble derivative : ',OmxDD(2)*HaToeV, ' eV'
|
|
||||||
write(*,'(A44, F16.10,A3)') ' c ensemble derivative : ',OmcDD(2)*HaToeV, ' eV'
|
|
||||||
write(*,'(A44, F16.10,A3)') ' xc ensemble derivative : ',OmxcDD(2)*HaToeV,' eV'
|
|
||||||
write(*,*)
|
|
||||||
write(*,'(A43,F16.10,A4)') ' Electronic Affinity 1 -> 3:',-Om(3)*HaToeV, ' eV'
|
|
||||||
write(*,*)
|
|
||||||
write(*,'(A44, F16.10,A3)') ' x energy contribution : ',-Omx(3)*HaToeV, ' eV'
|
|
||||||
write(*,'(A44, F16.10,A3)') ' c energy contribution : ',-Omc(3)*HaToeV, ' eV'
|
|
||||||
write(*,'(A44, F16.10,A3)') ' xc energy contribution : ',-Omxc(3)*HaToeV, ' eV'
|
|
||||||
write(*,*)
|
|
||||||
write(*,'(A44, F16.10,A3)') ' x ensemble derivative : ',-OmxDD(3)*HaToeV, ' eV'
|
|
||||||
write(*,'(A44, F16.10,A3)') ' c ensemble derivative : ',-OmcDD(3)*HaToeV, ' eV'
|
|
||||||
write(*,'(A44, F16.10,A3)') ' xc ensemble derivative : ',-OmxcDD(3)*HaToeV,' eV'
|
|
||||||
write(*,*)
|
|
||||||
write(*,'(A43,F16.10,A4)') ' Fundamental Gap :',(Om(2)+Om(3))*HaToeV, ' eV'
|
|
||||||
write(*,*)
|
|
||||||
write(*,'(A44, F16.10,A3)') ' x energy contribution : ',(Omx(2)+Omx(3))*HaToeV, ' eV'
|
|
||||||
write(*,'(A44, F16.10,A3)') ' c energy contribution : ',(Omc(2)+Omc(3))*HaToeV, ' eV'
|
|
||||||
write(*,'(A44, F16.10,A3)') ' xc energy contribution : ',(Omxc(2)+Omxc(3))*HaToeV, ' eV'
|
|
||||||
write(*,*)
|
|
||||||
write(*,'(A44, F16.10,A3)') ' x ensemble derivative : ',(OmxDD(2)+OmxDD(3))*HaToeV, ' eV'
|
|
||||||
write(*,'(A44, F16.10,A3)') ' c ensemble derivative : ',(OmcDD(2)+OmcDD(3))*HaToeV, ' eV'
|
|
||||||
write(*,'(A44, F16.10,A3)') ' xc ensemble derivative : ',(OmxcDD(2)+OmxcDD(3))*HaToeV,' eV'
|
|
||||||
write(*,*)
|
|
||||||
|
|
||||||
write(*,'(A60)') '-------------------------------------------------'
|
write(*,'(A60)') '-------------------------------------------------'
|
||||||
|
|
||||||
write(*,*)
|
write(*,'(A40,I2,A1,F16.10,A3)') ' Energy difference 1 -> ',iEns,':',Om(iEns)*HaToeV, ' eV'
|
||||||
|
write(*,*)
|
||||||
|
write(*,'(A44, F16.10,A3)') ' x energy contribution : ',Omx(iEns)*HaToeV, ' eV'
|
||||||
|
write(*,'(A44, F16.10,A3)') ' c energy contribution : ',Omc(iEns)*HaToeV, ' eV'
|
||||||
|
write(*,'(A44, F16.10,A3)') ' xc energy contribution : ',Omxc(iEns)*HaToeV, ' eV'
|
||||||
|
write(*,*)
|
||||||
|
write(*,'(A44, F16.10,A3)') ' x ensemble derivative : ',OmxDD(iEns)*HaToeV, ' eV'
|
||||||
|
write(*,'(A44, F16.10,A3)') ' c ensemble derivative : ',OmcDD(iEns)*HaToeV, ' eV'
|
||||||
|
write(*,'(A44, F16.10,A3)') ' xc ensemble derivative : ',OmxcDD(iEns)*HaToeV,' eV'
|
||||||
|
write(*,*)
|
||||||
|
end do
|
||||||
|
write(*,'(A60)') '-------------------------------------------------'
|
||||||
|
write(*,*)
|
||||||
|
|
||||||
end subroutine print_unrestricted_individual_energy
|
end subroutine print_unrestricted_individual_energy
|
||||||
|
Loading…
Reference in New Issue
Block a user