Class QuantumGateMatrix

Inheritance Relationships

Base Type

Class Documentation

class QuantumGateMatrix : public QuantumGateBase

Public Functions

QuantumGateMatrix(const std::vector<UINT> &target_qubit_index_list, const ComplexMatrix &matrix_element, const std::vector<UINT> &control_qubit_index_list = {})
QuantumGateMatrix(const std::vector<UINT> &target_qubit_index_list, ComplexMatrix *matrix_element, const std::vector<UINT> &control_qubit_index_list = {})
QuantumGateMatrix(const std::vector<TargetQubitInfo> &target_qubit_index_list, const ComplexMatrix &matrix_element, const std::vector<ControlQubitInfo> &control_qubit_index_list = {})
QuantumGateMatrix(const std::vector<TargetQubitInfo> &target_qubit_index_list, ComplexMatrix *matrix_element, const std::vector<ControlQubitInfo> &control_qubit_index_list = {})
inline virtual ~QuantumGateMatrix()
virtual void add_control_qubit(UINT qubit_index, UINT control_value)
inline virtual void multiply_scalar(CPPCTYPE value)
inline virtual void set_gate_property(UINT gate_property_)
virtual void update_quantum_state(QuantumStateBase *state) override
inline virtual QuantumGateMatrix *copy() const override
inline virtual void set_matrix(ComplexMatrix &matrix) const override
virtual std::string to_string() const override
virtual boost::property_tree::ptree to_ptree() const override

japanese-en ptreeに変換する

Returns

ptree

virtual QuantumGateMatrix *get_inverse(void) const override

Friends

friend std::ostream &operator<<(std::ostream &os, const QuantumGateMatrix &gate)
friend std::ostream &operator<<(std::ostream &os, QuantumGateMatrix *gate)