# Methodology

## Introduction

This program uses distance geometry [Blaney1994,Crippen1981] to do pharmacophore searches and to generate a set of molecular conformations that match a pharmacophore. The matching conformations are "cleaned up" using a molecular force field [Rappe1992, Casewit1992] and aligned to the reference pharmacophore.
The general algorithm for finding matching conformations for a probe molecule is:

1. Build the distance bounds matrix for the probe
2. Find all mappings of the pharmacophore's feature types onto the probe
3. Find all compatible mappings by searching through the mappings to find those where the probe's bounds matrix is compatible with the pharmacophore's distance requirements
4. Generate molecular conformations for each compatible mapping, "clean up" the resulting conformations using a force field, then align those conformations to the reference pharmacophore.
5. Score the generated alignments using several metrics.