| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(ExcitationType_t), | intent(in) | :: | typ | |||
| integer, | intent(in) | :: | a | |||
| integer, | intent(in) | :: | i | |||
| integer, | intent(in) | :: | b | |||
| integer, | intent(in) | :: | j |
pure function encode_excit_info_scalar(typ, a, i, b, j) result(excit_info_int) ! function to encode the minimal information of an excit-info ! object into a single 64bit integer. used in the PCHB excitation ! generation. debug_function_name("encode_excit_info_scalar") type(ExcitationType_t), intent(in) :: typ integer, intent(in) :: a, i, b, j integer(int64) :: excit_info_int #ifdef DEBUG_ if (typ%val .notin. non_trivial_double_excit_type_arr%val) then call stop_all(this_routine, "incorrect typ: "//typ%str) end if #endif ASSERT(a > 0 .and. a <= nSpatOrbs) ASSERT(i > 0 .and. i <= nSpatOrbs) ASSERT(b > 0 .and. b <= nSpatOrbs) ASSERT(j > 0 .and. j <= nSpatOrbs) excit_info_int = encode_excit_info_vec(typ, [a,i,b,j]) end function encode_excit_info_scalar