Skip to content

Releases: dials/dials

DIALS 3.2.1

09 Nov 18:53
Compare
Choose a tag to compare
  • dials.symmetry, dials.cosym and dials.two_theta_refine: Lowered default partiality_threshold from 0.99 to to 0.4. The previous default could occasionally result in too many reflections being rejected for particularly narrow wedges. (#1470)
  • dials.scale: Fixed misleading scaling statistics output of r_anom data. (#1478)
  • dials.stills_process Improve performance when using MPI by avoiding unnecessary log file writing (#1471)
  • xia2.multiplex: Allow the user to override the default dials.scale parameter reflection_selection.method=, to allow working around cases where default can fail (xia2/xia2#529)
  • xia2.merging_statistics: Improved error handling (xia2/xia2#531)
  • Fixed a formatting error in cctbx (cctbx/cctbx_project#560)

For a more complete list of changes and fixed bugs check the DIALS and xia2 changelogs.

There are no changes to dxtbx in this release.

DIALS 3.2.0

27 Oct 19:21
Compare
Choose a tag to compare

With this release, DIALS releases and development installs are built using python 3.8 by default, however Python 3.6 is still supported as per our policy.

DIALS 3.2.0 (2020-10-27):

  • Error and python warnings are now coloured in the console log and errors written to log files (#1401,#1420)
  • Changed the way dials.integrate splits data into blocks, to reduce unnecessary data reads, increasing performance up to 35% in some cases (#1396)
  • dials.refine: Trimming scans to observations for scan-varying refinement can now be turned off with the parameter trim_scan_to_observations=False (#1374).
  • dials.refine: Changed default to separate_panels=False. This speeds up outlier rejection for multi-panel detectors. For metrology refinement this should be set to True (#1424)
  • dials.merge: Added best_unit_cell option. If the best_unit_cell option is set in dials.scale, this will now propagate to the merged mtz output file. (#1444)
  • dials.stills_process: Added process_percent= to restrict processing to a subset of data, sync reference geometry instead of overwriting it and handling for composite spotfinding modes. (#1409)
  • Reflection tables now store a "scaled" flag, for easy filtering of reflections that are handled by the scaling process. (#1377)
  • dials.index: When using local index assignment, take into account the goniometer rotation in nearest neighbour analysis. This can significantly improve indexing rates in some cases with scans > 360° (#1459)
  • dials.stills_process: Mitigate high memory usage in some cases (#1412)
  • dials.find_spots_server: Return HTTP 500 instead of 200 when running fails (#1443), and fix crash on macOS with Python 3.8 (#1447)
  • dials.reindex: Show an more helpful error instead of crashing, for bad reindex operations. (#1282)
  • for a more complete list of changes and fixed bugs check the DIALS and dxtbx changelogs

xia2 0.7.101:

  • Add a radar plot to the xia2.multiplex html report for comparison of merging statistics between clusters. (#406)
  • Added new setting full_matrix=auto that causes "full matrix minimisation" to be turned off when scaling 5 sweeps or more with dials.scale. This means that large data sets now process much faster. (#428)
  • for a more complete list of changes check
    the xia2 changelog

DIALS 3.1

24 Aug 17:06
Compare
Choose a tag to compare

With this release, DIALS, dxtbx and xia2 now support python 3.7 and 3.8. For Python 2.7, we will provide updates and support to DIALS 2.2 until the end of the year.

DIALS 3.1.0 (2020-08-17):

  • New command: dials.missing_reflections to identify connected regions of missing reflections in the asymmetric unit. (#1285)
  • dials.image_viewer New options and modes for image stacking (#1302)
  • dials.integrate output is now quieter - some diagnostic output has been removed by default. (#1319)
  • dials.integrate: Experimental feature: Can specifyoutput_unintegrated_reflections=False to discard unintegrated data from
    output reflection file (#1343)
  • dials.estimate_resolution: Renamed from dials.resolutionizer command, and now includes an html report (#1330)
  • dials.scale now separates anomalous pairs during error model analysis (#1332)
  • dials.background: Add parameter corrected= to optionally use pedestal-and-gain corrected data (#1348)
  • dials.combine_experiments: Add option output.max_reflections_per_experiment=, to reject experiments with too many reflections (#1369)
  • dials.find_spots: Deprecate spotfinder.filter.use_trusted_range= (#1156)
  • for a more complete list of changes and fixed bugs check the DIALS and dxtbx changelogs

xia2 0.7.85

  • Re-estimate resolution limit after deltacchalf filtering. Previously the resolution limit of the filtered dataset would always be the same as the unfiltered dataset. (#466)
  • Add support for dose_decay model for dials.scale (#467)
  • Report more useful error message if given an Eiger data file rather than a master file, including suggestions of possible master files in the same directory (#509)
  • Speed up xia2.compare_merging_stats (#502)
  • for a more complete list of changes check the xia2 changelog

DIALS 3.1.1 (2020-09-01):

  • dials.scale: Prevent discarding of resolution limits, sometimes causing incorrect symmetry determination, and worse results. (#1378)
  • dials.cosym: filter out experiments with inconsistent unit cells (#1380)
  • Restore missing I/sigma(I) resolution estimate log output (#1384)
  • dials.image_viewer: "Save As" button now works, for single panels
  • Internally slicing experiments now works if image range doesn't start at 1 (#1383)
  • dxtbx: Allow importing filenames with special format characters like % (cctbx/dxtbx#214)
  • dxtbx: Don't crash handling FormatSMVADSC images with floating-point pedestal values (cctbx/dxtbx#216)
  • xia2.multiplex: fix for dose parameter when scan doesn't start at 1 (xia2/xia2#518)
  • xia2.html: Fix crash on python 3.8 (xia2/xia2#516)

DIALS 3.1.2 (2020-09-14):

  • dials.integrate: fix crash when run with integrator=3d_threaded (#1404)
  • dials.integrate: Minor performance improvements (#1399)
  • dials.stills_process: Add parameter max_images= to limit the number of processed images
  • dials.stills_process: MPI performance improvements for large datasets
  • dials.stills_process: Fix error when using split logs

DIALS 3.1.3 (2020-09-28):

  • dials.integrate: fix integrator=3d_threaded crash if njobs > 1 (#1410)
  • dials.integrate: Check for and show error message if shoebox data is missing (#1421)
  • dials.refine: Avoid crash for experiments with zero reflections with the auto_reduction.action=remove option (#1417)
  • dials.merge: improve help message by adding usage examples (#1413)
  • dials.refine: More helpful error message when too few reflections (#1431)
  • dxtbx.image_average: Better use of MPI to avoid errors and increase performance (cctbx/dxtbx#207)
  • Formats: Update DLS I23 bad pixel mask after detector has been cleaned, fixing previously bad modules. (cctbx/dxtbx#220)
  • Formats: Fix reading DLS Eiger h5 files when bit depth information is missing from headers

DIALS 3.1.4 (2020-10-13):

  • xia2.compare_merging_stats: fix occasionally incorrect axis ylimits (#517)
  • xia2.multiplex: Fix corner case where reflections are present but not used in refinement, leading to an error when selecting reflections with reflections.select_on_experiment_identifiers() (#524)
  • xia2.multiplex: Fix error if one or more experiment has an image range that doesn't overlap with the requested dose range. Instead, remove this experiment from further analysis. (#525)
  • xia2.multiplex: Gracefully handle failure of resolution estimation (#526)
  • Handle AttributeError that could occur reading Eiger-Nexus Files

DIALS 3.0

29 May 14:40
Compare
Choose a tag to compare

Release Notes

This release drops support for Python 2.7. The minimum supported version of Python is now 3.6. We will provide updates and support to DIALS 2.2 until the end of the year.

DIALS 3.0.0 (2020-05-27):

  • Show more useful output when crashing in C++ code (#659)
  • dials.image_viewer: Rename unit cell tool parameters, for consistency, and add a new show_hkl option to filter displayed powder rings (#1192)
  • dials.image_viewer: Added an overlay to show pixels marked as strong by the spot-finding operations. This is equivalent to the pixels shown in the "threshold" image. (#1200)
  • dials.image_viewer: faster navigation between different image types. (#1213)
  • dials.integrate: Background box size multiplier can now be tuned with a parameter (sigma_b_multiplier) - setting to small values can significantly reduce memory requirements. (#1195)
  • dials.scale and dials.symmetry report files were renamed from scaling.html to dials.scale.html and dials-symmetry.html to dials.symmetry.html (#1202)
  • dials.report output file was renamed from dials-report.html to dials.report.html (#1206)
  • Crystal model now has a new recalculated_unit_cell attribute that allows it to store
    a post-refined unit cell in addition to that from traditional geometry refinement. dials.scale and dials.export will now use the recalculated unit cell where appropriate. (#1214)
  • New best_monoclinic_beta parameter for dials.refine_bravais_settings and dials.symmetry to ensure that C2 is selected in preference to I2, where I2 would lead to a less oblique cell (#1226)
  • New scaling model, model=dose_decay, implementing a shared exponential decay component for multicrystal experiments (#1183)
  • for a more complete list of changes and fixed bugs check the DIALS and dxtbx changelogs

xia2 0.7.32:

  • Improved handling of diamond anvil cell data (#396)
  • New command-line interface for xia2.to_shelxcde utility to support SAD/MAD datasets. (#433)
  • xia2.multiplex now exports a json file, including xtriage analysis and merging stats (#443)
  • Added the option multi_sweep_refinement to the DIALS pipelines. (#456)
  • for a more complete list of changes check the xia2 changelog

DIALS 3.0.1 (2020-06-11):

  • dials.reciprocal_lattice_viewer: Add an option to show lattice(s) in the crystal rather than laboratory frame. (#1259)
  • Support for mtz project_name in export and scaling
  • dials.reciprocal_lattice_viewer: fix multiple experiment view for integrated data (#1284)
  • cctbx_project: Fix python 3 compatibility in prime
  • dxtbx: Account for beam centre record changing with ADSC 442 move from 8.3.1 to 5.0.1 (cctbx/dxtbx#171)
  • dxtbx: Fix handling for hierarchical NeXus detectors (cctbx/dxtbx#175)
  • dxtbx: Prevent mangling of URL-based filenames via abspath (cctbx/dxtbx#176)
  • dxtbx: Fix incorrect axis detection on MAX IV Eiger and Spring8 (cctbx/dxtbx#178)
  • xia2: Fix missing anomalous info in hkl data converted for shelx
  • xia2: Compatibility with DIALS project_name changes

DIALS 3.0.2 (2020-06-23):

  • Fix crash in dials.scale error model handling (#1243)
  • dxtbx: Fix sensor_material handling for Jungfrau 4M and 16M

DIALS 3.0.3 (2020-07-06):

  • Bin centres instead of minimums are now used for for d_min line plots vs. resolution (#1323, xia2/xia2#480)
  • dials.export: Fix inconsistency in mtz export when given a non-reference (e.g. I2 or primitive) setting (#1279)
  • dials.refine_bravais_settings: Fix crash with large (>2gb) reflection tables and reduce memory use (#1274)
  • dials.scale: Fix bug in outlier rejection code causing misidentification of outliers and avoid overconfidence in spuriously low values
  • xia2: Fix data from NSLS II with multiple triggers and one image per trigger (xia2/xia2#475)
  • xia2: Gracefully handle xtriage errors when generating xia2 report. (xia2/xia2#477)
  • xia2: Increase XDS COLSPOT minimum_pixels_per_spot from 1 to 2 (xia2/xia2#472)
  • For debugging purposes, sending SIGUSR2 to DIALS commands will now print a stack trace (#1277)
  • for more detail on the list of fixed bugs check the DIALS and xia2 changelogs

DIALS 3.0.4 (2020-07-20):

  • dials.import: When using a template and specifying image_range, missing images outside this range will not cause a failure (#1333)
  • dials.scale: Allow usage of mode=image_group with filtering.method=deltacchalf when only providing a single data set (#1334)
  • dials.stills_process: Show better error message in specific spotfinding failure case (#1180)
  • xia2: Fix error reading PHIL files in ispyb_xml (#484)
  • xia2: Ignore missing images out-of-range when using read_image_headers=False (#491)
  • xia2: Using reference instrument models when using reference_geometry= is more robust (#485)
  • for more detail on the list of fixed bugs check the DIALS, dxtbx and xia2 changelogs

DIALS 2.2

15 Mar 23:24
Compare
Choose a tag to compare

Release notes

DIALS 2.2.0 (2020-03-15):
This is the final release of DIALS supporting Python 2.7. We will provide updates and support to DIALS 2.2 until the end of the year.

  • dials.anvil_correction: new command to correct the absorption of the incident and diffracted X-ray beam by the diamond anvils in a pressure cell. Call dials.anvil_correction on the output of dials.integrate and then proceed to use post-integration tools as normal, just as though the sample had been measured in air. (#1090)
  • dials.find_spots: added maximum_trusted_value=N option to temporarily allow override of trusted range, e.g. to find overloaded spots. (#1157)
  • dials.image_viewer can show both raw and corrected images (#634)
  • dials.image_viewer allows adjustment of font size for overlay text, such as Miller indices and resolution ring values. (#1074)
  • dials.stills_process now supports imagesets of length > 1 (e.g. grid scans) (#1174)
  • Background determination algorithms are automatically chosen depending on whether the detector appears to be integrating or counting. (#706)
  • Experimental: dials.image_viewer can be remotely controlled via a ZeroMQ endpoint with the zmq_endpoint PHIL parameter. Initially, the viewer can be commanded to load new images. This requires the (optional) pyzmqpackage. (#1085)
  • Map of detector efficiency for photon counting detectors as a function of detector position added to report, based on the qe value applied at the end of integration. (#1108)
  • Significantly reduced the amount of memory required to write .refl output files (#1115)
  • for a more complete list of changes check the DIALS and dxtbx changelogs

xia2 0.6.446:

  • xia2 now has coloured output by default. You can disable this by setting the environment variable NO_COLOR. (xia2/xia2#267)
  • The DIALS pipeline generates .sca output files again (xia2/xia2#384)
  • In multi sweep indexing mode data are prescaled before dials.symmetry. This should lead to more reliable
    results from the symmetry analysis. (xia2/xia2#395)
  • Switch the default plugin for reading HDF5 files with XDS to DURIN (xia2/xia2#400)
  • The error output file xia2.error has been renamed xia2-error.txt (xia2/xia2#407)
  • for a more complete list of changes check the xia2 changelog

DIALS 2.2.1 (2020-03-30) includes xia2 0.6.452:

  • dials.export: fix crash when using mmcif.hklout= parameter (#1204)
  • dials.report: fix high resolution end of French-Wilson plot (#1169, #1194)
  • xia2.compare_merging_stats: new parameters d_min, d_max, and small_multiples. The latter plots each dataset on an individual subplot for clarity.
  • Fixed a crash in xia2.to_shelxcde
  • Fix issues with multitile .cbfs
  • Fix 'invalid load key' issue (cctbx/dxtbx#154)

DIALS 2.2.2 (2020-04-14) includes xia2 0.6.458:

  • dials.index will now choose the C2 setting with the smallest beta angle (#1217)
  • dials.refine_bravais_settings and dials.symmetry have a new best_monoclinic_beta parameter. Setting this to False will ensure that C2 is selected in preference to I2, where I2
    would lead to a less oblique cell (i.e. smaller beta angle). (#1222, #1224)
  • The dials.scale paper has been published (Beilsten-Edmands et al., 2020)
  • iota: fixed bug where processing with defaults fails
  • xia2: restore lost sweep settings when using remove_blanks
  • xia2: choose correct unit cell when processing data in C2 space group (xia2/xia2#435)

DIALS 2.2.3 (2020-04-27) includes xia2 0.6.458:

  • dials.integrate: change the way we calculate available memory and limit the number of parallel processes
  • dials.scale: fix a TypeError in the report stage

DIALS 2.2.4 (2020-05-11) includes xia2 0.6.464:

  • Show unit cell information with a sensible precision (cctbx/dxtbx#165)
  • Understand the new SLS EIGER file format (cctbx/dxtbx#168)
  • dials.cosym: fix issues with the generated plots
  • dials.index: fix UnboundLocalError crash (#1254)
  • dials.integrate: fix ImportError crash on Windows (#1251)
  • xia2: Ensure data/log files are copied to the DataFiles/LogFiles directories even when processing failed (xia2/xia2#439)
  • xia2: Fix broken multiplicity plots on Python 3
  • xia2: Fix excessive outlier rejection with the 3dii pipeline (xia2/xia2#388, xia2/xia2#445, xia2/xia2#446)
  • xia2.multiplex: Fix missing graphs with multiplex report plots

DIALS 2.2.5 (2020-06-04) includes xia2 0.6.467:

  • fix reading of single-image Eiger files (cctbx/dxtbx#164)
  • we now support Spring2020 Nexus files, including multi-wavelength
    beams and absence of goniometer/scan (dials/dxtbx#41)
  • project names are now correctly written into .mtz files
  • dials.reciprocal_lattice_viewer: show correct sweep colour for integrated data (#1283)
  • dials.reciprocal_lattice_viewer: added option to show lattice in crystal frame (#1259)
  • xia2: fix treatment of missing individual images (xia2/xia2#462, xia2/xia2#463)

DIALS 2.2.6 (2020-06-17) includes xia2 0.6.469:

  • format fixes for Max IV and Spring8 Eiger data and PSI Jungfrau data on Python 3
  • dials.scale: fix crash in error model handling
  • prime: fix a Python 3 compatibility issue

DIALS 2.2.7 (2020-06-30) includes xia2 0.6.469:

  • dials.refine_bravais_settings: Fix crash with large (>2GB) reflection tables and reduce memory use
  • dials.integrate: Reduce log noise levels

DIALS 2.2.8 (2020-07-16) includes xia2 0.6.472:

  • dials.scale: Fix bug in scaling outlier rejection code, which resulted in misidentification of outliers for recursive outlier searching (outlier_rejection=standard).
  • dials.scale: Fix outlier rejection formula to avoid overconfidence in spuriously low values.
  • xia2: fix reading data from NSLS II with multiple triggers and one image per trigger (xia2/xia2#475)
  • xia2.ispyb_xml: fix crash on Python 3 (xia2/xia2#483)

DIALS 2.2.9 (2020-09-02) includes xia2 0.6.472:

  • read correct angles in Nexus files where angles are saved in radians (cctbx/dxtbx#192)
  • fix file processing issues where % characters are in the path (cctbx/dxtbx#214)
  • allow reading SMV ADSC format files with non-integer pedestal (cctbx/dxtbx#216)
  • libtbx.precommit: fix setup crash on Python 3 (#1375)

DIALS 2.2.10 (2020-11-24) includes xia2 0.6.474:

  • The broken dials.analyse_background command was removed
  • The setup environment now ensures a compatible version of h5py is installed

DIALS 2.1

16 Dec 23:30
Compare
Choose a tag to compare

Release notes

DIALS 2.1.0 (2019-12-16):

  • We now fully support Python 3 environments.
  • The underlying format of DIALS .refl files changed from pickle to MessagePack. You can set the environment variable DIALS_USE_PICKLE to revert to the previous format, however this will be removed in a future version. (#986)
  • Reinstate support for historic VMXi EIGER 1 images (#1016)
  • Fix crash when opening datasets containing many .h5 files (cctbx/dxbtx#126)
  • Scan-varying refinement no longer fails when the scan is wider than the observed reflections (e.g. when the crystal has died). Instead, the scan is first trimmed to match the range of the diffraction. (#1025)
  • The command dials.analyse_output was removed. Its replacement, dials.report, will give you more useful output. (#1009)
  • dials.integrate: Correctly account for scan-varying crystals when providing a scan range (#962)
  • dials.import: sequences of stills are imported as individual experiments all dereferencing one image set (#1014)
  • dials.refine: Rewritten parameter auto-reduction code provides finer-grained fixing of individual parameters rather than whole parameterisations and correctly takes constrained parameters into account (#990)
  • dials.refine: Fix output of predictions. A recently-introduced bug meant that the updated predictions weren't being copied to the output reflections file. (#991)
  • dials.refine: Allow scan-varying refinement where either the crystal cell or orientation is fixed. (#999)
  • dials.show: new option 'show_shared_models=True' displays which beam, crystal, and detector models are used across experiments (#996)
  • dials.symmetry: Respect batch= option - can reduce time taken for finding the symmetry for large data sets. (#1000)
  • dials.symmetry: Eliminate systematic absences before applying change of basis op to minimum cell. (#1064)
  • further changes in DIALS and dxtbx

xia2 0.6.354:

  • xia2 now uses the cctbx-based French/Wilson procedure in place of ctruncate. You can set truncate=ctruncate to continue using ctruncate (xia2/xia2#377)
  • xia2 now generates integrated.mtz files when used with the DIALS pipeline (saved in Datafiles; xia2/xia2#385)
  • The MOSFLM/2d pipelines and related features have been removed (xia2/xia2#222).
  • The labelit, labelitii, and xdssum indexers have been removed (xia2/xia2#367).
  • Setting laue_group= skips Laue group determination using dials.cosym, similarly setting space_group= skips both the Laue group determination and the systematic absences analysis by dials.symmetry (xia2/xia2#355)
  • We no longer create -journal.txt output files, the information goes into the debug log instead (xia2/xia2#267).
  • xia2.multiplex: perform systematic absence analysis
  • xia2.multiplex: runs dials.symmetry in systematic-absences-only mode after scaling to determine full space group
  • further changes in xia2

DIALS 2.1.1 (2020-01-14) includes xia2 0.6.366:

  • dials.show: report format class if available
  • dxtbx: avoid crashes in FormatTIFF class encountering invalid data (cctbx/dxtbx#130)
  • xia2: add changelog missed from 2.1 release
  • xia2: fix bug in DIALS scaler multisweep prepare
  • xia2: fix some invalid command line parameter escaping
  • xia2: prescale data when multi_sweep_indexing (xia2/xia2#395)

DIALS 2.1.2 (2020-01-28) includes xia2 0.6.372:

  • dials.image_viewer: compatibility fixes for Python3
  • Add missing dispatchers in Python3 installation
  • xia2: Don't run absences check if spacegroup given (xia2/xia2#398)
  • xia2: Export DANO in CctbxFrenchWilson procedure (xia2/xia2#399)
  • xia2: Fix issues loading some HDF5 files
  • xia2: Fix xia2.to_shelx on Python3

DIALS 2.1.3 (2020-02-11) includes xia2 0.6.374:

  • Make resolution estimation more stable in presence of ice and powder rings and with small molecule data (#1097)
  • Fix spot finding and integration of files with index 0 (#1128, cctbx/dxtbx#133)
  • Fix cutoff value on recent data files from DLS I03 (cctbx/dxtbx#136)
  • Reduce memory usage when writing .refl files (#1115)
  • dials.integrate: Fix broken memory check in cases of high multiplicity (#1121)
  • dials.symmetry: Prevent failures when dealing with small numbers of reflections (#1130, cctbx/cctbx_project#435)

DIALS 2.1.4 (2020-02-25) includes xia2 0.6.380:

  • dials.image_viewer: performance improvements
  • beamline CIF definition updates (mainly for DLS I19 data)
  • xia2 now records dials absorption correction information in CIF files
  • xia2 respects specified space group, not just the point group (xia2/xia2#420)
  • xia2.overload: Fix bug on Python 3
  • xia2.report: Fix bug in pychef plotting

DIALS 2.1.5 (2020-03-09) includes xia2 0.6.382:

  • Fix out-of-memory exception text
  • dials.image_viewer now works for images imported with multi_panel=True
  • dials.stills_process now supports imagesets of length > 1 (e.g. grid scans)
  • xia2: silence a DeprecationWarning when running on CCP4 7.1

DIALS 2.0

04 Dec 11:56
Compare
Choose a tag to compare

Release notes

DIALS 2.0.0 (2019-10-28):

  • DIALS 2.0: from images to MTZ files with DIALS
  • DIALS programs now use a more consistent output file naming. Files containing reflection data now have the extension .refl, experiment descriptions .expt.
  • We no longer generate .debug.log files. You can run any DIALS program with -v to see debug information, which is then also written to the .log file.
  • dials.cosym has received a number of updates. It runs a new and improved algorithm for Laue group determination and generates a new HTML report. Various bug fixes were applied for minimum cell reduction and application of reindexing operators post-cosym.
  • dials.export format=best has moved to dials.export_best
  • dials.find_spots now uses an improved dispersion algorithm to find spots (#758)
  • dials.integrate: Changed the selection of reflections used for determination of the reflection profile parameters in integration. Now uses reflections which were previously used in refinement rather than all reflections, resulting in a speed improvement for large data sets and a negligible difference in the quality of the integrated results. (#942)
  • dials.merge is a new program to produce a merged .mtz file (with anomalous pairs separated) from scaled DIALS datafiles. Truncation is performed using the French-Wilson Method to give amplitudes in addition to intensities.
  • dials.scale has seen substantial changes. The algorithm includes an improved error model determination, profile/summation intensity combination. General improvements to memory usage, runtime and quality of scaled dataset. Some of the command line options have been renamed since the previous version, including the options for controlling parts of the scaling models. It also generates an HTML report including scaling diagnostic plots and merging statistics plots. A new tool was added for performing cycles of scaling and delta cc half filtering for multi-crystal datasets.
  • dials.symmetry includes screw-axis systematic absence evaluation, i.e. can determine the space group (for MX space groups only)
  • There have been major code changes under the hood. We moved dxtbx to a separate repository, rewrote both DIALS and dxtbx to be Python 3 compatible (currently experimental; xia2 will follow with DIALS 2.1), and have significantly improved the code quality and maintainability using static code analysers such as flake8 and lgtm (dials/dxtbx) (#843, cctbx/dxtbx#36).
  • speed improvements across the code base to address more challenging data sets
  • further changes

xia2 0.6.257:

  • xia2 uses DIALS symmetry determination and scaling by default. Run with pipeline=dials-aimless to continue using DIALS for integration and POINTLESS/AIMLESS for symmetry/scaling.
  • xia2 exports fewer intermediary .mtz files. The integrated.mtz (unscaled) no longer appears in Logfiles but can be generated from the corresponding .refl and .expt files (xia2/xia2#329)

DIALS 2.0.1 (2019-11-05) includes xia2 0.6.260:

  • dials.refine: Fix bug where unrefined predictions are returned (#991)
  • dials.refine: Duplicate crystals for scan-varying refinement of multi-scan data (#994)
  • dials.symmetry: Fix crash with different but compatible unit cells (#992)

DIALS 2.0.2 (2019-11-19) includes xia2 0.6.270:

  • dials.scale: fix beam pointing in the wrong direction
  • dials.merge: fix crash on narrow wedge dataset (#1002)
  • dials.symmetry: write numbers in JSON output file
  • dials.symmetry now respects the batch= option and should run significantly faster (#1000)
  • xia2: allow running dials pipeline with ccp4a scaler (xia2/xia2#363)
  • xia2: fix fit.is_well_defined() crash (xia2/xia2#357)
  • xia2: support newer versions of XDS (xia2/xia2#354)
  • xia2: ensure correct detector thickness is used throughout the XDS pipeline (xia2/xia2#372)
  • xia2.multiplex: fix pychef plots
  • xia2.multiplex now performs systematic absence analysis (xia2/xia2#355)
  • End of the support for MacOS 10.6 builds

DIALS 2.0.3 (2019-12-03) includes xia2 0.6.277:

  • Fix crash in dials.integrate
  • Fix crash in dials.spot_counts_per_image (#1022)
  • Fix support for DLS VMXi EIGER 1 4M
  • Fix support for DLS I23 data
  • Catch an exception if image file has zero bytes
  • Enable dynamic shadowing if dials.image_viewer is called on image files directly
  • xia2: Copy integration results to DataFiles (xia2/xia2#379)
  • xia2: Correctly set untrusted regions on multi-panel detectors with XDS pipeline (xia2/xia2#387)
  • xia2: Fix crash when running dials.symmetry in multisweep mode (xia2/xia2#390)

DIALS 2.0.4 (2019-12-11) includes xia2 0.6.279:

  • dials.image_viewer: fix image loading in Python 3
  • dials.reindex / dials.symmetry: more robust reindexing when space group is given
  • dials.symmetry: fix for multi-sweep centred data sets (#1037)
  • dials.symmetry: eliminate systematic absences before applying change of basis op to minimum
    cell (#1064)

DIALS 1.14

23 Apr 12:05
Compare
Choose a tag to compare

Release notes

What happened to DIALS 1.13
We decided to use the release number 13 as a reference marker for developers to help migrating code changes to the upcoming DIALS 2.0 release.

DIALS 1.14.0 (2019-03-18):

  • dials.image_viewer can stack images without having to restart the viewer.
  • dev.dials.generate_shadow_mask is a new (unsupported) tool to create HDF5 shadow masks from the DIALS model of the goniometer shadow
  • dials.apply_mask now works with experiments (#673)
  • dials.scale general improvements to algorithm stability, speed and memory performance improvements
  • DIALS 1.14 is the final DIALS 1 release, and will be supported for a longer period than usual.

xia2 0.5.871:

  • This is the final xia2 0.5 release, and will be supported for a longer period than usual.

DIALS 1.14.1 (2019-03-22) includes xia2 0.5.878:

  • indexing: fix for max cell estimation in some cases when resolution limit of detector much greater than resolution limit of data (#739)
  • scaling refiner: fix calculation of free/work metrics
  • space group determination: bug fix in calculation of confidence
  • dials.split_experiments: add "chunk_sizes" option
  • xia2 to SHELXC: bug fix for rhombohedral space groups (xia2/xia2#285)
  • xia2.report: tidy up output in some cases

DIALS 1.14.2 (2019-04-09) includes xia2 0.5.881:

  • EIGER: Allow processing of files containing a single image
  • Add a new command dials.plugins to list all installed plugins and self-check the DIALS installation.
  • xia2: Fix file name wrangling for XDS with master files
  • xia2: Report correct beam centre in XML/JSON output for multipanel detectors

DIALS 1.14.3 (2019-04-23) includes xia2 0.5.883:

  • xia2: fix 3dii pipeline when handling more than 10M reflections (xia2/xia2#292)

DIALS 1.14.4 (2019-05-08) includes xia2 0.5.888:

  • HDF5: support for multiple datasets referenced from a single master file (#627)
  • Add support for Diamond Light Source VMXm beamline data
  • dials.reciprocal_lattice_viewer: support for old format .pickle files
  • dials.export_mtz: handle split sweeps
  • dials.report: include additional plots after scaling
  • dials.scale: Fix possibility for recursion error in outlier rejection, generate scaling.html output report.
  • xia2: Provide more useful output when called programs fail (xia2/xia2#300)

DIALS 1.14.5 (2019-05-22) includes xia2 0.5.893:

  • xia2: Disable multiprocessing on Windows (xia2/xia2#191)
  • xia2: Fix call to dev.dials.assign_experiment_identifiers on systems without dev.* commands

DIALS 1.14.6 (2019-06-06) includes xia2 0.5.898:

DIALS 1.14.7:

  • Internal maintenance release, no code changes

DIALS 1.14.8 (2019-07-02) includes xia2 0.5.898:

  • Support single-axis goniometer files from DLS I04
  • Enable dynamic shadowing for EIGER data from DLS I03
  • dials.export: warn user about SADABS behaviour when numbered files start with 0
  • bootstrap: retry downloads on error, try alternative download locations

DIALS 1.14.9:

  • Internal maintenance release, no code changes

DIALS 1.14.10 (2019-08-29) includes xia2 0.5.900:

  • add support for Eiger 2X 16M at SLS
  • scaling: Fix error in intensity combination; if scaling intensity combination determined profile intensities to be optimal, an incorrect variance was assigned.
  • scaling: Fix error in variance calculation when reading .mtz files for targeted scaling.
  • xia2: bug fix for image=foo.h5:1:n:n

DIALS 1.14.11 (2019-09-16) includes xia2 0.5.900:

  • allow reading of compressed FullCBF files (cctbx/dxtbx#80)
  • improve support for Eiger 2X images from SLS
  • update Eiger Nexus format class to understand the most recent image file format at DLS
  • bootstrap: make HDF5 installation more resilient

DIALS 1.14.12 (2019-09-19) includes xia2 0.5.900:

  • more work on supporting Eiger 2X images from SLS

DIALS 1.14.13 (2019-11-08) includes xia2 0.5.902:

DIALS 1.12

02 Nov 14:38
Compare
Choose a tag to compare

Release notes

DIALS 1.12.0 (2018-11-02):

  • dials.compute_delta_cchalf: new utility to implement a delta-cc12 analysis for removing scaled data sets with poor agreement.
  • dials.export can now export MTZs of single-image data sets.
  • dials.frame_orientations: new utility to output a table and plot of crystal orientations for each image expressed as a zone axis direction.
  • dials.reindex: allow reindexing against a reference file to give a common indexing between data sets.
  • dials.scale: Addition of weak B-restraint for physical model to improve refinement stability. General bug fixes and stability improvements. Addition of cross validation options for scaling.
  • dials.search_beam_position now works for multiple-sweep data sets.
  • dials.symmetry: add a round of outlier rejection before symmetry analysis.

xia2 0.5.744:

  • you can now run xia2 with pipeline=dials-full which uses DIALS scaling and analysis tools in place of POINTLESS and AIMLESS

DIALS 1.12.1 (2018-11-19) includes xia2 0.5.757:

  • dials.detect_blanks is now less conservative
  • dials.scale fixes
  • Updates to support Eiger stream data
  • Updates to support Fast DP v1.1
  • xia2: Added command line options dials.integrate.d_max and .d_min to set resolution limits for integration
  • xia2: Fixes for dials-full pipeline
  • xia2: Reduce size of xia2.report HTML output
  • xia2: Improve the experimental remove_blanks mechanism

DIALS 1.12.2 (2018-12-03) includes xia2 0.5.764:

  • DIALS image viewer: show hdf5-derived file extensions in file load dialogue
  • cosym: maintain experiment order as given in the input
  • cosym: only export relevant experiments when using a subset of the data for analysis
  • dials.reindex: sanity check space group before using a given reference
  • dials.scale: speed up outlier rejection
  • xia2: handle I2/C2 ambiguity in the dials-full pipeline (xia2/xia2#260)
  • xia2: general improvements to the dials-full pipeline

DIALS 1.12.3 (2019-01-07) includes xia2 0.5.767:

  • EIGER detector support fixes
  • dials.export_bitmaps: allow combining output_file with imageset_index
  • xia2: fix character encoding in HTML log
  • xia2: restore previously removed xia2.to_shelx command

DIALS 1.12.4 (2019-01-22) includes xia2 0.5.769:

  • dials.predict: switch index generation method for >50 images (#585)
  • xia2: bug fix for .h5 files where data files don't have 'data_' in file name (xia2/xia2#272)
  • Nexus file format support:
    • add workaround if scan is None
    • correctly interpret offset units

DIALS 1.12.5 (2019-02-05) includes xia2 0.5.769:

DIALS 1.12.6 (2019-02-19) includes xia2 0.5.771:

  • improved electron diffraction data support (ADSC-electron-57)

DIALS 1.11

03 Sep 14:21
Compare
Choose a tag to compare

Release notes

DIALS 1.11.0 (2018-08-24):

  • dials.background: now allows masking prior to background calculation. Improved plots.
  • dials.filter_reflections: create subsets of a reflection file based on user-specified criteria
  • dials.export: command line interface change. Intensity choice for export given by option intensity, and exporting of partials now determined by options partiality_threshold and combine_partials.
  • dials.scale: (for testing / evaluation) new program for scaling data from DIALS integration
  • Behaviour change: DIALS commands will no longer read STDIN for parameters by default - you must specify that you want this behaviour e.g. cat some_params.phil | dials.import --phil=-. You may also pass filenames directly into the argument to get the identical behaviour e.g. --phil=some_params.phil (#466)

xia2 0.5.649:

  • Add support for dials.scale

DIALS 1.11.1 (2018-09-03) includes xia2 0.5.651:

  • dials.export: Rename prf to profile for export and scaling options
  • dials.analyse_output: Fix grid_size parameter handling (#611)

DIALS 1.11.2 (2018-09-18) includes xia2 0.5.653:

  • cosym/dials.symmetry: fix profile errors
  • xia2.strategy: Fix crash at dials.export step
  • xia2.strategy: Do not require profiles on export
  • make merging statistics generation code more fault tolerant

DIALS 1.11.3 (2018-10-02) includes xia2 0.5.655:

  • Remove debug output from image viewer
  • Fix rare dials.index crash (#620)

DIALS 1.11.4 (2018-10-16) includes xia2 0.5.655:

  • Improves support for Eiger2
  • dials.cosym: fix math error
  • dials.index: if indexing from known orientation then use provided space group setting unless specified
  • Fix dials.background crash when run without parameters
  • Fix dials.symmetry crash (#619)