BasePassManager
class qiskit.passmanager.BasePassManager(tasks=(), max_iteration=1000)
Clase base del gestor de pases.
Inicializa un objeto gestor de pases vacío.
Parámetros
- tasks (Task[IR, IR] | list[Task[IR, IR]]) – Un conjunto de pases que se va a añadir al calendario del gestor de pases.
- max_iteration (int) – El número máximo de iteraciones que se repetirá el programa si no se cumple la condición.
Métodos
append
append(tasks)
Añade tareas al calendario de pases.
Parámetros
tasks (Task[IR, IR] | list[Task[IR, IR]]) – Un conjunto de tareas del gestor de pases que se van a añadir a la programación.
Eleva
TypeError : cuando algún elemento de «tasks» no es una subclase de «Task» de «passmanager».
Tipo de retorno
Ninguna
remove
remove(index)
Elimina un pase concreto en el planificador.
Parámetros
index (int) – Índice del paso que se va a eliminar, según su posición en passes().
Eleva
PassManagerError – Si no se encuentra el índice.
Tipo de retorno
Ninguna
replace
replace(index, tasks)
Sustituir un pase concreto en el programador.
Parámetros
- index (int) – Índice de la tarea que se va a sustituir, según su posición en
tasks() - tasks (Task[IR, IR] | list[Task[IR, IR]]) – Un conjunto de tareas del gestor de pases que se van a añadir a la programación.
Eleva
- TypeError : cuando algún elemento de «tasks» no es una subclase de «Task» de «passmanager».
- PassManagerError – Si no se encuentra el índice.
Tipo de retorno
Ninguna
run
run(in_programs, callback=None, num_processes=None, *, property_set=None, **kwargs)
Ejecute todas las pasadas en la dirección in_programs especificada.
Parámetros
-
in_programs (Any |list[Any]) – Programas de entrada que se van a transformar mediante todas las pasadas registradas. Un único objeto de entrada no puede ser un objeto de lista integrado de Python. Un objeto de lista se considera como varios objetos de entrada que hay que optimizar.
-
callback (Callable[[Task, IR, PropertySet, float, int], None] | None) –
Una función de devolución de llamada que se ejecutará tras cada pasada. La función se invocará con 5 argumentos clave:
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 executionLos argumentos exactos que se pasan revelan el funcionamiento interno del gestor de pases y están sujetos a cambios a medida que cambie dicho funcionamiento. Si tienes intención de reutilizar una función de devolución de llamada en varias versiones, asegúrate de que los argumentos que se pasan sean los mismos.
Para utilizar la función de devolución de llamada a definir una función que tendrá en kwargs dict y acceder a las variables. Por ejemplo:
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) – El número máximo de procesos paralelos que se pueden iniciar si se ha habilitado la ejecución paralela. Este argumento tiene prioridad sobre el del
num_processesarchivo de configuración del usuario y sobre la variable de entornoQISKIT_NUM_PROCS. Si se establece en se utilizaráNonela configuración predeterminada del sistema o la configuración local del usuario. -
property_set (dict[str, object] | None) – Si se especifica, el valor inicial que se utilizará como
PropertySetpara el flujo de trabajo del gestor de pasadas. Esto puede utilizarse para conservar los resultados del análisis de una ejecución a otra, en los casos en los que se tenga la certeza de que es seguro compartir dichos resultados. Ten en cuenta que algunos análisis serán específicos del circuito de entrada y del caso concretoTarget, por lo que debes tener mucho cuidado al utilizar este argumento. -
kwargs - Argumentos arbitrarios pasados al frontend y backend del compilador.
Devuelve
Programa(s) transformado(s).
Tipo de retorno
to_flow_controller
to_flow_controller()
Linealizar este gestor en un único FlowControllerLinearpara que pueda anidarse dentro de otro gestor de pases.
Devuelve
Un gestor de pases linealizado.
Tipo de retorno
Control[* ador de caudal lineal IR*, IR]