schrodinger.application.phase.shape_screen_reporter.prop_utils module

APIs for calculating and filtering shape screen report properties.

Copyright Schrodinger LLC, All Rights Reserved.

schrodinger.application.phase.shape_screen_reporter.prop_utils.add_physicochemical_properties(st, max_atoms=150)[source]

Adds DEFAULT_VSDB properties to the provided structure if it appears to be a ligand. Adds ION_CLASS_VSDB only if the structure contains the property EPIK_IONIZATION_PENALTY.

Parameters
  • st (structure.Structure) – Structure to which properties are to be added

  • max_atoms (int) – Properties are not added if the number of atoms exceeds this value

schrodinger.application.phase.shape_screen_reporter.prop_utils.add_physicochemical_properties_to_hits(hits_file_in, hits_file_out, max_atoms=150)[source]

Calls add_physicochemical_properties for each structure in hits_file_in and writes the resulting structures to hits_file_out.

Parameters
  • hits_file_in (str) – Input Maestro/SD file of hits

  • hits_file_out (str) – Output Maestro/SD file

  • max_atoms (int) – Properties are not added if the number of atoms exceeds this value

schrodinger.application.phase.shape_screen_reporter.prop_utils.is_ligand(st, max_atoms)[source]

Returns True if the number of atoms in the provided structure is less than or equal to max_atoms and the structure is not a pharmacophore hypothesis.

Parameters
  • st (structure.Structure) – The structure in question

  • max_atoms (int) – Cutoff on the total number of atoms

schrodinger.application.phase.shape_screen_reporter.prop_utils.read_property_filters(source, delim=',')[source]

Reads property filters and returns a phase.PhpDbPropertyQuery object that can be used to query a phase.PhpDbPropertyTable. Each line/element of source must contain a single property filter in the following format, assuming comma delimiters:

<property>,<operator>,<value1>[,<value2>…]

Where,

<property> is an m2io-style property name

<operator> is ‘=’, ‘<’, ‘>’, ‘<=’, ‘>=’, ‘<>’, ‘BETWEEN’, ‘LIKE’ or ‘IN’

<value1>[,<value2>…] is a list of the appropriate number of values. Must be exactly 2 values in the case of BETWEEN, 1 or more values for IN and exactly 1 value for all other operators.

For example:

i_vsdb_Stereo_Centers,<,2 r_vsdb_AlogP,BETWEEN,2.0,5.0 s_vsdb_Ion_Class,LIKE,%Basic s_vsdb_Property_Class,IN,Druglike,Near-Druglike,Leadlike

Parameters
  • source – Name of file containing the property filters or an iterable object of property filter strings

  • delim (str) – Delimiter that separates values in each string

Returns

Property filter query

Return type

phase.PhpDbPropertyQuery

Raise

ValueError if source is formatted incorrectly, or if any filter is invalid

schrodinger.application.phase.shape_screen_reporter.prop_utils.read_property_filters_from_iterable(source, delim=',')[source]

Reads property filters from an iterable of strings and returns a phase.PhpDbPropertyQuery.

Parameters
  • source (Iterable of str) – Iterable that contains property filters as delimited strings. Blank strings and strings that start with or contain only the comment character ‘#’ are skipped.

  • delim (str) – Delimiter that separates values in each string

Returns

Property filter query

Return type

phase.PhpDbPropertyQuery

Raise

ValueError if a filter is formatted incorrectly, or if a filter is invalid

schrodinger.application.phase.shape_screen_reporter.prop_utils.summarize_properties(property_table, newline=False)[source]

Returns a string containing the names and ranges of the properties in the provided property table.

Parameters
  • property_table (phase.PhpDbPropertyTable) – Table of integer, real and string properties

  • newline (bool) – Whether to add a newline to the end of the summary

Returns

Summary of the properties

Return type

str

schrodinger.application.phase.shape_screen_reporter.prop_utils.get_numeric_property_range(property_name: str, reporter: phase.PhpShapeScreenReporter) Tuple[Union[int, float]][source]

Return the value range of a numeric property.

Parameters
  • property_name – The property name to evaluate

  • reporter – The shape screen reporter containing property data