diff --git a/src/davidson/diagonalize_ci.irp.f b/src/davidson/diagonalize_ci.irp.f index 8fbac58a..59c8313a 100644 --- a/src/davidson/diagonalize_ci.irp.f +++ b/src/davidson/diagonalize_ci.irp.f @@ -176,8 +176,12 @@ END_PROVIDER if (state_following .and. only_expected_s2) then integer :: state(N_states), idx,l - double precision :: overlp(N_det), omax - logical :: ok(N_det), used + double precision :: omax + double precision, allocatable :: overlp(:) + logical :: used + logical, allocatable :: ok(:) + + allocate(overlp(N_det), ok(N_det)) i_state = 0 state = 0 @@ -216,6 +220,8 @@ END_PROVIDER i_state +=1 enddo + deallocate(overlp, ok) + do i = 1, i_state index_good_state_array(i) = state(i) good_state_array(i) = .True.