DynamicCircuitInstructionDurations
class DynamicCircuitInstructionDurations(instruction_durations=None, dt=None, enable_patching=True)
Bases : InstructionDurations
Durées dynamiques des instructions de circuit.
Pour les circuits dynamiques, le backend Qiskit d' IBM indique actuellement des durées d'instruction qui diffèrent de celles requises pour le chemin traditionnel basé sur Qobj. Pour l'instant, nous utilisons cette classe pour signaler les mises à jour de l' InstructionDurations.
À faire : ce problème pourrait être résolu grâce à un backend/une cible spécialisé(e) pour les backends de circuits dynamiques.
Attributs
Paramètres
- instruction_durations (InstructionDurationsType | None)
- dt (float | None)
- enable_patching (bool)
MESURE_PATCH_CYCLES
Valeur par défaut : 160
MESURE_PATCH_ODD_OFFSET
Valeur par défaut : 64
Méthodes
from_backend
classmethod from_backend(backend)
Créer un DynamicInstructionDurations objet à partir du backend.
Paramètres
backend (Backend) – backend à partir duquel les durées (longueurs de porte) et dt sont extraites.
Retours
Le site InstructionDurations est construit à partir du backend.
Type de retour
from_target
classmethod from_target(target)
Construire un DynamicInstructionDurations objet à partir de la cible.
Paramètres
target (Target) – cible à partir de laquelle les durées (longueurs de porte) et dt sont extraites.
Retours
Le site InstructionDurations est construit à partir du backend.
Type de retour
get
get(inst, qubits, unit='dt', parameters=None)
Obtenir la durée de l'instruction avec le nom, les qubits et les paramètres.
Certaines instructions peuvent avoir une durée qui dépend d'un paramètre.
Paramètres
- inst (str | Instruction) – Une instruction ou son nom à interroger.
- qubits (int | list[int]) – Indices Qubit sur lesquels l'instruction agit.
- unit (str) – L'unité de durée à renvoyer. Il doit s'agir de "s" ou de "dt".
- parameters (list[float] | None) – La valeur des paramètres de l'instruction souhaitée.
Retours
La durée de l'instruction sur les qubits.
Type de retour
float|int
Augmentations
TranspilerError - Aucune durée n'est définie pour l'instruction.
units_used
units_used()
Obtenir l'ensemble de toutes les unités utilisées dans les durées de cette instruction.
Retours
Ensemble d'unités utilisées dans cette instruction durées.
Type de retour
[settr]
update
update(inst_durations, dt=None)
Mettre à jour self avec inst_durations (inst_durations écrase self).
Remplace les durées par défaut de certaines instructions codées en dur.
Paramètres
- inst_durations (InstructionDurationsType | None) – Les durées d'instruction doivent être fusionnées dans « self » (en écrasant « self »).
- dt (float | None) – Durée d'échantillonnage en secondes du backend cible.
Retours
La version actualisée de InstructionDurations.
Augmentations
TranspilerError - Si le format des instructions n'est pas valide.
Type de retour