Skip to main content
IBM Quantum Platform

ObservablesArray

class qiskit.primitives.ObservablesArray(observables, num_qubits=None, copy=True, validate=True)

GitHub

ベース: ShapedMixin

ある Estimator 原始関数に対するエルミート観測量のND配列。

オブザーバブルの配列を初期化します。

パラメーター

  • observables (ObservablesArrayLike) – 基底観測可能オブジェクトの配列のようなもの。
  • copy (bool) – オブザーバブルを初期化する際は、関 object_array()``copy 数のkwargを指定してください。
  • num_qubits (int | None) – 観測量の量子ビット数。 指定がない場合、量子ビットの数は観測量から推測されます。 指定された場合、指定された量子ビット数は、観測量の量子ビット数と一致している必要があります。
  • validate (bool) – その場合、エントリを内部形式に変換し、検証を行う。 false の場合、入力はすでに配列のような構造である必要があります。

昇給

ValueError – もし validate=True であり、かつ入力観測値の配列が無効な場合。


属性

ndim

num_qubits

各観測量が作用する量子ビットの数。

shape

size


方法

apply_layout

apply_layout(layout, num_qubits=None)

GitHub

このファイルにトランスパイラー ObservablesArrayのレイアウトを適用します。

パラメーター

  • layout (TranspileLayout |list[int] | None) – a TranspileLayout、整数のリスト、またはNoneのいずれか。 layout と の両 num_qubits 方が none の場合、配列の完全コピーが返されます。
  • num_qubits (int | None) – アレイを拡張するクビット数。 指定がない場合、が である layout ときは、デフォルトで TranspileLayout トランスパイラの出力回路の量子ビット数が使用されます。 が整数のリスト layout である場合、指定された順列は展開されることなく適用されます。 layout が None の場合、配列は指定された量子ビット数まで拡張されます。

戻り値

提供されたレイアウトを適用した ObservablesArray 新しいもの。

昇給

QiskitError

戻りの型

ObservablesArray

coerce

classmethod coerce(observables)

GitHub

ObservablesArrayLike を ObservableArray に変換する。

パラメーター

observables (str |Pauli |SparsePauliOp |SparseObservable |Mapping[str |Pauli, float] | ArrayLike) – オブジェクトをobservables配列に追加する。

戻り値

強制型オブザーバブル配列。

戻りの型

ObservablesArray

coerce_observable

classmethod coerce_observable(observable)

GitHub

オブザーバブルのようなオブジェクトを内部形式に変換します。

パラメーター

observable (str |Pauli |SparsePauliOp |SparseObservable |Mapping[str |Pauli, float]) – format へのオブザーバブルのようなもの。

戻り値

強制された観測量。

昇給

  • TypeError – 型の無効により、入力の書式設定ができない場合。
  • ValueError – 入力オブザーバブルが無効または空の場合。

戻りの型

SparseObservable

copy

copy()

GitHub

配列のディープコピーを返す。

equivalent

equivalent(other, tol=1e-08)

GitHub

指定された許容誤差の範囲内で、観測可能な配列が等しいかどうかを計算します。

パラメーター

  • other (ObservablesArray) – 比較対象となる別の観測値の配列。
  • tol (float) – チェック時に simplify 許容する範囲。

戻り値

2つの観測量配列が同じ形状と量子ビット数を持っているかどうか、また、そうである場合、許容誤差の範囲内で等しいかどうか。

戻りの型

bool

ravel

ravel()

GitHub

1次元の新しい配列を返す。

返される配列は によって shape 与えられ (size, )、そのサイズは size である。

戻り値

新しい平坦化された配列。

戻りの型

ObservablesArray

reshape

reshape(*shape)

GitHub

異なる形状の新しい配列を返す。

これにより、同じ配列に対する新しいビューが生成されます。

パラメーター

shape (int |Iterable[int]) – 返される配列の形状。

戻り値

新しい配列。

戻りの型

ObservablesArray

slice

slice(args: int | tuple[int, ...]) → SparseObservable

slice(args: int | slice | None | tuple[int | slice | None, ...]) → ObservablesArray

GitHub

この配列に含まれるオブザーバブルの一部を取り出します。

このメソッドはオブザーバブルをコピーしません。返されたオブザーバブルを変更すると、このインスタンスにも影響が及びます。

戻り値

配列の各軸に対して整数が指定されている場合は単一の配列 SparseObservable を返し、そうでない場合は新しい配列を ObservablesArray返す。

sparse_observables_array

sparse_observables_array(copy=False)

GitHub

を、型 の numpy.ndarray 要素を持つ SparseObservableに変換します。

パラメーター

copy (bool) – 新しい疎なオブザーバブルを要素として含む新しい配列インスタンスを作成するかどうか。

戻り値

A numpy.ndarray で、要素の型が SparseObservable.

戻りの型

ndarray

tolist

tolist()

GitHub

ネストされたリストに変換します。

NumPyの tolist メソッドと同様に、ネストの深さは観測可能変数の配列の次元によって決まります。 次元が0の場合、このメソッドはリストではなく、単一のオブザーバブル(パウリ演算子のdict 重み付き和の場合)を返します。

例:

要素が1つのリストと単一の要素の戻り値の比較:

>>> from qiskit.primitives.containers.observables_array import ObservablesArray
>>> oa = ObservablesArray.coerce(["Z"])
>>> print(type(oa.tolist()))
<class 'list'>
>>> oa = ObservablesArray.coerce("Z")
>>> print(type(oa.tolist()))
<class 'dict'>

戻りの型

リスト | 文字列 | パウリ | SparsePauliOp | SparseObservable | マッピング [ 文字列 | パウリ, 浮動小数点数 ]

validate

validate()

GitHub

observables配列の一貫性を検証する。

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