Spins¶
Module to support spin circuits.
The spins module holds the circuit instructions and simulators needed for cold-atom setups which control the collective spin of an ensemble of atoms in a Bose-Einstein-condensate.
In this setting, each wire in a quantum circuit describes a single quantum mechanical angular momentum
(or spin) with principal quantum number \(S\). Upon measurement, each wire can be found in a state
ranging from \(0\) to \(2S\).
Backends to describe such spin circuits are subclasses of the BaseSpinBackend
class.
The SpinSimulator
backend is a general purpose simulator backend that simulates spin
circuits.
Spin backends¶
|
Abstract base class for atomic mixture backends. |
|
A simulator to simulate general spin circuits. |
At the start of the circuit each spin is taken to be initialized in the 0 state, in analogy to qubits.
Spin gates¶
Spin gates are quantum circuit instructions designed specifically for cold-atom based setups that
control large spin ensembles. These gates are characterized by their effect on the spin ensemble.
Spin gates are subclasses or instances of the SpinGate
class. All of these gates define a
generator
property used to compute the time-evolution. These generators are second quantized
operators (SpinOp
from Qiskit Nature) that describe the gate Hamiltonian acting on the spins.
When an entry of the qiskit_cold_atom.spins
module is imported, the Spin gates are added to the
QuantumCircuit
class in Qiskit.
The module includes a number of gates suitable to a platform that implements rotations and squeezing of collective spins.
|
Unitary gates for spin circuits. |
|
Rotation of the collective spin of a cold atomic Bose-Einstein condensate around the x-axis. |
|
Rotation of the collective spin of a cold atomic Bose-Einstein condensate around the y-axis. |
|
Rotation of the collective spin of a cold atomic Bose-Einstein condensate around the z-axis. |
|
Evolution of a coherent spin under the twisting dynamic generated by Lz^2'. |
|
Evolution of a coherent spin under the one-axis-twisting Hamiltonian. |
|
Coupled ZZ-rotation of two collective spins. |
|
The spin exchange gate of two collective spins. |
These gates should serve as an example of how a concrete collective spin platform can be described
through qiskit_cold_atom
.
Users are encouraged to define their own gates to describe different collective spin experiments.
If these gates define a generator
property as laid out above, the :class:SpinSimulator
can be used to simulate circuits with such custom gates.
Circuit solvers¶
Circuit solvers are classes that allow users to simulate a quantum circuit
for cold-atom based setups. They are subclasses of
BaseCircuitSolver
and can be called on quantum circuits to solve them.
The numerical simulation of spin circuits is carried out by the SpinCircuitSolver
class.
This simulates the circuits via exact diagonalization and provides access to the unitary,
the statevector and simulated measurement outcomes of the circuit.
|
Performs numerical simulations of spin systems by exactly computing the time evolution under unitary operations generated by exponentiating spin Hamiltonians. |