# 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.

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.