Class QuantumGate_Adaptive

Inheritance Relationships

Base Type

Class Documentation

class QuantumGate_Adaptive : public QuantumGateBase

Adaptiveな操作

Public Functions

inline explicit QuantumGate_Adaptive(QuantumGateBase *gate, std::function<bool(const std::vector<UINT>&)> func_without_id)
inline explicit QuantumGate_Adaptive(QuantumGateBase *gate, std::function<bool(const std::vector<UINT>&, UINT)> func_with_id, UINT id)
inline virtual ~QuantumGate_Adaptive()
inline virtual void update_quantum_state(QuantumStateBase *state) override

量子状態を更新する

パラメータ

state -- 更新する量子状態

inline virtual QuantumGate_Adaptive *copy() const override

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

戻り値

自身のディープコピー

inline virtual void set_matrix(ComplexMatrix &matrix) const override

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

パラメータ

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

Protected Attributes

QuantumGateBase *_gate
std::function<bool(const std::vector<UINT>&)> _func_without_id
std::function<bool(const std::vector<UINT>&, UINT)> _func_with_id
const int _id