Class GeneralQuantumOperator

Inheritance Relationships

Derived Type

Class Documentation

class GeneralQuantumOperator

Subclassed by HermitianQuantumOperator

Public Functions

explicit GeneralQuantumOperator(const UINT qubit_count)
GeneralQuantumOperator(const GeneralQuantumOperator &obj)
virtual ~GeneralQuantumOperator()
inline virtual bool is_hermitian() const
virtual void add_operator(const PauliOperator *mpt)
virtual void add_operator_move(PauliOperator *mpt)
virtual void add_operator_copy(const PauliOperator *mpt)
virtual void add_operator(const CPPCTYPE coef, std::string pauli_string)
virtual void add_operator(const std::vector<UINT> &target_qubit_index_list, const std::vector<UINT> &target_qubit_pauli_list, CPPCTYPE coef)
inline virtual UINT get_qubit_count() const
inline virtual ITYPE get_state_dim() const
inline virtual UINT get_term_count() const
inline virtual const PauliOperator *get_term(UINT index) const
inline virtual std::vector<PauliOperator*> get_terms() const
virtual GeneralQuantumOperator *get_dagger() const
virtual std::string to_string() const
virtual CPPCTYPE get_expectation_value(const QuantumStateBase *state) const
virtual CPPCTYPE get_expectation_value_single_thread(const QuantumStateBase *state) const
virtual CPPCTYPE get_transition_amplitude(const QuantumStateBase *state_bra, const QuantumStateBase *state_ket) const
void add_random_operator(const UINT operator_count)
void add_random_operator(const UINT operator_count, UINT seed)
virtual CPPCTYPE solve_ground_state_eigenvalue_by_arnoldi_method(QuantumStateBase *state, const UINT iter_count, const CPPCTYPE mu = 0.0) const
virtual CPPCTYPE solve_ground_state_eigenvalue_by_power_method(QuantumStateBase *state, const UINT iter_count, const CPPCTYPE mu = 0.0) const
void apply_to_state(QuantumStateBase *work_state, const QuantumStateBase &state_to_be_multiplied, QuantumStateBase *dst_state) const
void apply_to_state(QuantumStateBase *state, QuantumStateBase *dst_state) const
void apply_to_state_single_thread(QuantumStateBase *state, QuantumStateBase *dst_state) const
virtual GeneralQuantumOperator *copy() const
virtual boost::property_tree::ptree to_ptree() const
GeneralQuantumOperator operator+(const GeneralQuantumOperator &target) const
GeneralQuantumOperator operator+(const PauliOperator &target) const
GeneralQuantumOperator &operator+=(const GeneralQuantumOperator &target)
GeneralQuantumOperator &operator+=(const PauliOperator &target)
GeneralQuantumOperator operator-(const GeneralQuantumOperator &target) const
GeneralQuantumOperator operator-(const PauliOperator &target) const
GeneralQuantumOperator &operator-=(const GeneralQuantumOperator &target)
GeneralQuantumOperator &operator-=(const PauliOperator &target)
GeneralQuantumOperator operator*(const GeneralQuantumOperator &target) const
GeneralQuantumOperator operator*(const PauliOperator &target) const
GeneralQuantumOperator operator*(CPPCTYPE target) const
GeneralQuantumOperator &operator*=(const GeneralQuantumOperator &target)
GeneralQuantumOperator &operator*=(const PauliOperator &target)
GeneralQuantumOperator &operator*=(CPPCTYPE target)

Protected Functions

void _apply_pauli_to_state(std::vector<UINT> pauli_id_list, std::vector<UINT> target_index_list, QuantumStateBase *state) const
void _apply_pauli_to_state_single_thread(std::vector<UINT> pauli_id_list, std::vector<UINT> target_index_list, QuantumStateBase *state) const
CPPCTYPE calculate_default_mu() const