Matching Pharmacophores
For maximum efficiency, a mapping is checked for whether it can match a
pharmacophore in a series of steps ordered by increasing computational
complexity:
- The 2D limits are checked: this test ensures that the topological
distances between the features (or between the atoms in the features)
do not exceed the pharmacophores threshold values.
- The 3D limits are checked: in this test the molecular distance
bounds matrix is compared to the pharmacophore's distance requirements.
If the molecular bounds matrix is compatible for this mapping, the
matrix is updated.
- Triangle bounds smoothing is attempted to ensure that the updated
bounds matrix still satisfies the triangle inequality.
Any mapping which passes all three tests is considered to be a likely
candidate for matching the pharmacophore and is reported as a "hit".
Note: Bounds matrices that pass
triangle bounds smoothing are not absolutely guaranteed to be
physically embeddable (i.e. they will not produce valid 3D geometries).
This means that some small number of hits from the pharmacophore
matching process will be false positives. This will become apparent
when the user actually attempts to generate structures for these hits.