4
1
mirror of https://github.com/pfloos/quack synced 2024-06-29 00:14:57 +02:00

debugging sf

This commit is contained in:
Pierre-Francois Loos 2020-09-30 09:59:18 +02:00
parent 11f0ded287
commit 680f4cb0e2
25 changed files with 86 additions and 41 deletions

View File

@ -1,4 +1,4 @@
# nAt nEla nElb nCore nRyd # nAt nEla nElb nCore nRyd
1 1 1 0 0 1 2 0 0 0
# Znuc x y z # Znuc x y z
He 0.0 0.0 0.0 He 0.0 0.0 0.0

View File

@ -9,11 +9,11 @@
# CIS* CID CISD # CIS* CID CISD
F F F F F F
# RPA* RPAx* ppRPA # RPA* RPAx* ppRPA
F F F F T F
# G0F2 evGF2 G0F3 evGF3 # G0F2 evGF2 G0F3 evGF3
F F F F F F F F
# G0W0* evGW* qsGW # G0W0* evGW* qsGW
T F F F F F
# G0T0 evGT qsGT # G0T0 evGT qsGT
F F F F F F
# MCMP2 # MCMP2

View File

@ -1,11 +1,11 @@
# HF: maxSCF thresh DIIS n_diis guess_type ortho_type # HF: maxSCF thresh DIIS n_diis guess_type ortho_type
64 0.00001 T 5 1 1 64 0.0000001 T 5 1 1
# MP: # MP:
# CC: maxSCF thresh DIIS n_diis # CC: maxSCF thresh DIIS n_diis
64 0.0000001 T 5 64 0.0000001 T 5
# spin: singlet triplet spin_conserved spin_flip TDA # spin: singlet triplet spin_conserved spin_flip TDA
T T T F F T T T T T
# GF: maxSCF thresh DIIS n_diis lin eta renorm # GF: maxSCF thresh DIIS n_diis lin eta renorm
256 0.00001 T 5 T 0.0 3 256 0.00001 T 5 T 0.0 3
# GW/GT: maxSCF thresh DIIS n_diis lin eta COHSEX SOSEX TDA_W G0W GW0 # GW/GT: maxSCF thresh DIIS n_diis lin eta COHSEX SOSEX TDA_W G0W GW0

View File

@ -1,2 +1,2 @@
TARGET=ADC.a TARGET=ADC.a
include ../Makefile.include include /Users/loos/Dropbox/quack/src/Makefile.include

View File

@ -1,2 +1,2 @@
TARGET=AOtoMO.a TARGET=AOtoMO.a
include ../Makefile.include include /Users/loos/Dropbox/quack/src/Makefile.include

View File

@ -1,2 +1,2 @@
TARGET=BasCor.a TARGET=BasCor.a
include ../Makefile.include include /Users/loos/Dropbox/quack/src/Makefile.include

View File

@ -1,2 +1,2 @@
TARGET=CC.a TARGET=CC.a
include ../Makefile.include include /Users/loos/Dropbox/quack/src/Makefile.include

View File

@ -1,2 +1,2 @@
TARGET=CI.a TARGET=CI.a
include ../Makefile.include include /Users/loos/Dropbox/quack/src/Makefile.include

View File

@ -1,2 +1,2 @@
TARGET=HF.a TARGET=HF.a
include ../Makefile.include include /Users/loos/Dropbox/quack/src/Makefile.include

View File

@ -1,2 +1,2 @@
TARGET=MBPT.a TARGET=MBPT.a
include ../Makefile.include include /Users/loos/Dropbox/quack/src/Makefile.include

View File

@ -1,2 +1,2 @@
TARGET=MC.a TARGET=MC.a
include ../Makefile.include include /Users/loos/Dropbox/quack/src/Makefile.include

View File

@ -1,2 +1,2 @@
TARGET=MP.a TARGET=MP.a
include ../Makefile.include include /Users/loos/Dropbox/quack/src/Makefile.include

View File

@ -1,3 +1,7 @@
QUACK_ROOT=$(shell dirname $(realpath $(firstword $(MAKEFILE_LIST))/..))
export QUACK_ROOT
SDIR=$(QUACK_ROOT)/src
ALL_DIRS=$(filter-out modules,$(patsubst %/,%,$(wildcard */))) ALL_DIRS=$(filter-out modules,$(patsubst %/,%,$(wildcard */)))
# Rules for Modules # Rules for Modules
@ -9,17 +13,16 @@ MOD_DIRS=numgrid
# Rules for Libraries # Rules for Libraries
##################### #####################
LDIR =../lib LDIR =$(QUACK_ROOT)/lib
LIB_DIRS=$(filter-out $(MAIN_DIRS), $(ALL_DIRS)) LIB_DIRS=$(filter-out $(MAIN_DIRS), $(ALL_DIRS))
MAKEFILES=$(patsubst %,%/Makefile, $(ALL_DIRS))
FORCE: FORCE:
%/Makefile: $(SDIR)/%/Makefile: FORCE
@(echo TARGET=$*.a > $*/Makefile && echo include ../Makefile.include >> $@) @(echo TARGET=$*.a > $*/Makefile && echo include $$QUACK_ROOT/src/Makefile.include >> $@)
$(LDIR)/%.a: FORCE %/Makefile $(MOD_DIRS) $(LDIR)/%.a: FORCE $(SDIR)/%/Makefile $(MOD_DIRS)
$(MAKE) -C $* lib $(MAKE) -C $(SDIR)/$* lib
@ -28,11 +31,11 @@ $(LDIR)/%.a: FORCE %/Makefile $(MOD_DIRS)
MAIN_DIRS=QuAcK eDFT MAIN_DIRS=QuAcK eDFT
BDIR=../bin BDIR=$(QUACK_ROOT)/bin
ALL_EXEC=$(patsubst %, $(BDIR)/%, $(MAIN_DIRS) ) ALL_EXEC=$(patsubst %, $(BDIR)/%, $(MAIN_DIRS) )
$(BDIR)/%: $(patsubst %,$(LDIR)/%.a,$(LIB_DIRS)) %/Makefile $(BDIR)/%: $(patsubst %,$(LDIR)/%.a,$(LIB_DIRS)) $(SDIR)/%/Makefile
$(MAKE) -C $* ../$@ $(MAKE) -C $* $@
@ -40,10 +43,13 @@ $(BDIR)/%: $(patsubst %,$(LDIR)/%.a,$(LIB_DIRS)) %/Makefile
# Rules for both # Rules for both
################ ################
default: $(ALL_EXEC) default: $(ALL_EXEC) $(wildcard $(SDIR)/*/Makefile)
debug:
DEBUG=1 $(MAKE) default
.DEFAULT_GOAL := default .DEFAULT_GOAL := default
.PHONY: default .PHONY: default debug
.PRECIOUS: $(LDIR)/%.a %/Makefile .PRECIOUS: $(LDIR)/%.a %/Makefile
clean: clean:

View File

@ -1,9 +1,10 @@
IDIR =../../include IDIR =$(QUACK_ROOT)/include
MODDIR=../modules MODDIR=$(QUACK_ROOT)/src/modules
FC = gfortran -I$(IDIR) -J$(MODDIR) -I$(MODDIR) FC = gfortran -I$(IDIR) -J$(MODDIR) -I$(MODDIR)
#FC = ifort -I$(IDIR) -module $(MODDIR) #FC = ifort -I$(IDIR) -module $(MODDIR)
AR = libtool AR = libtool
ifeq ($(DEBUG),1) ifeq ($(DEBUG),1)
FFLAGS = -Wall -g -msse4.2 -fcheck=all -Waliasing -Wampersand -Wconversion -Wsurprising -Wintrinsics-std -Wno-tabs -Wintrinsic-shadow -Wline-truncation -Wreal-q-constant FFLAGS = -Wall -g -msse4.2 -fcheck=all -Waliasing -Wampersand -Wconversion -Wsurprising -Wintrinsics-std -Wno-tabs -Wintrinsic-shadow -Wline-truncation -Wreal-q-constant
else else

View File

@ -1,8 +1,8 @@
BDIR =../../bin BDIR =$(QUACK_ROOT)/bin
LDIR =../../lib LDIR =$(QUACK_ROOT)/lib
ODIR = obj ODIR = obj
SDIR =. SDIR =.
include ../Makefile.common include $(QUACK_ROOT)/src/Makefile.common
LIBS = $(filter-out $(LDIR)/$(TARGET), $(wildcard $(LDIR)/*.a)) LIBS = $(filter-out $(LDIR)/$(TARGET), $(wildcard $(LDIR)/*.a))
LIBS += -lblas -llapack -lc++ LIBS += -lblas -llapack -lc++
@ -25,7 +25,7 @@ $(LDIR)/$(TARGET): $(patsubst %,$(LDIR)/%,$(DEPEND)) $(OBJ)
$(AR) -static -o $@ $^ $(AR) -static -o $@ $^
debug: debug:
DEBUG=1 make $(LDIR)/$(TARGET) DEBUG=1 $(MAKE) $(LDIR)/$(TARGET)
clean: clean:
rm -f $(ODIR)/*.o $(LDIR)/$(TARGET) rm -f $(ODIR)/*.o $(LDIR)/$(TARGET)
@ -34,7 +34,7 @@ $(BDIR)/%: $(OBJ) FORCE
$(FC) -o $@ $(FFLAGS) $(LIBS) $(OBJ) $(FC) -o $@ $(FFLAGS) $(LIBS) $(OBJ)
default: default:
$(MAKE) -C .. $(MAKE) -C $(QUACK_ROOT)/src
lib: $(LDIR)/$(TARGET) lib: $(LDIR)/$(TARGET)

View File

@ -1,2 +1,2 @@
TARGET=QuAcK.a TARGET=QuAcK.a
include ../Makefile.include include /Users/loos/Dropbox/quack/src/Makefile.include

View File

@ -1,2 +1,2 @@
TARGET=RPA.a TARGET=RPA.a
include ../Makefile.include include /Users/loos/Dropbox/quack/src/Makefile.include

View File

@ -46,6 +46,14 @@ subroutine RPAx(TDA,doACFDT,exchange_kernel,singlet,triplet,eta,nBas,nC,nO,nV,nR
write(*,*)'***********************************************************' write(*,*)'***********************************************************'
write(*,*) write(*,*)
! TDA
if(TDA) then
write(*,*) 'Tamm-Dancoff approximation activated!'
write(*,*) ' => RPAx + TDA = CIS '
write(*,*)
end if
! Initialization ! Initialization
EcRPAx(:) = 0d0 EcRPAx(:) = 0d0

View File

@ -57,6 +57,14 @@ subroutine URPAx(TDA,doACFDT,exchange_kernel,spin_conserved,spin_flip,eta,nBas,n
write(*,*)'*********************************************************************' write(*,*)'*********************************************************************'
write(*,*) write(*,*)
! TDA
if(TDA) then
write(*,*) 'Tamm-Dancoff approximation activated!'
write(*,*) ' => RPAx + TDA = CIS '
write(*,*)
end if
! Initialization ! Initialization
EcRPAx(:) = 0d0 EcRPAx(:) = 0d0
@ -103,7 +111,8 @@ subroutine URPAx(TDA,doACFDT,exchange_kernel,spin_conserved,spin_flip,eta,nBas,n
call unrestricted_linear_response(ispin,.false.,TDA,.false.,eta,nBas,nC,nO,nV,nR,nS_aa,nS_bb,nS_sf,nS_sf,1d0,e, & call unrestricted_linear_response(ispin,.false.,TDA,.false.,eta,nBas,nC,nO,nV,nR,nS_aa,nS_bb,nS_sf,nS_sf,1d0,e, &
ERI_aaaa,ERI_aabb,ERI_bbbb,ERI_abab,Omega_sf,rho_sf,EcRPAx(ispin),Omega_sf,XpY_sf,XmY_sf) ERI_aaaa,ERI_aabb,ERI_bbbb,ERI_abab,Omega_sf,rho_sf,EcRPAx(ispin),Omega_sf,XpY_sf,XmY_sf)
call print_excitation('URPAx ',6,nS_sf,Omega_sf) call print_excitation('URPAx ',6,nS_sf,Omega_sf)
! call print_transition_vectors(.false.,nBas,nC,nO,nV,nR,nS,dipole_int,Omega(:,ispin),XpY(:,:,ispin),XmY(:,:,ispin)) call print_unrestricted_transition_vectors(.false.,nBas,nC,nO,nV,nR,nS,nS_ab,nS_ba,nS_sf,dipole_int_aa,dipole_int_bb, &
Omega_sf,XpY_sf,XmY_sf)
deallocate(Omega_sf,XpY_sf,XmY_sf) deallocate(Omega_sf,XpY_sf,XmY_sf)

View File

@ -57,6 +57,13 @@ subroutine UdRPA(TDA,doACFDT,exchange_kernel,spin_conserved,spin_flip,eta,nBas,n
write(*,*)'**************************************************************' write(*,*)'**************************************************************'
write(*,*) write(*,*)
! TDA
if(TDA) then
write(*,*) 'Tamm-Dancoff approximation activated!'
write(*,*)
end if
! Initialization ! Initialization
EcRPA(:) = 0d0 EcRPA(:) = 0d0

View File

@ -45,6 +45,13 @@ subroutine dRPA(TDA,doACFDT,exchange_kernel,singlet,triplet,eta,nBas,nC,nO,nV,nR
write(*,*)'***********************************************' write(*,*)'***********************************************'
write(*,*) write(*,*)
! TDA
if(TDA) then
write(*,*) 'Tamm-Dancoff approximation activated!'
write(*,*)
end if
! Initialization ! Initialization
EcRPA(:) = 0d0 EcRPA(:) = 0d0

View File

@ -36,10 +36,13 @@ subroutine print_transition_vectors(spin_allowed,nBas,nC,nO,nV,nR,nS,dipole_int,
allocate(X(nS),Y(nS),f(nS,ncart),os(nS)) allocate(X(nS),Y(nS),f(nS,ncart),os(nS))
! Compute dipole moments and oscillator strengths ! Initialization
f(:,:) = 0d0 f(:,:) = 0d0
os(:) = 0d0
! Compute dipole moments and oscillator strengths
if(spin_allowed) then if(spin_allowed) then
do ia=1,nS do ia=1,nS

View File

@ -42,10 +42,14 @@ subroutine print_unrestricted_transition_vectors(spin_allowed,nBas,nC,nO,nV,nR,n
allocate(X(nSt),Y(nSt),f(nSt,ncart),os(nSt)) allocate(X(nSt),Y(nSt),f(nSt,ncart),os(nSt))
! Compute dipole moments and oscillator strengths ! Initialization
f(:,:) = 0d0 f(:,:) = 0d0
os(:) = 0d0
! Compute dipole moments and oscillator strengths
if(spin_allowed) then if(spin_allowed) then
do ia=1,nSt do ia=1,nSt

View File

@ -1,2 +1,2 @@
TARGET=eDFT.a TARGET=eDFT.a
include ../Makefile.include include /Users/loos/Dropbox/quack/src/Makefile.include

View File

@ -1,2 +1,2 @@
TARGET=utils.a TARGET=utils.a
include ../Makefile.include include /Users/loos/Dropbox/quack/src/Makefile.include