schrodinger.application.jaguar.autots_bonding module

Methods to handle structure reading and bonding in AutoTS.

schrodinger.application.jaguar.autots_bonding.clean_st(st, mmjag=True, cov_offset=0.4)

Clean up a st via redefining bonding.

We also delete formal charges because they get in the way of the SMARTS pattern based matching used in many places.

Parameters:
  • st (schrodinger.structure.Structure intance) – structure to clean
  • mmjag (boolean) – if True use mmjag, else use schrodinger.application.matsci.nano.xtal.connect_atoms
  • cov_offset (float) – additional value to add to covalent radii, applicable only if mjag=False
Rtype st:

schrodinger.structure.Structure instance

Returns:

the cleaned up structure

schrodinger.application.jaguar.autots_bonding.canonicalize_atom_names(st)

Canonicalize the atom names

Parameters:st (Structure) – Structure containing atoms to name
class schrodinger.application.jaguar.autots_bonding.ReactiqStructureReader(*args, **kwargs)

Bases: schrodinger.structure.StructureReader

Local version of StructureReader which redefines bonding when reading

schrodinger.application.jaguar.autots_bonding.copy_autots_atom_properties(st1, st2)

copy all known atom-level AutoTS-specific properties from st1 to st2. Atoms in st1 and st2 must be in the same order.

schrodinger.application.jaguar.autots_bonding.copy_autots_st_properties(st1, st2)

copy all known structure-level AutoTS-specific properties from st1 to st2.

schrodinger.application.jaguar.autots_bonding.copy_autots_bond_properties(st1, st2)

copy all known bond-level AutoTS-specific properties. Atoms in st1 and st2 must be in the same order but the bonds do not. However, a bond with the same atom indexes and bond order must exist in order to copy the properties.

schrodinger.application.jaguar.autots_bonding.copy_autots_properties(st1, st2)

copy all known atom-, bond- and st-level AutoTS-specific properties from st1 to st2. Atoms in st1 and st2 must be in the same order.

schrodinger.application.jaguar.autots_bonding.clear_autots_atom_properties(st)

clear all known atom-level AutoTS-specific properties.

schrodinger.application.jaguar.autots_bonding.clear_autots_st_properties(st, exceptions=('i_m_Molecular_charge', 'i_m_Spin_multiplicity'))

Copy all known structure-level AutoTS-specific properties. Any properties in exceptions are not cleared (charge and mult by default)

schrodinger.application.jaguar.autots_bonding.clear_autots_bond_properties(st)

clear all known bond-level AutoTS-specific properties.

schrodinger.application.jaguar.autots_bonding.clear_autots_properties(st)

Remove all known atom-, bond- and st-level AutoTS specific properties.

schrodinger.application.jaguar.autots_bonding.zero_order_metal_bonds(st)

Set the order of bonds containing metals to zero.

Parameters:st (Structure instance) – the structure containing metal bonds
schrodinger.application.jaguar.autots_bonding.delete_ghosts(st)

Delete ghost/dummy atoms from the structure and return the modified structure.

Ghosts are identified by the attribute _StructureAtom.atomic_number = 0. The original structure is unmodified.

Parameters:st (Structure instance) – the structure with the ghost atoms
Return type:Structure instance
Returns:the structure without the ghost atoms
schrodinger.application.jaguar.autots_bonding.get_mmlewis_bonding(st, require_charge_conservation=True, debug=False)

Get bonding from mmlewis. Do it molecule by molecule.

Parameters:
  • st (Structure instance) – the structure to get bond orders for (must be connected)
  • require_charge_conservation (boolean) – if True we require the sum of formal charges after running through mmlewis to equal the total charge. (defined either by PROPERTY_KEY_CHARGE or by the sum of formal charges).
schrodinger.application.jaguar.autots_bonding.simplify_structure(st)

Make all bonds single bonds and remove all charges.

Parameters:st (schrodinger.structure.Structure) – a structure
schrodinger.application.jaguar.autots_bonding.remove_formal_charges(st)
schrodinger.application.jaguar.autots_bonding.active_reactant_atom_pairs(reactant, product)

return active atom pairs in reactant structure as a list of pairs of integers

schrodinger.application.jaguar.autots_bonding.active_atom_pairs(reactant, product)

Determine active bonds and return them as lists of pairs of atoms

schrodinger.application.jaguar.autots_bonding.copy_bonding(st1, st2)

Impose the bonding and formal charges of st1 onto st2 The two structures must have the same number of atoms or a ValueError is raised.