Skip to main content
IBM Quantum Platform

DynamicCircuitInstructionDurations

class DynamicCircuitInstructionDurations(instruction_durations=None, dt=None, enable_patching=True)

GitHub

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)

GitHub

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

DynamicCircuitInstructionDurations

from_target

classmethod from_target(target)

GitHub

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

DynamicCircuitInstructionDurations

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)

GitHub

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

DynamicCircuitInstructionDurations

Cette page a-t-elle été utile ?
Signaler un bogue, une coquille ou proposer du contenu sur GitHub.