Density Fitting Integral Plan#
- group DensityFittingIntegralPlan
Functions
- cuestStatus_t cuestDFIntPlanCreate(
- cuestHandle_t handle,
- const cuestAOBasis_t primaryBasis,
- const cuestAOBasis_t auxiliaryBasis,
- const cuestAOPairList_t pairList,
- const cuestDFIntPlanParameters_t parameters,
- cuestWorkspace_t *persistentWorkspace,
- cuestWorkspace_t *temporaryWorkspace,
- cuestDFIntPlan_t *outPlan
Build a density-fitted integral plan (DF) for atomic orbitals.
Constructs all needed metric arrays and three-center integrals. All handles and buffers must be valid. Workspace buffers must be preallocated using sizes from workspace query.
If the
CUEST_DFINTPLAN_PARAMETERS_EXCHANGE_FRACTIONis set within thecuestDFIntPlanParameters_t, this scaling parameter will be applied in all subsequent calls that use thiscuestDFIntPlan_t.Note
The number of atoms in the primary basis handle must match the number of atoms in the auxiliary basis handle.
The
cuestAOBasis_tprimary basis handle provided here must correspond to the basis handle provided when thecuestAOPairList_tpair list handle was created.It is the user’s responsibility to not to destroy the
cuestAOBasis_tprimary basis handle, auxiliary basis handle orcuestAOPairList_tpair list handle until operations involving thecuestDFIntPlan_tplan handle are complete.After the
cuestAOBasis_tbasis handle, auxiliary basis handle orcuestAOPairList_tpair list handle are destroyed, thecuestDFIntPlan_tplan handle is not longer valid.Screening of negligible integrals computed while using this
cuestDFIntPlan_tplan handle is controlled bythresholdPQset during construction of thecuestAOPairList_tpair list handle.
- Parameters:
handle – [in] cuEST handle. Must not be NULL.
primaryBasis – [in] AO basis set for primary orbitals. Must not be NULL.
auxiliaryBasis – [in] AO basis set for auxiliary/fitting orbitals. The auxiliary basis set must use a pure (spherical) angular momentum representation. Must not be NULL.
pairList – [in] AO pair list describing sparsity. Must not be NULL.
parameters – [in] Density-fitting parameters structure. Must not be NULL.
persistentWorkspace – [in] Workspace for persistent buffers. Must not be NULL.
temporaryWorkspace – [in] Workspace for temporary buffers. Must not be NULL.
outPlan – [out] Output pointer for DF plan handle. Must not be NULL.
- Returns:
CUEST_STATUS_SUCCESSon success;CUEST_STATUS_INVALID_HANDLEif the cuEST handle is NULL;CUEST_STATUS_NULL_POINTERif any required pointer is NULL;CUEST_STATUS_INVALID_TYPEif opaque handles are not the correct type.CUEST_STATUS_EXCEPTIONifauxiliaryBasisis not pure.CUEST_STATUS_EXCEPTIONorCUEST_STATUS_UNKNOWN_ERRORotherwise.
- cuestStatus_t cuestDFIntPlanCreateWorkspaceQuery(
- cuestHandle_t handle,
- const cuestAOBasis_t primaryBasis,
- const cuestAOBasis_t auxiliaryBasis,
- const cuestAOPairList_t pairList,
- const cuestDFIntPlanParameters_t parameters,
- cuestWorkspaceDescriptor_t *persistentWorkspaceDescriptor,
- cuestWorkspaceDescriptor_t *temporaryWorkspaceDescriptor,
- cuestDFIntPlan_t *outPlan
Query workspace sizes for creating a density-fitted integral plan.
Simulates all allocations for DF plan, returning size requirements. All handles and pointers must be valid (not NULL). Output descriptors are filled on success.
- Parameters:
handle – [in] cuEST handle. Must not be NULL.
primaryBasis – [in] AO basis set for primary orbitals. Must not be NULL.
auxiliaryBasis – [in] AO basis set for auxiliary/fitting orbitals. The auxiliary basis set must use a pure (spherical) angular momentum representation. Must not be NULL.
pairList – [in] AO pair list handle. Must not be NULL.
parameters – [in] Density-fitting parameters structure. Must not be NULL.
persistentWorkspaceDescriptor – [out] Output descriptor for persistent buffers. Must not be NULL.
temporaryWorkspaceDescriptor – [out] Output descriptor for temporary buffers. Must not be NULL.
outPlan – [in] Output pointer for DF plan handle. May be NULL.
- Returns:
CUEST_STATUS_SUCCESSon success;CUEST_STATUS_INVALID_HANDLEif the cuEST handle is NULL;CUEST_STATUS_NULL_POINTERif any required pointer is NULL;CUEST_STATUS_INVALID_TYPEif opaque handles are not the correct type.CUEST_STATUS_EXCEPTIONifauxiliaryBasisis not pure.CUEST_STATUS_EXCEPTIONorCUEST_STATUS_UNKNOWN_ERRORotherwise.
-
cuestStatus_t cuestDFIntPlanDestroy(cuestDFIntPlan_t plan)#
Destroy/free a density-fitted integral plan and all resources.
The plan handle and its memory must not be used after destruction.
- Parameters:
plan – [in] DF plan handle to destroy. Must not be NULL.
- Returns:
CUEST_STATUS_SUCCESSon success;CUEST_STATUS_NULL_POINTERifplanis NULL;CUEST_STATUS_INVALID_TYPEif opaque handles are not the correct type.CUEST_STATUS_EXCEPTIONorCUEST_STATUS_UNKNOWN_ERRORotherwise.