quemb.molbe.lo.get_pao

quemb.molbe.lo.get_pao(Ciao, S1, S12, mol, iao_valence_basis, iao_loc_method='SO')

Get (symmetrically though often canonically) orthogonalized PAOs from given (localized) IAOs Defined in detail in J. Chem. Theory Comput. 2024, 20, 24, 10912–10921

Parameters:
  • Ciao (ndarray[tuple[int, ...], dtype[TypeVar(T_dtype_co, bound= generic, covariant=True)]]) – the orthogonalized IAO coefficient matrix (output of :func:get_iao)

  • S1 (ndarray[tuple[int, ...], dtype[TypeVar(T_dtype_co, bound= generic, covariant=True)]]) – ao ovlp matrix in working (large) basis

  • S12 (ndarray[tuple[int, ...], dtype[TypeVar(T_dtype_co, bound= generic, covariant=True)]]) – ovlp between working (large) basis and valence (minimal) basis

  • mol (Mole) – mol object

  • iao_valence_basis (str) – (minimal-like) basis used for valence orbitals

  • iao_loc_method (str) – Localization method for the IAOs and PAOs. If symmetric orthogonalization is used, the overlap matrices between the valence (minimal) and working (large) basis are determined by separating S1 (working) by AO labels. If other localization methods are used, these matrices are calculated in full Default is SO

Returns:

Cpao – (orthogonalized)

Return type:

quemb.shared.typing.Matrix