FlowControllerLinear
class qiskit.passmanager.FlowControllerLinear(tasks=(), *, options=None)
Bases : BaseController[IR, IR_OUT]
Un contrôleur de flux standard qui exécute les tâches les unes après les autres.
Ce contrôleur garantit que les IR d'entrée et de sortie sont du type correct, mais ne donne aucune garantie quant aux IR utilisées en cours de traitement.
Créer un nouveau contrôleur de flux.
Paramètres
- options (dict[str, Any] | None) – Option pour ce contrôleur de flux.
- tasks (Task[IR, IR_OUT] | Iterable[Task[Any, Any]])
Attributs
passes
Alias des tâches pour la compatibilité ascendante.
Méthodes
execute
execute(passmanager_ir, state, callback=None)
Exécuter la tâche d'optimisation pour l'entrée Qiskit IR.
Paramètres
- passmanager_ir (IR) – IR Qiskit à optimiser.
- state (PassManagerState) – État associé à l'exécution du flux de travail par le gestionnaire de passe lui-même.
- callback (Callable | None) – Une fonction de rappel qui est appelée à chaque exécution d'une tâche d'optimisation.
Retours
Qiskit IR optimisé et état du flux de travail.
Type de retour
tuple [ IR_OUT, PassManagerState ]
iter_tasks
iter_tasks(state)
Une logique personnalisée pour choisir la prochaine tâche à exécuter.
La sous-classe de contrôleur peut utiliser l'état pour construire un pipeline de tâches approprié. L'état mis à jour après l'exécution d'une tâche sera réinjecté en tant que valeur de retour des instructions yield . Cela indique que l'ordre d'exécution des tâches n'est déterminé qu'au moment de l'exécution. Cette méthode n'est pas autorisée à modifier l'objet d'état donné.
Paramètres
- state (PassManagerState) – L'état du flux de travail du gestionnaire de passe au début de l'exécution de ce contrôleur de flux.
- state - l'état du gestionnaire de passe après l'exécution de la dernière tâche cédée. Le générateur n'a pas besoin de l'inspecter s'il n'est pas pertinent pour sa logique, ni de le mettre à jour.
Rendements
Tâche - Prochaine tâche à exécuter.
Type de retour
Generator [ Task [ Any, Any ], PassManagerState, None]