SupportsApplyUnitaryPlaced
class SupportsApplyUnitaryPlaced(*args, **kwargs)
ベース: Protocol
. のパッケージ固有の拡張機能 ffsim.SupportsApplyUnitary。
ffsimのプロトコルがオブジェクトを状態ベクトル全体に適用するのに対し、このプロトコルでは、オブジェクトのローカルモードを、そのオブジェクトが作用するグローバルモードに追加します。 ffsimにはこれに対応するものがありません。が唯一の呼び出し元であり _apply_unitary_placed_() 、duck getattr -typingを介して直接そこにディスパッチされます。 すべての具体的なクラス( FermionicGate およびそれ FermionicCircuit 自体)がこのメソッドを実装しているため、これはあくまで入力およびドキュメント作成の目的でここに記載されているに過ぎません。
完全な意味論については FermionicCircuit._apply_unitary_placed_() 、を参照してください。これには、モード配置引数を持たない単純な実装 _apply_unitary_ が、同一配置の場合にのみ適用される仕組みなども含まれています。
プロトコルの方法
_apply_unitary_placed_
_apply_unitary_placed_(vec, norb, nelec, copy, freg_indices)
局所モードをグローバルモードに置き換えた後、状態ベクトルにユニタリ変換を適用します。
パラメーター
- vec (np.ndarray) – ユニタリ変換を適用する状態ベクトル。
- norb (int) – グローバル状態ベクトルの空間軌道数。
- nelec (int |tuple[int, int]) – スピンを持たない系のフェルミオン数を表す単一の整数、あるいはスピンαフェルミオンとスピンβフェルミオンの数を格納する整数のペアのいずれか。
- copy (bool) – 操作を行う前にベクトルをコピーするかどうか。
- freg_indices (list[int]) – このオブジェクトのローカルモードがマッピングされる、絶対(グローバル)モードのインデックス。
戻り値
変換後のベクトル。
戻りの型
np.ndarray
このページは役に立ちましたか?
バグや誤字の報告、またはコンテンツの要求はGitHubで行ってください。