chemtools.wrappers.molecule.Molecule¶

class
chemtools.wrappers.molecule.
Molecule
(iodata, wavefunction=False)[source]¶ Molecule class from HORTON package.
Initialize class.
Parameters: iodata (horton.IOData) – An instance of horton.IOData object. 
classmethod
from_file
(fname, wavefunction=False)[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.

nbasis
¶ Number of basis functions.

nelectrons
¶ Number of alpha and beta electrons.

homo_index
¶ Index of alpha and beta HOMO orbital.

lumo_index
¶ Index of alpha and beta LUMO orbital.

homo_energy
¶ Energy of alpha and beta HOMO orbital.

lumo_energy
¶ Energy of alpha and beta LUMO orbital.

orbital_occupation
¶ Orbital occupation of alpha and beta electrons.

orbital_energy
¶ Orbital energy of alpha and beta electrons.

orbital_coefficient
¶ Orbital coefficient of alpha and beta electrons.
The alpha and beta orbital coefficients are each storied in a 2darray in which the columns represent the basis coefficients of each molecular orbital.

compute_density_matrix
(spin='ab')[source]¶ Return the density matrix array for the specified spin orbitals.

compute_molecular_orbital
(points, spin, index=None, output=None)[source]¶ Return molecular orbitals evaluated on the given points for the spin orbitals.
Parameters:  points (ndarray) – The 2darray containing the cartesian coordinates of points on which density is evaluated. It has a shape (n, 3) where n is the number of points.
 spin (str) –
The type of occupied spin orbitals.
 ”a” or “alpha”: consider alpha electrons
 ”b” or “beta”: consider beta electrons
 index (sequence, default=None) – Sequence of integers representing the index of spin orbitals. Alpha and beta spin
orbitals are each indexed from 1 to
nbasis
. IfNone
, all occupied spin orbitals are included.  output (np.ndarray, default=None) – Array with shape (n, m) to store the output, where n in the number of points and m
is the number of molecular orbitals. When
None
the array is allocated.

compute_density
(points, spin='ab', index=None, output=None)[source]¶ Return electron density evaluated on the given points for the spin orbitals.
Parameters:  points (ndarray) – The 2darray containing the cartesian coordinates of points on which density is evaluated. It has a shape (n, 3) where n is the number of points.
 spin (str) –
The type of occupied spin orbitals. By default, the alpha and beta electrons (i.e. alpha and beta occupied spin orbitals) are used for computing the electron density.
 ”a” or “alpha”: consider alpha electrons
 ”b” or “beta”: consider beta electrons
 ”ab”: consider alpha and beta electrons
 index (sequence) – Sequence of integers representing the index of spin orbitals. Alpha and beta spin
orbitals are each indexed from 1 to
nbasis
. IfNone
, all occupied spin orbitals are included.  output (np.ndarray) – Array with shape (n,) to store the output, where n in the number of points.
When
None
the array is allocated.

compute_gradient
(points, spin='ab', index=None, output=None)[source]¶ Return gradient of electron density evaluated on the given points for the spin orbitals.
Parameters:  points (ndarray) – The 2darray containing the cartesian coordinates of points on which density is evaluated. It has a shape (n, 3) where n is the number of points.
 spin (str) –
The type of occupied spin orbitals. By default, the alpha and beta electrons (i.e. alpha and beta occupied spin orbitals) are used for computing the electron density.
 ”a” or “alpha”: consider alpha electrons
 ”b” or “beta”: consider beta electrons
 ”ab”: consider alpha and beta electrons
 index (sequence) – Sequence of integers representing the index of spin orbitals. Alpha and beta spin
orbitals are each indexed from 1 to
nbasis
. IfNone
, all occupied spin orbitals are included.  output (np.ndarray) – Array with shape (n, 3) to store the output, where n in the number of points.
When
None
the array is allocated.

compute_hessian
(points, spin='ab', index=None, output=None)[source]¶ Return hessian of electron density evaluated on the given points for the spin orbitals.
Parameters:  points (ndarray) – The 2darray containing the cartesian coordinates of points on which density is evaluated. It has a shape (n, 3) where n is the number of points.
 spin (str) –
The type of occupied spin orbitals. By default, the alpha and beta electrons (i.e. alpha and beta occupied spin orbitals) are used for computing the electron density.
 ”a” or “alpha”: consider alpha electrons
 ”b” or “beta”: consider beta electrons
 ”ab”: consider alpha and beta electrons
 index (sequence) – Sequence of integers representing the index of spin orbitals. Alpha and beta spin
orbitals are each indexed from 1 to
nbasis
. IfNone
, all occupied spin orbitals are included.  output (np.ndarray) – Array with shape (n, 6) to store the output, where n in the number of points.
When
None
the array is allocated.

compute_esp
(points, spin='ab', index=None, output=None, charges=None)[source]¶ Return the molecular electrostatic potential on the given points for the specified spin.
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) – The 2darray containing the cartesian coordinates of points on which density is evaluated. It has a shape (n, 3) where n is the number of points.
 spin (str, default="ab") –
The type of occupied spin orbitals. By default, the alpha and beta electrons (i.e. alpha and beta occupied spin orbitals) are used for computing the electron density.
 ”a” or “alpha”: consider alpha electrons
 ”b” or “beta”: consider beta electrons
 ”ab”: consider alpha and beta electrons
 index (sequence, default=None) – Sequence of integers representing the index of spin orbitals. Alpha and beta spin
orbitals are each indexed from 1 to
nbasis
. IfNone
, all occupied spin orbitals are included.  output (np.ndarray, default=None) – Array with shape (n,) to store the output, where n in the number of points.
When
None
the array is allocated.  charges (np.ndarray, default=None) – 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, output=None)[source]¶ Return positive definite kinetic energy density on the given points for the specified spin.
Positive definite kinetic energy density is 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\]Parameters:  points (ndarray) – The 2darray containing the cartesian coordinates of points on which density is evaluated. It has a shape (n, 3) where n is the number of points.
 spin (str) –
The type of occupied spin orbitals. By default, the alpha and beta electrons (i.e. alpha and beta occupied spin orbitals) are used for computing the electron density.
 ”a” or “alpha”: consider alpha electrons
 ”b” or “beta”: consider beta electrons
 ”ab”: consider alpha and beta electrons
 index (sequence) – Sequence of integers representing the index of spin orbitals. Alpha and beta spin
orbitals are each indexed from 1 to
nbasis
. IfNone
, all occupied spin orbitals are included.  output (np.ndarray) – Array with shape (n,) to store the output, where n in the number of points.
When
None
the array is allocated.

compute_megga
(points, spin='ab', index=None)[source]¶ Return electron density, gradient, laplacian & kinetic energy density.
Parameters:  points (ndarray) – The 2darray containing the cartesian coordinates of points on which density is evaluated. It has a shape (n, 3) where n is the number of points.
 spin (str) –
The type of occupied spin orbitals. By default, the alpha and beta electrons (i.e. alpha and beta occupied spin orbitals) are used for computing the electron density.
 ”a” or “alpha”: consider alpha electrons
 ”b” or “beta”: consider beta electrons
 ”ab”: consider alpha and beta electrons
 index (sequence) – Sequence of integers representing the index of spin orbitals. Alpha and beta spin
orbitals are each indexed from 1 to
nbasis
. IfNone
, all occupied spin orbitals are included.

classmethod