mirror of
https://github.com/LCPQ/quantum_package
synced 2024-12-23 04:43:50 +01:00
Fixed get_ao_bielec_integral
This commit is contained in:
parent
09ead73dc7
commit
a5a34a02f1
@ -84,8 +84,8 @@ program fci_zmq
|
||||
|
||||
if(do_pt2_end)then
|
||||
print*,'Last iteration only to compute the PT2'
|
||||
threshold_selectors = 1.d0
|
||||
threshold_generators = 0.9999d0
|
||||
threshold_selectors = threshold_selectors_pt2
|
||||
threshold_generators = threshold_generators_pt2
|
||||
TOUCH threshold_selectors threshold_generators
|
||||
E_CI_before(1:N_states) = CI_energy(1:N_states)
|
||||
call ZMQ_selection(0, pt2)
|
||||
|
@ -76,27 +76,6 @@ subroutine occ_pattern_to_dets(o,d,sze,n_alpha,Nint)
|
||||
enddo
|
||||
enddo
|
||||
|
||||
! !TODO DEBUG
|
||||
! integer :: j,s
|
||||
! do i=1,nd
|
||||
! do j=1,i-1
|
||||
! na=0
|
||||
! do k=1,Nint
|
||||
! if((d(k,1,j) /= d(k,1,i)).or. &
|
||||
! (d(k,2,j) /= d(k,2,i))) then
|
||||
! s=1
|
||||
! exit
|
||||
! endif
|
||||
! enddo
|
||||
! if ( j== 0 ) then
|
||||
! print *, 'det ',i,' and ',j,' equal:'
|
||||
! call debug_det(d(1,1,j),Nint)
|
||||
! call debug_det(d(1,1,i),Nint)
|
||||
! stop
|
||||
! endif
|
||||
! enddo
|
||||
! enddo
|
||||
! !TODO DEBUG
|
||||
end
|
||||
|
||||
recursive subroutine rec_occ_pattern_to_dets(list_todo,nt,list_a,na,d,nd,sze,amax,Nint)
|
||||
|
@ -152,7 +152,7 @@ BEGIN_PROVIDER [ double precision, ao_integrals_cache, (0:64*64*64*64) ]
|
||||
END_PROVIDER
|
||||
|
||||
|
||||
double precision function get_ao_bielec_integral(i,j,k,l,map)
|
||||
double precision function get_ao_bielec_integral(i,j,k,l,map) result(result)
|
||||
use map_module
|
||||
implicit none
|
||||
BEGIN_DOC
|
||||
@ -179,15 +179,16 @@ double precision function get_ao_bielec_integral(i,j,k,l,map)
|
||||
call bielec_integrals_index(i,j,k,l,idx)
|
||||
!DIR$ FORCEINLINE
|
||||
call map_get(map,idx,tmp)
|
||||
get_ao_bielec_integral = dble(tmp)
|
||||
tmp = tmp
|
||||
else
|
||||
ii = l-ao_integrals_cache_min
|
||||
ii = ior( ishft(ii,6), k-ao_integrals_cache_min)
|
||||
ii = ior( ishft(ii,6), j-ao_integrals_cache_min)
|
||||
ii = ior( ishft(ii,6), i-ao_integrals_cache_min)
|
||||
get_ao_bielec_integral = ao_integrals_cache(ii)
|
||||
tmp = ao_integrals_cache(ii)
|
||||
endif
|
||||
endif
|
||||
result = tmp
|
||||
end
|
||||
|
||||
|
||||
@ -676,6 +677,7 @@ integer function load_$ao_integrals(filename)
|
||||
real(integral_kind), pointer :: val(:)
|
||||
integer :: iknd, kknd
|
||||
integer*8 :: n, j
|
||||
double precision :: get_$ao_bielec_integral
|
||||
load_$ao_integrals = 1
|
||||
open(unit=66,file=filename,FORM='unformatted',STATUS='UNKNOWN')
|
||||
read(66,err=98,end=98) iknd, kknd
|
||||
|
Loading…
Reference in New Issue
Block a user