schrodinger.application.jaguar.thermochemical_properties module

Computes thermochemical properties from a previously run Jaguar calculation. When treating low-lying frequencies, they are first discarded by freqcut, then raised to quasi_harmonic_thresh, and then weighted by smooth_vib_cutoff_width if still applicable.

class schrodinger.application.jaguar.thermochemical_properties.ThermoProps(q, zpe, energy, enthalpy, entropy, heat_capacity, gibbs)

Bases: tuple

energy: float

Alias for field number 2

enthalpy: float

Alias for field number 3

entropy: float

Alias for field number 4

gibbs: float

Alias for field number 6

heat_capacity: float

Alias for field number 5

q: float

Alias for field number 0

zpe: float

Alias for field number 1

class schrodinger.application.jaguar.thermochemical_properties.InputParams(natoms: int, energy: float, mass: float, rotational_constants: list[float], symmetry_number: int, frequencies: list[float], solv_entropy_params: schrodinger.application.jaguar.garza.SolvEntropyParams)

Bases: object

natoms: int
energy: float
mass: float
rotational_constants: list[float]
symmetry_number: int
frequencies: list[float]
solv_entropy_params: schrodinger.application.jaguar.garza.SolvEntropyParams
get_translational_args() tuple[float, float, float]

Helper function to make calls to translational_properties() take less space

get_rotational_args() tuple[float, list[float], float, float, float, float, float]

Helper function to make calls to rotational_properties() take less space

__init__(natoms: int, energy: float, mass: float, rotational_constants: list[float], symmetry_number: int, frequencies: list[float], solv_entropy_params: schrodinger.application.jaguar.garza.SolvEntropyParams) None
class schrodinger.application.jaguar.thermochemical_properties.LowModeParams(freq_off, quasi_max)

Bases: tuple

freq_off: float

Alias for field number 0

quasi_max: float

Alias for field number 1

schrodinger.application.jaguar.thermochemical_properties.parse_args(args)
schrodinger.application.jaguar.thermochemical_properties.translational_properties(temp: float, press: float, solvation_entropy: bool, mass: float, n_c: float, v_c: float) tuple[schrodinger.application.jaguar.thermochemical_properties.ThermoProps, float | None]

Translational contributions to thermodynamic properties

Parameters
  • temp – temperature in Kelvin

  • press – pressure in atomic units (apu)

  • mass – mass of molecule in atomic units (electron mass’)

  • solvation_entropy – whether to calculate solvation entropy or not

  • n_c – Number of hopping sites for solute in solvent, unitless

  • v_c – Solute cavity volume, ang^3

Returns

translational thermodynamic properties, both for ideal gas and solvation entropy

schrodinger.application.jaguar.thermochemical_properties.rotational_properties(temp: float, solvation_entropy: bool, symmetry_number: int, rotational_constants: list[float], mass: float, solute_rad_gyr: float, v_free: float | None, r_c: float | None, n_c: float | None) tuple[schrodinger.application.jaguar.thermochemical_properties.ThermoProps, float | None]

Rotational contributions to thermodynamic properties

Parameters
  • temp – temperature in Kelvin

  • solvation_entropy – whether to calculate solvation entropy or not

  • symmetry_number – number of ways molecule can be rotated into itself

  • rotational_constants – list of rotational constants in au

  • mass – mass of solute in atomic units (electron mass’)

  • solute_rad_gyr – Solute radius of gyration, ang

  • v_free – Free volume per solvent molecule, ang^3

  • r_c – Solute cavity radius, ang

  • n_c – Number of hopping sites for solute in solvent, unitless

Returns

rotational thermodynamic properties, both for ideal gas and solvation entropy

schrodinger.application.jaguar.thermochemical_properties.vibrational_properties(temp: float, frequencies: list[float], low_mode_params: schrodinger.application.jaguar.thermochemical_properties.LowModeParams, solvation_entropy: bool) tuple[schrodinger.application.jaguar.thermochemical_properties.ThermoProps, float | None]

Vibrational contributions to thermodynamic properties

Parameters
  • temp – temperature in Kelvin

  • frequencies – list of frequencies in au

  • low_mode_params – parameters for treatment of low vibrational modes

  • solvation_entropy – whether to calc solvation entropy or not

Returns

vibrational thermodynamic properties, both for ideal gas and solvation entropy

schrodinger.application.jaguar.thermochemical_properties.parse_solvation_entropy_parameters(jout: schrodinger.application.jaguar.output.JaguarOutput, verbose: bool = True) schrodinger.application.jaguar.garza.SolvEntropyParams

Assemble SolvEntropyParams object for use in solvation entropy calculations.

Parameters
  • jout – JaguarOutput instance of the inputted Jaguar .out file

  • verbose – Whether to print information or not

Returns

Parsed solvation entropy parameters

schrodinger.application.jaguar.thermochemical_properties.parse_output(outfile: str, verbose: bool = True) schrodinger.application.jaguar.thermochemical_properties.InputParams

Parse data from jaguar output file

Parameters
  • outfile – name of jaguar output file

  • verbose – Whether to print information or not

Returns

Input parameters for this script

schrodinger.application.jaguar.thermochemical_properties.compute_thermochemical_properties(temp: float, pressure: float, input_params: schrodinger.application.jaguar.thermochemical_properties.InputParams, low_mode_params: schrodinger.application.jaguar.thermochemical_properties.LowModeParams, solvation_entropy: bool) tuple[schrodinger.application.jaguar.thermochemical_properties.ThermoProps, schrodinger.application.jaguar.thermochemical_properties.ThermoProps, schrodinger.application.jaguar.thermochemical_properties.ThermoProps, schrodinger.application.jaguar.thermochemical_properties.ThermoProps, schrodinger.application.jaguar.garza.SolvEntropyProps]

Compute thermochemical properties

Parameters
  • temp – temperature in Kelvin

  • pressure – pressure in au

  • input_params – parameters parsed from jaguar output file

  • low_mode_params – parameters for treatment of low vibrational modes

  • solvation_entropy – Whether to compute solvation entropy or not

Returns trans, rot, vib, total, solv_entropy_props

ideal gas and solvation entropy thermochemical quantities

schrodinger.application.jaguar.thermochemical_properties.set_up_low_mode(freq_off: float = 0.0, qharmonic: float = 100.0, verbose: bool = True) schrodinger.application.jaguar.thermochemical_properties.LowModeParams

Set up the low frequency mode handling parameters

Parameters
  • freq_off – frequency cutoff in cm^-1, frequencies below this cutoff are neglected

  • qharmonic – The quasi harmonic theshold. Frequencies are adjusted to max(frequency, this value).

  • verbose – Whether to print information or not

Returns

The parameters based on the input arguments

Raises

JaguarUserFacingException – If qharmonic is not positive

schrodinger.application.jaguar.thermochemical_properties.finalize_solvation_entropy_params(args, params: schrodinger.application.jaguar.garza.SolventParams, verbose: bool = True)

Solvation entropy parameters can be defined by either the Jaguar outfile or the cmdline, with the cmdline taking precedence. This function is run after the outfile has been parsed, so we’re accounting for the cmdline precdence in here.

Parameters
  • args – Namespace.args

  • params – Solvent parameters harvested from the outfile

  • verbose – Set True to print the changes we are making

schrodinger.application.jaguar.thermochemical_properties.main(args)

Parse frequencies and compute thermochemical properties