mirror of
https://github.com/pfloos/quack
synced 2025-01-03 01:55:57 +01:00
correction of EA sign and added Fundamental Gap in the print
This commit is contained in:
parent
b82cbc5c87
commit
d1c24948dd
30
input/basis
30
input/basis
@ -1,9 +1,25 @@
|
||||
1 3
|
||||
S 3
|
||||
1 38.3600000 0.0238090
|
||||
2 5.7700000 0.1548910
|
||||
3 1.2400000 0.4699870
|
||||
1 10
|
||||
S 4
|
||||
1 528.5000000 0.0009400
|
||||
2 79.3100000 0.0072140
|
||||
3 18.0500000 0.0359750
|
||||
4 5.0850000 0.1277820
|
||||
S 1
|
||||
1 0.2976000 1.0000000
|
||||
1 1.6090000 1.0000000
|
||||
S 1
|
||||
1 0.5363000 1.0000000
|
||||
S 1
|
||||
1 0.1833000 1.0000000
|
||||
P 1
|
||||
1 1.2750000 1.0000000
|
||||
1 5.9940000 1.0000000
|
||||
P 1
|
||||
1 1.7450000 1.0000000
|
||||
P 1
|
||||
1 0.5600000 1.0000000
|
||||
D 1
|
||||
1 4.2990000 1.0000000
|
||||
D 1
|
||||
1 1.2230000 1.0000000
|
||||
F 1
|
||||
1 2.6800000 1.0000000
|
||||
|
||||
|
@ -19,9 +19,9 @@
|
||||
# Number of states in ensemble (nEns)
|
||||
3
|
||||
# Ensemble weights: wEns(1),...,wEns(nEns-1)
|
||||
1 0.0
|
||||
0.00 0.00
|
||||
# Parameters for CC weight-dependent exchange functional
|
||||
0.000000 0.0000000 0.000000
|
||||
0.000000 0.0000000 0.0000000
|
||||
0.420243 0.0700561 -0.288301
|
||||
0.135068 -0.00774769 -0.0278205
|
||||
# GOK-DFT: maxSCF thresh DIIS n_diis guess_type ortho_type
|
||||
32 0.00001 T 5 1 1
|
||||
|
30
input/weight
30
input/weight
@ -1,9 +1,25 @@
|
||||
1 3
|
||||
S 3
|
||||
1 38.3600000 0.0238090
|
||||
2 5.7700000 0.1548910
|
||||
3 1.2400000 0.4699870
|
||||
1 10
|
||||
S 4
|
||||
1 528.5000000 0.0009400
|
||||
2 79.3100000 0.0072140
|
||||
3 18.0500000 0.0359750
|
||||
4 5.0850000 0.1277820
|
||||
S 1
|
||||
1 0.2976000 1.0000000
|
||||
1 1.6090000 1.0000000
|
||||
S 1
|
||||
1 0.5363000 1.0000000
|
||||
S 1
|
||||
1 0.1833000 1.0000000
|
||||
P 1
|
||||
1 1.2750000 1.0000000
|
||||
1 5.9940000 1.0000000
|
||||
P 1
|
||||
1 1.7450000 1.0000000
|
||||
P 1
|
||||
1 0.5600000 1.0000000
|
||||
D 1
|
||||
1 4.2990000 1.0000000
|
||||
D 1
|
||||
1 1.2230000 1.0000000
|
||||
F 1
|
||||
1 2.6800000 1.0000000
|
||||
|
||||
|
@ -1,63 +0,0 @@
|
||||
#! /bin/bash
|
||||
|
||||
MOL=$1
|
||||
BASIS=$2
|
||||
|
||||
w_start=0.0
|
||||
w_end=1.0
|
||||
dw=0.1
|
||||
|
||||
w2=0.0
|
||||
|
||||
XF=$3
|
||||
CF=$4
|
||||
|
||||
aw1="0.000000 0.0000000 0.000000"
|
||||
aw2="0.000000 0.0000000 0.0000000"
|
||||
|
||||
DATA=${MOL}_${BASIS}_${XF}_${CF}.dat
|
||||
rm $DATA
|
||||
touch $DATA
|
||||
|
||||
for w1 in $(seq $w_start $dw $w_end)
|
||||
do
|
||||
### w2=${w1}
|
||||
echo "# Restricted or unrestricted KS calculation" > input/dft
|
||||
echo " eDFT-UKS" >> input/dft
|
||||
echo "# exchange rung:" >> input/dft
|
||||
echo "# Hartree = 0" >> input/dft
|
||||
echo "# LDA = 1: RS51,RMFL20" >> input/dft
|
||||
echo "# GGA = 2: RB88" >> input/dft
|
||||
echo "# Hybrid = 4" >> input/dft
|
||||
echo "# Hartree-Fock = 666" >> input/dft
|
||||
echo " 1 $XF " >> input/dft
|
||||
echo "# correlation rung: " >> input/dft
|
||||
echo "# Hartree = 0" >> input/dft
|
||||
echo "# LDA = 1: RVWN5,RMFL20" >> input/dft
|
||||
echo "# GGA = 2: " >> input/dft
|
||||
echo "# Hybrid = 4: " >> input/dft
|
||||
echo "# Hartree-Fock = 666" >> input/dft
|
||||
echo " 0 $CF " >> input/dft
|
||||
echo "# quadrature grid SG-n" >> input/dft
|
||||
echo " 1" >> input/dft
|
||||
echo "# Number of states in ensemble (nEns)" >> input/dft
|
||||
echo " 3" >> input/dft
|
||||
echo "# Ensemble weights: wEns(1),...,wEns(nEns-1)" >> input/dft
|
||||
echo " ${w1} ${w2} " >> input/dft
|
||||
echo "# Parameters for CC weight-dependent exchange functional" >> input/dft
|
||||
echo ${aw1} >> input/dft
|
||||
echo ${aw2} >> input/dft
|
||||
echo "# GOK-DFT: maxSCF thresh DIIS n_diis guess_type ortho_type" >> input/dft
|
||||
echo " 32 0.00001 T 5 1 1" >> input/dft
|
||||
OUTPUT=${MOL}_${BASIS}_${XF}_${CF}_${w1}.out
|
||||
./GoXC $MOL $BASIS > ${OUTPUT}
|
||||
Ew=`grep "Ensemble energy:" ${OUTPUT} | cut -d":" -f 2 | sed 's/au//'`
|
||||
E0=`grep "Individual energy state 1:" ${OUTPUT} | cut -d":" -f 2 | sed 's/au//'`
|
||||
E1=`grep "Individual energy state 2:" ${OUTPUT} | cut -d":" -f 2 | sed 's/au//'`
|
||||
E2=`grep "Individual energy state 3:" ${OUTPUT} | cut -d":" -f 2 | sed 's/au//'`
|
||||
IP=`grep "Ionization Potential" ${OUTPUT} | grep " au" | tail -1 | cut -d":" -f 2 | sed 's/au//'`
|
||||
EA=`grep "Electronic Affinity" ${OUTPUT} | grep " au" | tail -1 | cut -d":" -f 2 | sed 's/au//'`
|
||||
echo $w1 $w2 $Ew $E0 $E1 $E2 $IP $EA
|
||||
echo $w1 $w2 $Ew $E0 $E1 $E2 $IP $EA >> ${DATA}
|
||||
done
|
||||
|
@ -147,12 +147,19 @@ subroutine print_unrestricted_individual_energy(nEns,ENuc,Ew,ET,EV,EJ,Ex,Ec,Exc,
|
||||
write(*,'(A44, F16.10,A3)') ' c ensemble derivative : ',OmcDD(2), ' au'
|
||||
write(*,'(A44, F16.10,A3)') ' xc ensemble derivative : ',OmxcDD(2),' au'
|
||||
write(*,*)
|
||||
write(*,'(A43,F16.10,A4)') ' Electronic Affinity 1 -> 3:',Omaux(3)+OmxcDD(3),' au'
|
||||
write(*,'(A43,F16.10,A4)') ' Electronic Affinity 1 -> 3:',-1.d0*(Omaux(3)+OmxcDD(3)),' au'
|
||||
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(*,'(A44, F16.10,A3)') ' auxiliary energy contribution : ',-1.d0*Omaux(3), ' au'
|
||||
write(*,'(A44, F16.10,A3)') ' x ensemble derivative : ',-1.d0*OmxDD(3), ' au'
|
||||
write(*,'(A44, F16.10,A3)') ' c ensemble derivative : ',-1.d0*OmcDD(3), ' au'
|
||||
write(*,'(A44, F16.10,A3)') ' xc ensemble derivative : ',-1.d0*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)') '-------------------------------------------------'
|
||||
@ -165,12 +172,19 @@ subroutine print_unrestricted_individual_energy(nEns,ENuc,Ew,ET,EV,EJ,Ex,Ec,Exc,
|
||||
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(*,'(A40,F16.10,A3)') ' Electronic Affinity 1 -> 3:',(Omaux(3)+OmxcDD(3))*HaToeV,' eV'
|
||||
write(*,'(A40,F16.10,A3)') ' Electronic Affinity 1 -> 3:',-1.d0*(Omaux(3)+OmxcDD(3))*HaToeV,' eV'
|
||||
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(*,'(A44, F16.10,A3)') ' auxiliary energy contribution : ',-1.d0*Omaux(3)*HaToeV, ' eV'
|
||||
write(*,'(A44, F16.10,A3)') ' x ensemble derivative : ',-1.d0*OmxDD(3)*HaToeV, ' eV'
|
||||
write(*,'(A44, F16.10,A3)') ' c ensemble derivative : ',-1.d0*OmcDD(3)*HaToeV, ' eV'
|
||||
write(*,'(A44, F16.10,A3)') ' xc ensemble derivative : ',-1.d0*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)') '-------------------------------------------------'
|
||||
@ -194,15 +208,25 @@ subroutine print_unrestricted_individual_energy(nEns,ENuc,Ew,ET,EV,EJ,Ex,Ec,Exc,
|
||||
write(*,'(A44, F16.10,A3)') ' c ensemble derivative : ',OmcDD(2), ' au'
|
||||
write(*,'(A44, F16.10,A3)') ' xc ensemble derivative : ',OmxcDD(2),' au'
|
||||
write(*,*)
|
||||
write(*,'(A43,F16.10,A4)') ' Electronic Affinity 1 -> 3:',Om(3), ' au'
|
||||
write(*,'(A43,F16.10,A4)') ' Electronic Affinity 1 -> 3:',-1.d0*Om(3), ' au'
|
||||
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(*,'(A44, F16.10,A3)') ' x energy contribution : ',-1.d0*Omx(3), ' au'
|
||||
write(*,'(A44, F16.10,A3)') ' c energy contribution : ',-1.d0*Omc(3), ' au'
|
||||
write(*,'(A44, F16.10,A3)') ' xc energy contribution : ',-1.d0*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(*,'(A44, F16.10,A3)') ' x ensemble derivative : ',-1.d0*OmxDD(3), ' au'
|
||||
write(*,'(A44, F16.10,A3)') ' c ensemble derivative : ',-1.d0*OmcDD(3), ' au'
|
||||
write(*,'(A44, F16.10,A3)') ' xc ensemble derivative : ',-1.d0*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)') '-------------------------------------------------'
|
||||
@ -217,16 +241,27 @@ subroutine print_unrestricted_individual_energy(nEns,ENuc,Ew,ET,EV,EJ,Ex,Ec,Exc,
|
||||
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(*,'(A43,F16.10,A4)') ' Electronic Affinity 1 -> 3:',-1.d0*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(*,'(A44, F16.10,A3)') ' x energy contribution : ',-1.d0*Omx(3)*HaToeV, ' eV'
|
||||
write(*,'(A44, F16.10,A3)') ' c energy contribution : ',-1.d0*Omc(3)*HaToeV, ' eV'
|
||||
write(*,'(A44, F16.10,A3)') ' xc energy contribution : ',-1.d0*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(*,'(A44, F16.10,A3)') ' x ensemble derivative : ',-1.d0*OmxDD(3)*HaToeV, ' eV'
|
||||
write(*,'(A44, F16.10,A3)') ' c ensemble derivative : ',-1.d0*OmcDD(3)*HaToeV, ' eV'
|
||||
write(*,'(A44, F16.10,A3)') ' xc ensemble derivative : ',-1.d0*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)') '-------------------------------------------------'
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user