Base#
- class autode.transition_states.base.TSbase(atoms: Atoms, reactant: Species | None = None, product: Species | None = None, name: str = 'ts_guess', charge: int = 0, mult: int = 1, bond_rearr: BondRearrangement | None = None, solvent_name: str | None = None)#
Base transition state class. e.g.:
H H \ / F ------- C --------Cl r1 | r2 r1 = 2.0 Å H r2 = 2.2 Å
- __init__(atoms: Atoms, reactant: Species | None = None, product: Species | None = None, name: str = 'ts_guess', charge: int = 0, mult: int = 1, bond_rearr: BondRearrangement | None = None, solvent_name: str | None = None)#
Parent transition state class
- Parameters:
product – If None then mode checking will not be available
name – Name of this TS guess
charge – Total charge on this TS guess, in units of e
mult – Spin multiplicity (2S+1) for S unpaired electrons
bond_rearr – Bond rearrangement associated with the transformation reactant -> product
solvent_name – Name of the solvent
- property active_bond_constraints: DistanceConstraints#
Set all the distance constraints required in an optimisation as the active bonds
- Keyed with atom indexes for the active atoms (tuple) and
equal to the constrained value
- Return type:
(dict)
- property could_have_correct_imag_mode: bool#
Determine if a point on the PES could have the correct imaginary mode. This must have
An imaginary frequency (quoted as negative in most EST codes)
The most negative(/imaginary) is more negative that a threshold, which is defined as autode.config.Config.min_imag_freq
- Raises:
(ValueError) – If the bond-rearrangement is not set, so that there is no chance of determining the right mode
- property has_correct_imag_mode: bool#
Check that the imaginary mode is ‘correct’ set the calculation (hessian or optts)
- Raises:
(ValueError) – If reactants and products aren’t set, thus cannot run a quick reaction profile
- property has_imaginary_frequencies: bool#
Does this possible transition state have any imaginary modes?
- imag_mode_has_correct_displacement(disp_mag: float = 1.0, delta_threshold: float = 0.3, req_all: bool = True) bool #
Check whether the imaginary mode in a calculation with a hessian forms and breaks the correct bonds
- Keyword Arguments:
delta_threshold (float) – Required ∆r on a bond for the bond to be considered as forming
req_all (bool) – Require all the bonds to have the correct displacements
- Return type:
(bool)
- imag_mode_links_reactant_products(disp_mag: float = 1.0) bool #
Displaces atoms along the imaginary mode forwards (f) and backwards (b) to see if products and reactants are made
- Returns:
if the imag mode is correct or not
- Return type:
(bool)
- autode.transition_states.base.displaced_species_along_mode(species: Species, mode_number: int, disp_factor: float = 1.0, max_atom_disp: float = 99.9) Species #
Displace the geometry along a normal mode with mode number indexed from 0, where 0-2 are translational normal modes, 3-5 are rotational modes and 6 is the largest magnitude imaginary mode (if present). To displace along the second imaginary mode we have mode_number=7
- Parameters:
mode_number (int) – Mode number to displace along
disp_factor (float) – Distance to displace (default: {1.0})
max_atom_disp (float) – Maximum displacement of any atom (Å)
- Return type:
(autode.species.Species)
- Raises:
(autode.exceptions.CouldNotGetProperty | autode.exceptions.AutodeException) –
- autode.transition_states.base.forward_backward_isomorphic_to_reactant_product(forwards: Species, backwards: Species, reactant: Species, product: Species) bool #
Are the forward/backward displaced species isomorphic to reactants/products?
- Parameters:
backwards (autode.species.Species)
reactant (autode.species.ReactantComplex)
product (autode.species.ProductComplex)
- Return type:
(bool)
- autode.transition_states.base.imag_mode_generates_other_bonds(ts: TSbase, f_species: Species, b_species: Species, allow_mx: bool = False) bool #
Determine if the forward or backwards displaced molecule break or make bonds that aren’t in all the active bonds bond_rearrangement.all. Will be fairly conservative here
- Parameters:
f_species (autode.species.Species) – Forward displaced species
b_species (autode.species.Species) – Backward displaced species
allow_mx (bool) – Allow any metal-X bonds where X is another element
- Return type:
(bool)