mirror of
https://github.com/pfloos/quack
synced 2025-01-03 10:05:49 +01:00
debugging
This commit is contained in:
parent
dd2ee22779
commit
a963b22293
@ -2,7 +2,7 @@
|
|||||||
integer,parameter :: nspin = 2
|
integer,parameter :: nspin = 2
|
||||||
integer,parameter :: nsp = 3
|
integer,parameter :: nsp = 3
|
||||||
integer,parameter :: maxEns = 10
|
integer,parameter :: maxEns = 10
|
||||||
integer,parameter :: maxShell = 1024
|
integer,parameter :: maxShell = 512
|
||||||
integer,parameter :: n1eInt = 3
|
integer,parameter :: n1eInt = 3
|
||||||
integer,parameter :: n2eInt = 4
|
integer,parameter :: n2eInt = 4
|
||||||
integer,parameter :: n3eInt = 3
|
integer,parameter :: n3eInt = 3
|
||||||
|
68
input/basis
68
input/basis
@ -1,70 +1,4 @@
|
|||||||
1 49
|
1 16
|
||||||
S 1 1.00
|
|
||||||
1.0000000 1.0000000
|
|
||||||
S 1 1.00
|
|
||||||
1.0000000 1.0000000
|
|
||||||
S 1 1.00
|
|
||||||
1.0000000 1.0000000
|
|
||||||
S 1 1.00
|
|
||||||
1.0000000 1.0000000
|
|
||||||
S 1 1.00
|
|
||||||
1.0000000 1.0000000
|
|
||||||
S 1 1.00
|
|
||||||
1.0000000 1.0000000
|
|
||||||
S 1 1.00
|
|
||||||
1.0000000 1.0000000
|
|
||||||
S 1 1.00
|
|
||||||
1.0000000 1.0000000
|
|
||||||
S 1 1.00
|
|
||||||
1.0000000 1.0000000
|
|
||||||
S 1 1.00
|
|
||||||
1.0000000 1.0000000
|
|
||||||
S 1 1.00
|
|
||||||
1.0000000 1.0000000
|
|
||||||
S 1 1.00
|
|
||||||
1.0000000 1.0000000
|
|
||||||
S 1 1.00
|
|
||||||
1.0000000 1.0000000
|
|
||||||
S 1 1.00
|
|
||||||
1.0000000 1.0000000
|
|
||||||
S 1 1.00
|
|
||||||
1.0000000 1.0000000
|
|
||||||
S 1 1.00
|
|
||||||
1.0000000 1.0000000
|
|
||||||
S 1 1.00
|
|
||||||
1.0000000 1.0000000
|
|
||||||
S 1 1.00
|
|
||||||
1.0000000 1.0000000
|
|
||||||
S 1 1.00
|
|
||||||
1.0000000 1.0000000
|
|
||||||
S 1 1.00
|
|
||||||
1.0000000 1.0000000
|
|
||||||
S 1 1.00
|
|
||||||
1.0000000 1.0000000
|
|
||||||
S 1 1.00
|
|
||||||
1.0000000 1.0000000
|
|
||||||
S 1 1.00
|
|
||||||
1.0000000 1.0000000
|
|
||||||
S 1 1.00
|
|
||||||
1.0000000 1.0000000
|
|
||||||
S 1 1.00
|
|
||||||
1.0000000 1.0000000
|
|
||||||
S 1 1.00
|
|
||||||
1.0000000 1.0000000
|
|
||||||
S 1 1.00
|
|
||||||
1.0000000 1.0000000
|
|
||||||
S 1 1.00
|
|
||||||
1.0000000 1.0000000
|
|
||||||
S 1 1.00
|
|
||||||
1.0000000 1.0000000
|
|
||||||
S 1 1.00
|
|
||||||
1.0000000 1.0000000
|
|
||||||
S 1 1.00
|
|
||||||
1.0000000 1.0000000
|
|
||||||
S 1 1.00
|
|
||||||
1.0000000 1.0000000
|
|
||||||
S 1 1.00
|
|
||||||
1.0000000 1.0000000
|
|
||||||
S 1 1.00
|
S 1 1.00
|
||||||
1.0000000 1.0000000
|
1.0000000 1.0000000
|
||||||
S 1 1.00
|
S 1 1.00
|
||||||
|
@ -1,14 +1,14 @@
|
|||||||
# RHF UHF MOM
|
# RHF UHF MOM
|
||||||
T F F
|
T F F
|
||||||
# MP2 MP3 MP2-F12
|
# MP2 MP3 MP2-F12
|
||||||
F F F
|
T F F
|
||||||
# CCD CCSD CCSD(T)
|
# CCD CCSD CCSD(T)
|
||||||
F F F
|
F F F
|
||||||
# CIS TDHF ADC
|
# CIS TDHF ADC
|
||||||
T T F
|
F F F
|
||||||
# GF2 GF3
|
# GF2 GF3
|
||||||
T F
|
T F
|
||||||
# G0W0 evGW qsGW
|
# G0W0 evGW qsGW
|
||||||
T T F
|
T F F
|
||||||
# MCMP2
|
# MCMP2
|
||||||
F
|
F
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
# nAt nEla nElb nCore nRyd
|
# nAt nEla nElb nCore nRyd
|
||||||
1 72 72 0 0
|
1 4 4 0 0
|
||||||
# Znuc x y z
|
# Znuc x y z
|
||||||
X 0.0 0.0 0.0
|
X 0.0 0.0 0.0
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
# CC: maxSCF thresh DIIS n_diis
|
# CC: maxSCF thresh DIIS n_diis
|
||||||
64 0.00001 F 1
|
64 0.00001 F 1
|
||||||
# CIS/TDHF: singlet triplet
|
# CIS/TDHF: singlet triplet
|
||||||
T T
|
T F
|
||||||
# GF: maxSCF thresh DIIS n_diis renormalization
|
# GF: maxSCF thresh DIIS n_diis renormalization
|
||||||
64 0.00001 T 5 3
|
64 0.00001 T 5 3
|
||||||
# GW: maxSCF thresh DIIS n_diis COHSEX SOSEX BSE TDA G0W GW0 linearize
|
# GW: maxSCF thresh DIIS n_diis COHSEX SOSEX BSE TDA G0W GW0 linearize
|
||||||
|
11
run_sph.sh
11
run_sph.sh
@ -1,7 +1,8 @@
|
|||||||
#! /bin/bash
|
#! /bin/bash
|
||||||
|
|
||||||
Lmax=6
|
Lmin=0
|
||||||
Mmax=6
|
Lmax=2
|
||||||
|
Mmax=3
|
||||||
rs=$1
|
rs=$1
|
||||||
|
|
||||||
if [ $# != 1 ]
|
if [ $# != 1 ]
|
||||||
@ -15,7 +16,7 @@ else
|
|||||||
echo "------------------------"
|
echo "------------------------"
|
||||||
echo
|
echo
|
||||||
|
|
||||||
for (( L=0 ; L<=$Lmax ; L++ )) ; do
|
for (( L=$Lmin ; L<=$Lmax ; L++ )) ; do
|
||||||
|
|
||||||
ne=$(bc -l <<< "(2*($L+1)*($L+1))")
|
ne=$(bc -l <<< "(2*($L+1)*($L+1))")
|
||||||
echo
|
echo
|
||||||
@ -29,8 +30,8 @@ else
|
|||||||
nb=$(bc -l <<< "(($M+1)*($M+1))")
|
nb=$(bc -l <<< "(($M+1)*($M+1))")
|
||||||
echo "Number of basis functions = " $nb
|
echo "Number of basis functions = " $nb
|
||||||
echo -e "# rs \n" $rs > input/sph
|
echo -e "# rs \n" $rs > input/sph
|
||||||
./GoSph $ne $M > Sph_${ne}_${M}.out
|
./GoSph $ne $M > Sph_${ne}_${nb}.out
|
||||||
grep "Total CPU time for QuAcK =" Sph_${ne}_${M}.out
|
grep "Total CPU time for QuAcK =" Sph_${ne}_${nb}.out
|
||||||
|
|
||||||
done
|
done
|
||||||
|
|
||||||
|
@ -43,8 +43,8 @@ subroutine linear_response(ispin,dRPA,TDA,BSE,nBas,nC,nO,nV,nR,nS,e,ERI,rho,EcRP
|
|||||||
|
|
||||||
! Build A + B and A - B matrices
|
! Build A + B and A - B matrices
|
||||||
|
|
||||||
AmB = A - B
|
|
||||||
ApB = A + B
|
ApB = A + B
|
||||||
|
AmB = A - B
|
||||||
|
|
||||||
! print*,'A+B'
|
! print*,'A+B'
|
||||||
! call matout(nS,nS,ApB)
|
! call matout(nS,nS,ApB)
|
||||||
@ -62,6 +62,9 @@ subroutine linear_response(ispin,dRPA,TDA,BSE,nBas,nC,nO,nV,nR,nS,e,ERI,rho,EcRP
|
|||||||
call ADAt(nS,AmB,sqrt(Omega),AmBSq)
|
call ADAt(nS,AmB,sqrt(Omega),AmBSq)
|
||||||
Z = matmul(AmBSq,matmul(ApB,AmBSq))
|
Z = matmul(AmBSq,matmul(ApB,AmBSq))
|
||||||
|
|
||||||
|
! print*,'Z'
|
||||||
|
! call matout(nS,nS,Z)
|
||||||
|
|
||||||
call diagonalize_matrix(nS,Z,Omega)
|
call diagonalize_matrix(nS,Z,Omega)
|
||||||
|
|
||||||
if(minval(Omega) < 0d0) &
|
if(minval(Omega) < 0d0) &
|
||||||
@ -71,6 +74,9 @@ subroutine linear_response(ispin,dRPA,TDA,BSE,nBas,nC,nO,nV,nR,nS,e,ERI,rho,EcRP
|
|||||||
XpY = matmul(transpose(Z),AmBSq)
|
XpY = matmul(transpose(Z),AmBSq)
|
||||||
call DA(nS,1d0/sqrt(Omega),XpY)
|
call DA(nS,1d0/sqrt(Omega),XpY)
|
||||||
|
|
||||||
|
! print*,'X+Y'
|
||||||
|
! call matout(nS,nS,XpY)
|
||||||
|
|
||||||
! print*,'RPA excitations'
|
! print*,'RPA excitations'
|
||||||
! call matout(nS,1,Omega)
|
! call matout(nS,1,Omega)
|
||||||
|
|
||||||
|
@ -29,6 +29,38 @@
|
|||||||
!
|
!
|
||||||
!end subroutine eigenvalues_non_symmetric_matrix
|
!end subroutine eigenvalues_non_symmetric_matrix
|
||||||
|
|
||||||
|
!subroutine diagonalize_matrix_lowest(N,M,A,e)
|
||||||
|
!
|
||||||
|
!! Diagonalize a square matrix but only provide the M lowest eigenvalues/eigenvectors
|
||||||
|
!
|
||||||
|
! implicit none
|
||||||
|
!
|
||||||
|
!! Input variables
|
||||||
|
!
|
||||||
|
! integer,intent(in) :: N
|
||||||
|
! integer,intent(in) :: M
|
||||||
|
! double precision,intent(inout):: A(N,N)
|
||||||
|
! double precision,intent(out) :: e(N)
|
||||||
|
!
|
||||||
|
!! Local variables
|
||||||
|
!
|
||||||
|
! integer :: lwork,info
|
||||||
|
! double precision,allocatable :: work(:)
|
||||||
|
!
|
||||||
|
!! Memory allocation
|
||||||
|
!
|
||||||
|
! allocate(work(3*N))
|
||||||
|
! lwork = size(work)
|
||||||
|
! abstol = 1d-15
|
||||||
|
!
|
||||||
|
! call dsyevx('V','I','U',N,A,N,VL,VU,1,M,abstol,M,e,work,lwork,info)
|
||||||
|
!
|
||||||
|
! if(info /= 0) then
|
||||||
|
! print*,'Problem in diagonalize_matrix (dsyev)!!'
|
||||||
|
! endif
|
||||||
|
!
|
||||||
|
!end subroutine diagonalize_matrix_lowest
|
||||||
|
|
||||||
subroutine diagonalize_matrix(N,A,e)
|
subroutine diagonalize_matrix(N,A,e)
|
||||||
|
|
||||||
! Diagonalize a square matrix
|
! Diagonalize a square matrix
|
||||||
|
Loading…
Reference in New Issue
Block a user