Header file for a class for the representation of general gate operations.
virtual ~UN()
Destructor of the class.
Matrix_real get_optimized_parameters()
Call to get the final optimized parameters of the gate.
virtual Matrix get_matrix()
Call to retrieve the operation matrix.
Matrix_real parameters
Parameters theta, phi, lambda of the U3 gate after the decomposition of the unitary is done...
UN()
Default constructor of the class.
virtual void set_qbit_num(int qbit_num_in)
Set the number of qubits spanning the matrix of the operation.
virtual void reorder_qubits(std::vector< int > qbit_list)
Call to reorder the qubits in the matrix of the operation.
void apply_from_right(Matrix_real ¶meters, Matrix &input)
Call to apply the gate on the input array/matrix by input*Gate.
UN * clone()
Call to create a clone of the present class.
int get_parameter_num()
Call to get the number of free parameters.
Header file of complex array storage array with automatic and thread safe reference counting...
Class to store data of complex arrays and its properties.
void apply_to(Matrix_real ¶meters, Matrix &input, int parallel)
Call to apply the gate on the input array/matrix.
void set_optimized_parameters(Matrix_real parameters_)
Call to set the final optimized parameters of the gate.
Base class for the representation of general gate operations.
Base class for the representation of general gate operations.
Matrix get_submatrix(Matrix_real ¶meters)
Call to retrieve the qbit_num-1 kernel of the UN gate.
Header file for commonly used functions and wrappers to CBLAS functions.
gate_type get_type()
Call to get the type of the operation.
int get_qbit_num()
Call to get the number of qubits composing the unitary.
gate_type
Type definition of operation types (also generalized for decomposition classes derived from the class...
Class to store data of complex arrays and its properties.