Skip to content

3D reconstruction of individual 2D class averages for RCT OTR

Michael A. Cianfrocco edited this page Jun 9, 2018 · 2 revisions

Home > RCT OTR overall workflow > 3D reconstruction of individual 2D class averages

3D reconstruction of individual 2D class averages

Now that you have run Auto_Align.py on your untilted particle stack, you should have class averages that look like you were expecting: the protein structure in the class average should look even and smooth, maybe even displaying subdomain features.

The following script will combine all the information that you have on your untilted & tilted particles:

  • Tilt angle and axis for the tilted micrographs
  • Rotation angle of particles within class averages
  • Membership of untilted particles within given class averages

This information will allow us to calculate 3D reconstructions using the tilted particles. By using these tilted particles, we are filling in information within Fourier space for the reconstruction.

NOTE: Because of the angle limitations of RCT, there is always a missing 'wedge' of information within Fourier space. This means that while the 3D models might look 'OK', there is missing information that may lead to alignment of artifacts if you are not careful in processing the RCT volumes for further analysis.

The following script calculate_RCT_vols_from_AutoAlign.py requires the user to provide a list of class averages from which to reconstruct the 3D volumes. To do this, open the class average particle stack from your iteration of choice using EMAN:

 v2 align1/auto_iteration_8/classsums8_avg.img

And then record each number as they are listed next to each average, where particle #1 is labeled '0'.

Then, you can run this script:

$ EM-processing-master/2D-classification/$ ./calculate_RCT_vols_from_AutoAlign.py 
Usage: calculate_RCT_vols_from_AutoAlign.py --stack= --tiltinfo= --selfile= --autoalignfolder= --output= --angle= --apix= --radius=

Options:
  -h, --help            show this help message and exit
  --stack=FILE          Tilted stack in imagic format (.img)
  --untiltinfo=FILE     CTFTILT info file for untilted particles
  --tiltinfo=FILE       CTFTILT info file for tilted particles
  --selfile=FILE        List of class numbers to reconstruct in EMAN format
                        (First class average number is '0')
  --autoalignfolder=FILE
                        Absolute path to folder containing the select files &
                        APSH to use for RCT reconstruction
  --output=STRING       Output folder to store RCT volumes
  --angle=INT           Approximate tilt angle (with correct sign) for tilted
                        particles (e.g. -55)
  --apix=FLOAT          Pixel size
  --lptilt=FLOAT        Low pass filter for tilted particles (Default=None).
  --hptilt=FLOAT        High pass filter for tilted particles (Default=None).
  --radius=INT          Radius (pixels) for 3D reconstruction
  --filter=INT          OPTIONAL: User specified low pass filter for RCT
                        volumes during centering routine. Otherwise volumes
                        are filtered to FSC=0.5
  --override            Flag to override CTFTILT files, using ONLY specified
                        tilt angle for RCT reconstruction
  --numparts=INT        IF using OVERRIDE: Input number of particles.
  -d                    debug

**Input options: **

  • --stack - The tilted particle stack, which should have exact correspondence to the untilted stack that was analyzed by Auto_Align.py.
  • --untiltinfo and --tiltinfo - the CTFTILT output files used for particle extraction, which contain the tilt angles to be used for 3D reconstruction
  • --selfile - the list of class averages that you would like to reconstruct. To keep track of your data, it helps to put this file in the auto_iteration folder from which you are reconstructing.
  • --autoalignfolder - the folder containing the iteration of _Auto_Align.py. (e.g. align1/auto_iteration_8/)
  • --output - A new folder in which to store the output RCT volumes for each class requested. To keep track of your data, it helps to put this output folder in the auto_iteration folder from which you are reconstructing (e.g. align1/auto_iteration_8/rct_vols1).
  • --angle - To help ensure that the correct tilt angle is being used, provide the tilt angle used when collecting your data along with the sign (if negative).
  • --apix - Pixel size of the tilted particles
  • --lptilt and --hptilt - Low pass and high pass filters for the tilted particles. Providing a low pass and high pass filter helps to remove noise during the reconstruction. Recommended values: low pass @ 25 Angstroms and high pas @ 500 Angstroms.
  • --radius - radius (in pixels) that will be used to mask away any extraneous densities from your structure. This number should NOT exclude any of your protein density.
  • --filter - This is a low pass filter that the user can provide to filter the 3D RCT volumes during particle centering. We recommend that you do NOT use this option. By default, the program will filter all structures to their resolution (FSC=0.5).
  • --override - In the case of inaccurate CTFTILT angles for the tilted micrograph, you can manually input the tilt angle of the tilted micrograph here. This is less accurate than using CTFTILT values, but when CTFTILT outputs incorrect values, this can help you get decent 3D models.
  • --numparts - input number of particles if using the --override command

Example command:

$ EM-processing-master/2D-classification/calculate_RCT_vols_from_AutoAlign.py  --stack=stack2_tilted_dc2_xnorm_sel.img --untiltinfo=ctftilt_untilt.txt --tiltinfo=ctftilt_tilt.txt --selfile=align1/auto_iteration_8/rct_classes1.txt --autoalignfolder=lign1/auto_iteration_8/ --output=lign1/auto_iteration_8/rct_classes1_vols/ --angle=55 --apix=2.48 --lptilt=25 --hptilt=500 --radius=40

Outputs

This script will make a new directory (as specified by the --output option), into which it will put all of the RCT data.

Into this folder, it will be three items:

  • euler_angles.spi - per-particle 3D euler angles that will be used for 3D reconstruction
  • selectFiles - directory containing folders for each RCT volume requested
  • tiltMateStack.spi - filtered and converted tilt mate stack used for 3D reconstruction

For each RCT volume calculated, there will be a folder labeled with the class number within the selectFiles folder (e.g. selectFiles/sel002; selectFiles/sel010, etc.). Each folder for an RCT volume will have the following files present:

  • vol00?.spi - Backprojected 3D RCT structure (unfiltered)
  • _vol00?fq.spi - Filtered, backprojected 3D RCT structure
  • _vol00?dres.spi - Resolution file that can be visualized using gnuplot (see here for more info)
  • _vol00?fq_proj.spi - Projections of the filtered 3D model ONLY along specific euler angles. Will contain some black particle positions.
  • vol100?.spi - Half volume of backprojected 3D volume using for FSC volume calculation
  • vol200?.spi - Half volume of backprojected 3D volume using for FSC volume calculation
  • _vol00?parts_shifted.spi - shifted particles after centering with the 3D model projections
  • _vol00?rotShift.spi - shifted particles used for 3D reconstruction
  • resolution - text file containing FSC resolution for each iteration of RCT centering

These files will be numbered from 1 to 6 because there is a particle centering routine that can improve the quality of the 3D reconstructions. This means that the script works in the following manner:

  1. Backproject tilted particles for first volume (vol001.spi)
  2. Filter volume to resolution (FSC=0.5) (vol001_fq.spi)
  3. Project 3D RCT along euler angle directions of tilted particles (vol001_fq_proj.spi)
  4. Shift tilted particles and save shifted output in new file (vol002_parts_shifted.spi)
  5. Reconstruct using originally calculated euler angles and newly shifted particles (vol002.spi)
  6. Repeat.

This iterative process usually results in the second and third volumes (vol002_fq.spi and vol003_fq.spi) resulting in higher quality 3D reconstructions than the raw, backprojected first volume (vol001_fq.spi).

Therefore, you should open each RCT volume with both:

  • EMAN
    • Using EMAN to visualize the 3D RCT in projection is useful for you to see what the raw density looks like and where there is missing information. This will appear as streaks across particular projection directions
  • Chimera
    • Chimera will help you to see the overall envelope of the structure, but bear in mind that it is an isosurface, so it is not as accurate of a depiction as visualizing the density directly with EMAN
Clone this wiki locally