Source code for bqskit.ir.gates.reset

"""This module implements the Reset class."""
from __future__ import annotations

from bqskit.ir.gates.constantgate import ConstantGate
from bqskit.qis.unitary.unitary import RealVector
from bqskit.qis.unitary.unitarymatrix import UnitaryMatrix


[docs] class Reset(ConstantGate): """Pseudogate to reset/initialize the qudit to |0>."""
[docs] def __init__(self, radix: int = 2) -> None: """ Construct a Reset. Args: radix (int): the dimension of the qudit. (Default: 2) """ self._num_qudits = 1 self._qasm_name = 'reset' self._radixes = tuple([radix]) self._num_params = 0
[docs] def get_unitary(self, params: RealVector = []) -> UnitaryMatrix: raise RuntimeError('Cannot compute unitary for a reset.')