This is an old revision of the document!
The SMARTS language is designed to describe substructure patterns in molecules, and to overcome the limitations of simple substructure matching. The SMARTS query filter at mcule.com provides nearly full SMARTS language support, based on the Indigo implementation of SMARTS.
Using the SMARTS query filter you can select or eliminate molecules containing specific SMARTS patterns. The filter allows multiple SMARTS queries. Molecules matching with ALL or ANY of the queries can be either included to or excluded from the result collection.
SMARTS query filter is a powerful and flexible tool to perform complex structural queries impossible to describe with a simple Substructure search. For example, if you are seeking for molecules containing a phenol substituted with any halogen atoms at para position, you can easily define the corresponding SMARTS pattern, and do the search.
Things become more interesting if you consider the batch functionalities. Using proper lists of SMARTS queries you can effectively eliminate problematic (non-druglike, toxic, reactive) molecules from a collection; thus you can use the SMARTS filter to build up your own REOS (Rapid Elimination of Swill) filter. Another use case is to generate a collection of specific structures, for example, strong acids or bases, using specific SMARTS. All you need is a list of SMARTS queries and to apply the appropriate settings.
You can specify multiple SMARTS queries in one filter, and apply one of the following settings:
INCLUDE molecules matching ANY of the SMARTS queries (default)
INCLUDE molecules matching ALL of the SMARTS queries
EXCLUDE molecules matching ANY of the SMARTS queries
EXCLUDE molecules matching ALL of the SMARTS queries
For example the first option returns all molecules that match any of the SMARTS patterns. To use a REOS-like setup, you should use the ‘EXCLUDE, ANY’ combination.
Molecules satisfying search criteria
SMARTS filter available in the Free package has the following limitations: - max 5 queries per filter - max 1 filter per workflow To get access to unlimited SMARTS query filter, subscribe to our Library Design package.
Our implementation of SMARTS does not support the differentiation between explicit and implicit hydrogens. In addition, ‘up or unspecified’ and ‘down or unspecified’ notations (‘/?’ and ‘\?’), square-planar, triagonal-bipyramidal and octahedral stereo configurations are not supported.
If you would like to get further information on SMARTS format, visit the following web pages by Daylight (developer of the SMARTS language):