Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int_rdm), | intent(in) | :: | rdm_ind | |||
integer, | intent(in) | :: | order |
pure function conjugate_rdm_ind_scalar(rdm_ind, order) result(conj_rdm_ind)
integer(int_rdm), intent(in) :: rdm_ind
integer, intent(in) :: order
integer(int_rdm) :: conj_rdm_ind
integer :: i, j, k, l
if (order == 1) then
call extract_1_rdm_ind(rdm_ind, i, j)
conj_rdm_ind = contract_1_rdm_ind(j, i)
else if (order == 2) then
call extract_2_rdm_ind(rdm_ind, i, j, k, l)
conj_rdm_ind = contract_2_rdm_ind(k, l, i, j)
end if
end function conjugate_rdm_ind_scalar