Resultados da experiência
qiskit.result
Classes Principais
Result(*[, backend_name, backend_version,...] ) | Modelo para resultados. |
ResultError(erro) | Exceções geradas devido a erros na saída de resultados. |
Counts(data[, time_taken, creg_sizes,...] ) | Uma classe para armazenar um resultado de contagem de uma execução de circuito. |
Marginalização
marginal_counts
qiskit.result.marginal_counts(result, indices=None, inplace=False, format_marginal=False, marginalize_memory=True)
Marginalize as contagens de um experimento em relação a alguns índices de interesse.
Parâmetros
- result (dict |Result) – resultado a ser marginalizado (um objeto Result ou um dict(str, int) de contagens).
- indices (list[int] | None) – As posições dos bits que se deseja marginalizar. Se
None(padrão), não marginalizar de forma alguma. - inplace (bool) – Padrão: False. Opera no argumento original Result se for True, levando à perda do Job Result original. Isso não terá efeito se
resultfor um dict. - format_marginal (bool) – Padrão: False. Se for True, obtém a saída do marginalize e a formata com espaços reservados entre cregs e para não índices.
- marginalize_memory (bool | None) – Se for True, também marginalize o campo de memória (se houver). Se for False, removerá o campo de memória do resultado. Se for None (Nenhum), deixe o campo de memória como está.
Retorna
Um objeto Result ou um dicionário com
as contagens observadas, marginalizadas para considerar apenas a frequência de observações de bits de interesse.
Tipo de retorno
Aumentos
QiskitError - no caso de índices inválidos para marginalizar.
marginal_distribution
qiskit.result.marginal_distribution(counts, indices=None, format_marginal=False)
Marginalize as contagens de um experimento em relação a alguns índices de interesse.
Diferente de marginal_counts() essa função respeita a ordem da entrada indices. Se a lista indices de entrada for especificada, a ordem em que os índices de bits forem especificados será a ordem de saída das cadeias de bits na saída marginalizada.
Parâmetros
- counts (dict) – resultado a ser marginalizado
- indices (Sequence[int] | None) – As posições dos bits que se deseja marginalizar. Se
None(padrão), não marginalizar de forma alguma. - format_marginal (bool) – Padrão: False. Se for True, obtém a saída do marginalize e a formata com espaços reservados entre cregs e para não índices.
Retorna
Um dicionário marginalizado
Tipo de retorno
Aumentos
- QiskitError - Se algum valor em
indicesfor inválido ou o ditadocounts - é inválido. -
marginal_memory
qiskit.result.marginal_memory(memory, indices=None, int_return=False, hex_return=False, avg_data=False, parallel_threshold=1000)
Marginalizar a memória do tiro
Essa função é multithread e iniciará um pool de threads com threads iguais ao número de CPUs por padrão. Você pode ajustar o número de threads com a variável de ambiente RAYON_NUM_THREADS . Por exemplo, a configuração RAYON_NUM_THREADS=4 limitaria o pool de threads a 4 threads.
Parâmetros
- memory (list[str] | ndarray) – A lista de memória de entrada pode ser uma lista de cadeias hexadecimais a serem marginalizadas, representando a memória de medição de nível 2, ou uma matriz numpy representando a memória de medição de nível 0 (valor único ou média) ou a memória de medição de nível 1 (valor único ou média).
- indices (list[int] | None) – As posições dos bits que se deseja marginalizar. Se
None(padrão), não marginalizar de forma alguma. - int_return (bool) – Se definido como
True, a saída será uma lista de números inteiros. Por padrão, o tipo de retorno é uma cadeia de bits. This ehex_returnsão mutuamente exclusivos e não podem ser especificados ao mesmo tempo. Essa opção só tem efeito com o nível de memória 2. - hex_return (bool) – Se definido como
True, a saída será uma lista de cadeias de caracteres hexadecimais. Por padrão, o tipo de retorno é uma cadeia de bits. This eint_returnsão mutuamente exclusivos e não podem ser especificados ao mesmo tempo. Essa opção só tem efeito com o nível de memória 2. - avg_data (bool) – Se uma matriz numérica bidimensional for passada para
memory, isso poderá ser definido comoTruepara indicar que se trata de dados de nível 0 médio em vez de dados únicos de nível 1. - parallel_threshold (int) – O número de elementos em
memorypara iniciar a execução em vários threads. Selen(memory)for >= esse valor, a função será executada em vários threads. Por padrão, isso é definido como 1000.
Retorna
A lista de memória marginalizada
Tipo de retorno
marginal_memory
Aumentos
ValueError - Se tanto int_return quanto hex_return estiverem definidos como True
Distribuições
ProbDistribution(dados[, fotos] ) | Uma classe genérica semelhante a um ditado para distribuições de probabilidade. |
QuasiDistribution(dados[, fotos,...] ) | Uma classe semelhante a um ditado para representar quase-probabilidades. |
Valores esperados
sampled_expectation_value
qiskit.result.sampled_expectation_value(dist, oper)
Calcula o valor da expectativa de uma distribuição amostrada
Observe que a transmissão de um dict bruto requer chaves de string de bits.
Parâmetros
- dist (dict |result.Counts |QuasiDistribution |ProbDistribution) – Distribuição amostral da entrada.
- oper (str |quantum_info.Pauli |quantum_info.SparsePauliOp |quantum_info.SparseObservable) – O operador da observável.
Retorna
O valor esperado.
Aumentos
QiskitError - se a distribuição ou o operador de entrada for um tipo inválido
Tipo de retorno