iqm.benchmarks.compressive_gst.mgst.optimization.gauge_opt

Contents

iqm.benchmarks.compressive_gst.mgst.optimization.gauge_opt#

iqm.benchmarks.compressive_gst.mgst.optimization.gauge_opt(X: ndarray, E: ndarray, rho: ndarray, X_target: ndarray, E_target: ndarray, rho_target: ndarray, gauge_precision: float = 1e-06, weights: list[float] | None = None) tuple[ndarray, ndarray, ndarray]#

Optimize gauge transformation to align estimates with target values.

Parameters:
  • X (ndarray) – Current gate estimates with shape (n_gates, r, r)

  • E (ndarray) – Current POVM estimates with shape (n_povm, r)

  • rho (ndarray) – Current initial state estimate with shape (r,)

  • X_target (ndarray) – Target gate estimates with shape (n_gates, r, r)

  • E_target (ndarray) – Target POVM estimates with shape (n_povm, r)

  • rho_target (ndarray) – Target initial state estimate with shape (r,)

  • gauge_precision (float) – Convergence threshold for objective function

  • weights (list[float] | None) – Weights for gate, POVM, and state terms

Returns:

Gauge-transformed gate estimates E_opt: Gauge-transformed POVM estimates rho_opt: Gauge-transformed initial state estimate

Return type:

X_opt