7. scoria.OtherMolecules module

class scoria.OtherMolecules.OtherMolecules(parent_molecule_object)

A class for characterizing the relationships between multiple scoria.Molecule objects.

get_distance_to_another_molecule(other_molecule, pairwise_comparison=True)

Computes the minimum distance between any of the atoms of this molecular model and any of the atoms of a second specified model.

Requires the numpy and scipy libraries.

Wrapper function for get_distance_to_another_molecule()

Parameters:
  • other_molecule (scoria.Molecule) – a scoria.Molecule, the other molecular model.
  • pairwise_comparison (bool) – An optional boolean, whether or not to perform a simple pairwise distance comparison (if True) or to use a more sophisitcated method (if False). True by default.
Returns:

A float, the minimum distance between any two atoms of the two specified molecular models (self and other_molecule).

get_other_molecule_aligned_to_this(other_mol, tethers, weight_mat=None)

Aligns a molecule to self (this scoria.Molecule object) using a quaternion RMSD alignment.

Requires the numpy library.

Wrapper function for get_other_molecule_aligned_to_this()

Parameters:
  • other_mol (scoria.Molecule) – A scoria.Molecule that is to be aligned to this one.
  • tethers (tuple) – A tuple of two numpy.array objects, where each array contains the indices of self and other_mol, respectively, such that equivalent atoms are listed in the same order. So, for example, if (atom 1, self = atom 3, other) and (atom2, self = atom6, other) than the tethers would be (numpy.array([1, 2]), numpy.array([3, 6])).
Returns:

The new molecule.

get_rmsd_equivalent_atoms_specified(other_mol, tethers)

Calculates the RMSD between this scoria.Molecle object and another, where equivalent atoms are explicitly specified.

Wrapper function for get_rmsd_equivalent_atoms_specified()

Parameters:
  • other_mol (scoria.Molecule) – The other scoria.Molecule object.
  • tethers (tuple) – A tuple of two numpy.array objects, where each array contains the indices of self and other_mol, respectively, such that equivalent atoms are listed in the same order. So, for example, if (atom 1, self = atom 3, other) and (atom2, self = atom6, other) than the tethers would be (numpy.array([1, 2]), numpy.array([3, 6])).
Returns:

A float, the RMSD between self and other_mol.

get_rmsd_heuristic(other_mol)

Caluclates the RMSD between two identical molecules with different conformations, per the definition given in “AutoDock Vina: Improving the speed and accuracy of docking with a new scoring function, efficient optimization, and multithreading,”” by Oleg Trott and Arthur J. Olson. Note: Identical means the order of the atoms is the same as well.

Requires the numpy library.

Wrapper function for get_rmsd_heuristic()

Parameters:other_mol (scoria.Molecule) – The other scoria.Molecule object.
Returns:A float, the RMSD between self and other_mol.
get_rmsd_order_dependent(other_mol)

Calculates the RMSD between two structures, where equivalent atoms are listed in the same order.

Wrapper function for get_rmsd_order_dependent()

Parameters:other_mol (scoria.Molecule) – The other scoria.Molecule object.
Returns:A float, the RMSD between self and other_mol.
merge_with_another_molecule(other_molecule)

Merges two molecular models into a single model.

Wrapper function for merge_with_another_molecule()

Parameters:other_molecule (scoria.Molecule) – A molecular model (scoria.Molecule object).
Returns:A single scoria.Molecule object containing the atoms of this model combined with the atoms of other_molecule.
steric_clash_with_another_molecule(other_mol, cutoff, pairwise_comparison=True)

Detects steric clashes between the scoria.Molecule (self) and another scoria.Molecule.

Requires the numpy and scipy libraries.

Wrapper function for steric_clash_with_another_molecule()

Parameters:
  • other_mol (pymolecule.Molecule) – The pymolecule.Molecule object that will be evaluated for steric clashes.
  • cutoff (float) – A float, the user-defined distance cutoff in Angstroms.
  • pairwise_comparison (bool) – An optional boolean, whether or not to perform a simple pairwise distance comparison (if True) or to use a more sophisitcated method (if False). True by default.
Returns:

A boolean. True if steric clashes are present, False if they are not.