---
title: Outputs & Exports
description: Interpret XTalNet crystal structure prediction and polymorph screening outputs.
---

Both XTalNet tools return a job with `status` (`submitted` | `running` | `completed` | `failed`) and, on completion, CIF structures plus energy or stability data. These let you rank candidate crystal forms, compare polymorphs, and export structures to downstream tools like [PyWPEM](/docs/pywpem).

## xtalnet_csp_predict outputs

- **`structures_cif`**: CIF files with the predicted crystal structures
- **`energy_landscape_json`**: JSON with `{structures: [{energy_kcal, space_group, density, cell_parameters}]}` for every candidate
- **`summary_csv`**: CSV with `[structure_id, energy, space_group, a, b, c, alpha, beta, gamma]`
- Result metrics: `n_structures`, `n_unique`, `energy_range`, `top_space_groups`, `overall_confidence`

## xtalnet_polymorph_predict outputs

- **`polymorphs_cif`**: CIF files for each distinct polymorph
- **`stability_ranking_json`**: JSON with `{forms: [{form_id, energy_kcal, stability_rank, is_metastable}], transition_risks: []}`
- **`pharmaceutical_properties_csv`** (when `include_pharmaceutical_properties` is enabled): CSV with `[form_id, solubility, dissolution_rate, bioavailability_class]`

## Quick sanity checks

- Confirm `job.status === "completed"` before reading artifacts — a `failed` job has no CIF output
- Check `overall_confidence` (CSP) or `stability_rank`/`is_metastable` (polymorph) against your `min_confidence_threshold` before trusting a low-ranked candidate
- For polymorph screening, cross-check `n_unique`/distinct forms against `polymorph_similarity_threshold` — a low threshold can split one real form into several near-duplicate entries

## Export for downstream tools

- Feed a predicted `structures_cif`/`polymorphs_cif` entry into [PyWPEM](/docs/pywpem)'s `simulate_xrd` to generate the diffraction pattern that structure would produce, or into [OpXRD](/docs/opxrd) to search for a matching experimental pattern.
- Keep the CIF file alongside its `structure_id`/`form_id` so downstream jobs can be traced back to the candidate that produced them.

## Common issues

- **Job fails immediately**: neither a SMILES string nor PXRD data (with a formula) was provided — see [inputs & restraints](/docs/xtalnet/inputs).
- **Too few unique structures**: raise `num_candidates`, or for polymorph screening, lower `polymorph_similarity_threshold` to separate near-duplicate forms.
- **Low-confidence results across the board**: lower `min_confidence_threshold` to see more candidates, then triage manually rather than trusting the default cutoff.

## Canvas Visualization

When an XtalNet job completes, a result card appears on the canvas.

- **Card size**: 400x450px
- **Border color**: Purple (#9C27B0)
- **Visualization**: 3D crystal viewer with unit cell

### Tier 2 Metrics

- Confidence score (%)
- Structures predicted count
- Space group
- Match score (%)
- Polymorph count
- Bioavailability prediction (%)
- Solubility prediction

## Read next
