Effective Core Potentials#

cuest.bindings.cuestECPShellCreate(
*,
handle: cuest.bindings.cuest.cuestHandle,
L: int,
numPrimitive: int,
radialPowers: collections.abc.Sequence[int],
coefficients: collections.abc.Sequence[float],
exponents: collections.abc.Sequence[float],
parameters: cuest.bindings.cuest.Parameters,
outECPShell: cuest.bindings.cuest.cuestECPShellHandle,
) cuest.bindings.cuest.CuestStatus#

Create an ECP shell object with specified parameters.

Parameters#

handle[in]cuestHandle

cuEST handle. Must not be NULL.

L[in]int

Angular momentum quantum number (s=0, p=1, d=2, etc).

numPrimitive[in]int

Number of primitives; must be greater than zero.

radialPowers[in]List[int]

Pointer to array (size: numPrimitive) on the CPU containing radial powers. Elements must be non-negative (>= 0). Must not be NULL.

coefficients[in]List[float]

Pointer to array (size: numPrimitive) on the CPU containing coefficients. Must not be NULL.

exponents[in]List[float]

Pointer to array (size: numPrimitive) on the CPU containing exponents. Elements must be strictly positive and finite (> 0). Must not be NULL.

parameters[in]cuestECPShellParameters

Handle to cuestECPShellParameters. Must not be NULL.

outECPShell[out]cuestECPShellHandle

Pointer to output shell object; receives opaque handle on success. Must not be NULL.

All objects on CPU.

Returns#

status[out]CuestStatus
cuest.bindings.cuestECPShellDestroy(
*,
handle: cuest.bindings.cuest.cuestECPShellHandle,
) cuest.bindings.cuest.CuestStatus#

Destroy an ECP shell object.

Parameters#

handle[in]cuestECPShellHandle

Pointer to ECP shell object to destroy. Must not be NULL.

Returns#

status[out]CuestStatus
cuest.bindings.cuestECPAtomCreate(
*,
handle: cuest.bindings.cuest.cuestHandle,
numElectrons: int,
numShells: int,
shells: collections.abc.Sequence[cuest.bindings.cuest.cuestECPShellHandle],
topShell: cuest.bindings.cuest.cuestECPShellHandle,
parameters: cuest.bindings.cuest.Parameters,
outECPAtom: cuest.bindings.cuest.cuestECPAtomHandle,
) cuest.bindings.cuest.CuestStatus#

Create an ECP atom object with specified parameters.

Parameters#

handle[in]cuestHandle

cuEST handle. Must not be NULL.

numElectrons[in]int

Number of electrons. Must be greater than zero and even.

numShells[in]int

Number of shells for this atom with angular momentum L < L_max. Must be greater than zero. L_max is equal to numShells.

shells[in]List[cuestECPShellHandle]

List of ECP shell handles, on the CPU. None of the entries may be NULL. The list must contain exactly one shell per angular momentum in ascending order, i.e. the entry at index i must have L == i.

topShell[in]cuestECPShellHandle

ECP shell handle for the top shell (angular momentum L = L_max = numShells). Must not be NULL.

parameters[in]cuestECPAtomParameters

Handle to cuestECPAtomParameters. Must not be NULL.

outECPAtom[out]cuestECPAtomHandle

Pointer to output ECP atom object; receives opaque handle on success. Must not be NULL.

Returns#

status[out]CuestStatus
cuest.bindings.cuestECPAtomDestroy(
*,
handle: cuest.bindings.cuest.cuestECPAtomHandle,
) cuest.bindings.cuest.CuestStatus#

Destroy an ECP atom object.

Parameters#

handle[in]cuestECPAtomHandle

Pointer to ECP atom object to destroy. Must not be NULL.

Returns#

status[out]CuestStatus