GenericBackendV2
class qiskit.providers.fake_provider.GenericBackendV2(num_qubits, basis_gates=None, *, coupling_map=None, control_flow=False, dtm=None, dt=None, seed=None, noise_info=True)
ベース: BackendV2
ジェネリック BackendV2 の実装で、設定可能なコンストラクタがあります。 このクラスは BackendV2 インスタンスを返します。このインスタンスは (偽のバックエンドの精神に則って) ローカルなシミュレータ上で動作し、トランスパイラのようなバックエンドと連携するコンポーネントをテストするために必要な情報をすべて含んでいます。 A GenericBackendV2 インスタンスは、指定された num_qubits から構築することができるが、ユーザーはさらに、基底ゲート、カップリング・マップ、ダイナミック回路(制御フロー命令)を実行する機能、およびdtmを設定することができる。 バックエンドプロパティの残りは、過去の IBM バックエンドデータから抽出されたデフォルト範囲からランダムにサンプリングして生成される。 このランダム生成のシードは、バックエンド出力の再現性を確保するために固定することができる。 このバックエンドは、標準ライブラリのゲートのみをサポートしている。 Target オブジェクトを直接インスタンス化するオプションがあります。
パラメーター
-
num_qubits (int) – バックエンドのターゲット構築に使用される量子ビットの数。 構築できるターゲットのサイズに制限はないが、このバックエンドはローカルノイズシミュレータ上で動作するため、シミュレートできる量子ビット数に制限が生じる可能性があることに注意されたい。
-
basis_gates (list[str] | None) – ターゲットがサポートする基礎ゲート名のリスト。 これらは標準qiskit回路ライブラリの一部でなければなりません。
["id", "rz", "sx", "x", "cx"]"reset"、、 の各命令は、 で指定されていなくても、デフォルトで常にサポートされています。"delay""measure"basis_gates -
coupling_map (list[list[int]] | CouplingMap | None) –
バックエンドのオプションのカップリングマップ。 複数のフォーマットに対応:
CouplingMapインスタンス- リストは、例えばバックエンドがサポートする2つの量子ビットの相互作用を表すエッジリストとして与えなければならない:
[[0, 1], [0, 3], [1, 2], [1, 5], [2, 5], [4, 1], [5, 3]]
coupling_mapが指定された場合、num_qubitsで指定された量子ビット数と一致しなければならない。coupling_mapが指定されていない場合、num_qubitsqubits で完全連結カップリング・マップが生成される。 -
control_flow (bool) – ターゲットの制御フローディレクティブを有効にするフラグ (デフォルトは False)。
-
dtm (float | None) – 出力信号のシステム時間分解能(ナノ秒単位)。 デフォルトではなし。
-
dt (float | None) – 入力信号のシステム時間分解能(ナノ秒単位)。 デフォルトではなし。
-
seed (int | None) – デフォルト値を生成するためのオプションのシード。
-
noise_info (bool) – trueの場合、ゲートと量子ビットをデフォルトのノイズ情報と関連付ける。
属性
coupling_map
を返します。 CouplingMap オブジェクト
dt
入力信号のシステム時間分解能を返す
これは、バックエンドがパルススケジューリングをサポートしている場合に実装する必要がある。
戻り値
入力信号のタイムステップ(秒)。 バックエンドが dt を定義していない場合、 None が返される。
dtm
出力信号のシステム時間分解能を返す
instruction_durations
オブジェクトを返す。 InstructionDurations オブジェクトを返します。
instructions
フォームのバックエンドにある命令タプルのリスト (instruction, (qubits))
max_circuits
meas_map
num_qubits
バックエンドが持つ量子ビットの数を返します。
operation_names
バックエンドがサポートする命令名のリスト。
operations
バックエンドがサポートする Instruction バックエンドがサポートするインスタンスの一覧。
options
バックエンドのオプションを返します
バックエンドのオプションは、バックエンドの使用方法を定義する動的パラメータです。 これらは run() メソッドを使用する。
provider
target
version
デフォルト値: 2
name
バックエンドの名前。
description
任意で人間が読める説明文。
online_date
バックエンドがオンラインになった日付。
backend_version
提供されるバックエンドのバージョン。 とは異なる。 BackendV2.versionこれは Backend 抽象インターフェースのバージョンである
方法
qubit_properties
qubit_properties(qubit)
与えられた量子ビットの QubitProperties を返す。
定義されていないか、バックエンドがこれらの詳細の問い合わせをサポートしていない場合、このメソッドを実装する必要はない。
パラメーター
qubit (int |list[int]) – その QubitProperties オブジェクトを取得するための量子ビット。 これは、1クビットを表す単一の整数でも、クビットのリストでもよく、オブジェクト QubitProperties のリストが同じ順序で返されます
戻り値
指定された量子ビットの QubitProperties オブジェクトを返します。 量子ビットのリストが提供された場合、リストが返される。 量子ビットのプロパティが欠落している場合は、 None。
レイズ
NotImplementedError - バックエンドが量子ビットのプロパティのクエリをサポートしていない場合
戻りの型
run
run(run_input, **options)
シミュレーターを使ってバックエンドで実行する。
このメソッドは、回路ジョブ(個別または QuantumCircuit )を BasicSimulator またはAerシミュレータを使用して実行し Job オブジェクトを返します。
qiskit-aerがインストールされている場合、ジョブはバックエンドのノイズモデル( AerSimulator )を使用して実行されます。 そうでない場合は、 BasicSimulator シミュレーターを使用してノイズなしでジョブが実行されます。
パラメーター
- run_input (QuantumCircuit orlist) – バックエンドで実行する
QuantumCircuitオブジェクトのリスト。 - options - 設定を実行するためにバックエンドに渡す任意の kwarg オプション。 キーがoptions属性/オブジェクトにも存在する場合、optionsオブジェクトで設定された値の代わりに、指定された値が使われることが期待されます。
戻り値
ランのジョブオブジェクト
戻りの型
レイズ
- QiskitError - 入力が
QuantumCircuitまたは - QuantumCircuit –
set_options
set_options(**fields)
バックエンドのオプションフィールドを設定する
このメソッドは、バックエンドのオプションを更新するために使われます。 実行前にオプションを変更する必要がある場合は、オプションの新しい値をkwargに渡してください。
パラメーター
fields - オプションを更新するフィールド
レイズ
AttributeError - 渡されたフィールドがオプションの一部でない場合