cuquantum.custatevec.compute_expectations_on_pauli_basis

cuquantum.custatevec.compute_expectations_on_pauli_basis(intptr_t handle, intptr_t sv, int sv_data_type, uint32_t n_index_bits, intptr_t expectations, pauli_ops, uint32_t n_pauli_op_arrays, basis_bits, n_basis_bits)[source]

Compute expectation values for multiple multi-qubit Pauli strings.

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.

  • expectations (intptr_t) – The pointer address (as Python int) to store the corresponding expectation values on host. The returned values are stored in double (float64).

  • pauli_ops

    A host array of Pauli operators. It can be

    • an int as the pointer address to the nested sequence

    • a Python sequence of int, each of which is a pointer address to the corresponding Pauli string

    • a nested Python sequence of Pauli

  • n_pauli_op_arrays (uint32_t) – The number of Pauli operator arrays.

  • basis_bits

    A host array of basis index bits. It can be

    • an int as the pointer address to the nested sequence

    • a Python sequence of int, each of which is a pointer address to the corresponding basis bits

    • a nested Python sequence of basis bits

  • n_basis_bits

    A host array of the length of each array in basis_bits. It can be

    • an int as the pointer address to the array

    • a Python sequence of int