Class ClsTwoQubitGate

Inheritance Relationships

Base Type

Class Documentation

class ClsTwoQubitGate : public QuantumGateBase

2量子ビットを対象とする回転角固定のゲートのクラス

Public Functions

inline explicit ClsTwoQubitGate()
inline virtual void update_quantum_state(QuantumStateBase *state) override

量子状態を更新する

パラメータ

state -- 更新する量子状態

inline virtual ClsTwoQubitGate *copy() const override

自身のディープコピーを生成する

戻り値

自身のディープコピー

inline virtual void set_matrix(ComplexMatrix &matrix) const override

自身のゲート行列をセットする

パラメータ

matrix -- 行列をセットする変数の参照

inline void SWAPGateinit(UINT target_qubit_index1, UINT target_qubit_index2)
inline virtual ClsTwoQubitGate *get_inverse(void) const override

Protected Types

using UpdateFunc = void (*)(UINT, UINT, CTYPE*, ITYPE)
using UpdateFuncGpu = void (*)(UINT, UINT, void*, ITYPE, void*, UINT)

Protected Attributes

UpdateFunc _update_func
UpdateFunc _update_func_dm
UpdateFuncGpu _update_func_gpu
ComplexMatrix _matrix_element