Read Gaussian Logfile Class

This module contains a class to read Gaussian log files and extract data from them.

Notes:

This class is used to read Gaussian log files and extract data from them. It is used to extract the energies and the dipole moments from the log files.

Examples:

>>> from empmap.gauss_logfile import GaussianLogFile
>>> logfile = GaussianLogFile("file.log")
>>> print(logfile.energies)
>>> print(logfile.dipole)
class empmap.gauss_logfile.GaussianLogFile(logname)
description()

Prints a description of the GaussianLogFile class

Notes:

This function prints a description of the GaussianLogFile class.

Parameters:

None

Returns:

None

grab_dipole()

Grabs the dipole moments from the log file

This function is deprecated. Use grab_tensor_from_gaussian instead.

Parameters:

None

Returns:

dipolearray_like

The dipole moments from the log file.

Raises:

ValueError:

If no dipole moments are found in the log file.

grab_energies(expected=None)

Grabs the energies from the log file

Parameters:

None

Returns:

energiesarray_like

The energies from the log file.

Raises:

ValueError:

If no energies are found in the log file.

grab_for_empirical_mapping(data_column=2)

Grabs everything from the log file needed for empirical mapping.

Notes:

This function is used to grab everything from the log file that is needed for the DVR. This includes the energies, dipole moments, and the polarizabilities.

Parameters:

None

Returns:

None

Raises:

ValueError:

If no data is found in the log file.

grab_tensor_from_gaussian(comparison_choice='dipole', data_column=2)

Grabs a tensor from the Gaussian log file.

Notes:

This function is used to grab a tensor from the Gaussian log file. It is used to grab the electric dipole moment and the dipole polarizability from the log file (but could also do it for the hyperpolarizability, if so desired).

To get the dipole, set comparison_choice to “dipole”. To get the polarizability, set comparison_choice to “polarizability”. To get the hyperpolarizability, set comparison_choice to “hyperpolarizability”.

Dipole has components x, y, and z, so components should be [“x”, “y”, “z”].

Units are:

[1] au [2] debye [3] 10**-30 C m (SI)

Polarizability has components xx, yy, zz, yx, zx, zy, so components should be [“xx”, “yy”, “zz”, “yx”, “zx”, “zy”].

Units are:

[1] au [2] 10**-24 cm**3 (esu) [3] 10**-30 C**2 m**2 J**-1 (SI)

Hyperpolarizability has components || (z), _|_(z), x, y, z, ||, xxx, xxy, yxy, yyy, xxz, yxz, yyz, zxz, zyz, zzz so components should be [“|| (z)”, “_|_(z)”, “x”, “y”, “z”, “||”, “xxx”, “xxy”, “yxy”, “yyy”, “xxz”, “yxz”, “yyz”, “zxz”, “zyz”, “zzz”].

Units are:

[1] au [2] 10**-30 statvolt**-1 cm**4 (esu) [3] 10**-50 C**3 m**3 J**-2 (SI)

Parameters:

comparison_choicestr

The type of tensor to grab from the log file.

data_columnint

The column to grab the data from.

Returns:

tensorarray_like

The tensor from the log file.

Raises:

ValueError:

If the comparison choice is not recognized.