From ddd1e79643a4a8a8a12802bce6e904ba3474b7a4 Mon Sep 17 00:00:00 2001 From: Pierre-Francois Loos Date: Sun, 14 Jun 2020 20:51:02 +0200 Subject: [PATCH] remove comments in ACFDT --- input/basis | 127 +++++++++--------- input/options | 2 +- src/QuAcK/ACFDT.f90 | 4 +- src/QuAcK/ACFDT_correlation_energy.f90 | 16 +-- ...alpeter_dynamic_perturbation_iterative.f90 | 4 +- 5 files changed, 67 insertions(+), 86 deletions(-) diff --git a/input/basis b/input/basis index bbe0bfe..80356bb 100644 --- a/input/basis +++ b/input/basis @@ -1,71 +1,64 @@ -1 9 -S 8 - 1 9046.0000000 0.0007000 - 2 1357.0000000 0.0053890 - 3 309.3000000 0.0274060 - 4 87.7300000 0.1032070 - 5 28.5600000 0.2787230 - 6 10.2100000 0.4485400 - 7 3.8380000 0.2782380 - 8 0.7466000 0.0154400 -S 8 - 1 9046.0000000 -0.0001530 - 2 1357.0000000 -0.0012080 - 3 309.3000000 -0.0059920 - 4 87.7300000 -0.0245440 - 5 28.5600000 -0.0674590 - 6 10.2100000 -0.1580780 - 7 3.8380000 -0.1218310 - 8 0.7466000 0.5490030 +1 6 +S 9 +1 9.046000E+03 7.000000E-04 +2 1.357000E+03 5.389000E-03 +3 3.093000E+02 2.740600E-02 +4 8.773000E+01 1.032070E-01 +5 2.856000E+01 2.787230E-01 +6 1.021000E+01 4.485400E-01 +7 3.838000E+00 2.782380E-01 +8 7.466000E-01 1.544000E-02 +9 2.248000E-01 -2.864000E-03 +S 9 +1 9.046000E+03 -1.530000E-04 +2 1.357000E+03 -1.208000E-03 +3 3.093000E+02 -5.992000E-03 +4 8.773000E+01 -2.454400E-02 +5 2.856000E+01 -6.745900E-02 +6 1.021000E+01 -1.580780E-01 +7 3.838000E+00 -1.218310E-01 +8 7.466000E-01 5.490030E-01 +9 2.248000E-01 5.788150E-01 S 1 - 1 0.2248000 1.0000000 +1 2.248000E-01 1.000000E+00 +P 4 +1 1.355000E+01 3.991900E-02 +2 2.917000E+00 2.171690E-01 +3 7.973000E-01 5.103190E-01 +4 2.185000E-01 4.622140E-01 +P 1 +1 2.185000E-01 1.000000E+00 +D 1 +1 8.170000E-01 1.0000000 +2 6 +S 9 +1 9.046000E+03 7.000000E-04 +2 1.357000E+03 5.389000E-03 +3 3.093000E+02 2.740600E-02 +4 8.773000E+01 1.032070E-01 +5 2.856000E+01 2.787230E-01 +6 1.021000E+01 4.485400E-01 +7 3.838000E+00 2.782380E-01 +8 7.466000E-01 1.544000E-02 +9 2.248000E-01 -2.864000E-03 +S 9 +1 9.046000E+03 -1.530000E-04 +2 1.357000E+03 -1.208000E-03 +3 3.093000E+02 -5.992000E-03 +4 8.773000E+01 -2.454400E-02 +5 2.856000E+01 -6.745900E-02 +6 1.021000E+01 -1.580780E-01 +7 3.838000E+00 -1.218310E-01 +8 7.466000E-01 5.490030E-01 +9 2.248000E-01 5.788150E-01 S 1 - 1 0.0612400 1.0000000 -P 3 - 1 13.5500000 0.0399190 - 2 2.9170000 0.2171690 - 3 0.7973000 0.5103190 +1 2.248000E-01 1.000000E+00 +P 4 +1 1.355000E+01 3.991900E-02 +2 2.917000E+00 2.171690E-01 +3 7.973000E-01 5.103190E-01 +4 2.185000E-01 4.622140E-01 P 1 - 1 0.2185000 1.0000000 -P 1 - 1 0.0561100 1.0000000 +1 2.185000E-01 1.000000E+00 D 1 - 1 0.8170000 1.0000000 -D 1 - 1 0.2300000 1.0000000 -2 9 -S 8 - 1 9046.0000000 0.0007000 - 2 1357.0000000 0.0053890 - 3 309.3000000 0.0274060 - 4 87.7300000 0.1032070 - 5 28.5600000 0.2787230 - 6 10.2100000 0.4485400 - 7 3.8380000 0.2782380 - 8 0.7466000 0.0154400 -S 8 - 1 9046.0000000 -0.0001530 - 2 1357.0000000 -0.0012080 - 3 309.3000000 -0.0059920 - 4 87.7300000 -0.0245440 - 5 28.5600000 -0.0674590 - 6 10.2100000 -0.1580780 - 7 3.8380000 -0.1218310 - 8 0.7466000 0.5490030 -S 1 - 1 0.2248000 1.0000000 -S 1 - 1 0.0612400 1.0000000 -P 3 - 1 13.5500000 0.0399190 - 2 2.9170000 0.2171690 - 3 0.7973000 0.5103190 -P 1 - 1 0.2185000 1.0000000 -P 1 - 1 0.0561100 1.0000000 -D 1 - 1 0.8170000 1.0000000 -D 1 - 1 0.2300000 1.0000000 - +1 8.170000E-01 1.0000000 diff --git a/input/options b/input/options index b4c3817..8414408 100644 --- a/input/options +++ b/input/options @@ -11,6 +11,6 @@ # GW/GT: maxSCF thresh DIIS n_diis COHSEX SOSEX BSE TDA_W TDA dTDA G0W GW0 lin eta 256 0.00001 T 5 F F T F F F F F T 0.00367493 # ACFDT: AC Kx XBS - F F T + T F T # MCMP2: nMC nEq nWalk dt nPrint iSeed doDrift 1000000 100000 10 0.3 10000 1234 T diff --git a/src/QuAcK/ACFDT.f90 b/src/QuAcK/ACFDT.f90 index 1b0c42e..3e5b6a5 100644 --- a/src/QuAcK/ACFDT.f90 +++ b/src/QuAcK/ACFDT.f90 @@ -90,7 +90,7 @@ subroutine ACFDT(exchange_kernel,doXBS,dRPA,TDA_W,TDA,BSE,singlet_manifold,tripl rho(:,:,:,ispin),EcAC(ispin),Omega(:,ispin),XpY(:,:,ispin),XmY(:,:,ispin)) call ACFDT_correlation_energy(ispin,exchange_kernel,nBas,nC,nO,nV,nR,nS, & - ERI,XpY(:,:,ispin),XmY(:,:,ispin),Ec(iAC,ispin)) + ERI(:,:,:,:),XpY(:,:,ispin),XmY(:,:,ispin),Ec(iAC,ispin)) write(*,'(2X,F15.6,1X,F30.15,1X,F30.15)') lambda,EcAC(ispin),Ec(iAC,ispin) @@ -137,7 +137,7 @@ subroutine ACFDT(exchange_kernel,doXBS,dRPA,TDA_W,TDA,BSE,singlet_manifold,tripl rho(:,:,:,ispin),EcAC(ispin),Omega(:,ispin),XpY(:,:,ispin),XmY(:,:,ispin)) call ACFDT_correlation_energy(ispin,exchange_kernel,nBas,nC,nO,nV,nR,nS, & - ERI,XpY(:,:,ispin),XmY(:,:,ispin),Ec(iAC,ispin)) + ERI(:,:,:,:),XpY(:,:,ispin),XmY(:,:,ispin),Ec(iAC,ispin)) write(*,'(2X,F15.6,1X,F30.15,1X,F30.15)') lambda,EcAC(ispin),Ec(iAC,ispin) diff --git a/src/QuAcK/ACFDT_correlation_energy.f90 b/src/QuAcK/ACFDT_correlation_energy.f90 index 82b578a..e320976 100644 --- a/src/QuAcK/ACFDT_correlation_energy.f90 +++ b/src/QuAcK/ACFDT_correlation_energy.f90 @@ -69,24 +69,12 @@ subroutine ACFDT_correlation_energy(ispin,exchange_kernel,nBas,nC,nO,nV,nR,nS,ER ! Compute Tr(K x P_lambda) -! X(:,:) = 0.5d0*(XpY(:,:) + XmY(:,:)) -! Y(:,:) = 0.5d0*(XpY(:,:) - XmY(:,:)) - -! print*,'X' -! call matout(nS,nS,X) -! print*,'Y' -! call matout(nS,nS,Y) - -! print*,'Ap' -! call matout(nS,nS,Ap) -! print*,'Bp' -! call matout(nS,nS,Bp) + X(:,:) = 0.5d0*(XpY(:,:) + XmY(:,:)) + Y(:,:) = 0.5d0*(XpY(:,:) - XmY(:,:)) EcAC = trace_matrix(nS,matmul(X,matmul(Bp,transpose(Y))) + matmul(Y,matmul(Bp,transpose(X)))) & + trace_matrix(nS,matmul(X,matmul(Ap,transpose(X))) + matmul(Y,matmul(Ap,transpose(Y)))) & - trace_matrix(nS,Ap) -! call matout(nS,nS,matmul(transpose(X),X) - matmul(transpose(Y),Y)) - end subroutine ACFDT_correlation_energy diff --git a/src/QuAcK/Bethe_Salpeter_dynamic_perturbation_iterative.f90 b/src/QuAcK/Bethe_Salpeter_dynamic_perturbation_iterative.f90 index 61d6626..0f058f4 100644 --- a/src/QuAcK/Bethe_Salpeter_dynamic_perturbation_iterative.f90 +++ b/src/QuAcK/Bethe_Salpeter_dynamic_perturbation_iterative.f90 @@ -34,7 +34,7 @@ subroutine Bethe_Salpeter_dynamic_perturbation_iterative(TDA,dTDA,eta,nBas,nC,nO integer :: nSCF integer :: maxSCF = 10 double precision :: Conv - double precision :: thresh = 1d-5 + double precision :: thresh = 1d-3 double precision,allocatable :: OmDyn(:) @@ -122,7 +122,7 @@ subroutine Bethe_Salpeter_dynamic_perturbation_iterative(TDA,dTDA,eta,nBas,nC,nO end do - Conv = maxval(abs(OmBSE(:) + OmDyn(:) - OmOld(:))) + Conv = maxval(abs(OmBSE(:) + OmDyn(:) - OmOld(:)))*HaToeV OmOld(:) = OmBSE(:) + OmDyn(:) write(*,*) '---------------------------------------------------------------------------------------------------'