mirror of
https://github.com/LCPQ/quantum_package
synced 2024-11-03 20:54:00 +01:00
Optimization in selection
This commit is contained in:
parent
f09bd45885
commit
b157f952fb
@ -434,11 +434,11 @@ subroutine select_singles_and_doubles(i_generator,hole_mask,particle_mask,fock_d
|
|||||||
mobMask(1:3,2) = iand(negMask(1:3,2), preinteresting_det(1:3,2,ii))
|
mobMask(1:3,2) = iand(negMask(1:3,2), preinteresting_det(1:3,2,ii))
|
||||||
nt = 0
|
nt = 0
|
||||||
do j=3,1,-1
|
do j=3,1,-1
|
||||||
if (mobMask(j,1) /= 0_bitkind) then
|
if (mobMask(j,1) /= 0_bit_kind) then
|
||||||
nt = nt+ popcnt(mobMask(j, 1))
|
nt = nt+ popcnt(mobMask(j, 1))
|
||||||
if (nt > 4) exit
|
if (nt > 4) exit
|
||||||
endif
|
endif
|
||||||
if (mobMask(j,2) /= 0_bitkind) then
|
if (mobMask(j,2) /= 0_bit_kind) then
|
||||||
nt = nt+ popcnt(mobMask(j, 2))
|
nt = nt+ popcnt(mobMask(j, 2))
|
||||||
if (nt > 4) exit
|
if (nt > 4) exit
|
||||||
endif
|
endif
|
||||||
@ -448,25 +448,25 @@ subroutine select_singles_and_doubles(i_generator,hole_mask,particle_mask,fock_d
|
|||||||
mobMask(1:4,2) = iand(negMask(1:4,2), preinteresting_det(1:4,2,ii))
|
mobMask(1:4,2) = iand(negMask(1:4,2), preinteresting_det(1:4,2,ii))
|
||||||
nt = 0
|
nt = 0
|
||||||
do j=4,1,-1
|
do j=4,1,-1
|
||||||
if (mobMask(j,1) /= 0_bitkind) then
|
if (mobMask(j,1) /= 0_bit_kind) then
|
||||||
nt = nt+ popcnt(mobMask(j, 1))
|
nt = nt+ popcnt(mobMask(j, 1))
|
||||||
if (nt > 4) exit
|
if (nt > 4) exit
|
||||||
endif
|
endif
|
||||||
if (mobMask(j,2) /= 0_bitkind) then
|
if (mobMask(j,2) /= 0_bit_kind) then
|
||||||
nt = nt+ popcnt(mobMask(j, 2))
|
nt = nt+ popcnt(mobMask(j, 2))
|
||||||
if (nt > 4) exit
|
if (nt > 4) exit
|
||||||
endif
|
endif
|
||||||
end do
|
end do
|
||||||
case (default)
|
case default
|
||||||
mobMask(1:N_int,1) = iand(negMask(1:N_int,1), preinteresting_det(1:N_int,1,ii))
|
mobMask(1:N_int,1) = iand(negMask(1:N_int,1), preinteresting_det(1:N_int,1,ii))
|
||||||
mobMask(1:N_int,2) = iand(negMask(1:N_int,2), preinteresting_det(1:N_int,2,ii))
|
mobMask(1:N_int,2) = iand(negMask(1:N_int,2), preinteresting_det(1:N_int,2,ii))
|
||||||
nt = 0
|
nt = 0
|
||||||
do j=N_int,1,-1
|
do j=N_int,1,-1
|
||||||
if (mobMask(j,1) /= 0_bitkind) then
|
if (mobMask(j,1) /= 0_bit_kind) then
|
||||||
nt = nt+ popcnt(mobMask(j, 1))
|
nt = nt+ popcnt(mobMask(j, 1))
|
||||||
if (nt > 4) exit
|
if (nt > 4) exit
|
||||||
endif
|
endif
|
||||||
if (mobMask(j,2) /= 0_bitkind) then
|
if (mobMask(j,2) /= 0_bit_kind) then
|
||||||
nt = nt+ popcnt(mobMask(j, 2))
|
nt = nt+ popcnt(mobMask(j, 2))
|
||||||
if (nt > 4) exit
|
if (nt > 4) exit
|
||||||
endif
|
endif
|
||||||
|
Loading…
Reference in New Issue
Block a user