Source code for qlauncher.routines.qiskit.utils

 1from typing import get_args
 2
 3import numpy as np
 4from qiskit.primitives.containers.sampler_pub import SamplerPub, SamplerPubLike
 5
 6from qlauncher.routines.circuits import CIRCUIT_FORMATS
 7
 8
[docs] 9def coerce_to_circuit_list(pub: SamplerPubLike | CIRCUIT_FORMATS, shots: int | None = None) -> list[CIRCUIT_FORMATS]: 10 if not isinstance(pub, get_args(CIRCUIT_FORMATS)): 11 coerced = SamplerPub.coerce(pub, shots) 12 bound = coerced.parameter_values.bind_all(coerced.circuit) 13 return np.ravel(bound).tolist() 14 return [pub]