From 87fd650abf11da75e7abd2ff90821cf7cb041b91 Mon Sep 17 00:00:00 2001 From: Thomas White Date: Tue, 15 May 2018 15:32:09 +0200 Subject: This is CrystFEL 0.7.0 --- relnotes-0.7.0 | 176 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 176 insertions(+) create mode 100644 relnotes-0.7.0 (limited to 'relnotes-0.7.0') diff --git a/relnotes-0.7.0 b/relnotes-0.7.0 new file mode 100644 index 00000000..186694a0 --- /dev/null +++ b/relnotes-0.7.0 @@ -0,0 +1,176 @@ +CrystFEL - Data processing for serial crystallography +----------------------------------------------------- + +Release notes for version 0.7.0 + +Copyright © 2012-2018 Deutsches Elektronen-Synchrotron DESY, + a research centre of the Helmholtz Association. + +Authors: + Thomas White + Richard Kirian + Kenneth Beyerlein + Andrew Aquila + Andrew Martin + Lorenzo Galli + Chun Hong Yoon + Karol Nass + Nadia Zatsepin + Anton Barty + Cornelius Gati + Fedor Chervinskii + Alexandra Tolstikova + Wolfgang Brehm + Valerio Mariani + Parker de Waal + Takanori Nakane + Keitaro Yamashita + Oleksandr Yefanov + Steve Aplin + Helen Ginn + Thomas Grant + Mamoru Suzuki + +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 . + + +Overview +-------- + +The most important new features in this version of CrystFEL are: + +- New options system for indexamajig, removing most of the profusion of indexing + method flags "comb", "bad", "retry" and so on. Indexamajig can also now + automatically determine which indexing methods can be used if you don't tell + it which ones to use. In addition, the options for the Felix indexing method + have now been greatly simplified. + +- The spectrum-based partiality model and numerical post-refinement algorithm + from Ginn et al [Acta D71 2015 p1400] was incorporated. + +- The symmetry of the merged reflection list is now tracked through automatically, + so you no longer need to give the "-y" option to compare_hkl and check_hkl. + +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. + + +New indexamajig options system +------------------------------ + +The new version of indexamajig will automatically determine which indexing +methods to use based on the prior information (e.g. if a target unit cell was +provided) and which indexing programs are available on the computer. To enable +the automatic determination, simply omit any "--indexing=" option to indexamajig. +Of course, you can override the automatic choice by specifying --indexing, just +as it worked before. + +To options for finer control of the indexing process, which in previous versions +were enabled or disabled by adding flags to the indexing methods +(e.g. "mosflm-noretry"), now apply to all indexing methods at once and are +selected using new options, listed below. + +The indexing method should contain only the method itself and prior information +modifiers ('cell' or 'latt'). This simplifies things greatly by removing the +very long indexing method descriptions ("mosflm-raw-latt-noretry-refine-nomulti" +and so on). + +- To disable prediction refinement ('norefine'), use --no-refine. +- To check cell axes only ('axes'), use --no-cell-combinations. +- To disable all unit cell checks ('raw'), use --no-check-cell. +- To disable peak alignment check ('bad'), use --no-check-peaks. +- To disable indexing retry ('noretry'), use --no-retry. +- To enable multi-lattice indexing by 'delete and retry', use --multi. + + +Spectrum-based partiality model and post-refinement +--------------------------------------------------- + +This version includes an implementation of the spectrum-based partiality model +described by Ginn et al., Acta D71 2015 p1400 and associated numerical post- +refinement algorithm. To use it, use "partialator --model=xsphere". The old +models (scsphere and scgaussian) have been removed. You will probably need to +experiment with changing the bandwidth and reflection radius, using +--force-bandwidth and --force-radius. Add --no-pr to disable post-refinement, +while still using the partiality estimates. To use post-refinement, omit --no-pr, +but you should also run indexamajig with "--overpredict". You may also need to +disable B factor scaling in partialator with "--no-Bscale". + +If you use post-refinement, the new scripts "plot-pr" and "plot-contourmap" can +be used to visualise the distributions of partialities and the contour maps of +residual against parameters such as crystal rotation angle. The data for these +graphs is in the "pr-logs" folder which will be created by partialator. + +Partiality modelling and post-refinement should still be considered experimental +when applied to real data. The success of post-refinement depends on many +factors, and only has a chance of working if there are no other problems with +the dataset (e.g. inaccurate detector geometry). Further improvements should +appear in future versions. + + +Automatic tracking of reflection list symmetry +---------------------------------------------- + +The point group symmetry used for merging a reflection list has been stored in +the reflection file (.hkl) for a long time. However, version 0.7.0 of CrystFEL +uses the stored symmetry when performing tasks such as calculating figures of +merit using check_hkl. You can simply omit the "-y" options which were needed +previously. Of course, you can override the symmetry by specifying -y as before. + + +API changes +----------- + +The following changes have been made to the libcrystfel API. + +New functions: + - asdf_probe() and _probe for all other indexing methods. + - compare_cells() + - crystal_get_cell_const() + - crystal_get_profile_radius() + - predict_to_res() + - calculate_partialities() + - update_predictions() + - is_cbf_file() + - get_indm_from_string_2() + - detect_indexing_methods() + - integrate_all_5() + - read_reflections_2() + - {get,set}_{khalf,kpred,exerr}() + - first_refl_const(), next_refl_const() + - open_stream_for_write_4() + - stream_has_old_indexers() + - stream_audit_info() + +Removed functions: + - find_intersections() + - find_intersections_to_res() + - update_partilities() + - write_reflections_to_file() + - read_reflections_from_file() + - {get,sh}_partial() + +Changed function prototypes: + - asdf_prepare() and _prepare for all other indexing methods. + - cell_new_from_cell() (input UnitCell is now const) + - crystal_copy() (input Crystal is now const) + - x_gradient(), y_gradient() + - remove_flagged_crystals() (now returns number of crystals removed) + - setup_indexing() + +Changed structure/enum definitions: + - PartialityModel: removed PMODEL_SCSPHERE and PMODEL_SCGAUSSIAN, + added PMODEL_XSPHERE + - gparam: added GPARAM_ANG1, GPARAM_ANG2, GPARAM_WAVELENGTH, GPARAM_EOL + - Added IndexingFlags -- cgit v1.2.3