chemtools.wrappers.molecule.Molecule

class chemtools.wrappers.molecule.Molecule(iodata)[source]

Molecule class from HORTON package.

Initialize class.

Parameters:iodata (horton.IOData) – An instance of horton.IOData object.
classmethod from_file(fname)[source]

Initialize class given a file.

Parameters:fname (str) – Path to molecule”s files.
coordinates

Cartesian coordinates of atomic centers.

numbers

Atomic number of atomic centers.

ao

Atomic orbital instance.

mo

Molecular orbital instance.

compute_density_matrix(spin='ab', index=None)[source]

Compute the density matrix array for the specified spin orbitals.

Parameters:
  • spin (str, optional) – The type of occupied spin orbitals. Options are “a” (for alpha), “b” (for beta), and “ab” (for alpha + beta).
  • index (sequence of int, optional) – Sequence of integers representing the occupied spin orbitals which are indexed from 1 to nbasis. If None, all orbitals of the given spin(s) are included.
compute_molecular_orbital(points, spin='ab', index=None)[source]

Return molecular orbitals.

Parameters:
  • points (ndarray) – Cartesian coordinates of N points given as a 2D-array with (N, 3) shape.
  • spin (str, optional) – Type of occupied spin orbitals which can be either “a” (for alpha), “b” (for beta), and “ab” (for alpha + beta).
  • index (sequence of int, optional) – Sequence of integers representing the occupied spin orbitals which are indexed from 1 to nbasis. If None, all orbitals of the given spin(s) are included.
compute_density(points, spin='ab', index=None)[source]

Return electron density.

Parameters:
  • points (ndarray) – Cartesian coordinates of N points given as a 2D-array with (N, 3) shape.
  • spin (str, optional) – Type of occupied spin orbitals which can be either “a” (for alpha), “b” (for beta), and “ab” (for alpha + beta).
  • index (sequence of int, optional) – Sequence of integers representing the occupied spin orbitals which are indexed from 1 to nbasis. If None, all orbitals of the given spin(s) are included.
compute_gradient(points, spin='ab', index=None)[source]

Return gradient of the electron density.

Parameters:
  • points (ndarray) – Cartesian coordinates of N points given as a 2D-array with (N, 3) shape.
  • spin (str, optional) – Type of occupied spin orbitals which can be either “a” (for alpha), “b” (for beta), and “ab” (for alpha + beta).
  • index (sequence of int, optional) – Sequence of integers representing the occupied spin orbitals which are indexed from 1 to nbasis. If None, all orbitals of the given spin(s) are included.
compute_hessian(points, spin='ab', index=None)[source]

Return hessian of the electron density.

Parameters:
  • points (ndarray) – Cartesian coordinates of N points given as a 2D-array with (N, 3) shape.
  • spin (str, optional) – Type of occupied spin orbitals which can be either “a” (for alpha), “b” (for beta), and “ab” (for alpha + beta).
  • index (sequence of int, optional) – Sequence of integers representing the occupied spin orbitals which are indexed from 1 to nbasis. If None, all orbitals of the given spin(s) are included.
compute_laplacian(points, spin='ab', index=None)[source]

Return Laplacian of the electron density.

Parameters:
  • points (ndarray) – Cartesian coordinates of N points given as a 2D-array with (N, 3) shape.
  • spin (str, optional) – Type of occupied spin orbitals which can be either “a” (for alpha), “b” (for beta), and “ab” (for alpha + beta).
  • index (sequence of int, optional) – Sequence of integers representing the occupied spin orbitals which are indexed from 1 to nbasis. If None, all orbitals of the given spin(s) are included.
compute_esp(points, spin='ab', index=None, charges=None)[source]

Return molecular electrostatic potential.

The molecular electrostatic potential at point \(\mathbf{r}\) is caused by the electron density \(\rho\) of the specified spin orbitals and set of point charges \(\{q_A\}_{A=1}^{N_\text{atoms}}\) placed at the position of the nuclei. i.e,

\[V \left(\mathbf{r}\right) = \sum_{A=1}^{N_\text{atoms}} \frac{q_A}{\rvert \mathbf{R}_A - \mathbf{r} \lvert} - \int \frac{\rho \left(\mathbf{r}"\right)}{\rvert \mathbf{r}" - \mathbf{r} \lvert} d\mathbf{r}"\]
Parameters:
  • points (ndarray) – Cartesian coordinates of N points given as a 2D-array with (N, 3) shape.
  • spin (str, optional) – Type of occupied spin orbitals which can be either “a” (for alpha), “b” (for beta), and “ab” (for alpha + beta).
  • index (sequence of int, optional) – Sequence of integers representing the occupied spin orbitals which are indexed from 1 to nbasis. If None, all orbitals of the given spin(s) are included.
  • charges (np.ndarray, optional) – Array with shape (n,) representing the point charges at the position of the nuclei. When None, the pseudo numbers are used.
compute_ked(points, spin='ab', index=None)[source]

Return positive definite or Lagrangian kinetic energy density.

\[\tau_\text{PD} \left(\mathbf{r}\right) = \tfrac{1}{2} \sum_i^N n_i \rvert \nabla \phi_i \left(\mathbf{r}\right) \lvert^2\]
Parameters:
  • points (ndarray) – Cartesian coordinates of N points given as a 2D-array with (N, 3) shape.
  • spin (str, optional) – Type of occupied spin orbitals which can be either “a” (for alpha), “b” (for beta), and “ab” (for alpha + beta).
  • index (sequence of int, optional) – Sequence of integers representing the occupied spin orbitals which are indexed from 1 to nbasis. If None, all orbitals of the given spin(s) are included.