A algorithm for aligning rotation, reflection, and translation between volumes.
Current version: 1.0.5
Project's homepage: https://github.com/ShkolniskyLab/emalign
Date: 08/2023
Please cite the following paper when using this package: Harpaz, Y., & Shkolnisky, Y. (2023). Three-dimensional alignment of density maps in cryo-electron microscopy. Biological Imaging, 3, E8. doi:10.1017/S2633903X23000089
The package has been tested on Ubuntu 18.04 and Windows 10. It should probably work on other versions of Windows and Linux, but has not been tested on them yet. Similarly for macOS.-
Python 3.6.0+ is required.
-
The package makes use of the pyfftw package, which in turn uses the FFTW library. Before installing emalign make sure you have the FFTW library installed on your system: http://www.fftw.org/fftw3_doc/Installation-and-Customization.html#Installation-and-Customization
$ pip install emalign
$ pip install emalign-x.x.x.tar.gz
You can also install the development version of emalign from a cloned Git repository:
$ git clone https://github.com/ShkolniskyLab/emalign.git
$ cd emalign
$ pip install .
$ pip uninstall emalign
$ pip install -U emalign
$ emalign --make-test-data -v
This will download EMD-2660 from EMDB (https://www.ebi.ac.uk/emdb/), downsample it to size 129 pixels (with pixel size 3.74A), and save the downsampled map into map_ref_2660.mrc. The function then rotates and shifts the map (see log messages for the exact transformation parameters) and saves the transformed map to map_transformed_2660.mrc. These two maps can be used to test the alignment algorithm.
Run the alignment algorithm via
$ emalign -v1 ./map_ref_2660.mrc -v2 ./map_transformed_2660.mrc -o ./map_aligned_2660.mrc -v
The algorithm will align v2 to v1, saving the aligned map.
Type
$ emalign -h
for help.