EMAN2 is a broadly based greyscale scientific image processing suite with a primary focus on processing data from transmission electron microscopes. EMAN's original purpose was performing single particle reconstructions (3-D volumetric models from 2-D cryo-EM images) at the highest possible resolution, but the suite now also offers support for single particle cryo-ET, and tools useful in many other subdisciplines such as helical reconstruction, 2-D crystallography and whole-cell tomography. EMAN2 is capable of processing large data sets (>100,000 particle) very efficiently.
Documentation
Usage
EMAN2 can be run through an interactive Slurm session. Use srun --pty -p gpu --gres=gpu:1 --x11 bash
to start a session with an allocated GPU and X11 forwarding.
Note that when using an Mac laptop, there is a known issue where EMAN2 will not work under XQuartz. It is recommended to use the NoMachine cluster as a work-around.
$ module load EMAN2 # start the Project Manager $ e2projectmanager.py # OR bring up the single image display $ e2display BGal_000031.hdf
With the first command, the project manager window will be displayed.
Alternatively, the second command will be used to analyze a specific image using two windows.
Slurm script
A sample script for running inside a batch script.
#!/bin/bash #SBATCH --job-name=EMAN2 #SBATCH --time=8:00:00 #SBATCH --partition=norm #SBATCH --ntasks=30 #SBATCH --mem=256G #SBATCH --mail-type=END #SBATCH --mail-user=username@mail.nih.gov module load EMAN2 e2refine_easy.py --input=sets/all-bad__ctf_flip.lst --model=initial_models/BGal_000031.hdf \ --targetres=7.0 --speed=5 --sym=d7 --iter=3 --mass=800.0 --apix=1.07 --classkeep=0.9 --m3dkeep=0.8 \ --threads=${SLURM_NTASKS}:/scratch/cluster_scratch/${USER} --classrefsf e2bdb.py -cF
Build instructions for those who are curious
module load python/3.12
git clone https://github.com/cryoem/eman2.git
mkdir -p eman2/build; cd eman2/build
cmake -DCMAKE_INSTALL_PREFIX=/mnt/nasapps/production/EMAN2/2.91 ..
make && make install