| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer, | intent(in) | :: | nI(nEl) |
function isProperCSF_nI(nI) result(flag) ! function to check if provided CSF in nI(nEl) format is a proper CSF integer, intent(in) :: nI(nEl) logical :: flag real(dp) :: bVector(nEl) integer :: calcS flag = .true. bVector = calcB_vector_nI(nI) ! check if the b value drops below zero if (any(bVector < 0.0_dp)) flag = .false. ! check if total spin is same as input calcS = abs(sum(get_spin_pn(nI(:)))) if (calcS /= STOT) flag = .false. end function isProperCSF_nI