mirror of
https://github.com/QuantumPackage/qp2.git
synced 2024-08-30 12:43:40 +02:00
Accelerated PT2 by removing sort
Some checks failed
continuous-integration/drone/push Build is failing
Some checks failed
continuous-integration/drone/push Build is failing
This commit is contained in:
parent
f168b885db
commit
be6c230f52
@ -258,8 +258,6 @@ subroutine select_singles_and_doubles(i_generator,hole_mask,particle_mask,fock_d
|
|||||||
deallocate(exc_degree)
|
deallocate(exc_degree)
|
||||||
nmax=k-1
|
nmax=k-1
|
||||||
|
|
||||||
call isort_noidx(indices,nmax)
|
|
||||||
|
|
||||||
! Start with 32 elements. Size will double along with the filtering.
|
! Start with 32 elements. Size will double along with the filtering.
|
||||||
allocate(preinteresting(0:32), prefullinteresting(0:32), &
|
allocate(preinteresting(0:32), prefullinteresting(0:32), &
|
||||||
interesting(0:32), fullinteresting(0:32))
|
interesting(0:32), fullinteresting(0:32))
|
||||||
|
@ -77,7 +77,7 @@ function run_stoch() {
|
|||||||
@test "H2O" { # 11.3727s
|
@test "H2O" { # 11.3727s
|
||||||
[[ -n $TRAVIS ]] && skip
|
[[ -n $TRAVIS ]] && skip
|
||||||
qp set_file h2o.ezfio
|
qp set_file h2o.ezfio
|
||||||
run -76.2361605151999 5.e-4 100000
|
run -76.2361605151999 2.e-3 100000
|
||||||
}
|
}
|
||||||
|
|
||||||
@test "ClO" { # 13.3755s
|
@test "ClO" { # 13.3755s
|
||||||
|
@ -235,11 +235,11 @@ subroutine get_mo_two_e_integrals_erf_ij(k,l,sze,out_array,map)
|
|||||||
|
|
||||||
logical :: integral_is_in_map
|
logical :: integral_is_in_map
|
||||||
if (key_kind == 8) then
|
if (key_kind == 8) then
|
||||||
call i8radix_sort(hash,iorder,kk,-1)
|
call i8sort(hash,iorder,kk)
|
||||||
else if (key_kind == 4) then
|
else if (key_kind == 4) then
|
||||||
call iradix_sort(hash,iorder,kk,-1)
|
call isort(hash,iorder,kk)
|
||||||
else if (key_kind == 2) then
|
else if (key_kind == 2) then
|
||||||
call i2radix_sort(hash,iorder,kk,-1)
|
call i2sort(hash,iorder,kk)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
call map_get_many(mo_integrals_erf_map, hash, tmp_val, kk)
|
call map_get_many(mo_integrals_erf_map, hash, tmp_val, kk)
|
||||||
@ -290,11 +290,11 @@ subroutine get_mo_two_e_integrals_erf_i1j1(k,l,sze,out_array,map)
|
|||||||
|
|
||||||
logical :: integral_is_in_map
|
logical :: integral_is_in_map
|
||||||
if (key_kind == 8) then
|
if (key_kind == 8) then
|
||||||
call i8radix_sort(hash,iorder,kk,-1)
|
call i8sort(hash,iorder,kk)
|
||||||
else if (key_kind == 4) then
|
else if (key_kind == 4) then
|
||||||
call iradix_sort(hash,iorder,kk,-1)
|
call isort(hash,iorder,kk)
|
||||||
else if (key_kind == 2) then
|
else if (key_kind == 2) then
|
||||||
call i2radix_sort(hash,iorder,kk,-1)
|
call i2sort(hash,iorder,kk)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
call map_get_many(mo_integrals_erf_map, hash, tmp_val, kk)
|
call map_get_many(mo_integrals_erf_map, hash, tmp_val, kk)
|
||||||
|
Loading…
Reference in New Issue
Block a user