uniqc.algorithms.core.ansatz.uccsd module¶
UCCSD (Unitary Coupled-Cluster Singles and Doubles) ansatz.
Implements a simplified UCCSD ansatz for variational quantum chemistry simulations. Each single/double excitation is parameterised by an independent variational angle.
- uniqc.algorithms.core.ansatz.uccsd.uccsd_ansatz(n_qubits, n_electrons, qubits=None, params=None)[source]¶
Build a UCCSD (Unitary Coupled-Cluster Singles and Doubles) ansatz.
Occupies the first n_electrons spin-orbitals and allows single excitations from occupied → virtual and double excitations from pairs of occupied → pairs of virtual.
- Parameters:
n_qubits – Total number of qubits (spin-orbitals).
n_electrons – Number of occupied spin-orbitals.
qubits – Qubit indices.
None→list(range(n_qubits)).params – Variational parameters.
None→ zeros (no excitation).
- Returns:
A
Circuitobject.- Raises:
ValueError – n_electrons > n_qubits.
ValueError – params length does not match the expected count.
Example
>>> from uniqc.algorithms.core.ansatz import uccsd_ansatz >>> c = uccsd_ansatz(n_qubits=4, n_electrons=2)