====== SPHIRE 1.1 ======
===== What's New =====
Main features added in this release:
* Restacking program: Functionality includes the easy re-extraction and re-centering of particles based on the shift information obtained from 3D refinement, as well as straightforward exchange of CTF information.
* Moon eliminator: This new tool replaces the previous resample/clipping step after RVIPER. Among other functions, it automatically filters the initial volume, eliminates disconnected densities, and allows for the centering to be adjusted.
===== Tutorial =====
We are currently updating the tutorial to comply with the most recent version. In the meantime, links to the SPHIRE 1.0 tutorial and data sets are included below:
[[:downloads:sphire_1_0|SPHIRE 1.0]]
/*
* SPHIRE tutorial [[https://ftp.gwdg.de/pub/misc/sphire/sphire_1_0/sphire_1_0_tutorial.pdf|high(~40MB)]]|[[https://ftp.gwdg.de/pub/misc/sphire/sphire_1_0/sphire_1_0_tutorial_lowres.pdf|low(~10MB)]] quality
* [[https://ftp.gwdg.de/pub/misc/sphire/sphire_1_0/sphire_1_0_precalculated_results.tar|SPHIRE test dataset - Precalculated results]]
* [[https://ftp.gwdg.de/pub/misc/sphire/test_dataset/sphire_testdata_movies.tar|SPHIRE test dataset - Movies]] - Contains all micrographs
* [[https://www.ebi.ac.uk/pdbe/emdb/empiar/entry/10089/|SPHIRE test dataset - Movies (EMPIAR)]] - Contains only good micrographs
* [[http://grigoriefflab.janelia.org/unblur|Unblur & Summovie (http://grigoriefflab.janelia.org/unblur)]]
* [[ftp://ftp.gwdg.de/pub/misc/sphire/scripts_and_files/|Related files (Scripts, MTF, etc.)]]
*/
===== Download =====
The installer uses Anaconda, which should install independently of the choice of Linux distribution. The Mac installer is experimental. SPHIRE does not support Windows.
* [[ftp://ftp.gwdg.de/pub/misc/sphire/sphire_1_1/sphire_1_1_linux.sh|SPHIRE Linux binary installer]]
* [[ftp://ftp.gwdg.de/pub/misc/sphire/sphire_1_1/sphire_1_1_mac.sh|SPHIRE Mac binary installer (experimental)]]
* [[http://sphire.mpg.de/wiki/doku.php?id=downloads:cryolo_1|CrYOLO download]]
* [[https://github.com/MPI-Dortmund/transphire|TranSPHIRE GitHub page]]
* [[http://grigoriefflab.janelia.org/unblur|Unblur homepage]]
\\
===== Installation preparation =====
Libraries that needs to be installed in advance:
- OpenGL
In order to avoid conflicts with existing installations, we recommend to use a system environment that does not contain any environment variables related to OpenMPI, EMAN2, EMAN, and SPHIRE installations.
Especially, the output of
echo $PATH
should not contain paths to any existing OpenMPI, EMAN2, EMAN, and SPARX installations and
which ompi_info
should output
ompi_info not found.
In case ompi_info is still present, contact your system administrator and ask him/her to remove those PATH variables from the system wide environment settings.
\\
===== Installation instructions =====
==== Binary installation ====
The following installation describes the installation of binary packages. (You can find additional information about the installation at the [[http://blake.bcm.edu/emanwiki/EMAN2/Install|Installing EMAN2]] page.)
Download the installer, run it by typing
cd
bash sphire_1_1_linux.sh # or for Mac: bash sphire_1_1_mac.sh
and follow the instructions given by the installer.
This creates the directory you specified during installation (default ${HOME}/EMAN2).
Now restart your terminal (log out & log in) and make sure that the path to the /bin folder is present in your PATH variable afterwards.
echo $PATH
/bin:
Continue with [[downloads:sphire_1_1#reinstall_pydusa_required|reinstalling Pydusa]].
==== Source code installation within an existing Anaconda installation ====
The following installation describes the installation from source code. (You can find additional information about the installation at the [[http://blake.bcm.edu/emanwiki/EMAN2/Install|Installing EMAN2]] page.)
Clone the git repository for this release:
mkdir # e.g., $HOME/src
cd
git clone https://github.com/cryoem/eman2.git # this will create an eman2 folder containing the current source code from the master branch
cd eman2
git checkout tags/v2.22 # this will checkout the source code from the v2.22 tag
cd ..
Check if it has been successful:
cd eman2
git log | head -n 4
commit f4f3952bdefa462c6d05ecf19a6fa3ca0d7e368b
Author: shadow_walker
Date: Mon Aug 20 20:30:21 2018 -0500
cd ..
Create a new virtual environment with python 2.7.
which conda
PATH/TO/YOUR/ANACONDA/conda
conda create -n sphire_1_1 python=2.7
Install dependencies:
source activate sphire_1_1 or conda activate sphire_1_1 # The 'conda create' command above should tell you which
conda install "conda>=4.5.2" -c defaults
conda install cmake=3.9 -c conda-forge
conda install eman-deps=13 -c cryoem -c defaults -c conda-forge
conda install -n root conda-build -c conda-forge
Create a (out-of-source builds are recommended) and prepare the installation process.
mkdir # e.g., $HOME/src/eman2-build
cd
cmake -DENABLE_OPTIMIZE_MACHINE=ON -DCMAKE_INSTALL_RPATH_USE_LINK_PATH=ON # e.g, $HOME/src/eman2
Install SPHIRE from source.
make -j
make install
Continue with [[downloads:sphire_1_1#reinstall_pydusa_required|reinstalling Pydusa]].
==== Source code installation with its own Anaconda installation ====
The following installation describes the installation from source code. (You can find additional information about the installation at the [[http://blake.bcm.edu/emanwiki/EMAN2/Install|Installing EMAN2]] page.)
Clone the git repository for this release:
mkdir # e.g., $HOME/src
cd
git clone https://github.com/cryoem/eman2.git # this will create an eman2 folder containing the current source code from the master branch
cd eman2
git checkout tags/v2.22 # this will checkout the source code from the v2.22 tag
cd ..
Check if it has been successful:
cd eman2
git log | head -n 4
commit f4f3952bdefa462c6d05ecf19a6fa3ca0d7e368b
Author: shadow_walker
Date: Mon Aug 20 20:30:21 2018 -0500
cd ..
Install Miniconda version 4.5 for python 2.7.
wget https://repo.continuum.io/miniconda/Miniconda2-4.5.4-Linux-x86_64.sh
bash Miniconda2-4.5.4-Linux-x86_64.sh -b -p # e.g., $HOME/SPHIRE_1_1
Add the bin folder of the installation (e.g., $HOME/SPHIRE_1_1/bin) to your PATH variable and, if possible, make sure to remove the variables LD_LIBRARY_PATH, DYLD_LIBRARY_PATH and PYTHONPATH for the installation process.
Check:
which conda
$HOME/SPHIRE_1_1/bin/conda
Install conda dependencies.
conda install "conda>=4.5.2" -c defaults
conda install cmake=3.9 -c conda-forge
conda install eman-deps=13 -c cryoem -c defaults -c conda-forge
conda install -n root conda-build -c conda-forge
Create a (out-of-source builds are recommended) and prepare the installation process.
mkdir # e.g., $HOME/src/eman2-build
cd
cmake -DENABLE_OPTIMIZE_MACHINE=ON -DCMAKE_INSTALL_RPATH_USE_LINK_PATH=ON # e.g., $HOME/src/eman2
Install SPHIRE from source.
make -j
make install
Continue with [[downloads:sphire_1_1#reinstall_pydusa_required|reinstalling Pydusa]].
==== Reinstall Pydusa (Required) ====
=== Preparations ===
The current procedure is broken, therefore some files need to be replaced.
This fix also allows a more easy linkage to an already existing OpenMPI version on the system.
1. Download the necessary files: ftp://ftp.gwdg.de/pub/misc/sphire/sphire_1_1/sphire_util_pydusa_fix_20190205.tar
2. Replace the utils folder with the downloaded one.
3. Continue with one of the two following steps [[downloads:sphire_1_1#existing_openmpi_installation| existing OpenMPI installation]] or [[downloads:sphire_1_1#reinstall_openmpi_might_be_necessary| Reinstall OpenMPI]]
=== Reinstall OpenMPI (Might be necessary) ===
The shipped version of OpenMPI and system wide OpenMPI installations might not work most of the time.
That is why we recommend following the reinstallation process below
(If you wish to install your own version of OpenMPI, you can find information below [[downloads:sphire_1_1#existing_openmpi_installation| existing OpenMPI installation]].)
**Please check the information on our [[howto:preparesubmission|prepare submission installation]] site first, if there is already information about your queuing system.**
1. Change to the installation directory you specified during installation
cd # e.g., $HOME/SPHIRE_1_1 (binary, source with own anaconda) or $ANACONDA_INSTALL/envs/SPHIRE_1_1 (source within existing anaconda)
2. Remove the OpenMPI provided:
bash utils/uninstall_openmpi.sh
3. Rebuild OpenMPI:
bash utils/build_and_install_openmpi.sh
=== Existing OpenMPI installation ===
Most Linux clusters will have at least one OpenMPI installation on the cluster. In some cases there may be more than one, and you may have to select a "module" to get the correct one. It is also critical that OpenMPI be compiled with the --disable-dlopen option. If you don't understand this statement, please consult with your cluster sysadmin.
1. Remove the OpenMPI we provided:
bash /utils/uninstall_openmpi.sh
2. Make sure that the correct OpenMPI for your cluster is in your path.
You should be able to run 'mpicc' and get a message like 'gcc: no input files'.
=== Build pydusa ===
1. Rebuild Pydusa:
bash utils/build_pydusa_numpy.sh 1.13 --no-test --python=2.7
**Note 2018/02/15:** With the current version of the installer, the "no-test" option is necessary to avoid installation errors. It is a known issue to be fixed in the future.\\
2. Install Pydusa:
bash utils/install_pydusa_numpy.sh 1.13
Now restart your terminal (log out & log in).
\\
===== Test the installation =====
If the following commands do not throw any errors, the installation is successful.
**Binary installation**
sparx
In [1]: import mpi
In [2]: Util.version()
Source modification date: 02/05/2018 10:55 AM
In [3]: quit
e2version.py
EMAN 2.22 final (GITHUB: 2018-08-22 11:59 - commit: v2.22 )
Your EMAN2 is running on: Linux-2.6.32-431.23.3.el6.x86_64-x86_64-with-redhat-6.5-Santiago 2.6.32-431.23.3.el6.x86_64
Your Python version is: 2.7.14
**Source code installation**
» sparx
Python 2.7.14 | packaged by conda-forge | (default, Dec 9 2017, 16:18:43)
Type "copyright", "credits" or "license" for more information.
IPython 5.8.0 -- An enhanced Interactive Python.
? -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help -> Python's own help system.
object? -> Details about 'object', use 'object??' for extra details.
/home/sphire-devel/SPHIRE_DAILY_TEST/TEST_RUNS/2018_08_22_10_30_21/EMAN2/bin/sx_real.py:49: DeprecationWarning: `IPython.lib.inputhook` is deprecated since IPython 5.0 and will be removed in future versions.
import IPython.lib.inputhook
Welcome to the interactive SPARX-NoGUI Python interface, provided by ipython
SPARX v4.0 (GITHUB: 2018-08-20 20:32)
In [1]: import mpi
In [2]: Util.version()
Source modification date: August 2018 release
In [3]: quit
» e2version.py
EMAN 2.22 final (GITHUB: 2018-08-20 20:32 - commit: f4f3952 )
Your EMAN2 is running on: Linux-2.6.32-431.23.3.el6.x86_64-x86_64-with-redhat-6.5-Santiago 2.6.32-431.23.3.el6.x86_64
Your Python version is: 2.7.14
Congratulations! You installed SPHIRE!
\\
===== Installation issues =====
**During rebuild step 4, an error might occur.**
Can't build /home/stevel/EMAN2/recipes/fftw-mpi due to environment creation error:
Downloaded bytes did not match Content-Length
url: http://www.fftw.org/fftw-3.3.6-pl1.tar.gz
target_path: /home/stevel/EMAN2/conda-bld/src_cache/fftw-3.3.6.tar.gz
Content-Length: 4179807
downloaded bytes: 208916
If you encounter this error, please do the following:
rm conda-bld/src_cache/fftw-3.3.6.tar.gz
bash utils/build_pydusa_numpy.sh 1.13 --no-test
===== Known Issues =====
* On Mac Retina displays, problems with Qt: button size is larger, etc.