isProperCSF_flexible Function

public pure function isProperCSF_flexible(ilut, spin, num_el) result(flag)

Arguments

Type IntentOptional Attributes Name
integer(kind=n_int), intent(in) :: ilut(0:GugaBits%len_tot)
integer, intent(in) :: spin
integer, intent(in) :: num_el

Return Value logical


Contents

Source Code


Source Code

    pure function isProperCSF_flexible(ilut, spin, num_el) result(flag)
        integer(n_int), intent(in) :: ilut(0:GugaBits%len_tot)
        integer, intent(in) :: spin, num_el
        logical :: flag

        flag = (all(calcB_vector_int(ilut(0:GugaBits%len_orb)) >= 0) &
            .and. (abs(return_ms(ilut, num_el)) == spin) &
            .and. (int(sum(calcOcc_vector_ilut(ilut(0:GugaBits%len_orb)))) == num_el))

    end function isProperCSF_flexible