pub unsafe fn cuestECPShellCreate(
handle: cuestHandle_t,
L: u64,
numPrimitive: u64,
radialPowers: *const u64,
coefficients: *const f64,
exponents: *const f64,
parameters: cuestECPShellParameters_t,
outECPShell: *mut cuestECPShell_t,
) -> cuestStatus_tExpand description
@brief Create an ECP shell object with specified parameters. @ingroup ECP
@param[in] handle cuEST handle. Must not be NULL. @param[in] L Angular momentum quantum number (s=0, p=1, d=2, etc). @param[in] numPrimitive Number of primitives; must be greater than zero. @param[in] radialPowers Pointer to array containing radial powers (size: \c numPrimitive) on the CPU. Elements must be non-negative integers, e.g. >= 0. Must not be NULL. @param[in] coefficients Pointer to array containing coefficients (size: \c numPrimitive) on the CPU. Must not be NULL. @param[in] exponents Pointer to array containing exponents (size: \c numPrimitive) on the CPU. Elements must be strictly positive and finite, e.g. > 0. Must not be NULL. @param[in] parameters Handle to \c cuestECPShellParameters_t. Must not be NULL. @param[out] outECPShell Pointer to output shell object; receives opaque handle on success. Must not be NULL.
All objects on CPU.
@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 the cuEST handle or parameters are not of the correct type;
- \c CUEST_STATUS_INVALID_ARGUMENT if \c numPrimitive is zero, or if any exponent is not strictly positive and finite (> 0);
- \c CUEST_STATUS_EXCEPTION for unexpected error;
- \c CUEST_STATUS_UNKNOWN_ERROR for non-std exceptions.