schrodinger.application.jaguar.results module

Classes for parsing Jaguar output files and accessing output properties programmatically.

Copyright Schrodinger, LLC. All rights reserved.

exception schrodinger.application.jaguar.results.IncompleteOutput

Bases: RuntimeError

Indicators that the output is incomplete.

__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.jaguar.results.FukuiIndices(index, atom_name, homo_nn, homo_ns, homo_sn, homo_ss, lumo_nn, lumo_ns, lumo_sn, lumo_ss)

Bases: object

A class to store Atomic Fukui indices.

precision = 0.01
__init__(index, atom_name, homo_nn, homo_ns, homo_sn, homo_ss, lumo_nn, lumo_ns, lumo_sn, lumo_ss)

Initialization requires all N/S combinations for both the HOMO and the LUMO.

class schrodinger.application.jaguar.results.JaguarAtomicResults(index, atom_name)

Bases: object

A class for holding atomic level properties.

Attributes

forces (list of floats, Hartree/Bohr)
Atomic forces.
charge_esp (float)
Electrostatic potential charge.
charge_nbo (float)
NBO charge.
charge_stockholder (float)
Stockholder charge.
charge_lowdin (float)
Lowdin charge.
spin_lowdin (float)
Lowdin spin density.
charge_mulliken (float)
Mulliken charge.
spin_mulliken (float)
Mulliken spin density.
fukui_indices (FukuiIndices)
Fukui indices.
nmr_shielding (float)
NMR shielding.
nmr_abs_shift (float)
NMR absolute shifts
nmr_rel_shift (float)
NMR relative shifts, defined only for C/H.
nmr_h_avg_shift (float)
NMR relative shifts, with the shifts of H’s bonded to the same atom averaged.
nmr_2d_avg_shift (float)
NMR relative shifts, with 2D equivalent sites shifts averaged.
maxat_esp (float)
Max atomic ESP value on molecular surface.
minat_esp (float)
Min atomic ESP value on molecular surface.
maxat_alie (float)
Max atomic ALIE value on molecular surface.
minat_alie (float)
Min atomic ALIE value on molecular surface.
epn (float)
Electrostatic potential at the nucleus.
forces_precision = 0.0001
charge_precision = 5e-05
nmr_precision = 0.01
esp_precision = 0.01
alie_precision = 0.01
epn_precision = 0.01
__init__(index, atom_name)
index (integer)
The 1-based index of the atom in the structure.
atom_name (str)
The name of the atom. The name can have a trailing ‘@’ to indicate it’s a counterpoise atom.
diff(other, short_circuit=False, factor=1.0)

Return a list of differing attributes.

class schrodinger.application.jaguar.results.BondCharge(name, charge)

Bases: object

A class to store bond-midpoint charges calculated in ESP fitting.

precision = 5e-05
__init__(name, charge)

Initialize self. See help(type(self)) for accurate signature.

cmp(other)
class schrodinger.application.jaguar.results.Orbital(type_, index, energy, symmetry=None)

Bases: object

A class for storing orbital information.

Attributes

energy (float, Hartrees)

symmetry (str)

precision = 0.0001
__init__(type_, index, energy, symmetry=None)

Initialize self. See help(type(self)) for accurate signature.

cmp(that)

Compare on orbital energy and the non-reduced symmetry.

class schrodinger.application.jaguar.results.ScfIteration(updt, diis, icut, grid, energy, energy_change, rms_density_change, max_diis_error)

Bases: object

A simple storage class for storing info on an SCF iteration.

header = ' i u d i g\n t p i c r RMS maximum\n e d i u i energy density DIIS\n r t s t d total energy change change error\n\n'
__init__(updt, diis, icut, grid, energy, energy_change, rms_density_change, max_diis_error)

Initialize.

static fromEtotString(etot_string)

Create an instance from a standard etot string.

toString(iter=0)

Render as a string, with optional iteration number.

class schrodinger.application.jaguar.results.Dipole(source, x=None, y=None, z=None, magnitude=None)

Bases: object

A class for storing dipole information.

Attributes:

magnitude (float, Debye)
The magnitude of the dipole moment.
x, y, z (float, Debye)
The x, y, z components of the dipole moment.
precision = 0.0001
__init__(source, x=None, y=None, z=None, magnitude=None)

Initialize self. See help(type(self)) for accurate signature.

cmp(other)
class schrodinger.application.jaguar.results.ZVariables(length_unit, angle_unit)

Bases: dict, object

A class to store Z-variables and their values, generated in scan jobs.

The class is basically a dictionary with added attributes indicating the length and angle units.

Attributes:

length_unit (str)
Either Angstrom or Bohr. (The value is equal to one of the module level constants unAngstrom or unBohr.)
angle_unit (str)
Either degree or radian. (The values is equal to one of the module level constants unDegree or unRadian.)
precision = 0.01
__init__(length_unit, angle_unit)

Initialize self. See help(type(self)) for accurate signature.

__contains__()

True if D has a key k, else False.

__len__

Return len(self).

clear() → None. Remove all items from D.
copy() → a shallow copy of D
fromkeys()

Returns a new dict with keys from iterable and values equal to value.

get(k[, d]) → D[k] if k in D, else d. d defaults to None.
items() → a set-like object providing a view on D's items
keys() → a set-like object providing a view on D's keys
pop(k[, d]) → v, remove specified key and return the corresponding value.

If key is not found, d is returned if given, otherwise KeyError is raised

popitem() → (k, v), remove and return some (key, value) pair as a

2-tuple; but raise KeyError if D is empty.

setdefault(k[, d]) → D.get(k,d), also set D[k]=d if k not in D
update([E, ]**F) → None. Update D from dict/iterable E and F.

If E is present and has a .keys() method, then does: for k in E: D[k] = E[k] If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v In either case, this is followed by: for k in F: D[k] = F[k]

values() → an object providing a view on D's values
class schrodinger.application.jaguar.results.ThermoProp(type_, temp, press, energy_units, total, trans=None, rot=None, vib=None, elec=None)

Bases: object

A class to store the components of calculated thermodynamic properties.

Attributes

type_ (str)
Descriptive string indicating which thermodynamic property (U/Cv/S/H/G/lnQ) this instance refers to
temp (float)
The temperature at which the properties were calculated.
energy_units (str)
Units of provided values
total (float)
The total calculated thermodynamic property.
translational (float)
The translational contribution to the calculated property.
rotational (float)
The rotational contribution to the calculated property.
vibrational (float)
The vibrational contribution to the calculated property.
electronic (float)
The electronic contribution to the calculated property.
precision = 0.001
__init__(type_, temp, press, energy_units, total, trans=None, rot=None, vib=None, elec=None)

Initialize self. See help(type(self)) for accurate signature.

cmp(other)
class schrodinger.application.jaguar.results.ThermoCollection(temp, press, units, total, trans, rot, vib, elec, UTotal, HTotal, GTotal)

Bases: object

A class to store a full set of calculated thermodynamic properties at a given temperature.

Attributes:

temp (float)
The temperature at which the properties were calculated.
press (float)
The pressure at which the properties were calculated. (in atm units)
units (str)
Units that the energy values are in (if not in Hartrees)
total (list of floats)
The total calculated thermodynamic properties for, in order, U/Cv/S/H/G
trans (list of floats)
The translational contribution for, in order, U/Cv/S/H/G
rot (list of floats)
The rotational contribution for, in order, U/Cv/S/H/G
vib (list of floats)
The vibrational contribution for, in order, U/Cv/S/H/G
elec (list of floats)
The electronic contribution for, in order, U/Cv/S/H/G
UTotal (float, Hartrees)
Total internal energy (SCFE + ZPE + U)
HTotal (float, Hartrees)
Total enthalpy (UTotal + pV)
GTotal (float, Hartrees)
Total Gibbs free energy (HTotal - T*S)
precision = 1e-06
__init__(temp, press, units, total, trans, rot, vib, elec, UTotal, HTotal, GTotal)

Initialize self. See help(type(self)) for accurate signature.

class schrodinger.application.jaguar.results.NormalMode(frequency, t_atoms, index)

Bases: object

A class for storing normal mode results.

Attributes

frequency (float, 1/cm)

symmetry (str)
The symmetry type (Mulliken symbol) of the normal mode; None if symmetry is not present or used.
ir_intensity (float, km/mol)
The IR intensity; set to None if not calculated.
raman_activity (float, Angstrom^4)
The Raman activity; set to None if not calculated.
raman_intensity (float, Angstrom^4)
The Raman intensity; set to None if not calculated.

reduced_mass (float, amu)

force_constant (float, mDyne/Angstrom)

dipole_strength (float, DSU)
The dipole strength; set to None if not calculated.
rotational_strength (float, RSU)
The rotational strength; set to None if not calculated.
displacement (float array)
The atomic displacements, as an array with x, y, z columns for each atom row.
frequency_precision = 0.1
ir_intensity_precision = 0.1
raman_activity_precision = 0.1
raman_intensity_precision = 0.1
reduced_mass_precision = 0.1
force_constant_precision = 0.1
dipole_strength_precision = 0.1
rotational_strength_precision = 0.1
__init__(frequency, t_atoms, index)

Arguments

frequency (float)
The frequency of the normal mode.
t_atoms (int)
The number of atoms in the molecule.
class schrodinger.application.jaguar.results.JaguarOptions

Bases: object

A class for keeping track of specific calculation options.

Attributes

ip (list of int)
the values of all ip flags, indexed from 1
pseudospectral (bool)
whether the calculation used the pseudospectral method
solvation (bool)
whether the calculation used solvation
analytic_gradients (bool)
True if analytic gradients, False if calculated by finite difference. Is only meaningful when gradients are actually being calculated (i.e. when ‘forces’ of JaguarResults object is defined).
analytic_frequencies (bool)
True if analytic second derivatives are used, False if calculated by finite difference. Is only meaningful when frequencies are being calculated (i.e. when the JaguarResults normal_mode list attribute is non-empty).
esp_fit (int)
If no electrostatic potential fit is being done, this will be set to JaguarOutputs.ESP_NONE. If ESP atom centered fitting is being done, it will be set to JaguarOutputs.ESP_ATOMS. If ESP fitting is being done with atom centers and bond midpoints, esp_fit will be set to JaguarOptions.ESP_ATOMS_AND_BOND_MIDPOINTS.
ip_default = 1
ESP_NONE = 0
ESP_ATOMS = 1
ESP_ATOMS_AND_BOND_MIDPOINTS = 2
__init__()

Initialize self. See help(type(self)) for accurate signature.

class schrodinger.application.jaguar.results.DerivedAttrs

Bases: object

A class for building and holding properties derived from other _Attributes in JaguarResults. Designed only with single primitive valued _Attribute’s in mind (no lists). By its nature this class will be pretty manual, since every derived property will have its own logic. Class method buildDerivedAttrs called by JaguarOutput parent at end of init (after textparsing)

energy_aposteri0 (float, Hartrees)
Uncorrected energy in the case of a posteri-corrected calculations (energy-energy_aposteri)
homo_lumo_gap (float, Hartrees)
HOMO-LUMO Gap energy. Calculated as lower of same-spin orbital differences in unrestricted calcs
lambdamax_ev (float, eV)
Excitation energy (ev) of state with highest oscillator strength
lambdamax_nm (float, nm)
Excitation energy (nm) of state with highest oscillator strength
energy_precision_hartree = 1e-06
exc_energy_precision_ev = 0.0006
exc_energy_precision_nm = 20
orbe_precision = 0.0001
osc_precision = 0.001
__init__()

Create the _attributes list and define precisions so that _diff can be used.

buildDerivedAttrs(jresults, joutput)

Fill in the values of self._attributes if ingredients exist

jresults is parent JaguarResults, use to obtain ingredients joutput is parent JaguarOutput, use to obtain job options needed for logic (ie - homo_lumo_gap)

diff(other, short_circuit=False, factor=1.0)

Return a list of differing attributes.

class schrodinger.application.jaguar.results.JaguarResults

Bases: object

A class for holding results for a specific geometry.

Attributes

scf_energy (float, Hartrees)
SCF energy
external_program_energy (float, Hartrees)
Energy produced by an external program
ani_energy (float, Hartrees)
Neural network potential energy
ani_stddev (float, Hartrees)
Neural network potential energy std deviation across models
gas_phase_energy (float, Hartrees)
Gas phase total energy
scf_iter (list of ScfIterations)
details on the scf iterations
lmp2_energy (float, Hartrees)
LMP2 energy
solvation_energy (float, Hartrees)
solvation energy
solution_phase_energy (float, Hartrees)
solution phase energy
energy_one_electron (float, Hartrees)
total one-electron energy (component (E) in SCF summary)
energy_two_electron (float, Hartrees)
total two-electron energy (component (I) in SCF summary)
energy_electronic (float, Hartrees)
total electronic energy (component (L) in SCF summary)
energy_aposteri (float, Hartrees)
a posteriori correction to the total energy (component (N0) in SCF summary)
energy_aposteri0 (float, Hartrees)
uncorrected energy in the case of a posteri-corrected calculations (derived quantity not in output file)
nuclear_repulsion (float, Hartrees)
nuclear repulsion energy
homo (float, Hartrees)
HOMO energy (set to None for open shell calcs)
homo_alpha (float, Hartrees)
alpha HOMO energy (set to None for closed shell calcs)
homo_beta (float, Hartrees)
beta HOMO energy (set to None for closed shell calcs)
lumo (float, Hartrees)
LUMO energy (set to None for open shell calcs)
lumo_alpha (float, Hartrees)
alpha LUMO energy (set to None for closed shell calcs)
lumo_beta (float, Hartrees)
beta LUMO energy (set to None for closed shell calcs)

zero_point_energy (float, kcal/mol)

doubted_geom (bool)
Indicates that the Jaguar output contained an indication that this was a bad step
nops_on (bool)
indicates this is a NOPS calculation
sm_point (integer)
number of point along string method string.
sm_iter (integer)
iteration number of string method.
S_min_eval (float)
minimum eigenvalue of S (overlap matrix)
orbital (list of Orbitals)
orbitals (defined for closed shell only)
orbital_alpha (list of Orbitals)
alpha orbitals (defined for open shell only)
orbital_beta (list of Orbitals)
beta orbitals (defined for open shell only)
zvar (ZVariables)
a mapping of scan variable names to values; ZVariables is a dict subclass.
thermo (list of ThermoCollection)
a list of ThermoCollection objects, each representing thermochemical properties at a given temperature

reaction_coord (float)

transition_state_components (list of floats)

vetted_ts_vector_index (integer)
index eigenvector of TS geometry that has been vetted with vet_ts != 0
vetted_ts_vector (NormalMode instance)
NormalMode instance representing eigenvector of TS geometry that has been vetted with vet_ts != 0
dipole_qm (Dipole)
dipole calculated from the wavefunction
dipole_esp (Dipole)
dipole calculated from the electrostatic potential charges
dipole_mulliken (Dipole)
dipole calculated from the Mulliken charges
charge_bond_midpoint (list of BondCharge)
ESP charges for bond midpoints
atom (list of JaguarAtomicResults)
atom based properties for this JaguarResults object
normal_mode (list of NormalMode objects)
normal mode information
scan_value (dict of floats)
a dictionary with zvar keys and float values indicating the scan coordinate values for this geometry
polar_alpha (float)
polarizability
polar_beta (float)
first-order hyperpolarizability
polar_gamma (float)
second-order hyperpolarizability
et_S_if (float)
overlap of initial and final state wfns in electron transfer
et_H_ii (float)
hamiltonian of initial state in electron transfer
et_H_if (float)
hamiltonian of initial->final state in electron transfer
et_T_if (float)
electron transfer transition energy
min_esp (float)
Minimum ESP value on isodensity surface
max_esp (float)
Maximum ESP value on isodensity surface
mean_esp (float)
Mean ESP value on isodensity surface
mean_pos_esp (float)
Mean positive ESP value on isodensity surface
mean_neg_esp (float)
Mean negative ESP value on isodensity surface
sig_pos_esp (float)
Variance of positive ESP values on isodensity surface
sig_neg_esp (float)
Variance of negative ESP values on isodensity surface
sig_tot_esp (float)
Total ESP variance on isodensity surface
balance_esp (float)
ESP balance on isodensity surface
local_pol_esp (float)
Local polarity on isodensity surface
min_alie (float)
Minimum ALIE value on isodensity surface
max_alie (float)
Maximum ALIE value on isodensity surface
mean_alie (float)
Mean ALIE value on isodensity surface
mean_pos_alie (float)
Mean positive ALIE value on isodensity surface
mean_neg_alie (float)
Mean negative ALIE value on isodensity surface
sig_pos_alie (float)
Variance of positive ALIE values on isodensity surface
sig_neg_alie (float)
Variance of negative ALIE values on isodensity surface
sig_tot_alie (float)
Total ALIE variance on isodensity surface
balance_alie (float)
ALIE balance on isodensity surface
local_pol_alie (float)
Average deviation from mean ALIE on isodensity surface
excitation_energies (list of floats)
electronic excitation energies
singlet_excitation_energies (list of floats)
restricted singlet electronic excitation energies
triplet_excitation_energies (list of floats)
restricted triplet electronic excitation energies
oscillator_strengths (list of floats)
excitation energy oscillator strengths
singlet_oscillator_strengths (list of floats)
singlet excitation energy oscillator strengths
triplet_oscillator_strengths (list of floats)
triplet excitation energy oscillator strengths
opt_excited_state_energy_1 (float)
energy of first excited state geometry optimization
total_lo_correction (float, kcal/mol)
total localized orbital energy correction
spin_splitting_score (float)
ligand field spin-splitting score for DBLOC calculations
s2 (float)
spin: <S**2>
sz2 (float)
spin: Sz*<Sz+1>
derived_attrs (DerivedAttrs object)
container for simple attributes derived from ones explicitly found in output file
energy_precision = 1e-06
nucrep_precision = 1e-08
zpe_precision = 0.01
lo_precision = 0.01
spin_splitting_precision = 0.01
rxn_coord_precision = 0.001
ts_component_precision = 0.1
alpha_polar_precision = 0.001
beta_polar_precision = 0.001
gamma_polar_precision = 0.1
esp_analysis_precision = 0.01
balance_esp_precision = 0.001
alie_analysis_precision = 0.01
balance_alie_precision = 0.001
exc_precision = 0.0006
osc_precision = 0.001
__init__()

Create a JaguarResults object.

energy

The overall energy for the calculation. For LMP2 calculations this is the LMP2 energy, otherwise it is the SCF energy. If this calculation includes solvation it is the solution phase energy.

forces

Convenient access to forces for all atoms as a numpy array.

getAtomTotal()
atom_total

Return the number of atoms in the structure geometry.

getStructure(properties=None)

Get a schrodinger.Structure object for a specific geometry.

property_names (list of tuples of (string, object))
A list of properties names and values belonging to the overall job these results are a part of.
diff(other, short_circuit=False, factor=1.0)

Return a set of attributes that differ.

Parameters other (JaguarResults)

The instance to compare against.
short_circuit (bool)
If True, return immediately upon finding a difference.
factor (float)
A fudge factor to apply to most comparison precision values. The allowed difference between values is multiplied by factor.