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.