What is the concrete difference between those two error models in qiskit.providers.aer.noise
?
For phase_amplitude_damping_error
the Kraus operators are given explicitly in the documentation but not so for the thermal_relaxation_error
. At least they both work towards the same equilibrium state. Physically they should have the same effect since a thermal relaxation is nothing but an amplitude damping and dephasing, correct?
The only difference I see is in the definition of the parameters. While phase_and_amplitude_damping_error
has two separate parameters for the damping of amplitude and phase, T2 of thermal_relaxation_error
includes both types as $ \frac{1}{T_2}=\frac{1}{T_2}+\frac{1}{T_p}$ where $T_1$ describes amplitude damping and $T_p$ phase damping.
Are there further difference (also in the specific implementation) I have overlooked?
Edit: I tried to convert the density matrix of the thermal relaxation channel applied to the pure state as given in Krantz (Equation 44 without phase accruel) to the one I get when applying the channel given by the phase_and_amplitude_damping qiskit documentation. This yields as condition that exp(-t/T2)=1 which is nonsense. But when converting it to the density matrix given by the pennylane implementation of thermal relaxation I get exp(-t/T1)=exp(-t/T2) which is nonsense as well. (I hope I didn't miscalculate anything.) The qiskit definition of the phase_and_amplitude_damping is the same as here (equ.14 and following) but what is described there fits the description of the thermal relaxation in Krantz pretty much. And last but not least, there is this $T_1/T_2$ thermal relaxation example, where the kraus operators of the amplitude damping for the ones of qiskit but the thermal relaxation times correspond to those in the paper of Krantz. So, there must be more about this than the definition of the parameters.