OpXRD troubleshooting
Why spacegroup takes a number 1 to 230, not Fm-3m, why Mo K-alpha data scores low against Cu-indexed patterns, and why compute_fingerprint needs a CIF.
This page helps you diagnose why an OpXRD search or similarity match returns no results or low scores, and why pattern data fails validation — usually a filter or data-format mismatch rather than a missing phase.
OpXRD troubleshooting
No patterns found for element search
Symptom: search_patterns returns zero results.
Causes and fixes:
- Rare element combination: The database may not contain patterns for unusual compositions. Try broader filters (single element instead of a combination).
elements_exclusivetoo strict: Switch it fromtruetofalseto include compounds with additional elements beyond the ones listed.- Misspelled element symbol: Element symbols are case-sensitive (
FenotfeorFE). - Wrong spacegroup filter:
spacegrouptakes the space group number (1-230), not a Hermann-Mauguin symbol —"Fm-3m"won't match anything. If you only know the symbol, look up its number or filter bychemical_formula/elementsinstead.
Similarity search returns low scores
Symptom: All matches have similarity below the threshold.
Causes and fixes:
- Wavelength mismatch:
similarity_searchhas no wavelength parameter — it compares raw 2-theta positions. If your experimental data was collected with Mo K-alpha (0.7093 Å) rather than Cu K-alpha (~1.5406 Å), your peaks sit at different 2-theta angles than the database's Cu-K-alpha-indexed patterns and the fingerprint will not match. Convert your pattern to d-spacing or an equivalent Cu-K-alpha 2-theta scale before submittingtwo_theta_values. - Background not subtracted: High background noise dilutes the fingerprint signal. Subtract the background before running similarity search, or use PyWPEM background fitting first.
- Amorphous sample: Amorphous materials produce broad humps rather than sharp peaks. The database primarily contains crystalline patterns.
- Low threshold: Try lowering
similarity_thresholdto 0.5 to see if any weak matches emerge, and trysimilarity_metric: "pearson"or"euclidean"ifcosinescores poorly.
Pattern data validation failed
Symptom: A "Similarity search requires both two_theta_values and intensities arrays" or pattern-validation error.
Fixes:
- Provide both
two_theta_valuesandintensitiesas separate, same-length arrays — there is no combinedpattern_datafield - Two-theta values must be positive
- Intensity values must be non-negative
Job timed out
Symptom: Job exceeds the default timeout.
Causes:
- Similarity search against the full database with a very low threshold can be slow
- Increase the threshold or reduce
max_results - If timeouts persist, the Modal volume may be temporarily unavailable. Retry after a few minutes.
Fingerprint computation fails or returns null
Symptom: compute_fingerprint returns an error or a null fingerprint.
Fixes:
compute_fingerprinttakes a crystal structure (cif_contentorstructure_dict), not a raw diffraction pattern — it is a different input shape fromsimilarity_search. Passingtwo_theta_values/intensitieshere will not work.- Verify the CIF content parses as a valid structure; malformed or incomplete CIF files return
"Failed to compute fingerprint". - If you only have an experimental pattern (no structure), use
similarity_searchinstead, which compares patterns directly rather than computing a structure-derived fingerprint.
Getting help
If issues persist:
- Check the job logs in the .bloom* job panel for specific error messages
- Verify your input format against the examples in the inputs page
- Describe the issue to Ivy
Read next
Was this page helpful?
OpXRD quickstart
Run search_patterns by element, then similarity_search on two_theta_values and intensities — cosine above 0.85 is a strong match, 0.70-0.85 is related.
XTalNet
Predict candidate crystal structures from SMILES or a PXRD pattern, then screen polymorphs and co-crystals — a GPU job returning CIFs plus energies.