diff --git a/input/options b/input/options index 91a2b51..57f23d6 100644 --- a/input/options +++ b/input/options @@ -11,7 +11,7 @@ # GW: maxSCF thresh DIIS n_diis lin eta TDA_W reg 256 0.00001 T 5 F 0.0 F F # GT: maxSCF thresh DIIS n_diis lin eta TDA_T reg - 256 0.00001 T 5 F 0.0 F T + 256 0.00001 T 5 F 0.1 F F # ACFDT: AC Kx XBS F F T # BSE: phBSE phBSE2 ppBSE dBSE dTDA diff --git a/src/GT/G0T0eh.f90 b/src/GT/G0T0eh.f90 index 3594fc6..a876174 100644 --- a/src/GT/G0T0eh.f90 +++ b/src/GT/G0T0eh.f90 @@ -42,7 +42,6 @@ subroutine G0T0eh(doACFDT,exchange_kernel,doXBS,dophBSE,dophBSE2,TDA_T,TDA,dBSE, logical :: print_T = .true. logical :: dRPA = .false. - logical :: dRPA_W = .true. integer :: ispin integer :: isp_W double precision :: EcRPA @@ -74,7 +73,7 @@ subroutine G0T0eh(doACFDT,exchange_kernel,doXBS,dophBSE,dophBSE2,TDA_T,TDA,dBSE, write(*,*) write(*,*)'************************************************' - write(*,*)'| One-shot eh G0T0 calculation |' + write(*,*)'| One-shot G0T0eh calculation |' write(*,*)'************************************************' write(*,*) diff --git a/src/GT/G0T0pp.f90 b/src/GT/G0T0pp.f90 index b16f823..5a7384e 100644 --- a/src/GT/G0T0pp.f90 +++ b/src/GT/G0T0pp.f90 @@ -66,10 +66,25 @@ subroutine G0T0pp(doACFDT,exchange_kernel,doXBS,dophBSE,TDA_T,TDA,dBSE,dTDA,dopp write(*,*) write(*,*)'************************************************' - write(*,*)'| One-shot G0T0 calculation |' + write(*,*)'| One-shot G0T0pp calculation |' write(*,*)'************************************************' write(*,*) + +! TDA for T + + if(TDA_T) then + write(*,*) 'Tamm-Dancoff approximation for pp T-matrix!' + write(*,*) + end if + +! TDA + + if(TDA) then + write(*,*) 'Tamm-Dancoff approximation activated!' + write(*,*) + end if + ! Dimensions of the pp-RPA linear reponse matrices ! nOOs = nO*(nO + 1)/2 diff --git a/src/GT/evGTeh.f90 b/src/GT/evGTeh.f90 index c35cf62..59f5a4c 100644 --- a/src/GT/evGTeh.f90 +++ b/src/GT/evGTeh.f90 @@ -41,7 +41,8 @@ subroutine evGTeh(maxSCF,thresh,max_diis,doACFDT,exchange_kernel,doXBS,dophBSE,d ! Local variables - logical :: dRPA = .true. + logical :: print_T = .true. + logical :: dRPA = .false. logical :: linear_mixing integer :: ispin integer :: nSCF @@ -124,6 +125,8 @@ subroutine evGTeh(maxSCF,thresh,max_diis,doACFDT,exchange_kernel,doXBS,dophBSE,d call phLR(TDA_T,nS,Aph,Bph,EcRPA,Om,XpY,XmY) + if(print_T) call print_excitation_energies('phRPA@GTeh',ispin,nS,Om) + ! Compute spectral weights call GTeh_excitation_density(nBas,nC,nO,nR,nS,ERI,XpY,XmY,rhoL,rhoR) diff --git a/src/GT/evGTpp.f90 b/src/GT/evGTpp.f90 index cf9515b..2c40455 100644 --- a/src/GT/evGTpp.f90 +++ b/src/GT/evGTpp.f90 @@ -75,10 +75,24 @@ subroutine evGTpp(maxSCF,thresh,max_diis,doACFDT,exchange_kernel,doXBS,BSE,TDA_T write(*,*) write(*,*)'************************************************' - write(*,*)'| Self-consistent evGT calculation |' + write(*,*)'| Self-consistent evGTpp calculation |' write(*,*)'************************************************' write(*,*) +! TDA for T + + if(TDA_T) then + write(*,*) 'Tamm-Dancoff approximation for pp T-matrix!' + write(*,*) + end if + +! TDA + + if(TDA) then + write(*,*) 'Tamm-Dancoff approximation activated!' + write(*,*) + end if + ! Dimensions of the pp-RPA linear reponse matrices nOOs = nO*nO diff --git a/src/GT/qsGTeh.f90 b/src/GT/qsGTeh.f90 index 30b9d6d..416a18e 100644 --- a/src/GT/qsGTeh.f90 +++ b/src/GT/qsGTeh.f90 @@ -1,4 +1,4 @@ -subroutine qsGTeh(maxSCF,thresh,max_diis,doACFDT,exchange_kernel,doXBS,BSE,BSE2,TDA_T,TDA, & +subroutine qsGTeh(maxSCF,thresh,max_diis,doACFDT,exchange_kernel,doXBS,dophBSE,dophBSE2,TDA_T,TDA, & dBSE,dTDA,singlet,triplet,eta,regularize,nNuc,ZNuc,rNuc,ENuc,nBas,nC,nO,nV,nR,nS,ERHF, & S,X,T,V,Hc,ERI_AO,ERI_MO,dipole_int_AO,dipole_int_MO,PHF,cHF,eHF) @@ -15,8 +15,8 @@ subroutine qsGTeh(maxSCF,thresh,max_diis,doACFDT,exchange_kernel,doXBS,BSE,BSE2, logical,intent(in) :: doACFDT logical,intent(in) :: exchange_kernel logical,intent(in) :: doXBS - logical,intent(in) :: BSE - logical,intent(in) :: BSE2 + logical,intent(in) :: dophBSE + logical,intent(in) :: dophBSE2 logical,intent(in) :: TDA_T logical,intent(in) :: TDA logical,intent(in) :: dBSE @@ -53,7 +53,7 @@ subroutine qsGTeh(maxSCF,thresh,max_diis,doACFDT,exchange_kernel,doXBS,BSE,BSE2, ! Local variables - logical :: dRPA = .true. + logical :: dRPA = .false. integer :: nSCF integer :: nBasSq integer :: ispin @@ -117,7 +117,7 @@ subroutine qsGTeh(maxSCF,thresh,max_diis,doACFDT,exchange_kernel,doXBS,BSE,BSE2, ! TDA for T if(TDA_T) then - write(*,*) 'Tamm-Dancoff approximation for dynamic screening!' + write(*,*) 'Tamm-Dancoff approximation for eh T-matrix!' write(*,*) end if diff --git a/src/GT/qsGTpp.f90 b/src/GT/qsGTpp.f90 index dab4842..8a86dea 100644 --- a/src/GT/qsGTpp.f90 +++ b/src/GT/qsGTpp.f90 @@ -100,7 +100,7 @@ subroutine qsGTpp(maxSCF,thresh,max_diis,doACFDT,exchange_kernel,doXBS,dophBSE,T write(*,*) write(*,*)'************************************************' - write(*,*)'| Self-consistent qsGT calculation |' + write(*,*)'| Self-consistent qsGTpp calculation |' write(*,*)'************************************************' write(*,*) @@ -124,7 +124,7 @@ subroutine qsGTpp(maxSCF,thresh,max_diis,doACFDT,exchange_kernel,doXBS,dophBSE,T ! TDA for T if(TDA_T) then - write(*,*) 'Tamm-Dancoff approximation for T-matrix!' + write(*,*) 'Tamm-Dancoff approximation for pp T-matrix!' write(*,*) end if