iodata.orbitals module

Data structure for molecular orbitals.

class MolecularOrbitals(kind, norba, norbb, occs, coeffs, energies, irreps)[source]

Bases: object

Class of Orthonormal Molecular Orbitals.

kind

Type of molecular orbitals, which can be ‘restricted’, ‘unrestricted’, or ‘generalized’.

norba

Number of alpha molecular orbitals, set to None in case of type==’generalized’.

norbb

Number of beta molecular orbitals, set to None in case of type==’generalized’. This is expected to be equal to norba for the restricted kind.

occs

Molecular orbital occupation numbers. The length equals the number of columns of coeffs.

coeffs

Molecular orbital coefficients. In case of restricted: shape = (nbasis, norba) = (nbasis, norbb). In case of unrestricted: shape = (nbasis, norba + norbb). In case of generalized: shape = (2 * nbasis, norb), where norb is the total number of orbitals.

energies

Molecular orbital energies. The length equals the number of columns of coeffs.

irreps

Irreducible representation. The length equals the number of columns of coeffs.

Warning
Type

the interpretation of the occupation numbers may only be suitable

for single-reference orbitals (not fractionally occupied natural orbitals.)
When an occupation number is in ]0, 1], it is assumed that an alpha orbital
is (fractionally) occupied. When an occupation number is in ]1, 2], it is
assumed that the alpha orbital is fully occupied and the beta orbital is
(fractionally) occupied.
__init__(kind, norba, norbb, occs, coeffs, energies, irreps)

Method generated by attrs for class MolecularOrbitals.

Return type

None

coeffs: numpy.ndarray
property coeffsa

Return alpha orbital coefficients.

property coeffsb

Return beta orbital coefficients.

energies: numpy.ndarray
property energiesa

Return alpha orbital energies.

property energiesb

Return beta orbital energies.

irreps: numpy.ndarray
property irrepsa

Return alpha irreps.

property irrepsb

Return beta irreps.

kind: str
property nbasis

Return the number of spatial basis functions.

property nelec

Return the total number of electrons.

Return type

float

property norb

Return the number of orbitals.

norba: int
norbb: int
occs: numpy.ndarray
property occsa

Return alpha occupation numbers.

property occsb

Return beta occupation numbers.

property spinpol

Return the spin polarization of the Slater determinant.

Return type

float