schrodinger.application.mopac.results_main module¶
This module parses and stores the results of a MOPAC calculation. A MopacResultsMain class is populated with data from the output files from MOPAC_MAIN using a text parser.
-
exception
schrodinger.application.mopac.results_main.
MopacPropertyError
¶ Bases:
Exception
-
__init__
¶ Initialize self. See help(type(self)) for accurate signature.
-
args
¶
-
with_traceback
()¶ Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
-
-
exception
schrodinger.application.mopac.results_main.
MopacNumericalError
¶ Bases:
Exception
-
__init__
¶ Initialize self. See help(type(self)) for accurate signature.
-
args
¶
-
with_traceback
()¶ Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
-
-
exception
schrodinger.application.mopac.results_main.
MopacBasisError1
¶ Bases:
Exception
-
__init__
¶ Initialize self. See help(type(self)) for accurate signature.
-
args
¶
-
with_traceback
()¶ Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
-
-
exception
schrodinger.application.mopac.results_main.
MopacBasisError2
¶ Bases:
Exception
-
__init__
¶ Initialize self. See help(type(self)) for accurate signature.
-
args
¶
-
with_traceback
()¶ Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
-
-
exception
schrodinger.application.mopac.results_main.
MopacBasisError3
¶ Bases:
Exception
-
__init__
¶ Initialize self. See help(type(self)) for accurate signature.
-
args
¶
-
with_traceback
()¶ Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
-
-
exception
schrodinger.application.mopac.results_main.
MopacBasisError4
¶ Bases:
Exception
-
__init__
¶ Initialize self. See help(type(self)) for accurate signature.
-
args
¶
-
with_traceback
()¶ Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
-
-
exception
schrodinger.application.mopac.results_main.
MopacBasisError5
¶ Bases:
Exception
-
__init__
¶ Initialize self. See help(type(self)) for accurate signature.
-
args
¶
-
with_traceback
()¶ Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
-
-
exception
schrodinger.application.mopac.results_main.
MopacGradientParserError
¶ Bases:
Exception
-
__init__
¶ Initialize self. See help(type(self)) for accurate signature.
-
args
¶
-
with_traceback
()¶ Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
-
-
class
schrodinger.application.mopac.results_main.
MopacMainTextParser
(file_iter)¶ Bases:
object
Parser for MOPAC_MAIN’s .out and .aux files. Using decorators, the callback() function below populates the “callbacks” dictionary in this class with key-value pairs of the form (regex,func) where “regex” is a regular expression to catch patterns in the output file, and “func” is the callback function which is triggered when the regex is matched.
In this way, each specific callback is triggered by a given pattern such as ‘HOMO LUMO ENERGIES (EV) =’, and the callback function processes the matched lines.
Note that multiple regex’s can be associated with a given callback function by associating it with two or more decorators. In this way, the same callback can be triggered multiple times. e.g. for both the .aux and .out files, perhaps for consistency checking etc.
Typically, however, only one regex is associated with each callback so that data for a given property is grepped from either the .out file OR the .aux file, but not both.
-
callbacks
= OrderedDict([(re.compile('HEAT_OF_FORMATION:KCAL/MOL=(\\s*\\+?\\-?\\d+\\.\\d+D[\\+,\\-]\\d+)'), <function func>), (re.compile('FINAL HEAT OF FORMATION\\s+=(\\s*\\+?\\-?\\d+\\.\\d+)'), <function func>), (re.compile('TOTAL_ENERGY:EV=(\\s*\\+?\\-?\\d+\\.\\d+D[\\+,\\-]\\d+)'), <function func>), (re.compile('TOTAL ENERGY\\s+=(\\s*\\+?\\-?\\d+\\.\\d+)\\s+EV'), <function func>), (re.compile('FINAL POINT AND DERIVATIVES'), <function func>), (re.compile('\\s+(.*)\\s+CALCULATION RESULTS'), <function func>), (re.compile('IONIZATION_POTENTIAL:EV=(\\s*\\+?\\-?\\d+\\.\\d+D[\\+,\\-]\\d+)'), <function func>), (re.compile('HOMO LUMO ENERGIES \\(EV\\) =(\\s*\\+?\\-?\\d+\\.\\d+)\\s+(\\s*\\+?\\-?\\d+\\.\\d+)'), <function func>), (re.compile('ALPHA SOMO LUMO \\(EV\\)\\s+=(\\s*\\+?\\-?\\d+\\.\\d+)\\s+(\\s*\\+?\\-?\\d+\\.\\d+)'), <function func>), (re.compile('ALPHA HOMO LUMO \\(EV\\)\\s+=(\\s*\\+?\\-?\\d+\\.\\d+)\\s+(\\s*\\+?\\-?\\d+\\.\\d+)'), <function func>), (re.compile('BETA\\s+SOMO LUMO \\(EV\\)\\s+=(\\s*\\+?\\-?\\d+\\.\\d+)\\s+(\\s*\\+?\\-?\\d+\\.\\d+)'), <function func>), (re.compile('BETA\\s+HOMO LUMO \\(EV\\)\\s+=(\\s*\\+?\\-?\\d+\\.\\d+)\\s+(\\s*\\+?\\-?\\d+\\.\\d+)'), <function func>), (re.compile('Parr & Pople absolute hardness:(\\s*\\+?\\-?\\d+\\.\\d+)'), <function func>), (re.compile('Mulliken electronegativity:(\\s*\\+?\\-?\\d+\\.\\d+)'), <function func>), (re.compile('DIPOLE:DEBYE=(\\s*\\+?\\-?\\d+\\.\\d+D[\\+,\\-]\\d+)'), <function func>), (re.compile('DIP_VEC:DEBYE\\[3\\]=(\\s*\\+?\\-?\\d+\\.\\d+D[\\+,\\-]\\d+)\\s+(\\s*\\+?\\-?\\d+\\.\\d+D[\\+,\\-]\\d+)\\s+(\\s*\\+?\\-?\\d+\\.\\d+D[\\+,\\-]\\d+)'), <function func>), (re.compile('DIPOLE MOMENT EVALUATED FROM THE POINT CHARGES'), <function func>), (re.compile('ATOM_X:ANGSTROMS\\[(\\d+)\\]='), <function func>), (re.compile('ATOM_X_OPT:ANGSTROMS\\[(\\d+)\\]='), <function func>), (re.compile('^ ATOM_CHARGES\\[(\\d+)\\]='), <function func>), (re.compile('^ MULLIKEN_ATOM_CHARGES\\[(\\d+)\\]='), <function func>), (re.compile('^ ELECTOSTATIC_POTENTIAL_CHARGES\\[(\\d+)\\]='), <function func>), (re.compile('a\\s+n\\s+Dn\\(r\\)\\s+De\\(r\\)\\s+q\\(r\\) - Z\\(r\\)'), <function func>), (re.compile('a\\s+n\\s+piS\\(r\\)'), <function func>), (re.compile('^ ATOM_EL\\[(\\d+)\\]='), <function func>), (re.compile('^ NUM_ELECTRONS=(\\d+)'), <function func>), (re.compile('^ AO_ATOMINDEX\\[(\\d+)\\]='), <function func>), (re.compile('^ ATOM_SYMTYPE\\[(\\d+)\\]='), <function func>), (re.compile('^ AO_ZETA\\[(\\d+)\\]='), <function func>), (re.compile('^ ATOM_PQN\\[(\\d+)\\]='), <function func>), (re.compile('^ EIGENVALUES\\[(\\d+)\\]='), <function func>), (re.compile('^ MOLECULAR_ORBITAL_OCCUPANCIES\\[(\\d+)\\]='), <function func>), (re.compile('^ OVERLAP_MATRIX\\[(\\d+)\\]='), <function func>), (re.compile('^ EIGENVECTORS\\[(\\d+)\\]='), <function func>)])¶
-
__init__
(file_iter)¶ Initialize self. See help(type(self)) for accurate signature.
-
parse
()¶ Loop over self.file_iter and trigger the callbacks.
-
-
schrodinger.application.mopac.results_main.
fortfloat
(val)¶ Convert a floating point number in Fortran notation to a regular float.
-
schrodinger.application.mopac.results_main.
check_memory_use
(nvals, name)¶ Check memory requirment for a long list of floats. Print message if size exceeds MEMORY_WARNING.
-
schrodinger.application.mopac.results_main.
update_props
(props, key, value, precision=5)¶ Update the props dictionary with the key-value pair, performing consistency checks if the key already exists.
-
schrodinger.application.mopac.results_main.
callback
(regex)¶ This decorator is just a convenient way to populate the callbacks dictionary in the MopacMainTextParser. The associated functions themselves are not actually decorated.
-
schrodinger.application.mopac.results_main.
func
(props, match, it)¶
-
class
schrodinger.application.mopac.results_main.
MopacResultsMain
¶ Bases:
schrodinger.application.mopac.mopac_results.MopacResults
A class to parse and store the results of a calculation from MOPAC_MAIN
-
__init__
()¶ Initialize self. See help(type(self)) for accurate signature.
-
structure
¶ A Schrodinger Structure object which is populated with output data.
-
method
¶ Type: str name of semi-empirical method (i.e. a MOPAC keyword)
-
output_file
¶ Type: str name of output file generated by MOPAC.
-
set_method
(value)¶
-
set_status
(value)¶
-
set_output_file
(value)¶
-
statusOk
()¶ Needed to be consistent with legacy code
-
get_error_text
()¶ Needed to be consistent with legacy code
-
populate_from_file
(filename)¶ Parse “filename” containing MOPAC_MAIN’s versions’s output data.
-
set_final_structure
(structure, filename)¶ Compile parsed results into the structure.properties dictionary.
-
write_vis_files
(jobname, nplot, gridres, gridext)¶ This function will call the Fortran routines to generate the 3D data and .vis files for plotting surfaces.
Parameters: nplot (int) – number of MOs to plot around HOMO/LUMO gap.
-