Skip to content

Generate Conformers

Generate Conformers

Build a set of low energy 3D shapes for a small molecule from its SMILES string.

Generate Conformers takes a molecule written as a SMILES string and produces a set of three dimensional shapes for it. A conformer is one specific 3D arrangement of the same molecule, the way its bonds happen to twist and fold in space. A single molecule can fold into many different shapes, and this tool gives you several of the most reasonable ones.

A SMILES string is a short line of text that spells out which atoms a molecule has and how they are connected, for example CCO for ethanol. On its own a SMILES string says nothing about 3D shape, so this tool fills that in.

Each conformer it produces is also energy minimized, which means the geometry is nudged until the atoms sit in a comfortable, low strain arrangement, and the tool reports the energy of each one so you can tell the better shapes from the worse ones.

Use it when you have a molecule as a SMILES string and you need actual 3D coordinates for it, for example as a starting point for docking, for visualization, or as input to another calculation that needs a real geometry rather than a flat description. Ask for several conformers when the molecule is flexible and you want to see the range of shapes it can take, or just one when you only need a single reasonable structure.

InputRequiredWhat it is
smilesyesSMILES notation of the molecule, for example CCO for ethanol.
num_conformersyes, default 5, min 1, max 100How many conformers to generate. More gives a wider sample of possible shapes but takes longer.

Submit your molecule from Azulene Studio, the Python SDK, or the CLI. New here? The Get started page walks through installing, logging in, and running a ready made example first.

Open Generate Conformers from the tools list, then on the Inputs and Parameters step enter the SMILES string of your molecule and set how many conformers you want, then Review and Submit.

from opal import jobs
result = jobs.submit(
job_type="generate_conformers",
input_data={
"smiles": "CCO",
"num_conformers": 5,
},
)

Pass the inputs as a JSON string.

Terminal window
opal jobs submit --job-type generate_conformers \
--input-data '{"smiles": "CCO", "num_conformers": 5}'

The result has four fields:

  • conformers: a list of the generated 3D structures, one block of text per conformer. Each block lists every atom and its x, y, z coordinates.
  • format: the text format the structures are written in, for example xyz.
  • energies: a list of numbers, one per conformer, giving the minimized energy of that shape. A lower energy means a more stable, more favorable shape, so the conformer with the smallest energy is usually the one you want.
  • num_generated: how many conformers were actually produced.

In Azulene Studio the conformers are listed in a table ranked by energy, lowest energy first, with a bar chart of the per conformer energies. The number generated is shown as a headline figure at the top.

Asking for more conformers samples more of the possible shapes but takes longer. The energies are relative scores for ranking the shapes of this one molecule against each other, so use them to pick the best conformer rather than to compare different molecules.