cuquantum.custatevec.apply_matrix¶
- cuquantum.custatevec.apply_matrix(intptr_t handle, intptr_t sv, int sv_data_type, uint32_t n_index_bits, intptr_t matrix, int matrix_data_type, int layout, int32_t adjoint, targets, uint32_t n_targets, controls, control_bit_values, uint32_t n_controls, int compute_type, intptr_t workspace, size_t workspace_size)[source]¶
Apply the specified gate matrix.
- Parameters
handle (intptr_t) – The library handle.
sv (intptr_t) – The pointer address (as Python
int
) to the statevector (on device).sv_data_type (cuquantum.cudaDataType) – The data type of the statevector.
n_index_bits (uint32_t) – The number of index bits.
matrix (intptr_t) – The pointer address (as Python
int
) to a matrix (on either host or device).matrix_data_type (cuquantum.cudaDataType) – The data type of the matrix.
layout (MatrixLayout) – The memory layout the the matrix.
adjoint (int32_t) – Whether the adjoint of the matrix would be applied.
targets –
A host array of target bits. It can be
an
int
as the pointer address to the arraya Python sequence of target bits
n_targets (uint32_t) – The length of
targets
.controls –
A host array of control bits. It can be
an
int
as the pointer address to the arraya Python sequence of control bits
control_bit_values –
A host array of control bit values. It can be
an
int
as the pointer address to the arraya Python sequence of control bit values
n_controls (uint32_t) – The length of
controls
.compute_type (cuquantum.ComputeType) – The compute type of matrix multiplication.
workspace (intptr_t) – The pointer address (as Python
int
) to the workspace (on device).workspace_size (size_t) – The workspace size (in bytes).
See also