Skip to main content
IBM Quantum Platform

SupportsApplyUnitary

class SupportsApplyUnitary(*args, **kwargs)

ベース: Protocol

プロトコルのミラー ffsim.SupportsApplyUnitary

以下のメソッドにディスパッチする、型非依存のヘルパー関数については apply_unitary() 、こちらを参照してください。

>>> import numpy as np
>>> from qiskit_fermions.circuit.library import OrbitalRotation
>>> gate = OrbitalRotation(np.eye(2))
>>> vec = np.array([1.0, 0.0], dtype=complex)
>>> gate._apply_unitary_(vec, norb=2, nelec=1, copy=True)
array([1.+0.j, 0.+0.j])

プロトコルの手法

_apply_unitary_

_apply_unitary_(vec, norb, nelec, copy)

状態ベクトルにユニタリ変換を適用します。

パラメーター

  • vec (np.ndarray) – ユニタリ変換を適用する状態ベクトル。

  • norb (int) – 空間軌道の数。

  • nelec (int |tuple[int, int]) – スピンを持たない系のフェルミオン数を表す単一の整数、あるいはスピンαおよびスピンβのフェルミオン数を格納する整数のペアのいずれか。

  • copy (bool) –

    操作を行う前にベクトルをコピーするかどうか。

    • もし であれば copy=True 、このメソッドは常に新しく割り当てられたベクトルを返し、元のベクトルには一切手を加えません。
    • もし の場合 copy=False 、このメソッドは新たに割り当てられたベクトルを返す可能性がありますが、元のベクトルのデータが上書きされる可能性があります。 また、元のベクトルが、その場で変更された状態で返される場合もあります。

戻り値

変換後のベクトル。

戻りの型

np.ndarray

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