Differences between revisions 3 and 4
Revision 3 as of 2007-12-04 20:56:49
Size: 1772
Editor: SteveLudtke
Comment:
Revision 4 as of 2007-12-04 21:47:58
Size: 3465
Editor: SteveLudtke
Comment:
Deletions are marked like this. Additions are marked like this.
Line 8: Line 8:

'''Approach 1:'''
Line 20: Line 22:

'''Approach 2:'''
Run [wiki:EMAN1/Programs/Refine2D refine2d.py] on your data. You can directly examine the class-averages in iter.final.hed and/or the MSA basis images in basis.X.hed to look
for symmetry. You can use 'symbest' on the class-averages after centering to find the best particles/averages with a particular symmetry, or you could perform rotational
correlation analysis on the centered particles.

There is no user program for doing rotational correlation analysis, but this little python script (you can type it interactively as shown) will read the first image from
avg.hed and make a rotational correlation plot in one degree increments. Note that the python 'range' command works with integers only, so if you want to use a finer increment
than 1 degree, you will have to also modify (i*pi/180.0).
 
{{{python
from EMAN import *
from math import *

a=EMData()
a.readImage("avg.hed",0)
b=a.copy()
out=file("results.txt","w")

for angle in range(0,360):
    b.setRAlign(i*pi/180.0,0,0)
    b.rotateAndTranslate()
    out.write("%d\t%f\n"%(i,a.dot(b)))

out.close()}}}
 
In general, if none of the techniques give you an 'obvious' symmetry, more mathematical approaches likely aren't going to give you a more reliable answer. The
rotational correlation analysis is useful in publications to give some level of quantification to the results. However this entire approach is somewhat questionable
from a robust mathematical perspective as there are many 'tricks' you can play with the data which will dramatically enhance the appearance of the rotational
correlation plot without substantively altering the underlying data...

Question: Symmetry determination - Do you have a facility for calculating rotational power spectra ? How can I determine the symmetry of my particles ?

Answer: This can be done in EMAN, though it doesn't use rotational power spectra. While we have played with rotational power spectra in the past we didn't find them to be very reliable, and don't currently have an end-user tool for this.

Approach 1: First, center the particles: cenalignint particles.hed maxshift=<pixels>

  • (warning, this can use a lot of memory. You should have 3x as much ram as the size of the file you operate on. If not, use the frac= option)

- or - proc2d particles.hed centered.hed <center | acfcenter>

One of those three should do a decent job centering your particles (they do not need to be in the same orientation).

Then take the centered data and run : startcsym centered.hed <# top view particles to keep> sym=<trial symmetry>

While this is also designed to look for side views, it will find top views (with the corresponding symmetry) very nicely.

So, pick a trial symmetry, and run startcsym. Then look at the first 2 image in classes.hed and the first image in sym.hed. The first image in classes.hed is an unsymmetrized particle with the strongest specified symmetry. The first image in sym.hed is a symmetrized version. If the two look the same and have a visible symmetry, you've probably got the right answer. Repeat for all possible symmetries. The answer will usually stand out very clearly, and can be presented in publication by showing the 2 images side-by-side for each trial symmetry. Note that there are some known situations (detached virus portal complexes, for example) where a single data set may contain particles with multiple symmetries.

Approach 2: Run [wiki:EMAN1/Programs/Refine2D refine2d.py] on your data. You can directly examine the class-averages in iter.final.hed and/or the MSA basis images in basis.X.hed to look for symmetry. You can use 'symbest' on the class-averages after centering to find the best particles/averages with a particular symmetry, or you could perform rotational correlation analysis on the centered particles.

There is no user program for doing rotational correlation analysis, but this little python script (you can type it interactively as shown) will read the first image from avg.hed and make a rotational correlation plot in one degree increments. Note that the python 'range' command works with integers only, so if you want to use a finer increment than 1 degree, you will have to also modify (i*pi/180.0).

FAQ_EMAN_USING_20 (last edited 2009-01-14 15:57:40 by root)