10
0
mirror of https://github.com/LCPQ/quantum_package synced 2024-12-23 12:56:14 +01:00

Corrected again bug for 64th MO

This commit is contained in:
Anthony Scemama 2016-01-26 01:08:07 +01:00
parent 1bbb2d3e3d
commit fa2187fea0

View File

@ -220,8 +220,10 @@ subroutine get_double_excitation(det1,det2,exc,phase,Nint)
ibclr(-1_bit_kind,n)+1_bit_kind ) )) ibclr(-1_bit_kind,n)+1_bit_kind ) ))
else else
nperm = nperm + popcnt(iand(det1(k,ispin), & nperm = nperm + popcnt(iand(det1(k,ispin), &
ibset(0_bit_kind,m-1)-1_bit_kind)) + & ibset(0_bit_kind,m-1)-1_bit_kind))
popcnt(iand(det1(j,ispin), ibclr(-1_bit_kind,n) +1_bit_kind)) if (n < bit_kind_size) then
nperm = nperm + popcnt(iand(det1(j,ispin), ibclr(-1_bit_kind,n) +1_bit_kind))
endif
do i=j+1,k-1 do i=j+1,k-1
nperm = nperm + popcnt(det1(i,ispin)) nperm = nperm + popcnt(det1(i,ispin))
end do end do
@ -246,8 +248,10 @@ subroutine get_double_excitation(det1,det2,exc,phase,Nint)
ibclr(-1_bit_kind,n)+1_bit_kind ) )) ibclr(-1_bit_kind,n)+1_bit_kind ) ))
else else
nperm = nperm + popcnt(iand(det1(k,ispin), & nperm = nperm + popcnt(iand(det1(k,ispin), &
ibset(0_bit_kind,m-1)-1_bit_kind)) + & ibset(0_bit_kind,m-1)-1_bit_kind))
popcnt(iand(det1(j,ispin), ibclr(-1_bit_kind,n) +1_bit_kind)) if (n < bit_kind_size) then
nperm = nperm + popcnt(iand(det1(j,ispin), ibclr(-1_bit_kind,n) +1_bit_kind))
endif
do l=j+1,k-1 do l=j+1,k-1
nperm = nperm + popcnt(det1(l,ispin)) nperm = nperm + popcnt(det1(l,ispin))
end do end do
@ -334,9 +338,10 @@ subroutine get_mono_excitation(det1,det2,exc,phase,Nint)
nperm = popcnt(iand(det1(j,ispin), & nperm = popcnt(iand(det1(j,ispin), &
iand(ibset(0_bit_kind,m-1)-1_bit_kind,ibclr(-1_bit_kind,n)+1_bit_kind))) iand(ibset(0_bit_kind,m-1)-1_bit_kind,ibclr(-1_bit_kind,n)+1_bit_kind)))
else else
nperm = nperm + & nperm = nperm + popcnt(iand(det1(k,ispin),ibset(0_bit_kind,m-1)-1_bit_kind))
popcnt(iand(det1(k,ispin),ibset(0_bit_kind,m-1)-1_bit_kind)) +& if (n < bit_kind_size) then
popcnt(iand(det1(j,ispin),ibclr(-1_bit_kind,n)+1_bit_kind)) nperm = nperm + popcnt(iand(det1(j,ispin),ibclr(-1_bit_kind,n)+1_bit_kind))
endif
do i=j+1,k-1 do i=j+1,k-1
nperm = nperm + popcnt(det1(i,ispin)) nperm = nperm + popcnt(det1(i,ispin))
end do end do