Analyse results

From Relion
Jump to navigation Jump to search

Output files

For every iteration, RELION will output the following files:

  • rootname_it???_class???.mrc (or rootname_it???_class???.mrcs for 2D refinements) with the images of the refined 2D/3D structures.
  • rootname_it???_optimiser.star with general information about the optimisation process.
  • rootname_it???_model.star with information about the refined model parameters apart from the images (e.g. the noise spectra, the spherical average of the signal-to-noise ratios in the reconstructed structures, the distribution of the images over the classes, the angular distributions, etc.
  • rootname_it???_data.star with for each particle: information about their CTF, optimal orientation, translation and class assignment, normalisation correction, height of the (normalised) probability distribution, etc
  • rootname_it???__sampling.star with information about the angular and translational sampling


Note that for the 3D auto-refine procedure a gold-standard FSC procedure is employed, where two models are refined independently. This will lead to the following model and class files:

  • rootname_it???_half1_class001.mrc and rootname_it???_half2_class001.mrc
  • rootname_it???_half1_model.star and rootname_it???_half2_model.star

Only upon convergence of the 3D auto-refine procedure is a single reconstruction made from all particles. This reconstruction and the corresponding model.star file are called:

  • rootname_class001.mrc
  • rootname_model.star

After this final reconstruction, no optimiser.star file is written out, because this reconstruction may no longer be used in further refinement. If your 3D auto-refine run has not produced the final model files (i.e. without the "it???" statement), then it has not finished yet. Check your stderr and stdout to see what has happened and re-start the refinement from the last performed iteration using the "Continue old run" option from the top of the GUI. The correct resolution of your final map is as indicated in the rootname_model.star file, NOT as in the rootname_it???_half?_model.star files!

What to look out for

There are many things one may want to monitor. The most common indicators to look out for are given below. For a complete list of all metadata labels, on the command-line type: relion_refine --print_metadata_labels.

Monitor resolution

The highest resolution for which at least one of the models has SSNR^MAP>1 is stored as _rlnCurrentResolution in the _optimiser.star files. Therefore, progress in terms of resolution may be monitored using:

grep rlnCurrentResolution *model.star

The fall-off of SSNR^MAP with resolution for each model is stored in the tables called data_model_class_N (with N being the number of the corresponding class) in the _model.star files. It is often insightful to have a look at these tables in the files themselves. Alternatively, one may use the STAR file utilities to make a plot (requires gnuplot to be installed), using:

relion_star_plottable rootname_it025_model.star data_model_class_1 rlnSsnrMap rlnResolution

Although it may be better to rerun gnuplot and plot the produced plot with a limited Y-range:

gnuplot
gnuplot> set yrange [0:20]
gnuplot> load "gnuplot.plt"

Alternatively, one may use the relion_star_printtable script to make a text file with any table for visualization in an alternative plotting program. For example, one could visualize the final gold-standard FSC curve from a 3D auto-refine procedure using:

relion_star_printtable rootname_model.star data_model_class_1 rlnResolution rlnFscRandomHalves  >  goldstandardFSC.dat
xmgrace goldstandardFSC.dat

Monitor convergence behaviour

The 3D auto-refine option (but not the 2D or 3D classification) writes out general information about convergence (such as angular sampling used, estimated accuracy of the angular assignments, resolution, etc) in the stdout file. One can get a quick overview using:

grep Auto myrun.out

Monitor changes in particle orientations and class assignments

The changes in optimal (i.e. with the highest posterior probability) class and orientation assignments may be monitored using:

grep rlnChangesOptimalOffsets *model.star
grep rlnChangesOptimalOrientations *model.star
grep rlnChangesOptimalClasses *model.star

Monitor class distribution

Likewise, the distribution of all images over the various classes is stored in the table called data_model_classes in the _model.star files. Again, looking in the file itself may be easiest, or alternatively a plot may be made using the relion_star_plottable script:

relion_star_plottable rootname_it025_model.star data_model_classes rlnClassDistribution

Angular distribution

The angular distribution for each model is stored in the table data_model_pdf_orient_class_N in the _model.star files, with N being the class number. The actual angles (rot and tilt) for these values are stored in the rootname_sampling.star file. combination of these two files could be used to make fancy plots, but no utility for this has been implemented yet.

Per-image indicators

The _data.star files store per-image indicators. Apart from the obvious orientational and class assignments, look out for the following variables:

  • _rlnMaxValueProbDistribution: values close to one indicate that the probability distributions over all orientations and classes have converged to near-delta functions. Values close to zero indicate great uncertainty in the assignments (i.e. near-even distributions). Typically, these values increase during multiple iterations (with constant sampling rates)
  • _rlnLogLikeliContribution: higher values mean better agreement between experimental data and model. This variable is the equivalent of the cross-correlation coefficient or phase residual in other programs. One could make histograms of all values in order to disard particularly bad images.

Linear plots of these values for each image may be made using:

relion_star_plottable rootname_it025_data.star data_images _rlnLogLikeliContribution

Select images based on per-image indicators

Sometimes it is useful to select a subset of images for further refinement based on their per-image indicators. For example, all images belonging to a certain class, or all images with a minimum contribution to the LogLikelihood. See the FAQs page how to do that.

Map sharpening

Although the maps that are output by RELION are aleady optimally filtered from a signal-to-noise point of view, they still need to be sharpened to account for the envelope function in the combined imaging and image processing procedures. For maps higher than 10 Angstrom resolution, the recommended way of filtering your maps is as explained in Rosenthal & Henderson (2003). Easy-to-use implementations of this procedure have been made in the program EMBfactor and in the XMIPP package (xmipp_correct_bfactor). Please do note that weighting the map with the FSC-curve is NOT necessary anymore: this has been taken care of already inside the RELION reconstruction. The only remaining thing to do is to apply the negative B-factor as determined from the plateau in the Guinier plot beyond 10 Angstrom. If RELION indicates the resolution of the map is for example 7 Angstrom, then one may typically apply the B-factor correction until a somewhat higher resolution, say 7 Angstrom. For example, the corresponding commands in XMIPP (v2.4) would be:

xmipp_convert_spi22ccp4 -i run1_class001.mrc -o run1_class001.spi
xmipp_correct_bfactor -i run1_class001.spi -o run1_class001_autob.spi -auto -sampling 1.77 -maxres 7    

The sharpened map can then be used for fitting atomic models, displaying in Chimera, etc.

For maps that do not extend beyond 10 Angstroms one may apply some adhoc negative B-factors. However, the effect of B-factor sharpening will be much smaller than for the higher resolution maps.