pub unsafe fn cuestMultipoleComputeWorkspaceQuery(
handle: cuestHandle_t,
plan: cuestOEIntPlan_t,
parameters: cuestMultipoleComputeParameters_t,
temporaryWorkspaceDescriptor: *mut cuestWorkspaceDescriptor_t,
multipoleOrder: *const u32,
origin: *const f64,
outMatrix: *mut f64,
) -> cuestStatus_tExpand description
@brief Query the temporary workspace required (in bytes) for multipole matrix calculation. @ingroup Multipole @since v0.2.0
This function computes the workspace requirements for a requested multipole calculation. Fill the provided workspace descriptor with host and device buffer sizes required. The \c outMatrix pointer may be NULL.
@param[in] handle cuEST handle. Must not be NULL. @param[in] plan One-electron integral computation plan (opaque handle). Must not be NULL. @param[in] parameters Compute parameters (\c cuestMultipoleComputeParameters_t). Must not be NULL @param[out] temporaryWorkspaceDescriptor Output descriptor for temporary workspace sizes. Must not be NULL. @param[in] multipoleOrder Integer exponents defining the multipole operator: x^l y^m z^n [size: 3]. CPU array. Must not be NULL. @param[in] origin Cartesian coordinates defining the multipole origin [size: 3]. CPU array. Must not be NULL. @param outMatrix User matrix buffer (may be NULL during the workspace query).
@return
- \c CUEST_STATUS_SUCCESS on success;
- \c CUEST_STATUS_INVALID_HANDLE if the cuEST handle is NULL;
- \c CUEST_STATUS_NULL_POINTER if any required pointer is NULL;
- \c CUEST_STATUS_INVALID_TYPE if opaque handles are not the correct type;
- \c CUEST_STATUS_EXCEPTION or \c CUEST_STATUS_UNKNOWN_ERROR otherwise.