DynamicCircuitInstructionDurations
class DynamicCircuitInstructionDurations(instruction_durations=None, dt=None, enable_patching=True)
ベース: InstructionDurations
動的な回路命令の持続時間。
動的回路の場合、 IBM のQiskitバックエンドは現在、従来のQobjベースのパスで必要とされるものとは異なる命令実行時間を報告しています。 現時点では、このクラスを使用して、更新された InstructionDurations を報告しています。
TODO: これは、動的回路バックエンド専用のバックエンド/ターゲットを導入することで緩和されるだろう。
属性
パラメーター
- instruction_durations (InstructionDurationsType | None)
- dt (float | None)
- enable_patching (bool)
測定パッチサイクル
デフォルト値: 160
測定パッチの奇数オフセット
デフォルト値: 64
方法
from_backend
classmethod from_backend(backend)
バックエンドからオブジェクト DynamicInstructionDurations を作成する。
パラメーター
backend (Backend) – 持続時間(ゲート長)とdtが抽出されるバックエンド。
戻り値
バックエンドから構築された InstructionDurations。
戻りの型
from_target
classmethod from_target(target)
DynamicInstructionDurations ターゲットからオブジェクトを作成する。
パラメーター
target (Target) – 持続時間(ゲート長)およびdtが抽出される対象。
戻り値
バックエンドから構築された InstructionDurations。
戻りの型
get
get(inst, qubits, unit='dt', parameters=None)
命令名、量子ビット、パラメータを含む命令の持続時間を取得する。
命令によっては、パラメータに依存した持続時間を持つものもある。
パラメーター
- inst (str | Instruction) – 照会対象の命令またはその名前。
- qubits (int | list[int]) – 命令が作用するQubitインデックス。
- unit (str) – 返される期間の単位。 s'か'dt'でなければならない。
- parameters (list[float] | None) – 目的の命令のパラメータの値。
戻り値
量子ビットに対する命令の持続時間。
戻りの型
float|int
レイズ
TranspilerError - インストラクションの継続時間は定義されていない。
units_used
units_used()
この命令で使用されるすべてのユニットのセットを取得します。
戻り値
この命令で使用される持続時間の単位のセット。
戻りの型
[セット]ストール
update
update(inst_durations, dt=None)
self を inst_durations で更新する(inst_durations は self を上書きする)。
特定のハードコードされた命令のデフォルトの持続時間を上書きします。
パラメーター
- inst_durations (InstructionDurationsType | None) – self にマージされる命令の持続時間(self を上書き)。
- dt (float | None) – 対象バックエンドのサンプリング時間(秒)。
戻り値
更新された InstructionDurations。
レイズ
TranspilerError - instruction_durationsのフォーマットが無効な場合。
戻りの型