Q#
- class Q(*modes: Union[int, Any])#
The implementation of qumodes, which is used to track on which qumodes are the operators placed in the circuit.
Example usage:
import numpy as np import piquasso as pq with pq.Program() as program: pq.Q(0, 1) | pq.Squeezing(r=0.5) simulator = pq.GaussianSimulator(d=5) result = simulator.execute(program)
In the above example, the
Squeezing
gate is applied to modes 0, 1.Note, that it is not necessarily required to specify any modes, if the context permits, e.g. when registering states.
One could use the all keyword to indicate that the registered
Instruction
mashould be applied to all modes, i.e.:with pq.Program() as program: pq.Q(0, 1) | pq.Squeezing(r=0.5) pq.Q(all) | pq.ParticleNumberMeasurement()
or alternatively no parameters, i.e.:
with pq.Program() as program: pq.Q(0, 1) | pq.Squeezing(r=0.5) pq.Q() | pq.ParticleNumberMeasurement()
- Parameters
modes (int) – Variable length list of non-negative integers specifying the modes.
- Raises
InvalidModes – Raised if - the specified modes are not distinct; - negative integers were specified.