Bioisostere Examples

The following table lists the currently available Bioisostere TK examples:

Building Brood Database (CHOMP)

The following code example shows how to build a Brood database from a library of molecules.

This example demonstrates end-to-end fragment database construction, including fragment generation, optional filtering, and writing the final Brood database.

Creating Brood Query

The following code example shows how to create a Brood query from a molecule that could be used for bioisosteric fragment replacements using Brood.

See also

Generating Brood Hits

The following code example shows how to perform bioisosteric fragment replacements on a Brood query and generate a hit list.

Generating Brood Matches

The following code example shows how to perform bioisosteric fragment replacements on a Brood query and generate all possible matches. This could be a use case when generating all possible design ideas using BROOD and postprocessing them with other tools.

Overlay between Fragments

The following code example shows how to overlay a fragment against a query fragment. This could be a use case when working with synthons and trying to find similar synthons based on 3D similarity.

Replacing a Fragment in a Molecule

The following code example shows how to replace a fragment in a molecule defined in the form of a BROOD query.

Building and Using an External Compound Database

The following code example shows how to build and use an external (in-house) compound database to find similar 2D compounds to a generated hit list. It demonstrates optional analog lookup against a user-provided compound database to annotate Brood hits with similar known molecules.

Creating Brood Query by Linking Two Molecules (Bridging)

The following code example shows how to create a Brood query from two molecules to find a suitable linker between the two using bioisosteric fragment replacements using Brood.

See also

Clustering Brood Hits

The following code example shows how to cluster a generated Brood hit list using OEBroodClusterBuilder and OEBroodCluster. It demonstrates post-processing of hits into similarity clusters and cluster-level prioritization.

Building Combined Hits from Different Queries of the Same Molecule with OEBroodComboBuilder

The following code example shows how to use two Brood queries for the same molecule, where the first query is used to select a limited set of primary hits (controlled by -primaryQueryMaxHits) and the second query uses OEBroodComboBuilder to generate all possible secondary (combo) hits from those selected primary hits. The second stage is bounded by -secondaryQueryMaxHits.

This example demonstrates a two-query combo workflow using -in and -in2: it builds primary hits from the first query, expands secondary combo hits from the second query, then clusters and ranks the resulting combo hits before writing the final output molecules.

Curating Scored Fragment Hits with OEScoreHitlist

The following code example shows how to collect scored fragment matches for a query and curate them with OEScoreHitlist.

This example demonstrates score-level deduplication and ranking prior to full molecule building.

See also

Comparing Connection and Molecule Building Outcomes

The following code example shows how to compare connection-table construction and full molecule-building outcomes from curated scored fragments.

This example demonstrates use of OEMolCTBuilder, OEBroodMolBuilder, and OEBroodBuildResult for build diagnostics.