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