Crystal Structure Prediction
This tool predicts the crystal structures a small organic molecule is likely to form. A crystal structure is the regular, repeating arrangement the molecules settle into in the solid state. The same molecule can often pack in more than one way, and each distinct packing is called a polymorph.
You give it a single molecule, either as a SMILES string (a short text encoding of the molecule, for example c1ccccc1 for benzene) or as an uploaded geometry file. It runs a crystal structure prediction pipeline that generates and ranks candidate packings. If you already have an experimental crystal for the molecule, you can upload it and the tool will compare its predictions against it.
Provide exactly one of smiles or molecule_filename.
When to use it
Section titled “When to use it”Use it early in development of any solid organic material, such as a drug substance, to understand which crystal forms a molecule might adopt before you commit to lab work. Knowing the possible polymorphs up front helps you anticipate which form is most stable and avoid surprises later. The optional experimental comparison is useful when you want to check how well the prediction reproduces a crystal you have already measured.
Inputs
Section titled “Inputs”| Input | Required | What it is |
|---|---|---|
smiles | one of | The molecule as a SMILES string, for example CC(=O)Oc1ccccc1C(=O)O for aspirin. Provide this or molecule_filename, not both. |
molecule_filename | one of | The molecule as an uploaded geometry file instead of a SMILES string. Provide this or smiles, not both. |
preset | yes | How thorough the search is. test is a tiny run for checking the setup, quick (the default) is a fast lower accuracy pass, and full is the most thorough and slowest. |
exp_cif_file | no | An experimental crystal structure to compare the predictions against, uploaded as a CIF file (the standard text format for crystal structures). |
exp_is_lowest_polymorph | no | Set to true if the experimental crystal you uploaded is known to be the most stable form. Defaults to false. |
How to run it
Section titled “How to run it”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.
In Azulene Studio
Section titled “In Azulene Studio”Open Crystal Structure Prediction from the tools list, then on the Inputs and Parameters step enter a SMILES string (or upload a geometry file), choose a preset (quick is a good first run), then Review and Submit.
From the Python SDK
Section titled “From the Python SDK”from opal import jobs
result = jobs.submit( job_type="crystal_prediction", input_data={ "smiles": "CC(=O)Oc1ccccc1C(=O)O", "preset": "quick", },)From the CLI
Section titled “From the CLI”Pass the inputs as a JSON string.
opal jobs submit --job-type crystal_prediction \ --input-data '{"smiles": "CC(=O)Oc1ccccc1C(=O)O", "preset": "quick"}'Reading the result
Section titled “Reading the result”You get back a set of predicted crystal structures, ranked from most to least stable, written as CIF files you can download from the Files tab and open in a crystal structure viewer. Each one is a candidate polymorph, a distinct way the molecule was predicted to pack.
Alongside the structures, the result reports a relative stability for each predicted form, so you can see which packings are favored. When you provide an experimental crystal, the result also reports how closely the predictions match it, so you can judge how well the run reproduced the known form.
Provide exactly one of smiles or molecule_filename. Start with the quick preset to get a feel for the runtime on your molecule before moving to full, since a thorough search is considerably more expensive. The pipeline uses a CPU orchestrator that fans work out to GPUs, so runtime grows with the size and flexibility of the molecule and with how thorough the chosen preset is.