readAPValsAsInt Subroutine

public subroutine readAPValsAsInt(apvals, j)

Arguments

Type IntentOptional Attributes Name
integer(kind=n_int), intent(in) :: apvals(:)
integer, intent(in) :: j

Contents

Source Code


Source Code

    subroutine readAPValsAsInt(apvals, j)
        implicit none
        integer(n_int), intent(in) :: apvals(:)
        integer, intent(in) :: j

        integer :: k
        real(dp) :: realVal = 0.0_dp

        ! Read the accumlated population values (pops_sum and pop_iter)
        ! in a contiguous integer array of size (lenof_sing+1).
        ! This is useful for HDF5 subroutines which currently only accept integer arrays

        if (size(apvals, dim=1) >= lenof_sign + 1) then
            do k = 1, lenof_sign
                global_determinant_data(pos_pops_sum + k - 1, j) = transfer(apvals(k), realVal)
            end do
            global_determinant_data(pos_pops_iter, j) = transfer(apvals(lenof_sign + 1), realVal)
        else
            print *, "WARNING: Dimension mismatch in readAPValsAsInt. Ignoring read data"
        end if

    end subroutine readAPValsAsInt