Class ClsOneQubitRotationGate

Inheritance Relationships

Base Type

Class Documentation

class ClsOneQubitRotationGate : public QuantumGateBase

1量子ビットを対象とする回転ゲートのクラス

Public Functions

inline explicit ClsOneQubitRotationGate()
inline explicit ClsOneQubitRotationGate(double angle)
inline virtual void update_quantum_state(QuantumStateBase *state) override

量子状態を更新する

パラメータ

state -- 更新する量子状態

inline virtual ClsOneQubitRotationGate *copy() const override

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

戻り値

自身のディープコピー

inline virtual void set_matrix(ComplexMatrix &matrix) const override

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

パラメータ

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

inline void RXGateinit(UINT target_qubit_index, double angle)
inline void RYGateinit(UINT target_qubit_index, double angle)
inline void RZGateinit(UINT target_qubit_index, double angle)
virtual ClsOneQubitRotationGate *get_inverse(void) const override

Protected Types

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

Protected Attributes

UpdateFunc _update_func
UpdateFunc _update_func_dm
UpdateFuncGpu _update_func_gpu
ComplexMatrix _matrix_element
double _angle