SupportsApplyUnitaryPlaced
class SupportsApplyUnitaryPlaced(*args, **kwargs)
ベース: Protocol
モード配置 SupportsApplyUnitary を持つ、パッケージ固有の拡張機能。
SupportsApplyUnitary (ミラーリングとは異なり ffsim.SupportsApplyUnitary)、このプロトコルにはffsimに相当するものがなく、ヘルパー関数も存在しません。が唯一の呼び出し元 _apply_unitary_placed_() であり、フリー関数を介すのではなく、ダックタイピング getattr を通じて直接そこにディスパッチされます。 すべての具体的なクラス( FermionicGate およびそれ FermionicCircuit 自体)がこのメソッドを実装しているため、これはあくまで記述およびドキュメント作成の目的でここに記載されているに過ぎない。
完全な意味論については FermionicCircuit._apply_unitary_placed_() 、を参照してください。これには、モード指定引数を持たない単純な実装 SupportsApplyUnitary が、同一配置の場合にのみ適用される仕組みなども含まれています。
プロトコルの方法
_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で行ってください。