qimpy.dft.ions.Lowdin

class Lowdin(C)

Bases: object

Lowdin analysis and atomic manipulation of wavefunctions.

Parameters:

C (Wavefunction) –

__init__(C)

Prepare to analyze / manipulate wavefunction C.

Parameters:

C (Wavefunction) –

Return type:

None

Methods

__init__

Prepare to analyze / manipulate wavefunction C.

analyze

Calculate Lowdin charges and magnetizations (if spin_polarized).

remove_atomic_projections

Subtract best-fit atomic projections of wavefunctions.

restore_atomic_projections

Restore atomic projections with updated atomic orbitals.

Attributes

C

Wavefunction being analyzed / manipulated

psi

Atomic orbitals

psi_Opsi

Self-overlap of atomic orbitals

psi_OC

Overlap of atomic orbitals with current wavefunction C

coeff

Best-fit coefficents of C on psi used for dragging

analyze(f, spin_polarized)

Calculate Lowdin charges and magnetizations (if spin_polarized). Here, f are the occupation factors corresponding to wavefunctions C.

Parameters:
  • f (Tensor) –

  • spin_polarized (bool) –

Return type:

LowdinResults

remove_atomic_projections()

Subtract best-fit atomic projections of wavefunctions.

Return type:

None

restore_atomic_projections(delta_positions)

Restore atomic projections with updated atomic orbitals.

Parameters:

delta_positions (Tensor) –

Return type:

None

C: Wavefunction

Wavefunction being analyzed / manipulated

coeff: Tensor | None

Best-fit coefficents of C on psi used for dragging

psi: Wavefunction

Atomic orbitals

psi_OC: Tensor

Overlap of atomic orbitals with current wavefunction C

psi_Opsi: Tensor

Self-overlap of atomic orbitals