Installation Instructions
Last updated
Last updated
Start by cloning the CryoBench git repository; note that we also have to fetch the codebases for some of the example methods through their git submodules:
You will also have to install ChimeraX, which can be done by downloading the correct version for your operating system from . For CryoBench to find your installation, create an environment variable pointing to its location:
We developed CryoBench as a tool for quantitatively evaluating a set of reconstruction methods. Shown here are instructions for creating a conda environment for running each of these example methods, as well as for measuring the quality of the reconstructions.
Installing each method generally means following the instructions provided by the developers, while creating the corresponding CryoBench environment entails repeating the steps of the method installation as necessary and then installing CryoBench dependencies using the repository's requirements.txt
file along with a compatible version of cryoDRGN.
The scripts we have provided for each method are generally designed to work with the output of a range of versions of the method, and to have a specific version of the method installed for CryoBench:
Create an environment for running cryoDRGN models. Here we specify a recent version; CryoBench is compatible with cryoDRGN v3.x outputs:
Next, create an environment for running CryoBench analyses on cryoDRGN output using the requirements.txt
and an older version of cryoDRGN compatible with CryoBench code:
For running DRGN-AI reconstruction we use the latest version available through Git. CryoBench supports handling DRGN-AI output up to v0.3.1:
For running CryoBench analyses on DRGN-AI output we use a specific version of DRGN-AI, along with the necessary CryoBench dependencies as described above:
We repeat the same steps for CryoBench analyses, also installing CryoBench dependencies at the end. In this case we can use the version of cryoDRGN installed with OPUS-DSD itself for CryoBench as well:
In the case of RECOVAR, as per their instructions, we have to install a specific version of jax
on top of their custom requirements list, along with setting some bash environment variables and creating a special ipykernel
installation. You may find it necessary to install a different version of jax
that is compatible with your version of CUDA:
For running CryoBench we can avoid redefining the environment variables if creating the environment in the same session. Note that for installation to work correctly, the CryoBench/requirements.txt
dependencies must be installed before the remaining RECOVAR dependencies:
CryoSPARC is typically accessed through a graphical interface installed by your system administrator, and not through a command-line interface as with the other example methods. We hence assume that such a GUI will be used to generate reconstruction output for subsequent examples.
For running CryoBench on outputs generated by CryoSparc, we create an environment similar to cryodrgn_bench
above β you can also instead use the same environment for both sets of analyses:
You will also need to replace lines in cryosparc_3dflex.py
if doing analyses on 3D Flex outputs:
CryoBench has been tested using the output of CryoSPARC v4.6.0.
For this package we have to use their custom dependency list, and then install the package from the cloned submodule using pip install -e
(non-developer mode does not work). CryoBench has been tested with ; this is the version that is attached as a submodule under metrics/methods/opusDSD
:
CryoBench has been tested with of the RECOVAR repository, which is also the commit used by the RECOVAR submodule within the CryoBench repo.