Resultados del experimento
qiskit.result
Clases principales
Result(*[, backend_name, backend_version,...] ) | Modelo de resultados. |
ResultError(error) | Excepciones provocadas por errores en la salida de resultados. |
Counts(data[, time_taken, creg_sizes,...] ) | Una clase para almacenar un resultado de recuento de la ejecución de un circuito. |
Marginación
marginal_counts
qiskit.result.marginal_counts(result, indices=None, inplace=False, format_marginal=False, marginalize_memory=True)
Marginalizar los recuentos de un experimento sobre algunos índices de interés.
Parámetros
- result (dict |Result) – resultado a marginar (un objeto Result o un dict(str, int) de recuentos).
- indices (list[int] | None) – Las posiciones de los bits que nos interesan para realizar la marginalización. Si
None(valor predeterminado), no se aplica ninguna marginación. - inplace (bool) – Por defecto: Falso. Opera sobre el argumento Resultado original si es True, provocando la pérdida del Resultado del Trabajo original. No tiene efecto si
resultes un dict. - format_marginal (bool) – Por defecto: Falso. Si es True, toma la salida de marginalize y la formatea con marcadores de posición entre cregs y para no índices.
- marginalize_memory (bool | None) – Si es True, margina también el campo de memoria (si está presente). Si es False, elimina el campo de memoria del resultado. Si es Ninguno, deje el campo de memoria como está.
Devuelve
Un objeto Resultado o un diccionario con
los recuentos observados, marginados para tener en cuenta únicamente la frecuencia de las observaciones de bits de interés.
Tipo de retorno
Eleva
QiskitError - en caso de índices no válidos sobre los que marginar.
marginal_distribution
qiskit.result.marginal_distribution(counts, indices=None, format_marginal=False)
Marginalizar los recuentos de un experimento sobre algunos índices de interés.
A diferencia de marginal_counts() esta función respeta el orden de la entrada indices. Si se especifica la lista de entrada indices , el orden en que se especifiquen los índices de bits será el orden de salida de las cadenas de bits en la salida marginada.
Parámetros
- counts (dict) – resultado a marginar
- indices (Sequence[int] | None) – Las posiciones de los bits que nos interesan para realizar la marginalización. Si
None(valor predeterminado), no se aplica ninguna marginación. - format_marginal (bool) – Por defecto: Falso. Si es True, toma la salida de marginalize y la formatea con marcadores de posición entre cregs y para no índices.
Devuelve
Un diccionario marginado
Tipo de retorno
Eleva
- QiskitError - Si algún valor de
indicesno es válido o el dictcounts - no es válido. -
marginal_memory
qiskit.result.marginal_memory(memory, indices=None, int_return=False, hex_return=False, avg_data=False, parallel_threshold=1000)
Marginar la memoria del disparo
Esta función es multihilo y lanzará un pool de hilos con hilos igual al número de CPUs por defecto. Puede ajustar el número de hilos con la variable de entorno RAYON_NUM_THREADS . Por ejemplo, configurando RAYON_NUM_THREADS=4 se limitaría el pool de hilos a 4 hilos.
Parámetros
- memory (list[str] | ndarray) – La lista de memoria de entrada: puede ser una lista de cadenas hexadecimales que se van a marginalizar y que representan la memoria de medición de nivel 2, o bien una matriz NumPy que representa la memoria de medición de nivel 0 (valor único o promedio) o la memoria de medición de nivel 1 (valor único o promedio).
- indices (list[int] | None) – Las posiciones de los bits que nos interesan para realizar la marginalización. Si
None(valor predeterminado), no se aplica ninguna marginación. - int_return (bool) – Si se establece en
Truela salida será una lista de enteros. Por defecto, el tipo de retorno es una cadena de bits. Esto yhex_returnse excluyen mutuamente y no pueden especificarse al mismo tiempo. Esta opción sólo tiene efecto con el nivel de memoria 2. - hex_return (bool) – Si se establece en
Truela salida será una lista de cadenas hexadecimales. Por defecto, el tipo de retorno es una cadena de bits. Esto yint_returnse excluyen mutuamente y no pueden especificarse al mismo tiempo. Esta opción sólo tiene efecto con el nivel de memoria 2. - avg_data (bool) – Si se pasa un array numpy de 2 dimensiones para
memoryesto se puede establecer enTruepara indicar que es un dato de nivel 0 de promedio en lugar de un dato único de nivel 1. - parallel_threshold (int) – El número de elementos en
memorypara comenzar a ejecutar en varios hilos. Silen(memory)es >= este valor, la función se ejecutará en múltiples hilos. Por defecto, el valor es 1000.
Devuelve
La lista de la memoria marginada
Tipo de retorno
memoria_marginal
Eleva
ValueError - si int_return y hex_return están configurados como True
Distribuciones
ProbDistribution(datos[, disparos] ) | Una clase genérica tipo dict para distribuciones de probabilidad. |
QuasiDistribution(datos[, disparos,...] ) | Una clase tipo dict para representar cuasi-probabilidades. |
Valores esperados
sampled_expectation_value
qiskit.result.sampled_expectation_value(dist, oper)
Calcula el valor esperado de una distribución muestreada
Tenga en cuenta que pasar un dict sin procesar requiere claves de cadena de bits.
Parámetros
- dist (dict |result.Counts |QuasiDistribution |ProbDistribution) – Distribución muestreada de las entradas.
- oper (str |quantum_info.Pauli |quantum_info.SparsePauliOp |quantum_info.SparseObservable) – El operador de la variable observable.
Devuelve
El valor esperado.
Eleva
QiskitError - si la distribución o el operador de entrada es un tipo no válido
Tipo de retorno