triqs.operators.util.extractors.extract_U_dict4

triqs.operators.util.extractors.extract_U_dict4()

Dispatched C++ function(s).

[1] (H: Operator,
     ignore_irrelevant: bool = False)
  -> dict[tuple[tuple[int | str | float | [int, len = 3], int | str | float | [int, len = 3]], tuple[int | str | float | [int, len = 3], int | str | float | [int, len = 3]], tuple[int | str | float | [int, len = 3], int | str | float | [int, len = 3]], tuple[int | str | float | [int, len = 3], int | str | float | [int, len = 3]]] -> float | complex]

Extract the two-body interaction part from a many-body operator.

The two body interaction is assumed to have the form

\[\frac{1}{2} \sum_{ijkl} U_{ijkl} \hat{c}^\dagger_i \hat{c}^\dagger_j \hat{c}_l \hat{c}_k \; .\]
Parameters:
HOperator

The many-body operator.

ignore_irrelevantbool

If true, silently skip irrelevant terms.

Returns:
dict[tuple[tuple[int | str | float | [int, len = 3], int | str | float | [int, len = 3]], tuple[int | str | float | [int, len = 3], int | str | float | [int, len = 3]], tuple[int | str | float | [int, len = 3], int | str | float | [int, len = 3]], tuple[int | str | float | [int, len = 3], int | str | float | [int, len = 3]]] -> float | complex]

Dictionary mapping index quadruples \((i, j, k, l)\) to coefficients \(U_{ijkl}\).