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 extra_workspace, size_t extra_workspace_size_in_bytes)[source]

应用门矩阵。

参数
  • handle (intptr_t) – cuStateVec 库的句柄。

  • sv (intptr_t) – 状态向量。

  • sv_data_type (int) – 状态向量的数据类型。

  • n_index_bits (uint32_t) – 状态向量的索引位数。

  • matrix (intptr_t) – 指向方阵的主机或设备指针。

  • matrix_data_type (int) – 矩阵的数据类型。

  • layout (MatrixLayout) – 枚举器,指定矩阵的内存布局。

  • adjoint (int32_t) – 应用矩阵的共轭转置。

  • targets (object) –

    指向目标位的主机数组的指针。它可以是

    • 一个 int 作为数组的指针地址,或者

    • 一个 int32_t 的 Python 序列。

  • n_targets (uint32_t) – 目标位的数量。

  • controls (object) –

    指向控制位的主机数组的指针。它可以是

    • 一个 int 作为数组的指针地址,或者

    • 一个 int32_t 的 Python 序列。

  • control_bit_values (object) –

    指向控制位值的主机数组的指针。它可以是

    • 一个 int 作为数组的指针地址,或者

    • 一个 int32_t 的 Python 序列。

  • n_controls (uint32_t) – 控制位的数量。

  • compute_type (ComputeType) – 矩阵乘法的 compute_type。

  • extra_workspace (intptr_t) – 额外工作空间。

  • extra_workspace_size_in_bytes (size_t) – 额外工作空间大小。