Summary

Sourcehttp://www.desy.de/~twhite/crystfel/

License:  GPL v3

Code: https://stash.desy.de/projects/CRYS/repos/crystfel/browse

Path:  /opt/crystfel and /software/crystfel

Documentation:  http://www.desy.de/~twhite/crystfel/manual.html. You might also want to check the tutorial and Processing serial crystallography data with CrystFEL: a step-by-step guide

CitationT. A. White, R. A. Kirian, A. V. Martin, A. Aquila, K. Nass, A. Barty, H.N. Chapman. "CrystFEL: a software suite for snapshot serial crystallography". J. Appl. Cryst. 45 (2012), p335–341. doi:10.1107/S0021889812002312

CrystFEL is a suite of programs for processing diffraction data acquired "serially" in a "snapshot" manner, such as when using the technique of Serial Femtosecond Crystallography (SFX) with a free-electron laser source. CrystFEL comprises programs for indexing and integrating diffraction patterns, scaling and merging intensities, simulating patterns, calculating figures of merit for the data and visualising the results. Supporting scripts are provided to help at all stages, including importing data into CCP4 for further processing.

Using  CrystFEL

CrystFEL comes with an excellent tutorial explaining the usage of the software in great detail.  In addition, there are a few details relevant for the Maxwell installation: 

 To initialize the environment use the module command:

xwhich crystfel

 Provided by module(s)
  ... module load maxwell crystfel/0.10.0                      which crystfel: /software/crystfel/0.10.0/bin/crystfel 
  ... module load maxwell crystfel/0-devel                     which crystfel: /software/crystfel/devel/bin/crystfel 

 Documentation: https://confluence.desy.de/display/MXW/crystfel
 URL:           http://www.desy.de/~twhite/crystfel/
 Manual:        http://www.desy.de/~twhite/crystfel/documentation.html
 License:       GPL-3.0


Using CrystFEL on GPUs

pattern_sim is the only CrystFEL application (afaik) which can run on GPUs using OpenCL. To enable both the CPU and the GPU solutions, the pattern_sim application is available in two flavors:

  • CPU-version: /opt/crystfel/bin/pattern_sim
  • GPU-version: /opt/crystfel/bin/pattern_sim_ocl  compiled with OpenCL

The GPU version was compiled with the Intel OpenCL implementation:

./configure --with-opencl --with-opencl-dir=/opt/opencl/intel --prefix=/opt/crystfel

Since the GPU-version would usually be executed on nodes with Nvidia GPU, the binary should automatically pickup the Nvidia OpenCL implementation. If the Intel implementation should be used for whatever reason initialize the environment with 

module load opencl/intel   # or opencl/amd for the AMD OpenCL implementation 


Using a devel version of CrystFEL

A clone of the master branch (https://gitlab.desy.de/thomas.white/crystfel.git) is occasionally been installed under /software/crystfel/devel. The installation just follows the recipe from Thomas White (https://gitlab.desy.de/thomas.white/install-crystfel). This version might or might not work. To try out the devel-version:

[@max ~]% module load maxwell crystfel/0-devel
 
 WARNING: This installation is based on the MASTER branch of crystfel  
 - use at own risk!
 - installation following https://gitlab.desy.de/thomas.white/install-crystfel