forte2.orbitals.iao#

Module Contents#

class forte2.orbitals.iao.IAO(system: forte2.system.System, C_occ: numpy.ndarray, j_adapt=False)#

Class to represent the intrinsic atomic orbital (IAO).

Parameters:
systemSystem

The system for which the IAO is to be calculated.

C_occNDArray

The occupied molecular orbital coefficients.

Attributes:
C_iaoNDArray

The orthonormalized IAO coefficients, shape (nbf, nminao).

Notes

JCTC 2013, 9, 4834-4843

system#
C_occ#
j_adapt = False#
C_iao#
nocc#
make_sf_1rdm(sf_1rdm_ao)#

Generate the spin-free 1-particle density matrix in the IAO basis, given by

\[\gamma_{\rho\sigma} = \langle\rho|\hat{\gamma}|\sigma\rangle,\]

where \(\hat{\gamma}=2\sum_{i \in \text{occ}} |i\rangle\langle i|\) is the closed-shell RHF 1e density matrix (see eq 3 in the JCTC paper).

Parameters:
sf_1rdm_aoNDArray

The spin-free 1-particle density matrix in the large AO basis.

Returns:
NDArray

The spin-free 1-particle density matrix in the IAO basis.

class forte2.orbitals.iao.IBO(system: forte2.system.System, C_occ: numpy.ndarray, maxiter=10, g_tol=1e-08)#

Bases: IAO

Class to represent the intrinsic bond orbital basis.

Parameters:
systemSystem

The system for which the IBO is to be calculated.

C_occNDArray

The occupied molecular orbital coefficients.

maxiterint, optional, default=10

The maximum number of iterations for the IBO optimization.

g_tolfloat, optional, default=1e-8

The RMS gradient convergence criterion for the IBO optimization.

Notes

There are typos in the original paper, specifically for the Aij and Bij elements. See the corrected paper at http://www.iboview.org/bin/iao_preprint.pdf also see the reference implementation at https://sites.psu.edu/knizia/software/

maxiter = 10#
g_tol = 1e-08#
C_ibo#