Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(ll_node), | intent(inout), | pointer | :: | HashIndex(:) | ||
integer, | intent(in) | :: | nJ(nel) | |||
integer, | intent(in) | :: | partInd |
subroutine RemoveHashDet(HashIndex, nJ, partInd)
implicit none
type(ll_node), pointer, intent(inout) :: HashIndex(:)
integer, intent(in) :: nJ(nel), partInd
! remove a determinant from the hashtable
call remove_hash_table_entry(HashIndex, nJ, PartInd)
! Add to "freeslot" list so it can be filled in.
iEndFreeSlot = iEndFreeSlot + 1
FreeSlot(iEndFreeSlot) = PartInd
! Mark it as removed
call set_flag(CurrentDets(:, PartInd), flag_removed, .true.)
end subroutine RemoveHashDet