subroutine reload_current_dets()
! routine to reload the saved y(n) CurrentDets array for the final
! y(n) + k/2 combination to move to the next time step y(n+1)
! have also to think about the death-step and annihilation step
! influences.. maybe have to write new death/born routines to split
! that from the spawned list creation..
character(*), parameter :: this_routine = "reload_current_dets"
! copy the list
WalkVecDets(:, 1:temp_totWalkers) = temp_det_list(:, 1:temp_totWalkers)
! and point to it
CurrentDets => WalkVecDets
! also have to reset the number of determinants to the original
! value?!
TotWalkers = temp_totWalkers
! and the hash
! cant just copy the hash-table like that have to associate all
! entries correctly
! here i 'just' have to reassign the original HashIndex with the
! stored CurrentDets list!
call clear_hash_table(HashIndex)
call fill_in_hash_table(HashIndex, nWalkerHashes, CurrentDets, &
int(TotWalkers), .true.)
! for correct load Balancin i also have to reset the the freeslot var.
! here i have to reset the freeslot values to the values after the
! first spawn loop, as the empty entries get determined there!
! and i only want to do an additional annihilation step to combine
! y(n) + k2
! also reload the positions of empty slots in the ensemble
iStartFreeSlot = 1
iEndFreeSlot = temp_iendfreeslot
FreeSlot = temp_freeslot
call reset_tot_parts()
end subroutine reload_current_dets