class chemtools.toolbox.orbitalbased.OrbitalLocalTool(points, obasis, exp_alpha, exp_beta=None)[source]

Class of orbital-based descriptive tools.

Initialize OrbitalLocalTool class using gridpoints, basisset and orbital expansion.

  • points (np.ndarray) – Gridpoints used to calculate the properties.
  • obasis – An instance of GOBasis class from HORTON library representing the orbital basis.
  • exp_alpha – An expansion of the alpha orbitals in a basis set, with orbital energies and occupation numbers.
  • exp_beta (default=None) – An expansion of the beta orbitals in a basis set, with orbital energies and occupation numbers.

Positive definite kinetic energy density.

Positive definite kinetic energy density defined as,

\[\tau \left(\mathbf{r}\right) = \sum_i^N n_i \frac{1}{2} \rvert \nabla \phi_i \left(\mathbf{r}\right) \lvert^2\]

Electron Localization Function.

The Electron Localization Function introduced by Becke and Edgecombe,

\[ELF (\mathbf{r}) = \frac{1}{\left( 1 + \left(\frac{D_{\sigma}(\mathbf{r})} {D_{\sigma}^0 (\mathbf{r})} \right)^2\right)}\]


\[ \begin{align}\begin{aligned}D_{\sigma} (\mathbf{r}) &= \tau_{\sigma} (\mathbf{r}) - \frac{1}{4} \frac{(\nabla \rho_{\sigma})^2}{\rho_{\sigma}}\\D_{\sigma}^0 (\mathbf{r}) &= \frac{3}{5} (6 \pi^2)^{2/3} \rho_{\sigma}^{5/3} (\mathbf{r})\end{aligned}\end{align} \]

where \(\tau_{\sigma} (\mathbf{r})\) is the positive definite kinetic energy density,

\[\tau_{\sigma} (\mathbf{r}) = \sum_i^{\sigma} \lvert \nabla \phi_i (\mathbf{r}) \rvert^2\]
mep(coordinates, pseudo_numbers)[source]

Molecular Electrostatic Potential.

Molecular Electrostatic Potential defined as,

\[V \left(\mathbf{r}\right) = \sum_A \frac{Z_A}{\rvert \mathbf{R}_A - \mathbf{r} \lvert} - \int \frac{\rho \left(\mathbf{r}'\right)}{\rvert \mathbf{r}' - \mathbf{r} \lvert} d\mathbf{r}'\]
orbitals_exp(iorbs, spin='alpha')[source]

Compute the orbital expectation value on the grid.

  • iorbs (np.ndarray, int, list, tuple) – The indexes of the orbitals to be computed. As is common in chemistry we start the orbital numbering at 1 and are not using the python numbering.
  • spin (str) – the spin of the orbitals to be calculated.

Local Ionization Potential defined as,

\[IP \left(\mathbf{r}\right) = \frac{\sum_{i \in \mathrm{MOs}} n_i \epsilon_i \phi_i(\mathbf{r}) \phi_i^*(\mathbf{r})}{\rho(\mathbf{r})}\]