Convert two-body operator coefficients to low rank tensor.

The input is a two-body fermionic Hamiltonian expressed as :math:\sum_{pqrs} h_{pqrs} a^\dagger_p a^\dagger_q a_r a_s

We will convert this to the chemistry convention expressing it as :math:\sum_{pqrs} g_{pqrs} a^\dagger_p a_q a^\dagger_r a_s but without the spin degree of freedom.

In the process of performing this conversion, constants and one-body terms come out, which will be returned as well.

two_body_coefficients (ndarray): an N x N x N x N numpy array giving the :math:h_{pqrs} tensor. spin_basis (bool): True if the two-body terms are passed in spin orbital basis. False if already in spatial orbital basis.

one_body_correction (ndarray): an N x N array of floats giving coefficients of the :math:a^\dagger_p a_q terms that come out. chemist_two_body_coefficients (ndarray): an N x N x N x N numpy array giving the :math:g_{pqrs} tensor in chemist notation.

TypeError Input must be two-body number conserving FermionOperator or InteractionOperator.