4
1
mirror of https://github.com/pfloos/quack synced 2024-11-08 15:13:53 +01:00

change compiler to gfortran and read basis to be compatible with GoDuck.sh

This commit is contained in:
Antoine Marie 2023-06-30 16:56:07 +02:00
parent 545b5fb5e2
commit 86e9ee3dd6
2 changed files with 90 additions and 90 deletions

View File

@ -78,8 +78,8 @@ FIX_ORDER_OF_LIBS=-Wl,--start-group
if sys.platform in ["linux", "linux2"]: if sys.platform in ["linux", "linux2"]:
# compiler = compile_gfortran_linux compiler = compile_gfortran_linux
compiler = compile_ifort_linux # compiler = compile_ifort_linux
elif sys.platform == "darwin": elif sys.platform == "darwin":
compiler = compile_gfortran_mac compiler = compile_gfortran_mac
else: else:

View File

@ -52,135 +52,135 @@ subroutine read_basis(nNuc,rNuc,nBas,nO,nV,nShell,TotAngMomShell,CenterShell,KSh
!------------------------------------------------------------------------ !------------------------------------------------------------------------
! Loop over atoms ! Loop over atoms
!------------------------------------------------------------------------ !------------------------------------------------------------------------
! do i=1,nNuc do i=1,nNuc
! read(2,*) iNuc,nShAt read(2,*) iNuc,nShAt
! write(*,'(A28,1X,I16)') 'Atom n. ',iNuc write(*,'(A28,1X,I16)') 'Atom n. ',iNuc
! write(*,'(A28,1X,I16)') 'number of shells ',nShAt write(*,'(A28,1X,I16)') 'number of shells ',nShAt
! write(*,'(A28)') '------------------' write(*,'(A28)') '------------------'
! !------------------------------------------------------------------------ !------------------------------------------------------------------------
! ! Loop over shells ! Loop over shells
! !------------------------------------------------------------------------ !------------------------------------------------------------------------
! do j=1,nShAt do j=1,nShAt
! nShell = nShell + 1 nShell = nShell + 1
! ! Basis function centers ! Basis function centers
! do k=1,ncart do k=1,ncart
! CenterShell(nShell,k) = rNuc(iNuc,k) CenterShell(nShell,k) = rNuc(iNuc,k)
! enddo enddo
! ! Shell type and contraction degree ! Shell type and contraction degree
! read(2,*) shelltype,KShell(nShell) read(2,*) shelltype,KShell(nShell)
! select case (shelltype) select case (shelltype)
! case ("S") case ("S")
! TotAngMomShell(nShell) = 0 TotAngMomShell(nShell) = 0
! write(*,'(A28,1X,I16)') 's-type shell with K = ',KShell(nShell) write(*,'(A28,1X,I16)') 's-type shell with K = ',KShell(nShell)
! case ("P") case ("P")
! TotAngMomShell(nShell) = 1 TotAngMomShell(nShell) = 1
! write(*,'(A28,1X,I16)') 'p-type shell with K = ',KShell(nShell) write(*,'(A28,1X,I16)') 'p-type shell with K = ',KShell(nShell)
! case ("D") case ("D")
! TotAngMomShell(nShell) = 2 TotAngMomShell(nShell) = 2
! write(*,'(A28,1X,I16)') 'd-type shell with K = ',KShell(nShell) write(*,'(A28,1X,I16)') 'd-type shell with K = ',KShell(nShell)
! case ("F") case ("F")
! TotAngMomShell(nShell) = 3 TotAngMomShell(nShell) = 3
! write(*,'(A28,1X,I16)') 'f-type shell with K = ',KShell(nShell) write(*,'(A28,1X,I16)') 'f-type shell with K = ',KShell(nShell)
! case ("G") case ("G")
! TotAngMomShell(nShell) = 4 TotAngMomShell(nShell) = 4
! write(*,'(A28,1X,I16)') 'g-type shell with K = ',KShell(nShell) write(*,'(A28,1X,I16)') 'g-type shell with K = ',KShell(nShell)
! case ("H") case ("H")
! TotAngMomShell(nShell) = 5 TotAngMomShell(nShell) = 5
! write(*,'(A28,1X,I16)') 'h-type shell with K = ',KShell(nShell) write(*,'(A28,1X,I16)') 'h-type shell with K = ',KShell(nShell)
! case ("I") case ("I")
! TotAngMomShell(nShell) = 6 TotAngMomShell(nShell) = 6
! write(*,'(A28,1X,I16)') 'i-type shell with K = ',KShell(nShell) write(*,'(A28,1X,I16)') 'i-type shell with K = ',KShell(nShell)
! case ("J") case ("J")
! TotAngMomShell(nShell) = 7 TotAngMomShell(nShell) = 7
! write(*,'(A28,1X,I16)') 'j-type shell with K = ',KShell(nShell) write(*,'(A28,1X,I16)') 'j-type shell with K = ',KShell(nShell)
! case default case default
! call print_warning('!!! Angular momentum too high !!!') call print_warning('!!! Angular momentum too high !!!')
! stop stop
! end select end select
! ! Read exponents and contraction coefficients ! Read exponents and contraction coefficients
! write(*,'(A28,1X,A16,A16)') '','Exponents','Contraction' write(*,'(A28,1X,A16,A16)') '','Exponents','Contraction'
! do k=1,Kshell(nShell) do k=1,Kshell(nShell)
! read(2,*) kk,ExpShell(nShell,k),DShell(nShell,k) read(2,*) kk,ExpShell(nShell,k),DShell(nShell,k)
! write(*,'(A28,1X,F16.10,F16.10)') '',ExpShell(nShell,k),DShell(nShell,k) write(*,'(A28,1X,F16.10,F16.10)') '',ExpShell(nShell,k),DShell(nShell,k)
! enddo enddo
! min_exponent(iNuc,TotAngMomShell(nShell)+1) & min_exponent(iNuc,TotAngMomShell(nShell)+1) &
! = min(min_exponent(iNuc,TotAngMomShell(nShell)+1),minval(ExpShell(nShell,1:KShell(nShell)))) = min(min_exponent(iNuc,TotAngMomShell(nShell)+1),minval(ExpShell(nShell,1:KShell(nShell))))
! max_exponent(iNuc) = max(max_exponent(iNuc),maxval(ExpShell(nShell,:))) max_exponent(iNuc) = max(max_exponent(iNuc),maxval(ExpShell(nShell,:)))
! max_ang_mom(iNuc) = max(max_ang_mom(iNuc),TotAngMomShell(nShell)) max_ang_mom(iNuc) = max(max_ang_mom(iNuc),TotAngMomShell(nShell))
! enddo enddo
! !------------------------------------------------------------------------ !------------------------------------------------------------------------
! ! End loop over shells ! End loop over shells
! !------------------------------------------------------------------------ !------------------------------------------------------------------------
! write(*,'(A28)') '------------------' write(*,'(A28)') '------------------'
! ! print*,'maximum angular momemtum for atom n. ',iNuc,' = ' ! print*,'maximum angular momemtum for atom n. ',iNuc,' = '
! ! print*,max_ang_mom(iNuc) ! print*,max_ang_mom(iNuc)
! ! print*,'maximum exponent for atom n. ',iNuc,' = ' ! print*,'maximum exponent for atom n. ',iNuc,' = '
! ! print*,max_exponent(iNuc) ! print*,max_exponent(iNuc)
! ! print*,'minimum exponent for atom n. ',iNuc,' = ' ! print*,'minimum exponent for atom n. ',iNuc,' = '
! ! print*,min_exponent(iNuc,1:max_ang_mom(iNuc)+1) ! print*,min_exponent(iNuc,1:max_ang_mom(iNuc)+1)
! enddo enddo
! !------------------------------------------------------------------------ !------------------------------------------------------------------------
! ! End loop over atoms ! End loop over atoms
! !------------------------------------------------------------------------ !------------------------------------------------------------------------
! ! Total number of shells ! Total number of shells
! write(*,'(A28,1X,I16)') 'Number of shells',nShell write(*,'(A28,1X,I16)') 'Number of shells',nShell
! write(*,'(A28)') '------------------' write(*,'(A28)') '------------------'
! write(*,*) write(*,*)
! ! Close file with basis set specification ! Close file with basis set specification
! close(unit=2) close(unit=2)
! Calculate number of basis functions Calculate number of basis functions
! nBas = 0 nBas = 0
! do iShell=1,nShell do iShell=1,nShell
! nBas = nBas + (TotAngMomShell(iShell)*TotAngMomShell(iShell) + 3*TotAngMomShell(iShell) + 2)/2 nBas = nBas + (TotAngMomShell(iShell)*TotAngMomShell(iShell) + 3*TotAngMomShell(iShell) + 2)/2
! enddo enddo
! write(*,'(A28)') '------------------' write(*,'(A28)') '------------------'
! write(*,'(A28,1X,I16)') 'Number of basis functions',NBas write(*,'(A28,1X,I16)') 'Number of basis functions',NBas
! write(*,'(A28)') '------------------' write(*,'(A28)') '------------------'
! write(*,*) write(*,*)
open(unit=3,file='int/nBas.dat') ! open(unit=3,file='int/nBas.dat')
read(3,*) nBas ! read(3,*) nBas
close(unit=3) ! close(unit=3)
! Number of virtual orbitals ! Number of virtual orbitals