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[source]

Bases: RuntimeError

Indicators that the output is incomplete.

__init__(*args, **kwargs)

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)[source]

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)[source]

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

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

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)[source]
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)[source]

Return a list of differing attributes.

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

Bases: object

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

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

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

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

Bases: object

A class for storing orbital information.

Attributes

energy (float, Hartrees)

symmetry (str)

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

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

cmp(that)[source]

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)[source]

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)[source]

Initialize.

static fromEtotString(etot_string)[source]

Create an instance from a standard etot string.

toString(iter=0)[source]

Render as a string, with optional iteration number.

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

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)[source]

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

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

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)[source]

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

__contains__(key, /)

True if the dictionary has the specified key, else False.

__len__()

Return len(self).

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

Create a new dictionary with keys from iterable and values set to value.

get(key, default=None, /)

Return the value for key if key is in the dictionary, else default.

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()

Remove and return a (key, value) pair as a 2-tuple.

Pairs are returned in LIFO (last-in, first-out) order. Raises KeyError if the dict is empty.

setdefault(key, default=None, /)

Insert key with a value of default if key is not in the dictionary.

Return the value for key if key is in the dictionary, else default.

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)[source]

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)[source]

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

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

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)[source]

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

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

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)[source]

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[source]

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__()[source]

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

class schrodinger.application.jaguar.results.DerivedAttrs[source]

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__()[source]

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

buildDerivedAttrs(jresults, joutput)[source]

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)[source]

Return a list of differing attributes.

class schrodinger.application.jaguar.results.JaguarResults[source]

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)

canonical_orbitals (int)

Number of canonical orbitals for a given job

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

fdpolar_alpha1 (float)

frequency-dependent polarizability, first frequency

fdpolar_freq1 (float)

frequency that fdpolar_alpha1 calculated at

fdpolar_alpha2 (float)

frequency-dependent polarizability, second frequency

fdpolar_freq2 (float)

frequency that fdpolar_alpha2 calculated at

fdpolar_beta (float)

frequency-dependent first-order hyperpolarizability, reported as mean of beta-tensor orientations

fdpolar_freq3 (float)

third frequency used for frequency-dependent hyperpolarizability calcs

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__()[source]

Create a JaguarResults object.

property 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.

property forces

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

getAtomTotal()[source]
property atom_total

Return the number of atoms in the structure geometry.

getStructure(properties=None)[source]

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)[source]

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.