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

CrystalPredictorcposs logo
Project background DMACRYS licencing Publications Computational notes

CrystalPredictor search output and what to do with it

  1. Checking the search as it runs (see)
  2. What crystals.out means
  3. Finding your experimental crystal structure
  4. Other things to watch out for

Checking the search as it runs (see)

There is a programme called see which is found in /home/cposs/CrystalPredictor/ on cposs, which you should copy to your search folder. To run it, type

./see n z

where n is the number of molecules in the asymmetric unit and z is the number of structures you want to appear on your chart (if you have an X-windows programme running). Other information output is the number of minimisations that have completed so far, how many have failed and why, and the most stable structures. Unfortunately, the most stable structures are not yet clustered, so you may only see 3 or 4 unique structures in the list of 20, and not many in the 10,000 or so on your chart.

The reasons why minimisations are failing is critical. If many are failing on cell lengths or angles, you should consider restarting the search with different parameters in input/input.in If many are failing on torsions, your grid is limiting the search, so check the crystals.out file, and edit the grid as appropriate if you are using CrystalPredictor1.x. If only 1% or less are failing, you are probably getting an extensive enough search.

What crystals.out means

The crystals.out file is the full list of all the minimisations, whereas crystals_stable.out is only the most stable, successful minimisations. It's easiest to view in Excel. Insert a line at the top, and copy the following into it for the column headings and split at the spaces.

space_group reason_for_fail Sobol_sequence_number 1 Z' No.of_reminimization_attempts Status_of_reminimization_attempts 2 3 4 5 6 Type_of_molecule Total_lattice_energy Intramolecular_energy Uvdw Uelec Ureal Umol_corr Usurf Upre . Density Volume exectim a b c alpha beta gamma xyz_of_molecular_axis 2 3 euler_angles 2 3

Some columns are repeated for second or third molecules. Following this are the flexible torsion angles in radians. (to convert to degrees, type "=DEGREES(cell)" in an empty cell).

  • If the reason for fail is -5, that means that one or more torsion angles are hitting the bounds set in molecules.in (input.in for CrystalPredictor 2.0 and above), and the torsion angles will be equal to either the start or end value of one of your ranges.
  • If the reason for fail is -2, that means that it is failing on cell angles.
  • If the reason for fail is -4, that corresponds to volume. This is not structures that have reached the minimum cell density limit set in input.in - those don't start to be minimized. This is those structures that reach a hard limit set into the code after returning from the minimizer.
  • If the reason for fail is 6, the NAG minimizer has not returned a converged structure, but it is close to convergence and should be included (some versions of the code include them and some do not). This happens a lot less frequently with a rigid search. There is usually a file called crystals_IFAIL6.out which can be appended to crystals-stable_out before Analyse is run if you want to include these structures.
  • With version 2.x of the code that uses LAMs, it is possible for a minimization to flit back and fore between two or more LAM points. If this happens, you will see a -7 failure (it is actually set to fail if it changes LAM 20 times, which can also be cuased by having a very large LAM with closely spaced entries, and may need addressing for highly flexible molecules).

Finding your experimental crystal structure

It is possible to minimise your experimnetal crystal structure with the same model, which is useful to see if the experimental structure was found in the search. Create a new search directory, with the same unix_executable and input subdirectories. You need molecules.in, potential.in, space_groups.in, and intra_1_1.pot and charge_1.pot if applicable. You need your experimental crystal structure in .pdb format, which you can get by saving in Mercury.

In the unix_executable directory, you will probably have a programme called Minimise. Run Minimise on the front end, putting the output in Minimise.log.

./Minimise > Minimise.log

This will give you initial and final .spf and .pdb files, and a minimisation_log.out file in the main directory, while in the unix_executable directory you will have Minimise.log. In Minimise.log, you will find the energy and density of the experimental crystal structure.

Although it is possible in a search to have more than 4 torsion angles by splitting a molecule into torsion groups, this is not possible in Minimise. You can split the molecule into torsion groups, but you are limited to 5 fragments in the molecule, and so 4 torsion angles.

Other things to watch out for

If your molecule is particularly long, ensure that rcut in input/input.in is big enough. A bigger cutoff means the search takes longer, but it will be more accurate.

Also, ensure that the ranges for the cell parameters are sufficiently wide to allow most crystals, unless you are looking for something specific.

CrystalPredictor searches within the space groups you have specified, but gives preference to the space groups found more commonly in the CSD. It might be prefereable to have more results in the less common space groups, to ensure that these are not overlooked. To do this, you can split your search into common and less common space groups, search for about 10% of the structures in the less common groups. Once both searches have completed, append crystals.out and crystals_stable.out from one search to the end of the other, and adjust the maximum number of structures in input/input.in (I don't know if this is strictly necessary, but it is how I have always done it), before runAnalyse_x.x.sh is run. This ensures that there is only one structure called 1, and only one called 2.

It is not possible to combine searches from different conformational regions in the same way as combining space groups, as crystals.out does not contain the entire molecule, and this is read in from molecules.in. Using a similar approach to the above leads to some very wierd and wonderful structures with one molecule pasted into an incompatible crystal structure.

© 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