View source on GitHub |
Change the basis of a general interaction tensor.
openfermion.ops.general_basis_change(
general_tensor, rotation_matrix, key
)
Used in the notebooks
Used in the tutorials |
---|
M'^{p_1p_2...p_n} = R^{p1}{a_1} R^{p2}{a_2} ... R^{pn}{a_n} M^{a_1a_2...a_n} R^{pn}{a_n}^T ... R^{p2}{a2}^T R{p1}{a_1}^T
where R is the rotation matrix, M is the general tensor, M' is the transformed general tensor, and a_k and p_k are indices. The formula uses the Einstein notation (implicit sum over repeated indices).
In case R is complex, the k-th R in the above formula need to be conjugated if key has a 1 in the k-th place (meaning that the corresponding operator is a creation operator).
Returns | |
---|---|
transformed_general_tensor
|
general_tensor in the rotated basis. |