OneQubitEulerDecomposer
class qiskit.synthesis.OneQubitEulerDecomposer(basis='U3', use_dag=False)
ベース: object
1量子ビットのユニタリーをオイラー角回転に分解するクラス。
結果として得られる分解は、3つのオイラー回転角パラメータ と位相パラメータ によってパラメータ化される。入力ユニタリーに対するパラメータの値は分解基底に依存する。 許容されるベースとその結果の回路を以下の表に示す。 非オイラー基底( , , )については、 オイラーパラメータが使用されることに注意。
ベース | オイラー角基準 | 分解回路 |
|---|---|---|
| ZYZ」 | ||
| ZXZ」 | ||
| XYX」 | ||
| XZX」 | ||
| ‘U3’ | ||
| ‘U321’ | ||
| 'U' | ||
| PSX」 | ||
| ZSX」 | ||
| ZSXX」 | または | |
| ‘U1X’ | ||
| RR |
__call__
__call__(unitary, simplify=True, atol=1e-12)
単一量子ビットゲートを回路に分解する。
パラメーター
- unitary (Operator |Gate | np.ndarray) – 1量子ビット・ユニタリー行列
- simplify (bool) – 分解時のゲート数を減らす[デフォルト:True]。
- atol (float) – 返された回路を単純化する際に角度をチェックするための絶対公差[デフォルト: 1e-12].
戻り値
分解された単一量子ビットゲート回路
戻りの型
レイズ
QiskitError - 入力が無効な場合、または合成に失敗した場合。
デコンポーザーの初期化
サポートされているベースは次のとおりです: 'U' 'PSX', 'ZSXX', 'ZSX', 'U321', 'U3', 'U1X', 'RR', 'ZYZ', 'ZXZ', 'XYX', 'XZX'.
パラメーター
- basis (str) – 分解基底[デフォルト:
'U3'] - use_dag (bool) – trueを指定すると、デコンポーザーの呼び出しからの出力は
DAGCircuitオブジェクトになる。QuantumCircuit.
レイズ
QiskitError - 入力ベースが認識されない場合。
属性
basis
分解基礎。
方法
angles
angles_and_phase
angles_and_phase(unitary)
入力配列のオイラー角と位相を返す。
パラメーター
unitary (ndarray) –
戻り値
(theta, phi, lambda, phase).
戻りの型
build_circuit
このページは役に立ちましたか?
バグや誤字の報告、またはコンテンツの要求はGitHubで行ってください。