iqm.benchmarks.compressive_gst.mgst.additional_fns.randKrausSet

Contents

iqm.benchmarks.compressive_gst.mgst.additional_fns.randKrausSet#

iqm.benchmarks.compressive_gst.mgst.additional_fns.randKrausSet(d: int, r: int, rK: int, a: float = 1) ndarray#

Generates random set of Kraus operators.

Parameters:
  • d (int) – Number of gates

  • r (int) – Superoperator dimension of the gates given by the square of the physical dimension

  • rK (int) – Number of Kraus operators per gate (“Kraus rank”)

  • a (float) – Parameter to control the norm of the hermitian generator and thereby how far the gates are from the identity

Returns:

Each subarray along the first axis contains a set of Kraus operators.

The second axis enumerates Kraus operators for a gate specified by the first axis.

Return type:

K

Notes

Let pdim be the physical dimension. Then a set of Kraus operators is generated by taking the first pdim

columns of a random unitary of size rK*pdim. The random unitary is generated from a random hermitian matrix.