Setting up external software tools

Focus supports a lot of image processing tasks in cryo-EM. To carry out many of these tasks, we depend on the great free software developed by the community. Some of these are essential for the functioning of Focus and others are optional. The required packages also depend on the technique you use for reconstruction. Here we list all the packages categorised as required and optional.

Essential

The softwares in this category are compulsory and MUST be installed independent of anything.

(t)CSH

CSH is a Unix shell and a scripting language widely used in the electron microscopy field for historical reasons. One would not be able to run anything from FOCUS without CSH. FOCUS requires its successor, TCSH, which is better and safer. In modern Linux distributions, csh is just a symbolic link to tcsh. Please make sure this is the case in your system. If not please install tcsh >6.0 and make sure that csh links to it.

gawk

gawk is a more powerful version of the command-line utility awk. Install gawk on OSX with “brew install gawk”. On Linux, try “sudo apt-get install gawk”.

Python and PILLOW

Many utilities and specific-purpose tools used by FOCUS are written in the Python scripting language (version 2.7.x). We recommend using a scientific Python installation like Anaconda or Canopy. You can also use the EMAN2.2 Python environment based on Anaconda (see below).

You also need pip and the module pil (or pillow).

On OSX, try

xcode-select --install

brew install python2.7

pip3 install pillow

or alternatively:

pip install pillow

On Linux, try:

  • apt-get install python2.7 (or yum install python2.7)
  • apt-get install python3
  • pip3 install pillow
  • pip3 install matplotlib

and make sure in the Preferences panel of FOCUS, that FOCUS is using this python2.7 binary, which may reside in /usr/local/bin/python2.7

Or to install those in python2.7:

  • /usr/bin/python -mpip install -U pillow
  • /usr/bin/python -mpip install -U matplotlib

MRCZ

Many of the Python scripts called within FOCUS rely on the Python-MRCZ module. You can install mrcz in your Python environment with the following pip command:

pip install mrcz

Please ensure you have a version >= 0.5.1 of mrcz.

NumExpr

For accelerating some heavy calculations in Python scripts, FOCUS uses the NumExpr evaluator. You can install numexpr in your Python environment with the following pip command:

pip install numexpr

EMAN2

EMAN2 is a great package with lots of tools available. We might not use the tools present in EMAN2 directly, but we definitely use python distribution attached with the source. EMAN2 is easy to install and is available for MacOS and Linux on their website: http://blake.bcm.edu/emanwiki/EMAN2

If you want to use the EMAN2 python (that is python 2.7), then you can link that python in the FOCUS Preferences dialogue, on MacOS for example as /Applications/EMAN2/bin/python2.7 (or, where-ever you installed EMAN2).

If you compile FOCUS from source (which is recommended), sure that the build_all script does not accidentally use the EMAN2 version of qmake. You can test this by typing in a terminal which qmake, or qmake --version, to see, which qmake shows up first in your path. If the EMAN2 qmake is taken first, you might want to rename that to a different qmake name, such as “qmake-4.8.7”.

IMOD

We directly use many command line utilities present in IMOD. It can be downloaded from the website: http://bio3d.colorado.edu/imod/

CCP4 (Only for 2D crystallography projects)

Focus uses CCP4 in order to generate merged maps of the protein in 2D crystallography projects. The software can be downloaded from http://www.ccp4.ac.uk/download.php. Please follow their installation guide.

Software for drift correction

Drift correction can be done using MotionCor2, Unblur or Zorro. In case you require to do the drift correction using one of these software, please install the required software using the links below:

CTF determination software

In all projects, CTF can be determined for each frame using CTFFIND4 or for the averaged frame using gCTF. These softwares need to be installed separately from the links below, if you wish to use them.

For 2D crystallography projects, CTF determination and correction is done using the CTFFIND3. The source code and executables are attached with the packages and you do not need to install it separately.

Other usage based software

There are several other software packages listed below that are to be installed for specific purposes.

Particle Picking

Particle picking can be done using following software:

Single particle refinement for 2D crystallography

If you wish to do SPR for 2D crystallography, you would need following dependencies.

Remote monitoring

For a hastle-free data transfer for remote monitoring, you would need to install following software:

  • cadaver: Available with all the package managers