ConvertToMidCircuitMeasure
class ConvertToMidCircuitMeasure(*args, **kwargs)
Bases: TransformationPass
Etapa do transpiler que substitui as instruções de medição de terminais no meio do circuito.
Transpiler pass que substitui instruções de medida terminal em locais não terminais por MidCircuitMeasure instruções. Por padrão, serão measure_2, mas a passagem aceita definições measure_ personalizadas. Espera-se que esta passagem seja executada após o roteamento, pois verificará se MidCircuitMeasure é suportado no qubit físico correspondente.
Observe que a passagem só atuará em instâncias Measure não terminais e não substituirá instruções de medição existentes no meio do circuito (por exemplo, "measure_2" -> "measure_3") nem converterá qualquer MidCircuitMeasure instância em Measure.
Parâmetros
- target – Instância de destino do backend que contém uma ou mais
measure_instruções. - mcm_name – Nome da
measure_instrução pela qual as instruções de medida de terminal em locais não terminais serão substituídas. Esta instrução deve estar contida no destino. Padrão parameasure_2.
Aumentos
ValueError – Se o especificado não mcm_name estiver em conformidade com o measure_ padrão ou não estiver contido no destino fornecido.
Atributos
is_analysis_pass
Verifique se a passagem é uma passagem de análise.
Se a passagem for um AnalysisPass,, isso significa que a passagem pode analisar o DAG e gravar os resultados dessa análise no conjunto de propriedades. Modificações no DAG não são permitidas por este tipo de passe.
is_transformation_pass
Verifique se a passagem é uma passagem de transformação.
Se o passe for um “ TransformationPass, ”, isso significa que ele pode manipular o DAG, mas não pode modificar o conjunto de propriedades (embora possa ser lido).
Métodos
__call__
__call__(circuit, property_set=None)
Executa a passagem no circuito.
Parâmetros
- circuit (QuantumCircuit) – O dia em que o passe é executado.
- property_set (PropertySet | dict | None) – Conjunto de propriedades de entrada/saída. Uma passagem de análise pode alterar a propriedade definida no local. Se não for fornecido, será utilizado o atributo
property_setexistente do passe (se definido).
Retorna
Se uma transformação for bem-sucedida, o resultado será QuantumCircuit. Se a análise for aprovada, o circuito de entrada.
Tipo de retorno
execute
execute(passmanager_ir, state, callback=None)
Executar tarefa de otimização para entrada Qiskit IR.
Parâmetros
- passmanager_ir (DAGCircuit) – Qiskit IR para otimização.
- state (DAGCircuit) – Estado associado à execução do fluxo de trabalho pelo próprio gerenciador de passagens.
- callback (Callable[[Task, DAGCircuit, PropertySet, float, int], None] | None) – Uma função de retorno de chamada que é chamada a cada execução da tarefa de otimização.
Retorna
Qiskit IR otimizado e estado do fluxo de trabalho.
Tipo de retorno
tupla[ DAGCircuit, PassManagerState ]
name
name()
Nome da passagem.
Tipo de retorno
str
run
update_status
update_status(state, run_state)
Atualizar o status do fluxo de trabalho.
Parâmetros
- state (PassManagerState) – Passe o estado do gerenciador para atualizar.
- run_state (RunState) – Status de conclusão da tarefa atual.
Retorna
Estado do gerenciador de senhas atualizado.
Tipo de retorno