Hi. I am currently using qml.ThermalRelaxationError code to replicate the noisy circuit.
When reading the class source code, it seems like the parameter ‘tq’ is a typo, where the correct parameter name seems like ‘tg’ (float): the gate time for relaxation error.
I find it no where the ‘tq’ argument is being used in the source, code but somehow the class code works.
# Put code here
class ThermalRelaxationError(Channel):
r"""
Thermal relaxation error channel.
...
...
num_params = 4
num_wires = 1
grad_method = "F"
def __init__(self, pe, t1, t2, tq, wires, id=None):
super().__init__(pe, t1, t2, tq, wires=wires, id=id)
[docs] @staticmethod
def compute_kraus_matrices(pe, t1, t2, tg): # pylint:disable=arguments-differ
"""Kraus matrices representing the ThermalRelaxationError channel.
Args:
pe (float): exited state population. Must be between ``0`` and ``1``
t1 (float): the :math:`T_1` relaxation constant
t2 (float): The :math:`T_2` dephasing constant. Must be less than :math:`2 T_1`
tg (float): the gate time for relaxation error
If not a typo, would you give me a tip about why is not an typo? If it is a typo, then I hope it could be of help to fix the minor code error. Thank you for reading this.