Convert amplitudes for use with singlet UCCSD
openfermion.circuits.uccsd_singlet_get_packed_amplitudes(
single_amplitudes, double_amplitudes, n_qubits, n_electrons
)
The output list contains only those amplitudes that are relevant to
singlet UCCSD, in an order suitable for use with the function
uccsd_singlet_generator
.
Args |
single_amplitudes(ndarray): [NxN] array storing single excitation
amplitudes corresponding to t[i,j] * (a_i^\dagger a_j - H.C.)
double_amplitudes(ndarray): [NxNxNxN] array storing double
excitation amplitudes corresponding to
t[i,j,k,l] * (a_i^\dagger a_j a_k^\dagger a_l - H.C.)
n_qubits(int): Number of spin-orbitals used to represent the system,
which also corresponds to number of qubits in a non-compact map.
n_electrons(int): Number of electrons in the physical system.
|
Returns |
packed_amplitudes(list): List storing the unique single
and double excitation amplitudes for a singlet UCCSD operator.
The ordering lists unique single excitations before double
excitations.
|