FermionicPassManager
class FermionicPassManager(tasks=(), max_iteration=1000)
Bases: BasePassManager[DAGCircuit]
Um gerenciador de passagens do transpilador que converte uma coisa FermionicCircuit em outra.
A representação interna (IR) desse gerenciador de passagem é FermionicDAGCircuit, mas os tipos de entrada e saída são FermionicCircuit.
Inicialize um objeto gerenciador de passagens vazio.
Parâmetros
- tasks (Task[IR, IR] | list[Task[IR, IR]]) – Um passe que será adicionado à programação do gerenciador de passes.
- max_iteration (int) – O número máximo de iterações que a programação será repetida caso a condição não seja atendida.
Métodos herdados
append
append(tasks)
Adicionar tarefas à programação de passagens.
Parâmetros
tasks (Task[IR, IR] | list[Task[IR, IR]]) – Um conjunto de tarefas do gerenciador de passes a ser adicionado à programação.
Aumentos
TypeError – Quando algum elemento das tarefas não for uma subclasse da classe Task do passmanager.
Tipo de retorno
Nenhum
remove
remove(index)
Remove uma passagem específica do agendador.
Parâmetros
index (int) – Passe o índice a ser removido, com base na posição em passes().
Aumentos
PassManagerError – Se o índice não for encontrado.
Tipo de retorno
Nenhum
replace
replace(index, tasks)
Substituir uma passagem específica no agendador.
Parâmetros
- index (int) – Índice da tarefa a ser substituída, com base na posição em
tasks() - tasks (Task[IR, IR] | list[Task[IR, IR]]) – Um conjunto de tarefas do gerenciador de passes a ser adicionado à programação.
Aumentos
- TypeError – Quando algum elemento das tarefas não for uma subclasse da classe
Taskdopassmanager. - PassManagerError – Se o índice não for encontrado.
Tipo de retorno
Nenhum
run
run(in_programs, callback=None, num_processes=None, *, property_set=None, **kwargs)
Execute todas as passagens no arquivo especificado in_programs.
Parâmetros
-
in_programs (Any |list[Any]) – Insira os programas a serem transformados por meio de todas as passagens registradas. Um único objeto de entrada não pode ser um objeto de lista embutido do
Python. Um objeto de lista é considerado como vários objetos de entrada a serem otimizados. -
callback (Callable[[Task, IR, PropertySet, float, int], None] | None) –
Uma função de retorno que será chamada após a execução de cada passagem. A função será chamada com 5 argumentos-chave:
task (GenericPass): the pass being run passmanager_ir (Any): depending on pass manager subclass property_set (PropertySet): the property set running_time (float): the time to execute the pass count (int): the index for the pass executionOs argumentos exatos passados revelam o funcionamento interno do gerenciador de passes e estão sujeitos a alterações à medida que o funcionamento interno do gerenciador de passes for mudando. Se você pretende reutilizar uma função de retorno de chamada em várias versões, certifique-se de verificar se os argumentos passados são os mesmos.
Para usar o recurso de callback, você define uma função que receberá o dicionário
kwargse acessará as variáveis. Por exemplo:def callback_func(**kwargs): task = kwargs['task'] passmanager_ir = kwargs['passmanager_ir'] property_set = kwargs['property_set'] running_time = kwargs['running_time'] count = kwargs['count'] ... -
num_processes (int | None) – O número máximo de processos paralelos a serem iniciados caso a execução paralela esteja ativada. Esse argumento substitui o valor definido no
num_processesarquivo de configuração do usuário e na variável de ambienteQISKIT_NUM_PROCS. Se estiver definido como, será utilizada aNoneconfiguração padrão do sistema ou a configuração local do usuário. -
property_set (dict[str, object] | None) – Se fornecido, o valor inicial a ser usado como
PropertySetpara o pipeline do gerenciador de passagens. Isso pode ser usado para manter a análise de uma execução para outra, nos casos em que você sabe que é seguro compartilhar a análise. Esteja ciente de que algumas análises serão específicas para o circuito de entrada e para o caso em questãoTarget; portanto, é preciso ter muito cuidado ao utilizar esse argumento. -
kwargs – Argumentos arbitrários passados para o front-end e o back-end do compilador.
Retorna
O(s) programa(s) transformado(s).
Tipo de retorno
to_flow_controller
to_flow_controller()
Linearize esse gerenciador em um único FlowControllerLinear, para que ele possa ser aninhado dentro de outro gerenciador de passagem.
Retorna
Um gerenciador de passagens linearizado.
Tipo de retorno
Controlador de Fluxo Linear [IR, IR]