qat.fermion.chemistry.ucc.get_cluster_ops

qat.fermion.chemistry.ucc.get_cluster_ops(n_electrons: int, nqbits: int | None = None, noons: List[float] | None = None) List[FermionHamiltonian]

Compute the cluster operators.

Parameters:
  • n_electrons (int) – The number of active electrons of the system.

  • nqbits (Optional[int]) – The number of qubits.

  • noons (Optional[List[float]]) – The natural-orbital occupation numbers ni, sorted in descending order (from high occupations to low occupations) (doubled due to spin degeneracy).

Returns:

The list of cluster operators {iTai,aI,iO}{iTabij,a>b,i>j,a,bI,i,jO}, with I (resp. O) the inoccupied (resp. occupied) orbitals.

Return type:

List[FermionHamiltonian]

Note

This function accepts as input the number of qubits or the noons. One of them is needed for the computation of the cluster operators. n_electrons and n_qbits must be even.