Skip to content

dq.dissipator

dissipator(L: ArrayLike, rho: ArrayLike) -> Array

Applies the Lindblad dissipation superoperator to a density matrix.

The dissipation superoperator \(\mathcal{D}[L]\) is defined by: $$ \mathcal{D}[L] (\rho) = L\rho L^\dag - \frac{1}{2}L^\dag L \rho - \frac{1}{2}\rho L^\dag L. $$

Parameters

  • L (array_like of shape (..., n, n)) –

    Jump operator.

  • rho (array_like of shape (..., n, n)) –

    Density matrix.

Returns

(array of shape (..., n, n)) Resulting operator (it is not a density matrix).

See also
  • dq.sdissipator(): returns the dissipation superoperator in matrix form (vectorized).

Examples

>>> L = dq.destroy(4)
>>> rho = dq.fock_dm(4, 2)
>>> dq.dissipator(L, rho)
Array([[ 0.+0.j,  0.+0.j,  0.+0.j,  0.+0.j],
       [ 0.+0.j,  2.+0.j,  0.+0.j,  0.+0.j],
       [ 0.+0.j,  0.+0.j, -2.+0.j,  0.+0.j],
       [ 0.+0.j,  0.+0.j,  0.+0.j,  0.+0.j]], dtype=complex64)