mirror of
https://github.com/pfloos/quack
synced 2024-12-22 20:35:36 +01:00
adding option for ppBSE
This commit is contained in:
parent
93564f350d
commit
68672a74b9
@ -14,7 +14,7 @@
|
|||||||
10 0.00001 T 5 T 0.0 F F
|
10 0.00001 T 5 T 0.0 F F
|
||||||
# ACFDT: AC Kx XBS
|
# ACFDT: AC Kx XBS
|
||||||
F F T
|
F F T
|
||||||
# BSE: BSE dBSE dTDA evDyn
|
# BSE: BSE dBSE dTDA evDyn ppBSE
|
||||||
F F T F
|
F F T F T
|
||||||
# MCMP2: nMC nEq nWalk dt nPrint iSeed doDrift
|
# MCMP2: nMC nEq nWalk dt nPrint iSeed doDrift
|
||||||
1000000 100000 10 0.3 10000 1234 T
|
1000000 100000 10 0.3 10000 1234 T
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
subroutine G0W0(doACFDT,exchange_kernel,doXBS,COHSEX,BSE,TDA_W,TDA, &
|
subroutine G0W0(doACFDT,exchange_kernel,doXBS,COHSEX,BSE,TDA_W,TDA,dBSE,dTDA,evDyn,ppBSE, &
|
||||||
dBSE,dTDA,evDyn,singlet,triplet,linearize,eta,regularize, &
|
singlet,triplet,linearize,eta,regularize,nBas,nC,nO,nV,nR,nS,ENuc,ERHF, &
|
||||||
nBas,nC,nO,nV,nR,nS,ENuc,ERHF,ERI_AO,ERI_MO,dipole_int,PHF,cHF,eHF,Vxc,eG0W0)
|
ERI_AO,ERI_MO,dipole_int,PHF,cHF,eHF,Vxc,eG0W0)
|
||||||
|
|
||||||
! Perform G0W0 calculation
|
! Perform G0W0 calculation
|
||||||
|
|
||||||
@ -15,7 +15,7 @@ subroutine G0W0(doACFDT,exchange_kernel,doXBS,COHSEX,BSE,TDA_W,TDA, &
|
|||||||
logical,intent(in) :: doXBS
|
logical,intent(in) :: doXBS
|
||||||
logical,intent(in) :: COHSEX
|
logical,intent(in) :: COHSEX
|
||||||
logical,intent(in) :: BSE
|
logical,intent(in) :: BSE
|
||||||
logical :: ppBSE = .true.
|
logical,intent(in) :: ppBSE
|
||||||
logical,intent(in) :: TDA_W
|
logical,intent(in) :: TDA_W
|
||||||
logical,intent(in) :: TDA
|
logical,intent(in) :: TDA
|
||||||
logical,intent(in) :: dBSE
|
logical,intent(in) :: dBSE
|
||||||
|
@ -139,7 +139,7 @@ program QuAcK
|
|||||||
logical :: DIIS_GT,TDA_T,linGT,regGT
|
logical :: DIIS_GT,TDA_T,linGT,regGT
|
||||||
double precision :: eta_GT
|
double precision :: eta_GT
|
||||||
|
|
||||||
logical :: BSE,dBSE,dTDA,evDyn
|
logical :: BSE,dBSE,dTDA,evDyn,ppBSE
|
||||||
|
|
||||||
integer :: nMC,nEq,nWalk,nPrint,iSeed
|
integer :: nMC,nEq,nWalk,nPrint,iSeed
|
||||||
double precision :: dt
|
double precision :: dt
|
||||||
@ -188,7 +188,7 @@ program QuAcK
|
|||||||
COHSEX,SOSEX,TDA_W,G0W,GW0, &
|
COHSEX,SOSEX,TDA_W,G0W,GW0, &
|
||||||
maxSCF_GT,thresh_GT,DIIS_GT,n_diis_GT,linGT,eta_GT,regGT,TDA_T, &
|
maxSCF_GT,thresh_GT,DIIS_GT,n_diis_GT,linGT,eta_GT,regGT,TDA_T, &
|
||||||
doACFDT,exchange_kernel,doXBS, &
|
doACFDT,exchange_kernel,doXBS, &
|
||||||
BSE,dBSE,dTDA,evDyn, &
|
BSE,dBSE,dTDA,evDyn,ppBSE, &
|
||||||
nMC,nEq,nWalk,dt,nPrint,iSeed,doDrift)
|
nMC,nEq,nWalk,dt,nPrint,iSeed,doDrift)
|
||||||
|
|
||||||
! Weird stuff
|
! Weird stuff
|
||||||
@ -1036,7 +1036,7 @@ program QuAcK
|
|||||||
call G0W0_SOSEX(doACFDT,exchange_kernel,doXBS,BSE,TDA_W,TDA,dBSE,dTDA,evDyn,singlet,triplet, &
|
call G0W0_SOSEX(doACFDT,exchange_kernel,doXBS,BSE,TDA_W,TDA,dBSE,dTDA,evDyn,singlet,triplet, &
|
||||||
eta_GW,regGW,nBas,nC,nO,nV,nR,nS,ENuc,ERHF,ERI_AO,ERI_MO,dipole_int_MO,PHF,cHF,eHF,Vxc,eG0W0)
|
eta_GW,regGW,nBas,nC,nO,nV,nR,nS,ENuc,ERHF,ERI_AO,ERI_MO,dipole_int_MO,PHF,cHF,eHF,Vxc,eG0W0)
|
||||||
else
|
else
|
||||||
call G0W0(doACFDT,exchange_kernel,doXBS,COHSEX,BSE,TDA_W,TDA,dBSE,dTDA,evDyn,singlet,triplet, &
|
call G0W0(doACFDT,exchange_kernel,doXBS,COHSEX,BSE,TDA_W,TDA,dBSE,dTDA,evDyn,ppBSE,singlet,triplet, &
|
||||||
linGW,eta_GW,regGW,nBas,nC,nO,nV,nR,nS,ENuc,ERHF,ERI_AO,ERI_MO,dipole_int_MO,PHF,cHF,eHF,Vxc,eG0W0)
|
linGW,eta_GW,regGW,nBas,nC,nO,nV,nR,nS,ENuc,ERHF,ERI_AO,ERI_MO,dipole_int_MO,PHF,cHF,eHF,Vxc,eG0W0)
|
||||||
end if
|
end if
|
||||||
|
|
||||||
@ -1316,7 +1316,7 @@ program QuAcK
|
|||||||
end if
|
end if
|
||||||
|
|
||||||
!------------------------------------------------------------------------
|
!------------------------------------------------------------------------
|
||||||
! Range-separeted GT/GW
|
! Range-separated GT/GW
|
||||||
!------------------------------------------------------------------------
|
!------------------------------------------------------------------------
|
||||||
|
|
||||||
! if(doGTGW) then
|
! if(doGTGW) then
|
||||||
|
@ -6,7 +6,7 @@ subroutine read_options(maxSCF_HF,thresh_HF,DIIS_HF,n_diis_HF,guess_type,ortho_t
|
|||||||
COHSEX,SOSEX,TDA_W,G0W,GW0, &
|
COHSEX,SOSEX,TDA_W,G0W,GW0, &
|
||||||
maxSCF_GT,thresh_GT,DIIS_GT,n_diis_GT,linGT,eta_GT,regGT,TDA_T, &
|
maxSCF_GT,thresh_GT,DIIS_GT,n_diis_GT,linGT,eta_GT,regGT,TDA_T, &
|
||||||
doACFDT,exchange_kernel,doXBS, &
|
doACFDT,exchange_kernel,doXBS, &
|
||||||
BSE,dBSE,dTDA,evDyn, &
|
BSE,dBSE,dTDA,evDyn,ppBSE, &
|
||||||
nMC,nEq,nWalk,dt,nPrint,iSeed,doDrift)
|
nMC,nEq,nWalk,dt,nPrint,iSeed,doDrift)
|
||||||
|
|
||||||
! Read desired methods
|
! Read desired methods
|
||||||
@ -75,6 +75,7 @@ subroutine read_options(maxSCF_HF,thresh_HF,DIIS_HF,n_diis_HF,guess_type,ortho_t
|
|||||||
logical,intent(out) :: dBSE
|
logical,intent(out) :: dBSE
|
||||||
logical,intent(out) :: dTDA
|
logical,intent(out) :: dTDA
|
||||||
logical,intent(out) :: evDyn
|
logical,intent(out) :: evDyn
|
||||||
|
logical,intent(out) :: ppBSE
|
||||||
|
|
||||||
integer,intent(out) :: nMC
|
integer,intent(out) :: nMC
|
||||||
integer,intent(out) :: nEq
|
integer,intent(out) :: nEq
|
||||||
@ -237,14 +238,16 @@ subroutine read_options(maxSCF_HF,thresh_HF,DIIS_HF,n_diis_HF,guess_type,ortho_t
|
|||||||
dBSE = .false.
|
dBSE = .false.
|
||||||
dTDA = .true.
|
dTDA = .true.
|
||||||
evDyn = .false.
|
evDyn = .false.
|
||||||
|
ppBSE = .false.
|
||||||
|
|
||||||
read(1,*)
|
read(1,*)
|
||||||
read(1,*) answer1,answer2,answer3,answer4
|
read(1,*) answer1,answer2,answer3,answer4,answer5
|
||||||
|
|
||||||
if(answer1 == 'T') BSE = .true.
|
if(answer1 == 'T') BSE = .true.
|
||||||
if(answer2 == 'T') dBSE = .true.
|
if(answer2 == 'T') dBSE = .true.
|
||||||
if(answer3 == 'F') dTDA = .false.
|
if(answer3 == 'F') dTDA = .false.
|
||||||
if(answer4 == 'T') evDyn = .true.
|
if(answer4 == 'T') evDyn = .true.
|
||||||
|
if(answer5 == 'T') ppBSE = .true.
|
||||||
|
|
||||||
! Read options for MC-MP2: Monte Carlo steps, number of equilibration steps, number of walkers,
|
! Read options for MC-MP2: Monte Carlo steps, number of equilibration steps, number of walkers,
|
||||||
! Monte Carlo time step, frequency of output results, and seed for random number generator
|
! Monte Carlo time step, frequency of output results, and seed for random number generator
|
||||||
|
Loading…
Reference in New Issue
Block a user