Trees | Indices | Help |
|
---|
|
Functions for analyzing Structure objects.
AslLigandSearcher is a class that identifies putative ligands in a structure. Each putative found ligand is contained in a Ligand instance.
There are also a number of functions for using SMARTS, ASL, and SMILES (e.g. evaluate_smarts or generate_smiles). Other functions return information about a structure (i.e. get_chiral_atoms or hydrogens_present). There are also several SASA (Solvent Accessible Surface Area) functions (i.e. calculate_sasa_by_atom and calculate_sasa_by_residue and calculate_sasa).
See also the discussion in the Python API overview.
Copyright: Schrodinger, LLC. All rights reserved.
|
|||
AslLigandSearcher Search a Structure instance for putative ligands with an Atom Selection Language expression. |
|||
Ligand A putative AslLigandSearcher ligand structure with read-only data and convenience methods. |
|
|||
dict |
|
||
list |
|
||
|
|||
|
|||
(bool, str) |
|
||
list |
|
||
list |
|
||
list |
|
||
list |
|
||
str |
|
||
bool |
|
||
list |
|
||
generator |
|
||
list |
|
||
bool |
|
||
|
|||
str |
|
||
|
|||
str |
|
||
bool |
|
||
list |
|
||
list |
|
||
str |
|
||
bool |
|
||
bool |
|
||
bool |
|
||
iterator of tuples |
|
||
int |
|
||
list of (_StructureAtom, _StructureAtom) |
|
||
int |
|
||
list |
|
||
|
|||
|
|||
list |
|
||
list |
|
||
float |
|
||
list |
|
||
numpy array
|
|
||
tuple |
|
||
list |
|
||
structure.Structure |
|
||
List of list of list of ints |
|
||
List of int lists |
|
||
|
|||
list of str |
|
|
|||
smiles = None hash(x) |
|||
_canvas_license = None hash(x) |
|||
_canvas = None hash(x) |
|||
logger = log.get_logger("schrodinger.structutils.analyze")
|
|||
_initializer = mminit.Initializer([mm.mmstereo_initialize, mm.
|
|||
__package__ =
|
|
Return a dictionary of chiral atoms, for which the key is the atom index and the value is one of the following strings: "R", "S", "ANR", "ANS", "undef". ANR and ANS designate "chiralities" of non-chiral atoms that are important for determining the structure of the molecule (ex: cis/trans rings).
|
Search for substructures in Structure This function uses the mmlib implementation (mmpatty) of SMARTS matching. See also evaluate_smarts_canvas, which uses the Canvas libraries to
evaluate SMARTS patterns. This function may be deprecated in favor of the
Returns a list of lists of ints. Each list of ints is a list of atom indices matching the SMARTS pattern.
|
Initialize _canvas and smiles variables. Since the canvas modules may take some time to import, before it an function loading time. |
Check whether a SMARTS pattern is valid or not.
|
Evaluate SMARTS patterns using the Canvas libraries. Returns a list of lists of ints. Each list of ints is a list of atom indices matching the SMARTS pattern.
|
Takes a structure and a SMARTS pattern and returns a list of all matching atom indices, where each element in the list is a group of atoms that match the the SMARTS pattern. The advantage of this function over evaluate_smarts_canvas is that it does a SMARTS match for each molecule in a structure rather than over the entire structure at once. SMARTS evaluation scales as N^2 with the size of the structure searched. Doing many SMARTS evaluations over small molecules will have a significant speedup over one SMARTS evaluation over a composite structure. The return value of this function is identical to the return value of the evaluate_smarts_canvas function (or evaluate_smarts function if canvas=False) with the possible exception of the order of the matches. Do not use this function if the SMARTS match can span molecules. This simply fails to match invalid SMARTS patterns and also discards any empty matches. Additional keyword arguments are passed to the SMARTS matching function
|
Search for multiple SMARTS substructures in Structure Return a list of lists of ints. Each list of ints is a list of atom indices matching a SMARTS pattern. The multiple SMARTS patterns are combined into one list.
|
Search for the MacroModel-style substructure expression in Structure
|
Generate and return an atom expression for the atoms in Structure
|
Validate the given ASL expression. This is useful for validating an ASL when a structure object is not available - for example when validating a command line option. NOTE: A warning is also printed to stdout if the ASL is not valid.
|
Search for substructures matching the ASL (Atom Specification
Language) string
|
Return atoms matching the ASL string
|
Return the smallest set of smallest rings (SSSR) in
See also the schrodinger.structure.Structure.find_rings method and the schrodinger.structure.Structure.ring iterator. This method may be deprecated at some point in favor of those methods. The return value is a list of lists of ints. Each list of ints corresponds to a ring, and the integer values are the atom indices.
|
Return True if all hydrogens are present in Structure Since all modern force fields require hydrogens, this is a good check to make sure that a structure is ready for force field calculations. This function is implemented by checking to see if the structure can be used as-is in a calculation with OPLS2003.
Warning: Requires atom types to be correct. Consider calling {Structure.retype} first. |
Return a SMILES string for For more options, see the schrodinger.structutils.smiles.SmilesGenerator class.
|
Deprecated: Use generate_smarts_canvas instead. |
Return a SMARTS pattern for atoms
|
Return True if atom1-atom2 represents an H-bond where either atom1 or atom2 is the acceptor heavy atom, and the other atom is the donor hydrogen. NOTE: If you are searching for hbonds, it is almost certainly preferable to use hbond.get_hydrogen_bonds(st1, st2). To match as hydrogen bond,
|
Generate crystal mates for the input Structure Return a list of structures that represent the crystal mates. (Note that the first item in the list represents the identity transformation and as such will be identical to the input structure.) All crystal mates within The crystal parameters can be specified as parameters to this function or can be standard PDB properties of the input structure. If the structure was read from a PDB file then these crystal properties will usually be present. The group_radius is used in the crystal mates calculation to determine whether a symmetric element is in contact with the ASU. There should be little reason to change the default value of 14.0.
|
Search the specified structure for overlapping atoms. Returns a list of (atom1index, atom2index) tuples.
|
Return a string for the molecular formula in Hill notation for the
|
Determine whether an atom might be in a rotatable bond.
|
Determine whether a bond is a ring edge.
|
Return True if specified bond is rotatable, False otherwise. A bond is considered rotatable if all of the following are true...
|
Return an iterator for rotatable bonds (atomnum1, atomnum2) in the structure. See the is_bond_rotatable function description for which bonds are considered rotatable.
|
Return the number of rotatable bonds in the Structure
|
Iterate over hydrogen bond between the atoms specified by the
NOTE: This function has been updated to simply act as a wrapper to hbond.get_hydrogen_bonds to ensure that hbonds are determined consistently.
|
Calculate the the number of hydrogen bonds in If NOTE: This function is now simply a wrapper to the more flexible schrodinger.structutils.interactions.hbond.get_num_hbonds.
|
Find atoms in the structure that are equivalent. For example, all three hydrogens on a methyl group are equivalent. Returns a list, each value of which is a list of atoms that are equivalent.
|
Deprecated: This function only returns a rough approximation to the solvent accessible surface area. Please use the calculate_sasa function instead. |
Deprecated: Deprecated in favor of calculate_sasa, which is more accurate. |
Calculate the solvent-accessible surface area (SASA) for the whole structure, or an atom subset, and returns a list of floats.
|
Calculate the solvent-accessible surface area (SASA) for the whole structure, or an atom subset, and then group them by residue.
|
Calculate the solvent-accessible surface area (SASA) for the whole structure, or an atom subset.
|
Simple function interface for AslLigandSearcher class. |
Get the x, y, z coordinates for the center of mass. This can be limited to a subset of atoms. NOTE: Periodic boundary conditions (PBC) are NOT honored.
|
Calculate the principal moments of inertia for a list of atoms. This is calculated with respect to the x, y, and z coordinates of the atom's center of mass.
|
Find the shortest path of bonded atoms that connects atom1 to atom2 The conversion of this routine to use networkx rather than scipy resulted in a dramatic reduction in both time and memory usage.
|
Calculate the average structure between the given conformers.
|
Find the maximum substructure that is common between all specified CTs. If any of the structures matches the substructure SMARTS more than once, then all matches are reported - that is why output a "triple" list. Outer list represents input structure, next list represents matches, and inner list is list of atom indices for that match. It's up to the calling code to decide which of the multiple matches to use (one method is to use the one whose center-of-mass is closest to the COM of the whole ligand). NOTE: This function becomes exponentioally slow with larger number of structures. Recommened maximum around 30 structures.
|
Find the maximum common substructures for each pair of the given CTs. NOTE: This function becomes exponentioally slow with larger number of structures. Recommened maximum around 30 structures.
|
Groups the atoms by molecule connectivity. Returns a list of atom groups. Each group is a list of atoms that are in the same "molecule" - that are bonded to each other, counting only atoms in specified list. If multiple atoms are in the same molecule, but are separated by atoms that are not in the list (e.g. 2 covalent ligands bound to same protein), they will be grouped separately.
|
Return a set of property names that are common to all selected structures.
|
|
_initializer
|
Trees | Indices | Help |
|
---|
Generated by Epydoc 3.0.1 on Wed Jan 25 01:17:41 2017 | http://epydoc.sourceforge.net |