Warning: This page uses Cascading Style Sheets. We recommend you upgrade to a current version of your favourite browser.

AutoFIDELcposs logo
Project background DMACRYS licencing Publications Computational notes

Using AutoFIDEL

Description

FIDEL was a programme written by Martin Schmidt to search through powder patterns generated from a CSP search for matches with an experimental crystal structure. See the original paper for more details.

This has been adapted by Jonas Nyman to work efficiently for our CSP datasets.

Manual

Download the manual

File locations on cposs

The files you need are located in /home/cposs/UTILITIES/AutoFIDEL/ on cposs.

Instructions

  1. In your folder, you need:
    1. a powder pattern as .xy
    2. a .cif containing ALL the computer-generated crystal structures you want to compare. To generate this:
      1. Copy the REFCODE_res folder from the dataportal upload folder.
      2. Copy reformat_all and reformat.py to your local folder.
        • Unless you are using a recently uploaded search from CrystalOptimizer minimized structures, you may need to change a number of lines in reformat_all.
          • Line 18 describes the .res filename, and needs to be consistent with your stable_list_clus.
          • Line 24 describes how you are naming the individual output .cif files. Also, many other lines below need to use this file.
          • Line 27 strips off the structure name from the individual .cif files.
          • Line 37 puts the REFCODE, rank and structure name into the overall .cif
        • If you want to have the rank in the .cif structure name, this seemed the easiest way to do it. If you have a better solution, please let Louise know. "data_" is included in too many places in the .cif.
      3. Copy the stable_list_clus file to the local folder.
      4. Set up the Python environment
      5. Enable X-windows.
      6. Type:
        ./reformat_all REFCODE
        to generate a single .cif with all your structures in.
    3. autofidel.py
  2. Set up the Python environment
  3. Type:
    python autofidel.py -p yourpowderfile.xy -c yourrefcode_CSP.cif > yourname.log
  4. This will output:
    1. autofidel.log, which lists all the interesting structures at the end
    2. yourname.log, which lists cell parameters and optimized cell parameters, with the similarities before and after optimization
    3. matches.cif, which has the optimized structures for all the interesting structures listed in autofidel.log

Notes on running, and improving output

  • AutoFIDEL only optimizes the cell parameters, so fractional coordinates will distort the molecule within the cell. (Remember that the peak positions are determined by the unit cell size and shape, and the intensities are detemined by the atomic positions. AutoFIDEL is only optimizing your structures to fit the peak potitions.)
  • Optimization runs in two stages, with different widths for the window function. First, a coarse optimization with a wide window. Then a finer window on only the ones with matching peak positions. Only the really good matches will pass, and sometimes the score decreased in version 0.32 if the match is not great. This shouldn't happen with 0.4, because the numbers are reported differently for the two optimization stages.
  • If you unit cell has higher than Primitive centering, try using AutoFIDEL with the Primitive cell. Also, you may get different results with different cell settings for those space groups that can have them (P21/c, P-1, etc).

If you don't get any results

If you are not getting any matches, this is possibly because AutoFIDEL only optimizes structures where the starting similarity is over 0.35. The change this, use the option -s:

python autofidel.py -p yourpowderfile.xy -c yourrefcode_CSP.cif -s 0.30 > yourname.log

other options are:

-s
to reduce the threshold for optimization. The default is that the .cif must match the powder pattern with RMSD > 0.35 for optimization to be carried out, but this can be reduced to 0.2 if you want.
-t
to change the maximum 2theta angle considered from the default of 35 degrees. this should be changed if there are high angle peaks in the pattern. There is no way of changing the default minimum from 5 degrees at present.

Additional utilities

Two small utility scripts are included.

The script equalize.py makes experimental powder patterns strictly equidistant in 2theta. It is not necessary to use it, but the cross correlation and similarity scores will not be exact if the pattern is not equidistant.

The script xy2xye.py converts .xy patterns to the .xye file format. Again, it is not necessary to use it, AutoFIDEL can read either file format. It is useful if only .xy data is available and the pattern needs to be background-corrected in DASH.

© UCL Chemistry Department 2022. This page was last updated on 17 August, 2022. If you have any problems with this page please email the WebMaster