Differences between revisions 74 and 148 (spanning 74 versions)
Revision 74 as of 2011-03-04 06:45:10
Size: 5827
Editor: jgalaz
Comment:
Revision 148 as of 2012-07-02 22:31:43
Size: 3620
Editor: jgalaz
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
{{{#!wiki caution
TESTING WIKI ADMONITIONS
}}}
= Single Particle Tomography in EMAN2 =
Line 5: Line 3:
= Single Particle Tomography in EMAN2 =
== Wednesday March 16, 2011 - P.M. Practical EMAN2 SPT tutorial ==
Unfortunately, this technique SPT is very computationally intensive (both in terms of memory and processing speed).
3GB of RAM is the bare minimum recommended to get through the tutorial.
For more realistic SPT on full 3D alignments on large sets of large particles particles, 8GB of memory and the use of multiple processing units is advised.
Line 9: Line 8:
||<style="color: #FF0000; font-weight: bold;"> NOTE that you cannot do a right click and select "save as" to save the linked file. You MUST click on the link, which will take you to a new page, where you must click on a DOWNLOAD button you will find there || == E2SPT USERS' GUIDE ==
Line 11: Line 10:
You can download a nicer version of this tutorial as a PDF or word document. * Single particle tomography USER'S GUIDE (updated on June 2012; under major refactoring do to extensive changes in e2spt capabilities; look for an extensively different version soon)

[[attachment:e2spt_users_guide_06_2012.pdf| e2spt_users_guide_06_2012.pdf|&do=get]]

== DATA ==
Epsilon 15 virus data, used since the EMAN2 Workshop in 2010.

[[http://blake.grid.bcm.edu/wikifiles/SPT/e2spt_data.zip|e2spt_data.zip]]

TRiC chapeornin data (NOT READY).

[[attachment:e2spt_data_apoTRiC.zip| e2spt_data_apoTRiC.zip|&do=get]]

== COMMANDS (for easy "copy-pasting" into the command line ==

=== Monstrous command for alignment with e2spt_classaverage.py (used to be e2classaverage3d.py) ===

e2spt_classaverage.py --input=e15pp_set1_stack.hdf --output=e15pp_set1_aligned.hdf --ref=e15ref_prep_icos_bin2.hdf --npeakstorefine=1 -v 3 --mask=mask.sharp:outer_radius=48 --lowpass=filter.lowpass.gauss:cutoff_freq=.02:apix=4.401 --align=rotate_translate_3d:search=10:delta=8:dphi=8:verbose=1:sym=icos --parallel=thread:2 --ralign=refine_3d_grid:delta=3:range=9:search=2 --averager=mean.tomo --aligncmp=ccc.tomo --raligncmp=ccc.tomo --shrink=3 --shrinkrefine=3 --savesteps --saveali --iter=8 --normproc=normalize --sym=c1 --keep=0.8 --path=whatever_folder_I_want
Line 14: Line 30:
|| === <style="color: #FF0000; font-weight: bold;"> PDF === ||
[[attachment:eman2_spt_tutorial.pdf]]
Line 17: Line 31:
Or as a Word 2008 document === Monstrous command for alignment with e2spt_hac.py (used to be e2tomoallvsall.py) ===
Line 19: Line 33:
||<style="color: #FF0000; font-weight: WORD DOCUMENT;"> ||
[[attachment:eman2_spt_tutorial.docx]]
e2spt_hac.py -v 1 --path=AVSAs087 --input=CENTEREDvsD8aliVSapo_s087.hdf --shrink=3 --shrinkrefine=2 --iter=87 --mask=mask.sharp:outer_radius=36 --npeakstorefine=16 --preprocess=filter.lowpass.gauss:cutoff_freq=.02:apix=4.401 --align=rotate_translate_3d:search=4:dphi=12:delta=12 --parallel=thread:24 --ralign=refine_3d_grid:delta=3:range=12:search=2 --averager=mean.tomo --aligncmp=ccc.tomo --raligncmp=ccc.tomo --saveali --savesteps -v 2 --postprocess=filter.lowpass.gauss:cutoff_freq=.02:apix=4.401 --autocenter --exclusive_class_min=8 --normproc=normalize
Line 23: Line 36:
SPT (single particle tomography) capabilities are relatively new in EMAN2. They were inspired by Michael Schmid's studies on sub-volume averaging (mostly on viruses), and a stubborn student's insistence on doing extensive sub-volume averaging on chaperons. === Not-so-monstrous command for e2spt_simulation.py (used to be e2tomosim.py) ===
e2spt_simulation.py --input=../groRef_scaled_bin2.hdf --snr=5 --nptcls=2 --tiltstep=5 --tiltrange=60 --transrange=10 --saveprjs --noiseproc=math.addnoise
Line 25: Line 39:
This session will cover the beta version of a small fraction of the possibilities for SPT processing EMAN2 will eventually offer.
Line 27: Line 40:
== OUTLINE ==
 * 1) SPT processing through EMAN2's workflow (e2workflow.py)
 * 2) Sub-volume extraction from tomograms using EMAN2's 3D particle picking tool (e2tomoboxer.py)
 * 3) "Preparation" of extracted particles for alignment. [Details later. /!\ For a myriad of reasons, it is NOT recommendable to align and average sub-volumes directly after extraction without "preparing" them first].
 * 4) Reference-based alignment and averaging.
 
 <!> ''PLEASE NOTE that "particle" and "sub-volume" are used interchangeably''
=== Semi monstrous command for e2spt_resolutionplot.py ===
e2spt_resolutionplot.py --vol1=half1avg.hdf --vol2=half2avg.hdf --output=whatever3.txt --npeakstorefine=1 --verbose=3 --shrink=3 --shrinkrefine=2 --mask=mask.sharp:outer_radius=36 --preprocess=filter.lowpass.gauss:cutoff_freq=.02:apix=4.401 --align=rotate_translate_3d:search=4:dphi=30:delta=30:sym=icos --parallel=thread:8 --ralign=refine_3d_grid:delta=15:range=30:search=2 --aligncmp=ccc.tomo --raligncmp=ccc.tomo --postprocess=filter.lowpass.gauss:cutoff_freq=.02:apix=4.401 --normproc=normalize --sym=icos
Line 35: Line 43:
== SOFTWARE ==
All necessary software is provided as part of EMAN2. If you don't have EMAN2 installed, you can download the most updated version (for your specific platform, Windows, Linux or Mac), from here:
 
[[http://ncmi.bcm.edu/ncmi/software/counter_222/software_86]]
Line 40: Line 44:
== RAW DATA ==
We have prepared sample data for this tutorial. The tomogram in the link below comes from a tilt series of epsilon15 virus particles ''in vitro'', recorded using Zernike phase-plate technology:
=== Decent command for e2spt_rotationalplot.py ===
e2spt_rotationalplot.py --input=initModel.hdf --output=toAs129avsaAVG.txt --daz=1 --shrink=1 --dalt=180 --mask=mask.sharp:outer_radius=28
Line 43: Line 47:
[[attachment:e15phaseplate.rec]]
Line 45: Line 48:
The following tomogram also comes from a tilt series of epsilon15 viruses ''in vitro'' but was recorded under conventional cryoEM imaging conditions:

[[attachment:e15normal.rec]]

== BOXING ==
There are two options for opening the tomogram for purposes of boxing it.

1) Directly, by typing e2tomoboxer.py followed my the path to the tomogram file at the commandline.

2) Or you can launch e2workflow.py from the commandline and access a tomogram through the browser in the tomographic menu.

[In theory, you can open a tomogram for contemplation purposes by typing: "e2display.py <my_tomogram_path_name_goes_here>" at the commandline.
/!\ This is NOT recommendable, unless you have a grossly large (VERY, VERY large) amount of virtual memory on your computer; otherwise, catastrophe WILL befall upon you].

Let's explore the FIRST APPROACH.

=== OPENING A TOMOGRAM DIRECTLY WITH e2tomoboxer.py ===
To launch the GUI that will show you the tomogram (you're free to choose whichever you prefer, "e15normal.rec" or "e15phaseplate.rec") type the following COMMAND #001 at the commandline:

||<style="color: #FF0000; font-weight: bold;">COMMAND #001||
{{{
e2tomoboxer.py e15normal.rec --yshort --inmemory
}}}

 ''' ''EXPLANATION'' '''

 '''To specify --yshort, or not to'''

  This option will FLIP the orientation of your tomogram respect to the Y and Z coordinates. You should ONLY specify it IF the tomogram has its smallest/slimmest dimension running along the Y-axis, so that it becomes parallel to the Z-axis instead.

 '''Ok... but WHY? What does this mean?'''

  Some tomograms are built with the slimmest part of the 3D volume (that corresponding to the "ice thickness" in cryoEM) running along the Y-axis. BUT '''__in EMAN2 volumes are displayed such that the Z-axis is perpendicular to the screen__'''. If you open one of these tomograms "as is", you'll be looking at it "from the side".
  Most of the time you want the slimmest part of the volume to be aligned along Z (NOT Y), so you can see the tomogram "from the TOP", and look at the entire CCD-captured area in the XY plane slice by slice, as you go through the volume.

 '''--inmemory'''

  This option pre-loads your tomogram to memory, allowing to box particles (or do whatever you want to do in e2tomoboxer) more smoothly (faster), because reading data from memory is faster than reading it from disk.

  You can get the entire list of options that e2tomoboxer.py takes (not many at this point) and some sort of explanation of what they're for by typing the following at the commandline:
  {{{
  e2tomoboxer.py -h
  }}}

If you ran the command and took a leap of faith in skipping the explanation, you will probably have already clicked a few things in the GUI (Graphical User Interface with nice 'clickable' buttons) that popped up.
''~-(I hope you did; extensive explanations really ought to be read only when following the execution boxes doesn't work smoothly, when you're confused, when you have a lot of time to spare and nothing better to do, or when you're a purist [slightly OCD] about reading manuals in their entirety with the noble purpose of getting the most out of them).-~''

=== USING THE WORKFLOW FOR SPT ===

The e2tomoboxer.py GUI should look like this:
{{attachment:image.png|alt text|width=100 height=150}}

This window is called __

You will notice...

== PREPARED COORDINATE FILES ==

[[attachment:e15phaseplate_coords.txt]]

[[attachment:e15normal_coords.txt]]

== REFERENCES ==

[[attachment:e15reference_prepared_icos.hdf]]

[[attachment:e15reference_raw.hdf]]
=== Command for e2spt_radialdensityplot.py ===
e2spt_radialdensityplot.py --vols=volA_aligned.hdf,volB_aligned.hdf --normproc=normalize.edgemean --lowpass=filter.lowpass.gauss:cutoff_freq=0.02:apix=4.401 --singleplot --output=volAali_VS_volBali.png

Single Particle Tomography in EMAN2

Unfortunately, this technique SPT is very computationally intensive (both in terms of memory and processing speed). 3GB of RAM is the bare minimum recommended to get through the tutorial. For more realistic SPT on full 3D alignments on large sets of large particles particles, 8GB of memory and the use of multiple processing units is advised.

E2SPT USERS' GUIDE

* Single particle tomography USER'S GUIDE (updated on June 2012; under major refactoring do to extensive changes in e2spt capabilities; look for an extensively different version soon)

e2spt_users_guide_06_2012.pdf

DATA

Epsilon 15 virus data, used since the EMAN2 Workshop in 2010.

e2spt_data.zip

TRiC chapeornin data (NOT READY).

e2spt_data_apoTRiC.zip

COMMANDS (for easy "copy-pasting" into the command line

Monstrous command for alignment with e2spt_classaverage.py (used to be e2classaverage3d.py)

e2spt_classaverage.py --input=e15pp_set1_stack.hdf --output=e15pp_set1_aligned.hdf --ref=e15ref_prep_icos_bin2.hdf --npeakstorefine=1 -v 3 --mask=mask.sharp:outer_radius=48 --lowpass=filter.lowpass.gauss:cutoff_freq=.02:apix=4.401 --align=rotate_translate_3d:search=10:delta=8:dphi=8:verbose=1:sym=icos --parallel=thread:2 --ralign=refine_3d_grid:delta=3:range=9:search=2 --averager=mean.tomo --aligncmp=ccc.tomo --raligncmp=ccc.tomo --shrink=3 --shrinkrefine=3 --savesteps --saveali --iter=8 --normproc=normalize --sym=c1 --keep=0.8 --path=whatever_folder_I_want

Monstrous command for alignment with e2spt_hac.py (used to be e2tomoallvsall.py)

e2spt_hac.py -v 1 --path=AVSAs087 --input=CENTEREDvsD8aliVSapo_s087.hdf --shrink=3 --shrinkrefine=2 --iter=87 --mask=mask.sharp:outer_radius=36 --npeakstorefine=16 --preprocess=filter.lowpass.gauss:cutoff_freq=.02:apix=4.401 --align=rotate_translate_3d:search=4:dphi=12:delta=12 --parallel=thread:24 --ralign=refine_3d_grid:delta=3:range=12:search=2 --averager=mean.tomo --aligncmp=ccc.tomo --raligncmp=ccc.tomo --saveali --savesteps -v 2 --postprocess=filter.lowpass.gauss:cutoff_freq=.02:apix=4.401 --autocenter --exclusive_class_min=8 --normproc=normalize

Not-so-monstrous command for e2spt_simulation.py (used to be e2tomosim.py)

e2spt_simulation.py --input=../groRef_scaled_bin2.hdf --snr=5 --nptcls=2 --tiltstep=5 --tiltrange=60 --transrange=10 --saveprjs --noiseproc=math.addnoise

Semi monstrous command for e2spt_resolutionplot.py

e2spt_resolutionplot.py --vol1=half1avg.hdf --vol2=half2avg.hdf --output=whatever3.txt --npeakstorefine=1 --verbose=3 --shrink=3 --shrinkrefine=2 --mask=mask.sharp:outer_radius=36 --preprocess=filter.lowpass.gauss:cutoff_freq=.02:apix=4.401 --align=rotate_translate_3d:search=4:dphi=30:delta=30:sym=icos --parallel=thread:8 --ralign=refine_3d_grid:delta=15:range=30:search=2 --aligncmp=ccc.tomo --raligncmp=ccc.tomo --postprocess=filter.lowpass.gauss:cutoff_freq=.02:apix=4.401 --normproc=normalize --sym=icos

Decent command for e2spt_rotationalplot.py

e2spt_rotationalplot.py --input=initModel.hdf --output=toAs129avsaAVG.txt --daz=1 --shrink=1 --dalt=180 --mask=mask.sharp:outer_radius=28

Command for e2spt_radialdensityplot.py

e2spt_radialdensityplot.py --vols=volA_aligned.hdf,volB_aligned.hdf --normproc=normalize.edgemean --lowpass=filter.lowpass.gauss:cutoff_freq=0.02:apix=4.401 --singleplot --output=volAali_VS_volBali.png

Ws2011/Spt (last edited 2012-07-05 01:16:47 by jgalaz)