diff --git a/qiskit_aer/noise/device/models.py b/qiskit_aer/noise/device/models.py index d4e5f3dee5..528a9ffa1c 100644 --- a/qiskit_aer/noise/device/models.py +++ b/qiskit_aer/noise/device/models.py @@ -107,11 +107,12 @@ def basic_device_gate_errors( properties (BackendProperties): device backend properties. gate_error (bool): Include depolarizing gate errors (Default: True). thermal_relaxation (Bool): Include thermal relaxation errors (Default: True). - If ``T1`` or ``T2`` value is not supplied via ``target`` (i.e. None) for some qubits, - no thermal relaxation errors are added to the qubits even if this flag is True. - If ``frequency`` is not defined (i.e. None) for a qubit, no excitation is considered - in the thermal relaxation error on the qubit even if non-zero ``temperature`` - is supplied. + If no ``t1`` and ``t2`` values are provided (i.e. None) in ``target`` for a qubit, + an identity ``QuantumError` (i.e. effectively no thermal relaxation error) + will be added to the qubit even if this flag is set to True. + If no ``frequency`` is not defined (i.e. None) in ``target`` for a qubit, + no excitation is considered in the thermal relaxation error on the qubit + even with non-zero ``temperature``. gate_lengths (list): Override device gate times with custom values. If None use gate times from backend properties. (Default: None). diff --git a/qiskit_aer/noise/noise_model.py b/qiskit_aer/noise/noise_model.py index 18a0578d03..a32fcc2020 100644 --- a/qiskit_aer/noise/noise_model.py +++ b/qiskit_aer/noise/noise_model.py @@ -474,10 +474,14 @@ def from_backend_properties( Args: backend_properties (BackendProperties): The property of backend. gate_error (Bool): Include depolarizing gate errors (Default: True). - readout_error (Bool): Include readout errors in model - (Default: True). - thermal_relaxation (Bool): Include thermal relaxation errors - (Default: True). + readout_error (Bool): Include readout errors in model (Default: True). + thermal_relaxation (Bool): Include thermal relaxation errors (Default: True). + If no ``t1`` and ``t2`` values are provided (i.e. None) in ``target`` for a qubit, + an identity ``QuantumError` (i.e. effectively no thermal relaxation error) + will be added to the qubit even if this flag is set to True. + If no ``frequency`` is not defined (i.e. None) in ``target`` for a qubit, + no excitation is considered in the thermal relaxation error on the qubit + even with non-zero ``temperature``. temperature (double): qubit temperature in milli-Kelvin (mK) for thermal relaxation errors (Default: 0). gate_lengths (Optional[list]): Custom gate times for thermal relaxation errors. diff --git a/releasenotes/notes/fix-none-handling-in-noise-model-34fcc9a3e3cbdf6f.yaml b/releasenotes/notes/fix-none-handling-in-noise-model-34fcc9a3e3cbdf6f.yaml index 3a33ff72d5..e8069c3cee 100644 --- a/releasenotes/notes/fix-none-handling-in-noise-model-34fcc9a3e3cbdf6f.yaml +++ b/releasenotes/notes/fix-none-handling-in-noise-model-34fcc9a3e3cbdf6f.yaml @@ -4,7 +4,7 @@ fixes: Fixed a bug in :meth:`~.NoiseModel.from_backend` that raised an error when the backend has no T1 and T2 values (i.e. None) for a qubit in its qubit properties. This commit updates :meth:`NoiseModel.from_backend` and :func:`basic_device_gate_errors` - so that they add an identity ``QuantumError` (i.e. no thermal relaxation error) + so that they add an identity ``QuantumError`` (i.e. effectively no thermal relaxation error) to a qubit with no T1 and T2 values for all gates acting on qubits including the qubit. Fixed `#1779 `__ and `#1815 `__.