eigen_decomposition_compute#
-
cuquantum.
bindings. cudensitymat. eigen_decomposition_compute( - intptr_t handle,
- intptr_t eigen_decomposition,
- double time,
- int64_t batch_size,
- int32_t num_params,
- intptr_t params,
- int32_t num_eigen_states,
- eigenstates,
- intptr_t eigenvalues,
- intptr_t tolerances,
- intptr_t workspace,
- intptr_t stream,
Computes the eigen-decomposition of an operator.
- Parameters:
handle (intptr_t) – Library handle.
eigen_decomposition (intptr_t) – Eigen-decomposition computation object.
time (double) – Specified time.
batch_size (int64_t) – Batch size (must be 1 in this release; >1 returns
CUDENSITYMAT_STATUS_NOT_SUPPORTEDat Compute).num_params (int32_t) – Number of variable parameters defined by the user.
params (intptr_t) – GPU-accessible pointer to an F-order 2d-array of user-defined real parameter values: params[num_params, batch_size].
num_eigen_states (int32_t) – Actual number of eigenstates to compute, which must not exceed the value of the
maxEigenStatesparameter provided during the preparation of the eigen-decomposition computation object.eigenstates (object) –
Quantum eigenstates. The initial values of the provided quantum states will be used as the initial guesses for the iterative solver. It can be:
eigenvalues (intptr_t) – Pointer to the eigenvalues storage (F-order array of shape [num_eigen_states, batch_size]) in GPU-accessible RAM (same data type as used by the quantum state and operator).
tolerances (intptr_t) – Pointer to an F-order array of shape [num_eigen_states, batch_size] in CPU-accessible RAM. The initial values represent the desirable convergence tolerances for all eigen-states. The returned values represent the actually achieved residual norms for all eigen-states.
workspace (intptr_t) – Allocated workspace descriptor.
stream (intptr_t) – CUDA stream.