Indexing: Difference between revisions

From XDSwiki
Jump to navigation Jump to search
(New page: = Indexing = == Indexing images from non-merohedrally twinned crystals (i.e. several lattices) == '''1.''' create your XDS.INP file with JOB= XYCORR INIT COLSPOT IDXREF '''2.''' run fo...)
 
No edit summary
 
(7 intermediate revisions by 2 users not shown)
Line 1: Line 1:
= Indexing =
Please also see [[IDXREF.LP]] !
 
__TOC__
 
== Indexing single images ==
 
It may be advisable to increase INDEX_ERROR to (e.g.) a value of 0.2 (from its default of 0.05). This is because the 3-dimensional spotfinding in COLSPOT cannot produce a good phi estimate for the spots, so a larger error can be expected.


== Indexing images from non-merohedrally twinned crystals (i.e. several lattices) ==
== Indexing images from non-merohedrally twinned crystals (i.e. several lattices) ==
Line 13: Line 19:


'''3.''' split the indexed/non-indexed spots:
'''3.''' split the indexed/non-indexed spots:
  % grep " 0      0      0" SPOT.XDS > SPOT.XDS_bad
  % grep " 0 0 0" SPOT.XDS > SPOT.XDS_bad
  % grep -v " 0       0       0" SPOT.XDS > SPOT.XDS_good
% # for old XDS versions use: grep " 0      0      0" SPOT.XDS > SPOT.XDS_bad
  % grep -v " 0 0 0" SPOT.XDS > SPOT.XDS_good
  % mv SPOT.XDS SPOT.XDS_orig
  % mv SPOT.XDS SPOT.XDS_orig
  % cp -p SPOT.XDS_good SPOT.XDS
  % cp -p SPOT.XDS_good SPOT.XDS
Line 20: Line 27:
  % xds
  % xds
Now you have (basically) indexed lattice 1. You could repeat this step a bit further:
Now you have (basically) indexed lattice 1. You could repeat this step a bit further:
  % grep  -v " 0       0       0" SPOT.XDS > SPOT.XDS_tmp
  % grep  -v " 0 0 0" SPOT.XDS > SPOT.XDS_tmp
  % mv SPOT.XDS_tmp SPOT.XDS
  % mv SPOT.XDS_tmp SPOT.XDS
  % xds
  % xds
Line 32: Line 39:
  % xds
  % xds
Are there still too many spots rejected? Check with
Are there still too many spots rejected? Check with
  % grep -c " 0       0       0" SPOT.XDS    # gives non-indexed spots
  % grep -c " 0 0 0" SPOT.XDS    # gives non-indexed spots
  % grep -vc " 0       0       0" SPOT.XDS  # gives indexed spots
  % grep -vc " 0 0 0" SPOT.XDS  # gives indexed spots
Maybe you have a third (fourth etc) lattice? Then repeat step 3 for this one ... etc
Maybe you have a third (fourth etc) lattice? Then repeat step 3 for this one ... etc


Afterwards run XDS in the lat1 directory with
Afterwards run XDS in the lat1 directory with
  JOB= DEFPIX
  JOB= DEFPIX
and take care to check BKGPIX.pck with the VIEW program (for
and take care to check BKGPIX.cbf with the [[XDS-Viewer]] program (for
beamstop/backstop masking)! Afterwards, copy the final BKGPIX.pck
beamstop/backstop masking)! Afterwards, copy the final BKGPIX.cbf
into the various directories lat2, ... latN. After changing to
into the various directories lat2, ... latN. After changing to
  JOB= INTEGRATE CORRECT
  JOB= INTEGRATE CORRECT
Line 46: Line 53:
'''Notes:'''
'''Notes:'''
* just because XDS decides not to use some spots for indexing doesn't mean these initially non-indexed spots really belong to a separate lattice: compare the indexing/orientation matrices for the different solutions to see if they are significantly different (e.g. related by a one degree rotation). Also, check your images visually (ideally with the predictions on top) to make sure you acrtually have several lattices.
* just because XDS decides not to use some spots for indexing doesn't mean these initially non-indexed spots really belong to a separate lattice: compare the indexing/orientation matrices for the different solutions to see if they are significantly different (e.g. related by a one degree rotation). Also, check your images visually (ideally with the predictions on top) to make sure you acrtually have several lattices.
* the refinement of parameters (during the INTEGRATE step) can be very unstable: often, the spots of the two (or more) lattices are very close together: during data collection, some orientations of the spindle axis might make them move even closer until full overlap. At that point (or shortly after) the parameter refinement might 'jump' into the wrong lattice by chance. So look out for any jumps in parameters (distance, detector origina, scale, mosaicity etc).
* the refinement of parameters (during the INTEGRATE step) can be very unstable: often, the spots of the two (or more) lattices are very close together: during data collection, some orientations of the spindle axis might make them move even closer until full overlap. At that point (or shortly after) the parameter refinement might 'jump' into the wrong lattice by chance. So look out for any jumps in parameters (distance, detector origina, scale, mosaicity etc), or prevent refinement of orientation in INTEGRATE altogether (REFINE(INTEGRATE)= without parameters).
 
== Finding out the angular difference between two lattices ==
 
This can be easily found with "cmpmat" from [http://www.globalphasing.com/autoproc/ GlobalPhasing's autoPROC] package.
cmpmat 01/XPARM.XDS 02/XPARM.XDS P212121
would compare the orientations stored in 01/XPARM.XDS and 02/XPARM.XDS (assuming both were determined for space group P212121), and return the lowest angular difference from all combinations of symmetry-related crystal setting matrices.
  cmpmat 01/XPARM.XDS 02/XPARM.XDS P212121 -2
would return ''all'' angular differences, for ''all'' pairs of symmetry-related crystal setting matrices.

Latest revision as of 08:56, 21 May 2014

Please also see IDXREF.LP !

Indexing single images

It may be advisable to increase INDEX_ERROR to (e.g.) a value of 0.2 (from its default of 0.05). This is because the 3-dimensional spotfinding in COLSPOT cannot produce a good phi estimate for the spots, so a larger error can be expected.

Indexing images from non-merohedrally twinned crystals (i.e. several lattices)

1. create your XDS.INP file with

JOB= XYCORR INIT COLSPOT IDXREF

2. run for lattice 1:

% mkdir lat1
% cp XDS.INP lat1
% cd lat1
% xds

3. split the indexed/non-indexed spots:

% grep " 0 0 0" SPOT.XDS > SPOT.XDS_bad
% # for old XDS versions use: grep " 0       0       0" SPOT.XDS > SPOT.XDS_bad
% grep -v " 0 0 0" SPOT.XDS > SPOT.XDS_good
% mv SPOT.XDS SPOT.XDS_orig
% cp -p SPOT.XDS_good SPOT.XDS

Change to JOB= IDXREF and run

% xds

Now you have (basically) indexed lattice 1. You could repeat this step a bit further:

% grep  -v " 0 0 0" SPOT.XDS > SPOT.XDS_tmp
% mv SPOT.XDS_tmp SPOT.XDS
% xds

This will remove the non-indexed spots and run IDXREF again.

4. index lattice 2:

% mkdir ../lat2
% cp -p * ../lat2
% cd ../lat2
% cp -p SPOT.XDS_bad SPOT.XDS
% xds

Are there still too many spots rejected? Check with

% grep -c " 0 0 0" SPOT.XDS    # gives non-indexed spots
% grep -vc " 0 0 0" SPOT.XDS   # gives indexed spots

Maybe you have a third (fourth etc) lattice? Then repeat step 3 for this one ... etc

Afterwards run XDS in the lat1 directory with

JOB= DEFPIX

and take care to check BKGPIX.cbf with the XDS-Viewer program (for beamstop/backstop masking)! Afterwards, copy the final BKGPIX.cbf into the various directories lat2, ... latN. After changing to

JOB= INTEGRATE CORRECT

you're ready to integrate/process the various lattices.

Notes:

  • just because XDS decides not to use some spots for indexing doesn't mean these initially non-indexed spots really belong to a separate lattice: compare the indexing/orientation matrices for the different solutions to see if they are significantly different (e.g. related by a one degree rotation). Also, check your images visually (ideally with the predictions on top) to make sure you acrtually have several lattices.
  • the refinement of parameters (during the INTEGRATE step) can be very unstable: often, the spots of the two (or more) lattices are very close together: during data collection, some orientations of the spindle axis might make them move even closer until full overlap. At that point (or shortly after) the parameter refinement might 'jump' into the wrong lattice by chance. So look out for any jumps in parameters (distance, detector origina, scale, mosaicity etc), or prevent refinement of orientation in INTEGRATE altogether (REFINE(INTEGRATE)= without parameters).

Finding out the angular difference between two lattices

This can be easily found with "cmpmat" from GlobalPhasing's autoPROC package.

cmpmat 01/XPARM.XDS 02/XPARM.XDS P212121

would compare the orientations stored in 01/XPARM.XDS and 02/XPARM.XDS (assuming both were determined for space group P212121), and return the lowest angular difference from all combinations of symmetry-related crystal setting matrices.

 cmpmat 01/XPARM.XDS 02/XPARM.XDS P212121 -2

would return all angular differences, for all pairs of symmetry-related crystal setting matrices.