One-Electron Integral Plan#

group OneElectronIntegralPlan

Functions

cuestStatus_t cuestOEIntPlanCreate(
cuestHandle_t handle,
const cuestAOBasis_t basis,
const cuestAOPairList_t pairList,
const cuestOEIntPlanParameters_t parameters,
cuestWorkspace_t *persistentWorkspace,
cuestWorkspace_t *temporaryWorkspace,
cuestOEIntPlan_t *outPlan
)#

Build a plan for one-electron integrals over atomic orbitals.

All object handles, workspaces, and output pointers must be valid (not NULL). Workspace buffers must be preallocated with required sizes (see workspace query).

Note

Parameters:
  • handle[in] cuEST handle. Must not be NULL.

  • basis[in] AO basis set handle. Must not be NULL.

  • pairList[in] AO pair list handle. Must not be NULL.

  • parameters[in] Plan parameter structure. Must not be NULL.

  • persistentWorkspace[in] Preallocated workspace for persistent buffers. Must not be NULL.

  • temporaryWorkspace[in] Preallocated workspace for temporary buffers. Must not be NULL.

  • outPlan[out] Output pointer for integral plan handle. Must not be NULL.

Returns:

  • CUEST_STATUS_SUCCESS on success;

  • CUEST_STATUS_INVALID_HANDLE if the cuEST handle is NULL;

  • CUEST_STATUS_NULL_POINTER if any pointer argument is NULL;

  • CUEST_STATUS_INVALID_TYPE if opaque handles are not the correct type.

  • CUEST_STATUS_EXCEPTION or CUEST_STATUS_UNKNOWN_ERROR otherwise.

cuestStatus_t cuestOEIntPlanCreateWorkspaceQuery(
cuestHandle_t handle,
const cuestAOBasis_t basis,
const cuestAOPairList_t pairList,
const cuestOEIntPlanParameters_t parameters,
cuestWorkspaceDescriptor_t *persistentWorkspaceDescriptor,
cuestWorkspaceDescriptor_t *temporaryWorkspaceDescriptor,
cuestOEIntPlan_t *outPlan
)#

Query workspace requirements for creating a one-electron integral plan.

Determines persistent and temporary buffer sizes by simulating allocation logic. All handles and pointers must be valid (not NULL).

Parameters:
  • handle[in] cuEST handle. Must not be NULL.

  • basis[in] AO basis set handle. Must not be NULL.

  • pairList[in] AO pair list handle. Must not be NULL.

  • parameters[in] Plan parameters handle. Must not be NULL.

  • persistentWorkspaceDescriptor[out] Output descriptor for persistent buffer sizing. Must not be NULL.

  • temporaryWorkspaceDescriptor[out] Output descriptor for temporary buffer sizing. Must not be NULL.

  • outPlan[in] Output pointer for integral plan handle. May be NULL.

Returns:

  • CUEST_STATUS_SUCCESS on success;

  • CUEST_STATUS_INVALID_HANDLE if the cuEST handle is NULL;

  • CUEST_STATUS_NULL_POINTER if any required pointer argument is NULL;

  • CUEST_STATUS_INVALID_TYPE if opaque handles are not the correct type.

  • CUEST_STATUS_EXCEPTION or CUEST_STATUS_UNKNOWN_ERROR otherwise.

cuestStatus_t cuestOEIntPlanDestroy(cuestOEIntPlan_t plan)#

Destroy and release a one-electron integral plan and its resources.

The plan handle and its memory must not be used after destruction.

Parameters:

plan[in] Plan handle to destroy. Must not be NULL.

Returns:

  • CUEST_STATUS_SUCCESS on success;

  • CUEST_STATUS_NULL_POINTER if plan is NULL;

  • CUEST_STATUS_INVALID_TYPE if opaque handles are not the correct type.

  • CUEST_STATUS_EXCEPTION or CUEST_STATUS_UNKNOWN_ERROR otherwise.