Skip to main content
IBM Quantum Platform

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)

GitHub

ベース: 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) –

    バックエンドのオプションのカップリングマップ。 複数のフォーマットに対応:

    1. CouplingMap インスタンス
    2. リストは、例えばバックエンドがサポートする2つの量子ビットの相互作用を表すエッジリストとして与えなければならない: [[0, 1], [0, 3], [1, 2], [1, 5], [2, 5], [4, 1], [5, 3]]

    coupling_map が指定された場合、 num_qubits で指定された量子ビット数と一致しなければならない。 coupling_map が指定されていない場合、 num_qubits qubits で完全連結カップリング・マップが生成される。

  • 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)

GitHub

与えられた量子ビットの QubitProperties を返す。

定義されていないか、バックエンドがこれらの詳細の問い合わせをサポートしていない場合、このメソッドを実装する必要はない。

パラメーター

qubit (int |list[int]) – その QubitProperties オブジェクトを取得するための量子ビット。 これは、1クビットを表す単一の整数でも、クビットのリストでもよく、オブジェクト QubitProperties のリストが同じ順序で返されます

戻り値

指定された量子ビットの QubitProperties オブジェクトを返します。 量子ビットのリストが提供された場合、リストが返される。 量子ビットのプロパティが欠落している場合は、 None

レイズ

NotImplementedError - バックエンドが量子ビットのプロパティのクエリをサポートしていない場合

戻りの型

QubitProperties | list [ QubitProperties ]

run

run(run_input, **options)

GitHub

シミュレーターを使ってバックエンドで実行する。

このメソッドは、回路ジョブ(個別または QuantumCircuit )を BasicSimulator またはAerシミュレータを使用して実行し Job オブジェクトを返します。

qiskit-aerがインストールされている場合、ジョブはバックエンドのノイズモデル( AerSimulator )を使用して実行されます。 そうでない場合は、 BasicSimulator シミュレーターを使用してノイズなしでジョブが実行されます。

パラメーター

  • run_input (QuantumCircuit orlist) – バックエンドで実行する QuantumCircuit オブジェクトのリスト。
  • options - 設定を実行するためにバックエンドに渡す任意の kwarg オプション。 キーがoptions属性/オブジェクトにも存在する場合、optionsオブジェクトで設定された値の代わりに、指定された値が使われることが期待されます。

戻り値

ランのジョブオブジェクト

戻りの型

ジョブ

レイズ

set_options

set_options(**fields)

GitHub

バックエンドのオプションフィールドを設定する

このメソッドは、バックエンドのオプションを更新するために使われます。 実行前にオプションを変更する必要がある場合は、オプションの新しい値をkwargに渡してください。

パラメーター

fields - オプションを更新するフィールド

レイズ

AttributeError - 渡されたフィールドがオプションの一部でない場合

このページは役に立ちましたか?
バグや誤字の報告、またはコンテンツの要求はGitHubで行ってください。