aboutsummaryrefslogtreecommitdiff
path: root/relnotes-0.8.0
blob: ed05d678eb901379ad37a9ebb02732cfe0de1d9b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
CrystFEL - Data processing for serial crystallography
-----------------------------------------------------

Release notes for version 0.8.0

Copyright © 2012-2018 Deutsches Elektronen-Synchrotron DESY,
                      a research centre of the Helmholtz Association.

Authors:
  Thomas White <taw@physics.org>
  Richard Kirian <rkirian@asu.edu>
  Kenneth Beyerlein <kenneth.beyerlein@desy.de>
  Andrew Aquila <andrew.aquila@cfel.de>
  Andrew Martin <andrew.martin@desy.de>
  Lorenzo Galli <lorenzo.galli@desy.de>
  Chun Hong Yoon <chun.hong.yoon@desy.de>
  Karol Nass <karol.nass@desy.de>
  Nadia Zatsepin <nadia.zatsepin@asu.edu>
  Anton Barty <anton.barty@desy.de>
  Cornelius Gati <cornelius.gati@desy.de>
  Fedor Chervinskii <fedor.chervinskii@gmail.com>
  Alexandra Tolstikova <alexandra.tolstikova@desy.de>
  Wolfgang Brehm <wolfgang.brehm@gmail.com>
  Valerio Mariani <valerio.mariani@desy.de>
  Parker de Waal <Parker.deWaal@vai.org>
  Takanori Nakane <nakane.t@gmail.com>
  Keitaro Yamashita <k.yamashita@spring8.or.jp>
  Oleksandr Yefanov <oleksandr.yefanov@cfel.de>
  Steve Aplin <steve.aplin@desy.de>
  Helen Ginn <helen@strubi.ox.ac.uk>
  Thomas Grant <tgrant@hwi.buffalo.edu>
  Mamoru Suzuki <mamoru.suzuki@protein.osaka-u.ac.jp>
  Nicolas Riebesel <nicolas.riebesel@tuhh.de>
  Yaroslav Gevorkov <yaroslav.gevorkov@desy.de>
  Omri Mor <omor1@asu.edu>

CrystFEL is free software: you can redistribute it and/or modify it under the
terms of the GNU General Public License as published by the Free Software
Foundation, either version 3 of the License, or (at your option) any later
version.

CrystFEL is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.  See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with
CrystFEL.  If not, see <http://www.gnu.org/licenses/>.


Overview
--------

The most important new features in this version of CrystFEL are:

- Switch of build system to CMake from autotools

- Support for peakfinder9 and XGANDALF

- More stable B factors during merging

- Rejection of patterns during merging according to deltaCCHalf

- Introduction of make_pixelmap as a core CrystFEL program

- indexamajig --wait-for-file

- Support for gzipped CBF files

These changes have sections below.  In addition, there were many bug fixes and
other improvements.  See the "ChangeLog" or the changes page on the CrystFEL
website for details.


Switch of build system to CMake from autotools
----------------------------------------------

The build system has been changed from GNU autotools (./configure etc) to CMake.
The README file contains updated instructions for how to compile and install.
Briefly:
  $ mkdir build
  $ cd build
  $ cmake ..
  $ make
  $ sudo make install
To set the installation path, add the option -DCMAKE_INSTALL_PREFIX to the cmake
command.  To manually set the paths to external libraries, there are options
such as -DOpenCL_INCLUDE_DIR and -DCBF_LIBRARIES.

Note that there will be no further development snapshots in .tar.gz format made
available on the CrystFEL website.  These are now unnecessary, since a version
from the Git repository is now structurally identical to a packaged release
version.  If you want to try out the latest features (and possibly the latest
bugs!), simply follow the instructions on the website "download" page to check
out a Git version.


Support for peakfinder9 and XGANDALF
------------------------------------

The new peak finding algorithm, peakfinder9, is based on local background
estimates, similar to peakfinder8 which uses radial background estimates.
It's implemented in the Fast Diffraction Image Processing library by Yaroslav
Gevorkov.  You can download it from here:
https://stash.desy.de/users/gevorkov/repos/fastdiffractionimageprocessing

The new indexing algorithm, "eXtended GrAdient Descent Algorithm for Lattice
Finding", XGANDALF for short, is also implemented as a separate library written
by Yaroslav Gevorkov.  Download it here:
https://stash.desy.de/users/gevorkov/repos/xgandalf/

Once they are installed, the CrystFEL build system should detect these librares
and enable you to use respectively "indexamajig --peaks=peakfinder9" and
"indexamajig --indexing=xgandalf".  See the indexamajig manual page for details
of the advanced options.


More stable B factors during merging
------------------------------------

Previously, it was very easy for the relative Debye-Waller factors for all
crystals to drift downwards during merging, resulting in reduced intensity at
high resolution.  In this new version, the merging algorithm has been changed so
that, while the scaling factors are being determined, logarithms of the
intensities are merged rather than the intensities themselves.  This makes the
calculation more stable and avoids the drifting B-factors.  Although the actual
information content of the merged dataset is not affected very much, this
usually produces a higher apparent resolution in the electron density maps.
(Credit: Ken Beyerlein)


Rejection of patterns during merging according to deltaCChalf
-------------------------------------------------------------

The rogue dataset rejection algorithm from Assmann, Brehm and Diederichs,
J. Appl. Cryst. 49 (2016) p1021, has been implemented in partialator.  It is
enabled by default.  To turn it off, use the option "--no-deltacchalf".


Introduction of make_pixelmap as a core CrystFEL program
--------------------------------------------------------

make_pixelmap is now a core CrystFEL program, so you no longer need to install
a separate program if you need to make pixel maps for Cheetah, OnDA and others.
The program is largely unchanged from the previous standalone version, except
that the functionality of make_badmap is now accessed using "make_pixelmap
--badmap".  You can use --good-pixel and --bad-pixel to set the values for good
and bad pixels respectively.


indexamajig --wait-for-file
---------------------------

This option behaves similarly to XDS's "SECONDS" parameter.  When set to a value
other than zero, this causes indexamajig to wait this number of seconds for each
image file to appear.  This can be useful when using CrystFEL as part of an
automated processing pipeline.


Support for gzipped CBF files
-----------------------------

Finally, CBF files compressed using gzip (.cbf.gz) can now be read directly by
CrystFEL, without any need to temporarily uncompress them.


API changes
-----------

The following changes have been made to the libcrystfel API.

New functions:
	- index_pattern_3()
	- search_peaks_peakfinder9()
	- estimate_peak_resolution()
	- free_contribs()
	- {set,get}_contributions()
	- ph_eV_to_k (macro)
	- strip_extension()
	- run_xgandalf, xgandalf_{probe,prepare,cleanup}

Removed functions:
	(none)

Changed function prototypes:
	- set_dim_structure_entry()
	- setup_indexing()
	- refine_radius()

Changed structure/enum definitions:
	- enum SpectrumType: new value SPECTRUM_FROMFILE
	- enum imagefile_file: new value IMAGEFILE_CBFGZ
	- struct image: new members "hit", "n_indexing_tries", "spectrum0" and
	  peak_resolution
	- enum IndexingMethod: new value INDEXING_XGANDALF