Recent Releases of dials

dials - DIALS 3.25.0

2025-06-20:

This release contains a number of new features for multi-crystal processing. - The dials.import_xds program has been significantly updated; given an INTEGRATE.HKL and XDS.INP from XDS processing, one can now convert these to DIALS data files that can be used in xia2.multiplex and other DIALS data reduction tools. See https://dials.github.io/documentation/programs/dialsimportxds.html for the program documentation. - xia2.multiplex now generates unmerged mmcif files that are suitable for deposition of unmerged data. - Improvements have been made to the xia2.multiplex log output (better logging of progress and individual logs for more DIALS programs) and runtime performance has been improved for large datasets.

Features

  • dials.reflection_viewer: Report reflection table columns on launch. (#2912)
  • dials.index: Allow a trial crystal to be specified by full setting matrix A=UB. (#2939)
  • DIALS is now NumPy 2.0+ compatible. (#2942)
  • Python 3.13 is now supported, and is the default version in bootstrap.py. (#2946)
  • dxtbx: DXTBX is now compatible with numpy 2. (cctbx/dxtbx#751)
  • dxtbx: Allow the creation of a simple Crystal model from PHIL parameters. (cctbx/dxtbx#819)
  • dxtbx: Python 3.13 compatibility. (cctbx/dxtbx#826)
  • xia2.multiplex: Added new features to export unmerged reflections in mmcif format. (xia2/xia2#845)
  • xia2.ssx: Add d_max= parameter to apply low resolution cutoff. (xia2/xia2#851)
  • xia2.multiplex: Significantly speed up multiplex report generation by using dials đťš«CC½ code. (xia2/xia2#860)

Bugfixes

  • dials.ssx_integrate: Do not output a reflection file if no reflections were integrated. (#2804)
  • Updated test suite to use data from dials-data rather than dials_regression, meaning that much more of the test suite can be run outside of Diamond. (#2907)
  • dials.search_beam_position: Fix printing of the beam center. (#2910)
  • dials.import_xds: Reworked the import from INTEGRATE.HKL to have a more complete matchup between the data provided in that file and the reflection list expected by DIALS. (#2914)
  • dials.index: Avoid test failure when the ffbidx package is not functional. (#2923)
  • dials.export: Ensure mmcif output contains the same reflections as mtz output by default. (#2929)
  • dials.import_xds: Clarify expected inputs and improve program structure and output. (#2938)
  • dials.import_xds: Fill xyzobs column values for xds unobserved reflections (i.e. not strong). (#2950)
  • dials.import_xds: Warn the user if XDS.INP is not found, but a case-insensitive variant is present. (#2951)
  • Make mmcif citations correct for import_xds and ssx data processing. (#2955)
  • dxtbx: Convert tests to use dials-data, rather than dials_regression. This means they can be run outside of Diamond. (cctbx/dxtbx#812)
  • dxtbx: Increase displayed precision of crystal U, B and A matrices. (cctbx/dxtbx#823)
  • dxtbx: Add DECTRIS Singla to detectors.lib. (cctbx/dxtbx#824)
  • dxtbx: Avoid reading h5 imagesets as having a single image, when a format class is not available (cctbx/dxtbx#825)
  • dxtbx: dials.modify_experiments: Bug fixes for CrystalFactory.from_phil. (cctbx/dxtbx#829)
  • xia2.ssx: Fix crash on windows when using image=file.nxs:start:end syntax. (xia2/xia2#854)
  • xia2.multiplex: Fix crash in report generation if run with resolve_indexing_ambiguity=False. (xia2/xia2#861)

For a more complete list of changes and fixed bugs check the dials, dxtbx and xia2 changelogs.

- Python
Published by DiamondLightSource-build-server 8 months ago

dials - DIALS 3.24.3

2025-05-27: - cctbx: Handle more recent versions of INTEGRATE.HKL in cftbx where the detector distance is on a different line (cctbx/cctbx_project#1081)

For a more complete list of changes and fixed bugs check the dials changelog.

There are no changes to dxtbx or xia2 in this release.

- Python
Published by DiamondLightSource-build-server 9 months ago

dials - DIALS 3.24.1

2025-05-13: - Add missing implementation in multi-dataset-handling OrderedSet. This caused a crash running xia2.ssx_reduce. (#2916) - dxtbx.install_format: Fix for modern setuptools versions which drop legacy setup.py features. (cctbx/dxtbx#808)

For a more complete list of changes and fixed bugs check the dials and dxtbx changelogs.

There are no changes to cctbx or xia2 in this release.

- Python
Published by DiamondLightSource-build-server 10 months ago

dials - DIALS 3.24.0

2025-04-29:

Features

  • dials.index: Separately report unindexed reflection counts for reflections away from ice regions. (#2827)
  • dials.cosym: Add the option output.excluded=True to set aside the data sets that cosym rejected, so that these can more easily be investigated separately. (#2854)
  • dials.image_viewer: Support iso-resolution lines (circles, ellipses, hyperbola) on non-coplanar and/or two_theta != 0 detectors. (#2867)
  • dials.correlation_matrix: Hierarchical clustering now defaults to Ward linkages. (#2876)
  • dials.cluster_unit_cell: Add option to use Ward linkage, rather than single linkage. (#2884)
  • dials.correlation_matrix: Perform principal component analysis on optimised cosym coordinates. Add a new matrix-style plot for displaying all projections at once. (#2885)
  • dxtbx: FormatROD_Arc: Support for Rigaku HyPix-Arc 100° and 150° curved detectors. (cctbx/dxtbx#787)
  • dxtbx: FormatBrukerELA: Add support for the DECTRIS-ELA detector images in Bruker SFRM format. (cctbx/dxtbx#802)
  • dxtbx.any2nexus: Add sensor_material= and sensor_thickness= options. (cctbx/dxtbx#803)
  • dxtbx: FormatXTC: New features for managing wavelength calibration and an adjustment to the minimum trusted range for the ePix. (cctbx/dxtbx#804)
  • xia2.multiplex: Addition of new PCA style plot to visualise cosine-angle clustering. (xia2/xia2#841)

Bugfixes

  • dials.find_spots: Prevent masked pixels from causing a "halo" of excluded pixels around them when using threashold.algorithm=extended_dispersion. (#2790)
  • dials.ssx_index: Fix crash when processing stills with no scan objects. (#2841)
  • dials.export format=mosflm: Do not write a DIRECTORY line if the image files do not exist (#2845)
  • dials.refine: Warn, don't crash, if trying to fix individual scan-varying parameters. (#2856)
  • dials.cluster_unit_cell: Clusters are given a cluster_id in order of decreasing size, and the output filenames match the cluster_id. (#2859)
  • dials.find_bad_pixels: Use dispersion algorithm for filtering, instead of extended dispersion. This is more sensitive for lone pixels. (#2881)
  • dials.scale: Fix potential bad scaling against a reference if resolution limit is greater than 2 Angstroms. (#2883)
  • dials.reciprocal_lattice_viewer: Fix translate function for Python 3.12. (#2888)
  • dxtbx: Fix issue where attempting to group experiments could fail. (cctbx/dxtbx#772)
  • dxtbx: dials.import: Reduce excessive memory usage when importing many (>100s) FormatNXMX files. (cctbx/dxtbx#789)
  • dxtbx: FormatNXmxEigerFilewriter: Improve heuristics when deciding whether to swap image dimensions. (cctbx/dxtbx#793)
  • dxtbx: FormatROD: Use the weighted average of K-alpha1 and K-alpha2 as the monochromatic wavelength for the beam model. (cctbx/dxtbx#800)
  • dxtbx: FormatRAXIS: Allow the possibility of reading compressed files. (cctbx/dxtbx#801)
  • xia2: Rename STRONG_PIXEL to SIGNAL_PIXEL following changes in XDS. (xia2/xia2#829)
  • xia2.ssx: Correctly handle incorrectly specified filepaths with a useful error message. (xia2/xia2#833)

For a more complete list of changes and fixed bugs check the dials, dxtbx and xia2 changelogs.

- Python
Published by DiamondLightSource-build-server 10 months ago

dials - DIALS 3.23.0

Features

  • Python 3.10 is now the minimum python supported. (#2792)
  • Added initial support for a H5-based reflection table. This is turned off by default, but can be activated by setting the DIALS_USE_H5 environment variable. (#2677)
  • dials.index and dials.ssx_index: Add the CUDA-accelerated fast-feedback-indexer to DIALS as a lattice search algorithm. See https://github.com/paulscherrerinstitute/fast-feedback-indexer for more details. (#2717)
  • dials.estimate_resolution: Add resolution estimate based on limit of CC½ significance. (#2580)
  • dials.refine_error_model: Allow grouped and individual error model refinements. (#2685)
  • dials.symmetry: Enable oversampling in systematic_absences.method=fourier, for screw-axis detection. (#2701)
  • dials.correlation_matrix: Include reachability plot for visualisation of coordinate-clustering. (#2778)
  • dials.image_viewer: Add a line tool that gives start, end, and midpoints, plus a line profile graph. (#2798)
  • dials.search_beam_position: Include three new projection methods. (#2809)
  • dials.import: Add syntax for splitting a long scan into chunks. (#2816)
  • dxtbx: Nexus support: Handle reading new scale_factor fields (used for detector gain). (cctbx/dxtbx#756)
  • dxtbx: Add FormatSMVADSCCetaD to allow easier processing of 3DED images from the Ceta-D detector, which have been converted to SMV. (cctbx/dxtbx#770)
  • xia2.multiplex: Improvements to clustering output, and addition of cluster identification algorithm for comparisons. (xia2/xia2#783)

Bugfixes

  • Fix beam.get_s0() errors when trying to use image viewer with polychromatic data. (#2765)
  • Fix symmetry not being applied consistently post indexing, when multiple crystals and multiple orientations are present. (#2786)
  • dials.cosym: Fix weighting of cosym objective function, use count weights by default. (#2813)
  • dials.cosym: Use unbiased formula for standard error. (#2810)
  • dials.export: Fixes to work with gemmi v0.7. (#2834)
  • dials.generate_distortion_maps: Correct definitions for creating elliptical distortion correction maps. (#2787)
  • dials.image_viewer: Avoid error messages when quitting while one of the tools (ring, unit cell, etc.) is open. (#2836)
  • dials.image_viewer: Do not allow integer controls to take values outside of their bounds. (#2822)
  • dials.image_viewer: Fix display bug with the trusted range mask, when viewing stacked images. (#2830)
  • dials.image_viewer: Recover missing image scrollbar by increasing the panel height. (#2795)
  • dials.index: fix inconsistent experiment IDs after indexing with index_assignment.method=local (#2799)
  • dials.index: Fix minor bug in global index assignment. (#2800)
  • dials.integrate: Allow command line option d_min= without requiring full qualification as prediction.d_min=. (#2837)
  • dials.predict: Do not try to filter shadowed reflections, if no masker is provided. (#2805)
  • dials.predict: Now adds experiment identifiers to output reflections. (#2788)
  • dials.refine_bravais_settings: Select only the reflections used in refinement in the indexing step for the calculation, to reduce memory footprint with very high resolution data. (#2824)
  • xia2: Fix issue where command paths would fail to be resolved on Windows, with some configurations. (xia2/xia2#824)
  • xia2: Fix issue where multiple sweeps were not handled correctly on Windows. (xia2/xia2#825)
  • xia2.multiplex: Improve PHIL help for identifiers= option. (xia2/xia2#828)

For a more complete list of changes and fixed bugs check the dials, dxtbx and xia2 changelogs.

- Python
Published by ndevenish about 1 year ago

dials - DIALS 3.22.1

2024-10-17: - Fix problem causing incorrect resolution values in viewers. (#2765)

For a more complete list of changes and fixed bugs check the dials changelog.

There are no changes to cctbx, dxtbx or xia2 in this release.

- Python
Published by ndevenish over 1 year ago

dials - DIALS 3.22.0

2024-10-15:

Features

  • Switched bootstrap.py to use CMake by default. You can pass --libtbx to get the previous behaviour, if you need to develop cctbx. (#2755)
  • Added scaling corrections for time-of-flight data. (#2704)
  • dials.correlation_matrix: Add dimension optimisation for intensity-based dataset clustering. (#2743)
  • dials.generate_distortion_maps: Much faster map generation for mode=ellipse. (#2745)
  • dials.generate_mask: Allow combining masks. (#2711)
  • dials.image_viewer: Added multi-panel polygon masking. (#2735)
  • dials.correlation_matrix: Add auto-selection and output of significant clusters and extended graphs in html output (#2770)
  • dxtbx: Add format class to read data from the NMX ESS detector. (cctbx/dxtbx#764)
  • xia2.ssx_reduce: Add option to apply a per-crystal I/sigma filter. (xia2/xia2#762)
  • xia2.multiplex: Include dimension optimsation for cos-angle clustering from dials.correlation_matrix. (xia2/xia2#814)

Bugfixes

  • dials.index: Ensure reflections associated with removed experiments are reset to unindexed. (#2653)
  • dials.find_spots: Enable threshold.algorithm=radial_profile for polychromatic data. (#2729)
  • dials.image_viewer: Fixed stacking of masks, and stacking of multiple experiments. (#2730)
  • dials.image_viewer: Fix UI glitches in masking tools. (#2731)
  • dials.resolution_analysis: Suppress output of potential scipy OptimizeWarning. (#2737)
  • dials.generate_distortion_maps: Fix bug with mode=ellipse for detectors with oblong panels. (#2740)
  • dials.cosym: Handle the case of very few reflections, leading to zero weights in weighted cosym analysis. (#2741)
  • dials.integrate: Ensure the polarization correction is only performed for X-ray data (not electron nor neutron). (#2754)
  • dials.image_viewer: Fix broken "Save As" PNG functionality. (#2759)
  • dials.index: When indexing multiple imagesets, ensure a failure to index one does not result in failure for all. (#2764)
  • dials.image_viewer: Fix errors when trying to view polychromatic data. (#2765)
  • dials.reciprocal_lattice_viewer: Fix errors when trying to view polychromatic data. (#2766)
  • dials.geometry_viewer: Fix errors when trying to view polychromatic experiments. (#2773)
  • dxtbx.dlsnxs2cbf: Add work around for issues with data recorded at 32-bit. (cctbx/dxtbx#759)
  • dxtbx: Auxiliary data processing files (mask, gain, pedestal, and dx and dy maps) will now always be loaded when available. (cctbx/dxtbx#760)
  • dxtbx: Refactor panel positions of FormatISISSXD to account for differences in panel positions, depending on the date of data collection. (cctbx/dxtbx#762)
  • dxtbx: Raise a more suitable error message when failing to load an experiment list. (cctbx/dxtbx#763)

For a more complete list of changes and fixed bugs check the dials, dxtbx and xia2 changelogs.

- Python
Published by DiamondLightSource-build-server over 1 year ago

dials - DIALS 3.21.1

2024-08-23: - xia2: Fix compatibility with XDS 20240723, which changed some output in INTEGRATE.LP. (xia2/xia2#805) - dxtbx: Stop dxtbx.image_average shuffling panel positions for segmented detectors. (cctbx/dxtbx#752)

For a more complete list of changes and fixed bugs check the dials, dxtbx and xia2 changelogs.

There are no changes to cctbx in this release.

- Python
Published by DiamondLightSource-build-server over 1 year ago

dials - DIALS 3.21.0

2024-08-20:

Features

  • Add functionality to support time-of-flight and Laue indexing and refinement. (#2662)
  • dials.symmetry: Allow free selection of significance_level in the range [0,1]. (#2696)
  • dials.export: Add support for exporting still data in mmcif format that GEMMI can read. (#2709)
  • dxtbx: Add Nonius KappaCCD format. (cctbx/dxtbx#741)

Bugfixes

  • dials.index: Fix a pink_indexer error that caused failures for images with electron diffraction geometry. (#2680)
  • dials.correlation_matrix: Correctly select datasets for output json after filtering, when used by multiplex. (#2681)
  • dials.index: Avoid mm to px conversion when the refinement_protocol is set to do no refinement, as the required data are not available. (#2687)
  • dials.image_viewer: Increase the maximum resolution for the ring tool radius. This was too small for new detectors. (#2697)
  • dials.index: Fix potential crash in max_cell estimation when all spots are at the resolution of ice rings. (#2699)
  • dials.merge: Use GEMMI to output merged MTZs, for consistency with dials.export. (#2700)
  • dials.reciprocal_lattice_viewer: Fix middle mouse drag to translate function. (#2707)
  • Performance improvement for selections from large reflection tables. (#2718)
  • dxtbx: FormatMRC: Relax restrictive check on the overloaded MZ header value, which caused failures to read files where MZ == 1. (cctbx/dxtbx#740)
  • dxtbx: FormatCBFMini: When parsing header lines for a timestamp, avoid clashes with Windows paths. (cctbx/dxtbx#742)
  • dxtbx: FormatPy: Add fix for pickle files. (cctbx/dxtbx#744)
  • dxtbx: FormatSMVRigakuSaturnNoTS: Fix a bug in reading the image pedestal from headers. (cctbx/dxtbx#746)
  • xia2.ssx_reduce: Make sure space group naming is correct after cosym batch reindexing. (xia2/xia2#798)
  • xia2: Convert merged MTZ output to use GEMMI, following https://github.com/dials/dials/pull/2700 (xia2/xia2#799)
  • xia2: Try to reduce number of resolution bins for report generation, for sparse data, to avoid crash. (xia2/xia2#801)

For a more complete list of changes and fixed bugs check the dials, dxtbx and xia2 changelogs.

- Python
Published by DiamondLightSource-build-server over 1 year ago

dials - DIALS 3.20.0

2024-06-19:

Features

  • DIALS is now compatible with Python 3.12. (#2651)
  • New tool: dials.correlation_matrix: A new command-line tool for correlation and cosine similarity clustering of multi-crystal datasets, independent of xia2.multiplex. (#2632)
  • New tool: dials.split_still_data for splitting dials-processed still data based on image number (e.g. dose series). (#2672)
  • dials.scale: Add filtering options to default basic error model to allow error modelling of stills data. (#2654)
  • dials.cosym: Add alternative weighting during cosym CC calculation with a new cc_weights= option. (#2666)
  • dxtbx: The template handling mechanism is extended. A template with a single # is expanded to match non-zero padded sequential numbers. (cctbx/dxtbx#705)
  • dxtbx: Add dxtbx.any2nexus program, to convert any file dxtbx can read to a NeXus file. (cctbx/dxtbx#735)
  • xia2.ssx_reduce: Optimise and apply an error model correction in scaling. (xia2/xia2#792)

Bugfixes

  • Fix dials.show beam checks for time of flight experiments. (#2660)
  • dials.find_rotation_axis: Correctly set the orientation of the rotation axis for a multi-axis goniometer. (#2658)
  • When masking, raise an error if d_min > d_max (where no spots would be found). (#2664)
  • dials.cosym: Make function return structure correctly, in the recently added cc_weights= option. (#2668)
  • dials.find_rotation_axis: Add reflection selection criteria, to avoid runs that use a very large amount of memory. (#2670)
  • dials.cosym: Fix to give more accurate cc calculation when running with a space_group= set. (#2674)
  • Fix flex.reflection_table.concat, to not modify in-place. (#2679)
  • dxtbx: FormatROD: set the beam probe to "electron" for 3D ED experiments. (cctbx/dxtbx#728)
  • dxtbx: Raise an error if geometry.goniometer.axis= is set with a multi-axis goniometer. In that case, geometry.goniometer.axes= must be set instead. (cctbx/dxtbx#730)
  • dxtbx: Update goniometer for FormatISISSXD to allow for different ways the goniometer angle can be stored. (cctbx/dxtbx#731)
  • dxtbx: Fix Scan.get_property key type. (cctbx/dxtbx#734)
  • xia2.multiplex: Reset batches after filtering steps to prevent inconsistencies and duplications. (xia2/xia2#789)
  • xia2.ssx_reduce: Improve indexing ambiguity resolution with a reference by direct call to dials.reindex methods. (xia2/xia2#794)

For a more complete list of changes and fixed bugs check the dials, dxtbx and xia2 changelogs.

- Python
Published by DiamondLightSource-build-server over 1 year ago

dials - DIALS 3.19.1

2024-05-23: - dxtbx: Fix case where old I03 Eiger nexus data (pre-2020) would fail to process. (cctbx/dxtbx#737)

For a more complete list of changes and fixed bugs check the dxtbx changelog.

There are no changes to cctbx, dials or xia2 in this release.

- Python
Published by DiamondLightSource-build-server almost 2 years ago

dials - DIALS 3.19.0

2024-04-17:

Features

  • dials.predict: Allow usage when image data are not available. (#2553)
  • dials.ssx_index: Allow use of sequences indexer, pinkindexer and lowresspotmatch indexing algorithms. (#2614)
  • dials.export: Add option composition= to specify of asymmetric unit composition for SHELX .ins file output. (#2623)
  • Add TOFSpotFinder to tailor default params to time of flight experiments and add additional reflection table data. (#2602)
  • dxtbx: Add format reader for Jungfrau4M serial images from beamline ID29 at ESRF. (cctbx/dxtbx#659)
  • dxtbx: Better handling for bad data in spectra calibration in XTC format. (cctbx/dxtbx#674)
  • dxtbx: Add Bruker and miniCBF format readers for the ELDICO ED-1 electron diffractometer with DECTRIS QUADRO detector. (cctbx/dxtbx#682)
  • dxtbx: FormatSMVTimePix_SU: Always mask out the central cross of virtual pixels. (cctbx/dxtbx#683)
  • dxtbx: Add format reader for ISIS SXD detector. (cctbx/dxtbx#687)
  • dxtbx: Detector distance can now be manually overridden for multi-panel detectors. (cctbx/dxtbx#698)
  • dxtbx: Add format reader to read time of flight Laue data from MANDI. (cctbx/dxtbx#703)

Bugfixes

  • Fix building on RHEL8 and other more recent distributions. (#1465)
  • dials.index: Joint indexing is automatically set on for rotation data, off for still data. This can be overridden by explicit use of joint_indexing=. (#2605)
  • dials.export format=shelx: Increased precision of unit cell parameters and their estimated standard deviations written to .ins file. (#2624)
  • dials.ssx_index: Don't combine detector models if individually refined. (#2634)
  • dials.scale: Fix error in propagation of partiality variance, when scaling still data. (#2642)
  • dials.export: Fix crash when exporting scaled still-shot data. (#2646)
  • dxtbx: Fix scan comparison for scan properties changes (cctbx/dxtbx#669)
  • dxtbx: Eiger Support: Invert the module dimensions, only for older firmware versions. See https://media.dectris.com/230203-ReleaseNotes-DECTRISEIGER2.pdf for reference. (cctbx/dxtbx#676)
  • dxtbx: FormatMRC: Better handling of extended headers. (https://github.com/ccpem/mrcfile/issues/50), and extended headers are ignored if they contain junk values. (cctbx/dxtbx#679)
  • dxtbx: Negative rotation angles are now allowed, the goniometer axis will be inverted if necessary. (cctbx/dxtbx#690)
  • dxtbx: dials.import now uses natural sorting on input data, instead of strict sorting. (cctbx/dxtbx#697)
  • dxtbx: Fix setting detector distance for single panel detectors that have a hierarchy. (cctbx/dxtbx#699)
  • dxtbx: Fix error introduced in FormatSMVJHSim causing test failures. (cctbx/dxtbx#710)
  • xia2.multiplex: Avoid space group analysis if given reference file. (xia2/xia2#770)
  • xia2.ssx: Allow use of stills.indexer=sequences in ssx_index routine. (xia2/xia2#779)
  • xia2.multiplex: Allow use of relative_length_tolerance= and absolute_angle_tolerance= (used by cosym) in multiplex. (xia2/xia2#786)

For a more complete list of changes and fixed bugs check the dials, dxtbx and xia2 changelogs.

- Python
Published by DiamondLightSource-build-server almost 2 years ago

dials - DIALS 3.18.1

2024-03-26: - wxPython was inadvertently reverted to 4.1 instead of 4.2 for python 3.9 and 3.10 releases. (#2636)

For a more complete list of changes and fixed bugs check the dials changelog.

There are no changes to cctbx, dxtbx or xia2 in this release.

- Python
Published by DiamondLightSource-build-server almost 2 years ago

dials - DIALS 3.18.0

2024-02-22:

Features

  • dials.slice_sequence: Add exclude_images_multiple= option to split a scan at calibration images, as an alternative to excluding those images in dials.integrate. (#2565)
  • dials.index: Add indexing.method=pink_indexer for still images, based on Gevorkov Y et al. pinkIndexer – a universal indexer for pink-beam X-ray and electron diffraction snapshots <https://doi.org/10.1107/S2053273319015559>_. (#2604)
  • dxtbx: XTC Format has a new parameter, spectrum_required=, to better handle spectra calibration for bad data. (cctbx/dxtbx#674)
  • dxtbx: Add Bruker and miniCBF format readers for the ELDICO ED-1 electron diffractometer with DECTRIS QUADRO detector. (cctbx/dxtbx#682)
  • dxtbx: FormatSMVTimePix_SU: Always mask out the central cross of virtual pixels that have been reconstructed from wide edge pixels. (cctbx/dxtbx#683)
  • dxtbx: Add format reader for ISIS SXD detector. (cctbx/dxtbx#687)

Bugfixes

  • dials.index: Correctly output imageset id when joint_indexing=False and max_lattices>1 (#2538)
  • dials.index: Ensure the unindexed_reflections table in the indexer classes is updated during refinement. (#2545)
  • dials.cosym: Ensure correct reindexing of low symmetry data to the correct setting. (#2548)
  • dials.export: Unmerged MTZ output now uses gemmi, fixing various longstanding issues. (#2549)
  • dials.symmetry/dials.cosym: Avoid crashes when unable to find consistent symmetry during cell reduction routine. (#2552)
  • dials.sequence_to_stills: Avoid creating an experiment for an image with no reflections on it. (#2554)
  • dials.reciprocal_lattice_viewer: Fix toggling of ids on spotfinding output when viewing multiple files. (#2566)
  • dials.estimate_resolution: Fix bug causing fitting failures for isigma, misigma curves. (#2568)
  • dials.reciprocal_lattice_viewer: Ensure the correct panel for the beam centre is recorded when loading models. (#2572)
  • dials.reindex: When reindexing against a reference, use the best cell when determining lattice symmetry. (#2573)
  • dials.cosym: Filter out datasets that can't be mapped through a consistent best cell, rather than exiting. (#2574)
  • dials.export_bitmaps: Fix for use of imageset_index parameter on image sets that don't start at image numbers of 1. (#2591)
  • Reorganize imports in export_mtz.py so that its gemmi-less objects can be used by other gemmi-less software. (#2592)
  • dials.image_viewer: Fix for stills experiments viewing crash. (#2594)
  • dxtbx: Importing the (deprecated and removed) dxtbx.datablock module failed to display warning properly. (cctbx/dxtbx#665)
  • dxtbx: Fix scan comparison for scan properties changes. (cctbx/dxtbx#669)
  • dxtbx: Eiger support: Following bug fix in DECTRIS file writer, invert the module dimensions, but only for older firmware versions. (cctbx/dxtbx#676)
  • dxtbx: FormatMRC: Better handling of extended headers. (https://github.com/ccpem/mrcfile/issues/50), and extended headers are ignored if they contain junk values. (cctbx/dxtbx#679)
  • dxtbx: Fixed Scan.from_dict bug where some properties were not correctly parsed. (cctbx/dxtbx#688)
  • dxtbx: In DXTBX do not assert the rotation angles for images are positive, and invert in import with an axis inversion if needed. (cctbx/dxtbx#690)
  • dxtbx: For dials.import: use natural sorting on input data in preference to strict sorting (cctbx/dxtbx#697)
  • xia2.multiplex: Avoid space group analysis, if given reference file. (xia2/xia2#770)

For a more complete list of changes and fixed bugs check the dials, dxtbx and xia2 changelogs.

- Python
Published by DiamondLightSource-build-server about 2 years ago

dials - DIALS 3.17.0

2023-11-03:

Features

  • Circular dependencies have been removed between DIALS and cctbx.xfel by using the new serialtbx. (#2404)
  • dials.import: Enable use of an image range selection when importing a still sequence. (#2490)
  • dials.estimate_resolution: Improved CC½ fitting by using a weighted tanh fit. (#2499)
  • dials.find_spots and dials.integrate now accept exclude_images_multiple=N, which will be expanded to the appropriate exclude_images= definition that excludes every Nth image from the data set. This is intended for the sitation where a scan of diffraction images is regularly interrupted by calibration images. (#2511)
  • dials.ssx_integrate: Add mosaicity_max_limit= setting, to control what mosaicity limit is considered unphysically large. (#2518)
  • dials.ssx_integrate: Add max_cell_volume_change_fraction= parameter to catch highly divergent cell refinements (#2521)
  • dxtbx: Add nxmx_writer, a tool for converting any data dxtbx can read to NeXus data. (cctbx/dxtbx#615)
  • dxtbx: Remove circular dependencies between dxtbx and cctbx.xfel, by using the new serialtbx. (cctbx/dxtbx#627)
  • dxtbx: Set the beam probe to electron in both FormatNXmxED and FormatSER. (cctbx/dxtbx#661)
  • xia2.ssx: Enable slicing a subset of images/templates using <filename>:start:end syntax. (xia2/xia2#740)
  • xia2.ssx_reduce: Improved workflow for resolving indexing ambiguity. (xia2/xia2#761)
  • xia2.ssx: Add starting_geometry= option, to set an initial geometry for further geometry refinement. (xia2/xia2#763)
  • xia2.cluster_analysis: Add run_cluster_identification= option to toggle cluster identification analysis. (xia2/xia2#767)

Bugfixes

  • dials.cosym: Fix handling of refinement weights, for sparse data with a low number of common reflections. This improves the handling of serial still data. (#2503)
  • dials.reflection_viewer: Fix a wsPython-related type error. (#2506)
  • dials.sequence_to_stills: Now works with statically-refined experiments. (#2516)
  • dials.sequence_to_stills: Generate identifiers for the split experiments. (#2517)
  • dials.sequence_to_stills: No longer crashes when operating on a scan that does not start at image 1. (#2520)
  • dials.symmetry: Print reindexed unit cell in log output. (#2523)
  • dials.index: Correctly index multiple sweeps for multi-sweep indexed input. (#2534)
  • dials.ssx_integrate: Fix bug in foreground mask calculation, affects datasets where wavelength is much bigger or smaller than 1 Å. (#2535)
  • dials.index: Fix lattice counting when indexing with >1 sweep and >1 lattice (#2539)
  • dials.cosym/dials.scale: Handle potential quasi_normalisation failures (for serial data). (#2540)
  • Bootstrap --cmake: Fix configuration when CCP4 is already loaded. Previously, this could cause a failure as it tried to resolve the CCP4 copy of HDF5 in order to determine version. (#2544)
  • dxtbx.image_average: Better handle detector gain and pixel data type. (cctbx/dxtbx#660)
  • dxtbx: Beam.probe is no longer reset if any geometrical override is provided at import. (cctbx/dxtbx#661)
  • dxtbx: Pilatus 4: Do not invert module size that is correctly written in master file. (cctbx/dxtbx#663)
  • dxtbx.plot_detector_models: Use noninteractive matpotlib backend, if using the pdf_file= option. (cctbx/dxtbx#664)
  • xia2.multiplex: Automatically extend r_free flags for clusters and filtered datasets. (xia2/xia2#747)
  • xia2.ssx_reduce: Improve data selection for indexing ambiguity resolution. (xia2/xia2#760)
  • xia2.cluster_analysis: Fixed bug where interesting clusters were not identified, due to inconsistency in file paths. (xia2/xia2#764)
  • xia2.multiplex: Fix duplicate-batch-offsets crash for multi-lattice data. (xia2/xia2#765)
  • xia2.multiplex: Exit cleanly when supplied with still-shot data. (xia2/xia2#766)
  • xia2.ssx_reduce: Fix test for potential accidental indexing ambiguities for non-MX space groups. (xia2/xia2#768)

For a more complete list of changes and fixed bugs check the dials, dxtbx and xia2 changelogs.

- Python
Published by DiamondLightSource-build-server over 2 years ago

dials - DIALS 3.16.1

2023-09-05: - dials.merge: Fix potential for crash with r_free_flags.extend=True, if there is no new flags to extend. (#2491) - dxtbx: Fix situation where a bad Beam.probe could cause undefined behaviour. (cctbx/dxtbx#656) - dxtbx: Fix performance regression loading large experiment lists containing profile/scaling models. (cctbx/dxtbx#658)

For a more complete list of changes and fixed bugs check the dials and dxtbx changelogs.

There are no changes to cctbx or xia2 in this release.

- Python
Published by DiamondLightSource-build-server over 2 years ago

dials - DIALS 3.16.0

2023-08-14:

Features

  • Support for building a CMake developer environment with bootstrap.py --cmake. This should be considered experimental, for now. (#2474)
  • dials.export_bitmaps: Set resolution_rings.d_spacings= to manually specify the size of resolution rings. (#2461)
  • dials.export: You can now specifying a wavelength tolerance when exporting multi-wavelength data to mtz. (#2471)
  • dials.index: Experiment number is now shown when indexing multiple experiments. (#2470)
  • dials.merge: Added stereographic projections to the html report, if merging more than one experiment. (#2476)
  • dials.scale: Absorption correction is now switched off if all scattering angles are small (cos(2Ď‘) ~ 1). (#2455)
  • xia2.cluster_analysis: The cluster selection algorithm now handles edge cases more robustly. (xia2/xia2#744)
  • xia2.multiplex: Add support for multi-wavelength processing. (xia2/xia2#755)
  • xia2.multiplex: Added option reference=, to use a reference pdb for consistent indexing. (xia2/xia2#748)
  • dxtbx: Add new Beam class dxtbx.model.PolychromaticBeam, for polychromatic/multi-wavelength/wide bandpass experiments. (cctbx/dxtbx#621)
  • dxtbx: The model.Beam object now has a probe value to keep track of the type of radiation. (cctbx/dxtbx#647)
  • dxtbx: Formats: Reflect move of Eiger detector from PETRA P14 to P13. (cctbx/dxtbx#626)
  • dxtbx: Formats: CBFMini support for the EIGER2 16M detector at CHESS beamline ID7B2, which has an inverted rotation axis. (cctbx/dxtbx#649)
  • dxtbx: Formats: Support for Eiger 9M on ESRF ID23-2, which has an undeclared vertical goniometer. (cctbx/dxtbx#651)
  • dxtbx: Formats: Partial support for the Rigaku Oxford Diffraction file format, including support for multi-axis goniometers and faster decompression. (cctbx/dxtbx#645)

Bugfixes

  • dials.combine_experiments: No longer requires reflection data. (#2323)
  • dials.image_viewer: Fix crash when the detector is rotated more than 90° from the beam direction. (#2479)
  • dials.import: Now ensures manual geometry updates are only applied once to each model. This ensures invert_rotation_axis=True will only invert the rotation axis once. (#2469)
  • dials.index: indexing.refinement_protocol.mode=None now applies to both the scans and stills indexers. (#2456)
  • dials.index: Now fails with a useful error message when there are too few spots for indexing. (#2457)
  • dials.model_background: Works again for data sets that do not start from image "1". (#2405)
  • dials.reciprocal_lattice_viewer: Handle cases where a beam centre cannot be calculated, such as a detector with a high 2θ swing angle. (#2483)
  • dials.reindex: Fix crash reindexing against a reference file, for more than one input file. (#2439)
  • dials.ssx_integrate: Address issue with ellipsoid angular models by replacing with new, correct, r-dependent models. (#2463)
  • Updated DIALS to imageset slicing properly using 0-based indices. Previously, the slice had to be accessed with the original image indices. (#2411)
  • dxtbx: Panel geometry definitions in PHIL are merged by panel id before constructing panels. (cctbx/dxtbx#299)
  • dxtbx: flumpy: Fix case where incorrect flex.vec2, flex.vec3 could be generated. (cctbx/dxtbx#439)
  • dxtbx: NXmx files with multidimensional arrays (images, modules, or both) are now handled. (cctbx/dxtbx#612)
  • dxtbx: Slicing of imageset objects is now consistently 0-based, including for the sliced data accessor. Previously, the data accessor had to be accessed with the original index offsets. (cctbx/dxtbx#633)
  • dxtbx: Formats: Add fix for Eiger / NXmx data from DLS i19-2, to correctly assign the image bit depth. (cctbx/dxtbx#652)

For a more complete list of changes and fixed bugs check the dials, dxtbx and xia2 changelogs.

- Python
Published by DiamondLightSource-build-server over 2 years ago

dials - DIALS 3.15.1

2023-06-29: - dials.export_bitmaps: Fix the resolution_rings.fontsize= feature to work on Mac, and more reliably across platforms. (#2441) - xia2: Don't import matplotlib in scipy.hierarchy.dendrrogram, causing errors on headless machines. (xia2/xia2#745) - dxtbx.dlsnxs2cbf: Fix import overwritten by local variable. (cctbx/dxtbx#641)

For a more complete list of changes and fixed bugs check the dials, dxtbx and xia2 changelogs.

There are no changes to cctbx in this release.

- Python
Published by DiamondLightSource-build-server over 2 years ago

dials - DIALS 3.15.0

2023-06-13:

Features

  • Python 3.11 is now supported as a bootstrap target. (#2338)
  • dials.refine: Independent groups of experiments are now refined separately by default. The previous behaviour can be selected by using separate_independent_sets=False. (#2336)
  • Support IOBS/SIGIOBS and FOBS/SIGFOBS columns when reading reference intensities from MTZ files. (#2386)
  • dials.export_bitmaps: Optionally overlay ice rings. (#2393)
  • dials.reindex: Allow reindexing against a reference file (mtz, pdb, cif) from which intensities can be extracted/generated (#2420)
  • dials.refine: new option auto_reduction.ignore=True allows avoiding the parameter auto-reduction procedure for special cases. (#2431)
  • dxtbx: Support for Bruker Photon detectors has been extended to include Photon-III. (cctbx/dxtbx#637)
  • New: xia2.cluster_analysis: The clustering algorithm from xia2.multiplex is now available as a separated program, applicable to any merged data from dials (rotation or stills). (xia2/xia2#733)
  • xia2.ssx: Report hit and indexing rates during processing. (xia2/xia2#735)
  • xia2.ssx_reduce: Allow setting of the partiality threshold (default now 0.25). (xia2/xia2#743)

Bugfixes

  • dials.export_bitmaps: Correctly display the requested number of resolution rings. (#2397)
  • dials.scale: Fix crash in html plotting for scaling and filtering when R-pim/R-merge values contain 'None' values (#2410)
  • dials.scale, dials.cosym: Use bulk solvent model when calculating intensities from a reference file. (#2414)
  • dials.integrate: Fix multiprocessing on Windows with Python 3.11. (#2426)
  • dials.ssx_integrate: Fix error in partiality calculation for ellipsoid integration algorithm. (#2429)
  • dials.import: Don't print filename template for every image of an ImageSequence. (#2432)
  • dxtbx: Rigaku Saturn SMV images with multi-axis crystal goniometers are now handled, instead of being silently ignored. With thanks to James Hester for this contribution. (cctbx/dxtbx#617)
  • dxtbx: FormatCBFFull: If rotation angles are decreasing, then invert the rotation axis as well as the angles, to be consistent. (cctbx/dxtbx#623)
  • xia2.ssx: Include solvent contribution when generating reference intensities from a model. Adds ksol and bsol parameters. (xia2/xia2#737)
  • xia2.ssx: Fix error in progress reporting when no hits found, or when no images indexed in a batch. (xia2/xia2#739)
  • xia2.cluster_analysis: Improved cluster selection algorithm to more robustly handle edge cases. (xia2/xia2#744)

For a more complete list of changes and fixed bugs check the dials, dxtbx and xia2 changelogs.

- Python
Published by DiamondLightSource-build-server over 2 years ago

dials - DIALS 3.14.2

2023-05-16: - dxtbx: Compatibility fix for the DECTRIS Eiger FileWriter. Recent FileWriter versions split bit depth metadata into two separate items, bit_depth_readout from the NXmx standard, and the new bit_depth_image field. This adds support for the latter, and now passes the metadata through into image conversion. (cctbx/dxtbx#632)

For a more complete list of changes and fixed bugs check the dxtbx changelog.

There are no changes to cctbx, dials or xia2 in this release.

- Python
Published by DiamondLightSource-build-server almost 3 years ago

dials - DIALS 3.14.1

2023-04-20: - dials.export_bitmaps: Correctly scale resolution rings with image binning= set. (#2392) - Revert GTK-message-supression change that was causing reciprocal_lattice_viewer errors. (#2395)

For a more complete list of changes and fixed bugs check the dials changelog.

There are no changes to cctbx, dxtbx or xia2 in this release.

- Python
Published by DiamondLightSource-build-server almost 3 years ago

dials - DIALS 3.14.0

2023-04-12:

Features

  • dials.damage_analysis: Add dose_group_size= option to allow generation of plots for subsets of the data based on dose. (#1903)
  • dials.import/dials.export: The image template is now reported in the log file, for rotation data. (#2278)
  • dials.merge: Now suggests a resolution limit, based on a fit to CC½. (#2351)
  • dials.merge: Save merged half datasets to the MTZ file when additional_stats=True. (#2353)
  • dials.export_bitmaps: Option to render resolution rings. (#2360)
  • dials.rs_mapper: Now works with multi-panel detectors. (#2362)
  • dials.ssx_integrate: Add support for multi-panel detectors, for the ellipsoid model. (#2368)
  • dials.find_spots: Add the exclude_images= option. Previously this was only on dials.import. (#2374)
  • dials.merge: Generate "FreeR_flag" column in output mtz, optionally copying from a reference mtz containing a FreeR_flag column. (#2378)
  • dxtbx: flumpy: Add support for conversion of flex.miller_index arrays to/from numpy. (cctbx/dxtbx#618)
  • xia2.ssx: Enable arbitrary grouping of data for merging by specifying a grouping yml, add doseseriesrepeat=$n option to indicate dose series for merging. (xia2/xia2#713)
  • xia2: Add handling for small-molecule chemical formula data, and extra help output when using xia2.small_molecule. (xia2/xia2#723)
  • xia2.ssx: Improve unit cell assessment and reporting when unit cell is not known. (xia2/xia2#731)
  • xia2.multiplex: Generate FreeR_flag column in merged mtz output, ensuring flags are consistent across all clusters/filtered reflections. (xia2/xia2#732)

Bugfixes

  • dials.refine: Does not call sys.exit when running as a library function. (#2325)
  • dials.generate_mask: Fix a failure when the direct beam intersected the exact centre of a pixel. (#2329)
  • Providing invalid PHIL parameters no longer causes a traceback. (#2331)
  • dials.index: Handle possibility of Krivy-Gruber iteration limit exceeded in Niggli cell reduction. (#2332)
  • CPU allocation limits will now be correctly inherited from the Slurm cluster scheduler. (#2335)
  • dials.ssx_integrate: Fix cases where the background and centroid algorithms choices were not being used with ellipsoid-model integration. (#2337)
  • dials.assign_experiment_identifiers now works with experiment lists without identifiers. (#2342)
  • Test data files are no longer patched to correct their trusted range values, and usages of the deprecated DataBlock have been removed. (#2346)
  • dials.ssx_integrate: catch rare ValueError in ellipsoid profile model refinement (#2349)
  • dials.symmetry: Handle cases when an experiment has no scan object. (#2350)
  • dials.ssx_index: Ensure file paths are split correctly on Windows. (#2358)
  • Replace the deprecated imp library with importlib. (#2363)
  • dials.rs_mapper: Fix bug causing the image data to be accessed with out-of-bounds indices. (#2364)
  • dials.image_viewer: Fix error when using newer versions of wxPython. (#2365)
  • DIALS viewers: Suppress terminal output saying "Gtk-Message". (#2366)
  • Prevent occasional failures testing constrained geometry refinement. (#2367)
  • Slicing a reflection_table does not lose the experiment identifiers map. (#2371)
  • dials.integrate: Update exclude_images= syntax to match dials.import and dials.find_spots. The older form is now deprecated. (#2374)
  • reflection_table.match_by_hkle: Fix failure on Windows with pandas 2.0.0. (#2383)
  • dxtbx: Flumpy: Prefer returning flex.int instead of flex.long when they are the same size. This solves ambiguous behaviour when reading images on Windows platforms. (cctbx/dxtbx#607)
  • dxtbx.plot_detector_models: Fix display of multiple single-panel detector models. (cctbx/dxtbx#610)
  • xia2.ssx: Don't use the beam model from a reference geometry. (xia2/xia2#724)
  • xia2.ssx: If rerunning in same directory, make sure correct batch folders are generated. (xia2/xia2#725)
  • xia2.ssx: When re-importing with the self-determined reference geometry, don't overwrite the detector model with manually specified phil options. (xia2/xia2#726)

For a more complete list of changes and fixed bugs check the dials, dxtbx and xia2 changelogs.

- Python
Published by DiamondLightSource-build-server almost 3 years ago

dials - DIALS 3.13.0

2023-01-26:

Features

  • dev.dials.napari_rlv: A reciprocal lattice viewer based on napari. This currently requires the napari module to be manually added into your DIALS installation. (#2229)
  • dials.merge: Allow exclude_images= parameter, as in dials.scale. (#2280)
  • dials.refine: Use an overall interval_width_degrees= parameter to set the default smoothness in scan-varying refinement for all models. This does not affect which models will be parameterised as scan-varying, which is controlled by their individual force_static= parameters. (#2268)
  • dials.scale: Add ability to use a precalculated analytical correction as part of scaling models. (#2313)
  • dials.stills_process: Added reflection subsampling. If reflection_subsampling.enable=True, and an image fails to index, the reflections will be randomly subsampled, and indexing tried again. Reflections will be randomly subsampled in smaller amounts until a threshold is reached or the image succesfully indexes. (#2275)
  • dials.stills_process: Adds suppressed_logging= option, and minimial progress feedback. (#2263)
  • xia2.ssx: Handle data from PAL-XFEL and SACLA. (xia2/xia2#719)
  • xia2.ssx: Report r-split metric in merging stats (xia2/xia2#721)
  • Add additional_stats option to generate R-split statistic for stills data in dials.merge and dials.scale. (#2314)
  • dxtbx: FormatNXmxED: Format support for electron diffraction images converted to be compatible with NXmx by nexgen. (cctbx/dxtbx#583)
  • dxtbx: FormatNXmxEDeBIC: Including a mask specific for the SINGLA that is temporarily installed at eBIC, through to early 2023. (cctbx/dxtbx#589)

Bugfixes

  • dials.cluster_unit_cell: Correctly report the number of lattices in each cluster, instead of the number of clusters. (#2300)
  • dials.combine_experiments: Prevent default clustering.max_clusters=None from raising error when clustering. (#2311)
  • dials.import: Fix convert_stills_to_sequences= option for h5 data formats. (#2273)
  • dials.integrate: Clearer error message when kapton absorption_correction.apply=True, but algorithm=None. (#2317)
  • dials.integrate: Fail for negative profile-fitting intensity variance, not zero variance. (#2271)
  • dials.scale: Catch rare crash when making summary stats table. (#2284)
  • dials.scale: Fix crash when scaling against reference, and some datasets were removed during scaling. (#2312)
  • dxtbx.image_average: Fix a crash from using more processors than images when using MPI. (cctbx/dxtbx#571)
  • dxtbx.plot_detector_models now works with newer versions of matplotlib. (cctbx/dxtbx#574)
  • Allow reflection_table.remove_on_experiment_identifiers() for an empty flex.reflection_table. (#2298)
  • dxtbx: FormatNXmxDLS: Don't process electron diffraction images collected at eBIC that have been converted by nexgen. (cctbx/dxtbx#579)
  • dxtbx: Read underload from CBF files. (cctbx/dxtbx#592)
  • dxtbx: NXmx: Ensure integer data types get converted to flex.int on all platforms. (cctbx/dxtbx#594)
  • dxtbx: Generally better defined trusted_range values all around (cctbx/dxtbx#590, cctbx/dxtbx#595, cctbx/dxtbx#601)

For a more complete list of changes and fixed bugs check the dials, dxtbx and xia2 changelogs.

- Python
Published by DiamondLightSource-build-server about 3 years ago

dials - DIALS 3.12.1

2022-12-05:

Bugfixes

  • dxtbx: Fix support for datasets generated by the DECTRIS EIGER filewriter (cctbx/dxtbx#582, cctbx/dxtbx#586, cctbx/dxtbx#588)
  • dxtbx: FormatCBFFull: trusted range bug fix - use the minimum valid pixel value rather than the undefined value (cctbx/dxtbx#587)
  • dxtbx: NXmx: eliminate potential divide-by-zero warning (cctbx/dxtbx#572)

For a more complete list of changes and fixed bugs check the dxtbx changelog.

There are no changes to cctbx, dials or xia2 in this release.

- Python
Published by DiamondLightSource-build-server about 3 years ago

dials - DIALS 3.12.0

2022-10-31:

Features

  • The xia2.ssx, xia2.ssx_reduce, dials.ssx_index and dials.ssx_integrate programs are now considered stable, so have dropped the dev. prefix. (#2265 and xia2/xia2#710)
  • dials.background: Add n_checkpoints= parameter, to run the analysis on evenly-spaced images. (#2240)
  • dials.image_viewer: Change default brightness to 10. (#2254)
  • dials.rs_mapper: Perform the calculation in parallel to improve speed. (#2238)
  • dials.stills_process: Add known_orientations= feature, useful for specifying previous processing results to use when reprocessing data, or for multiple detectors in an experiment. (#2110)
  • dxtbx: Improve XTC handling from LCLS. (cctbx/dxtbx#517)
  • dxtbx: NXmx: Add support for @equipment_component. Note, .expt files will not be backwards compatible for users of the JF16M detector at SwissFEL or the AGIPD detector at EuXFEL. (cctbx/dxtbx#561)

Bugfixes

  • dials.find_rotation_axis: Recover a plot that was broken by previous changes. (#2225)
  • dials.image_viewer: Fix intensity readout mouseover, and beamcenter half-pixel errors. (#2194)
  • dials.reciprocal_lattice_viewer: Set the maximum number of experiments to show in the selector toggles (default 15). Datasets with a number larger than this will not be individually selectable. (#2248)
  • dials.scale: Restore consistent dataset id output numbering when a dataset is excluded. (#2246)
  • dials.ssx_integrate: Gracefully handle assertion error for particular bad data. (#2264)
  • dials.stills_process: Fix crashes for raster scans of stills. (#2128)
  • trusted_range is now defined throughout DIALS consistently as the inclusive range between the minimum and maximum trusted values - valid pixels are those less than or equal to the maximum trusted value and greater than or equal to the minimum trusted value. (#2195)
  • dxtbx: Improved speed of reading many-panel Nexus images (cctbx/dxtbx#565)
  • xia2: Explicitly set the log file encoding to be UTF-8. This could break on systems set to non-native character encodings. (xia2/xia2#709)
  • xia2.ssx: Fix error in deciding whether to assess indexing ambiguities. (xia2/xia2#705)
  • xia2.ssx: Fix crash in geometry refinement when a block has no indexable images. (xia2/xia2#707)
  • xia2.ssx: Avoid crash if no images successfully integrated. (xia2/xia2#711)

For a more complete list of changes and fixed bugs check the dials, dxtbx and xia2 changelogs.

- Python
Published by DiamondLightSource-build-server over 3 years ago

dials - DIALS 3.11.2

2022-09-27: - dials.scale: Fix bug in intensity combination scoring for multi-sweep datasets, affecting midpoint test values. (#2199) - dxtbx: NXmx: Cope more gracefully with scalar NXtransformations values. (cctbx/dxtbx#546) - dxtbx.dlsnxs2cbf: Fix distance and pixel size bugs. (cctbx/dxtbx#548) - dxtbx: NXmx reading: Handle cases where the detector is read as between the sample and source. This is to compensate for an incorrect definition in the Dectris Eiger file writer. (cctbx/dxtbx#550) - cctbx: Try to be smarter about which python to use when installing DIALS.

For a more complete list of changes and fixed bugs check the dials and dxtbx changelogs.

There are no changes to xia2 in this release.

- Python
Published by DiamondLightSource-build-server over 3 years ago

dials - DIALS 3.11.1

2022-09-02: - Revert default installation to Python 3.9, to avoid WXPython incompatibilities. You can still manually request Python 3.10 when building the release, but the binaries we distribute for DIALS 3.11 will be Python 3.9 for the rest of the series. (#2216) - dxtbx.dlsnxs2cbf: Fix bug introduced by #572. (cctbx/dxtbx#545)

This release includes the changes from the now-retracted DIALS 3.11.0: 2022-08-24:

Features

  • DIALS now use Python 3.10 by default in releases and when running bootstrap. Python 3.8 is still supported. (#2206)
  • dials.scale: Added the reference= option, with support for using a cif data file as a scaling reference. This replaces the old usages of target_mtz= and target_model=, which are now deprecated. (#2148)
  • dials.cosym: Allow use of a reference dataset, to consistently index against. (#2154)
  • dials.find_rotation_axis: Dramatically improve execution time by performing the search in parallel. (#2160)
  • dials.image_viewer: Score tool now accepts keyboard entry. (#2162)
  • dials.symmetry: Add option to score systematic absences using fourier analysis. Thanks to Kevin Dalton for contributing this feature. (#2184)
  • Unit cell clustering reports: Add plots of unit cell angle distribution. (#2197)
  • dials.merge: Add merging statistics to output html report, and the PHIL option output.json= to write this this to json. (#2178)
  • dials.merge: include merging statistics in json output (#2207)
  • dxtbx: Replace use of legacy FormatNexusEiger with new FormatNXmx format class. (cctbx/dxtbx#455)
  • xia2: dev.xia2.ssx: Add data reduction to experimental ssx pipeline, and expose data reduction as the new standalone dev.xia2.ssx_reduce program. (xia2/xia2#683)

Bugfixes

  • dials.find_rotation_axis: Consistently report rotation axis angle at start and end of the search. (#2145)
  • dials.generate_mask: Make the log filename consistent with the program name. (#2147)
  • dials.image_viewer: Automatically complete an active polygon mask when saving mask parameters. (#2150)
  • dials.refine: Correct an error mapping constraint definitions to models. (#2155)
  • dials.background: Check for empty experiments. (#2163)
  • dials.estimate_gain: Now works on multiple experiments from a single image sequence. (#2164)
  • dials.powder_calibrate: More general determination of background mask removal. (#2165)
  • dials.symmetry: Ensure data for systematic absences check is in the correct setting for non-conventional minimum cells. (#2183)
  • dials.scale: Fix bug in intensity combination scoring for multi-sweep datasets, affecting midpoint test values. (#2199)
  • dev.dials.ssx_index: Fix crash when generating plotting data where rmsd values are almost all equivalent. (#2203)
  • dev.dials.ssx_integrate: Handle potential assertion errors from FastMCD. (#2179)
  • dev.dials.ssx_integrate: Fix divergent refinement bug when nmacrocycles > 1. (#2204)
  • dxtbx: DXTBX now uses the median oscillation width from across the entire scan. This resolved issues where the goniometer scan positions were read-back values instead of set-point values, and a slow rotation start across the first two images would cause the oscillation width for the whole scan to be calculated incorrectly. (cctbx/dxtbx#526)
  • dxtbx: ExperimentList.append(): No longer O(N²) with experiment identifiers. (cctbx/dxtbx#528)
  • dxtbx: FormatNXmx: Ignore empty pixel masks, instead of printing a confusing error. (cctbx/dxtbx#529)
  • dxtbx: Correct assumptions about interpreting multi-axis goniometer axes from full-CBF files. Previously, it was assumed the axis and diffrn_scan_axis categories listed axes in the same order, and that this matched a standard diffractometer axis order. The goniometer model is now build correctly, regardless of the order specified in the file. (cctbx/dxtbx#539)
  • xia2.to_shelx: Fix crash when using unmerged mtz with the --cell option. (xia2/xia2#698)

For a more complete list of changes and fixed bugs check the dials, dxtbx and xia2 changelogs.

- Python
Published by DiamondLightSource-build-server over 3 years ago

dials - DIALS 3.10.3

2022-08-02: - dials.image_viewer: Fix error after loading images with the "Load" button. (#2168) - dials.merge: Fix crash for P-1 datasets. (#2175) - dials.export format=mtz: Handle shared experiment models, when converting to cambridge frame. (#2182) - dxtbx: Fix mask_untrusted_circle() crash when untrusted circle extends outside detector. This affected dials.generate_mask. (cctbx/dxtbx#525) - dxtbx: FormatNXmx: Allow empty saturation_value field when importing data. (cctbx/dxtbx#534)

For a more complete list of changes and fixed bugs check the dials and dxtbx changelogs.

There are no changes to cctbx or xia2 in this release.

- Python
Published by DiamondLightSource-build-server over 3 years ago

dials - DIALS 3.10.2

This is a minor patch release to fix version numbering in the installer for releases.

This includes changes originally released as DIALS 3.10.1: 2022-07-12: - dials.cosym: Fix bug whereby the change of basis op was applied twice to the crystal model. (#2151) - dials.image_viewer: Allow viewing still collections where some images have no reflections. (#2157) - dials.scale: Avoid crashe when all reflections filtered out during reflection selection, for a dataset in multi-dataset scaling, (#2146) - dials.ssx_index: Fix potential crash from one datapoint. (#2156) - dev.dials.ssx_index: Fix reporting when only one image indexed, and fix crash. (#2159) - dxtbx.install_format: Handle case on MacOS .pkg installations where URL-formats could not be installed. (cctbx/dxtbx#524) - dev.xia2.ssx: Fix crash when no images indexed in a batch. (xia2/xia2#686) - Refinement internals: Terminate refinement if the objective is not expected to decrease. (#2135)

For a more complete list of changes and fixed bugs check the dials, dxtbx and xia2 changelogs.

There are no changes to cctbx in this release.

- Python
Published by DiamondLightSource-build-server over 3 years ago

dials - DIALS 3.10.1

2022-07-12: - dials.cosym: Fix bug whereby the change of basis op was applied twice to the crystal model. (#2151) - dials.image_viewer: Allow viewing still collections where some images have no reflections. (#2157) - dials.scale: Avoid crashe when all reflections filtered out during reflection selection, for a dataset in multi-dataset scaling, (#2146) - dials.ssx_index: Fix potential crash from one datapoint. (#2156) - dev.dials.ssx_index: Fix reporting when only one image indexed, and fix crash. (#2159) - dxtbx.install_format: Handle case on MacOS .pkg installations where URL-formats could not be installed. (cctbx/dxtbx#524) - dev.xia2.ssx: Fix crash when no images indexed in a batch. (xia2/xia2#686) - Refinement internals: Terminate refinement if the objective is not expected to decrease. (#2135)

For a more complete list of changes and fixed bugs check the dials, dxtbx and xia2 changelogs.

There are no changes to cctbx in this release.

- Python
Published by DiamondLightSource-build-server over 3 years ago

dials - DIALS 3.10.0

2022-06-09:

Features

  • dials.export: MTZ files are now exported with geometry in the Cambridge frame (#2054), and conformance with the latest mmcif standards (#2078).
  • dials.index: Performance improvements for serial indexing. (#2035)
  • dials.merge: New implementation of the French & Wilson (1978) algorithm, which makes the procedure robust against the presence of very negative intensities. (#2100)
  • dials.powder_calibrate: Add detector distance calibration. (#2075)
  • dials.refine: Reduced memory requirements and improved running time (#1427, #2022). A new separate_images option performs outlier rejection on each image independently. (#2036)
  • dials.scale: Allow use of a pdb model to calculate target intensities for scaling (target_model=). (#2053)
  • xia2: dev.xia2.ssx: Add first part of a developmental ssx processing pipeline (data integration) (xia2/xia2#670)

Bugfixes

  • dials.reindex: Fail with a helpful error message when attempting to reindex to a left-handed cell. (#1779)
  • dials.scale: If scaling against a target, do targeted outlier rejection. (#2052)
  • dials.show: Avoid crash when an experiment does not have an imageset. (#2056)
  • dials.image_viewer: Fixed user setting for show_beam_center= being overridden (#2103). Properly handle the n_iqr value for radial_profile thresholding (#2116).
  • dials.refine_bravais_settings: Ensure that the reported reindexing operators correctly map the input symmetry to the given Bravais settings, regardless of whether the input symmetry was a primitive or non-primitive setting (#2105)
  • dials.scale: Respect user supplied high resolution limit in summary table. (#2118)
  • dials.export: Fix crash for exporting ssx data (#2126)
  • dxtbx: Fixed Panel.projection_2d_ not being serialized. (cctbx/dxtbx#509)
  • dxtbx: Fix dxtbx.image_average for raster scans. (cctbx/dxtbx#522)
  • xia2: Fix cases where NeXus files not following the Eiger conventions (/entry/data/data_[nnnn]`) were ignored. (xia2/xia2#672)
  • xia2: Fix bug in pipeline=dials where the working directory contains the letters "mtz". (xia2/xia2#674)

For a more complete list of changes and fixed bugs check the dials, dxtbx and xia2 changelogs.

- Python
Published by ndevenish over 3 years ago

dials - DIALS 3.9.2

2022-05-09: - dials.show: Fix display of unknown vector columns. (#2048) - dxtbx: FormatCBFFullPilatus: Handle detector information better in cases of multiple or missing panels. (cctbx/dxtbx#508) - dxtbx: Remove check for beam/normalization orthogonality in Beam.rotate_around_origin. This could stop processing of older, incorrectly configured data. (cctbx/dxtbx#510) - dxtbx: Correct a unicode error reading Bruker .sfrm files. With thanks to Dennis Brookner for this change. (cctbx/dxtbx#518)

For a more complete list of changes and fixed bugs check the dials and dxtbx changelogs.

There are no changes to cctbx or xia2 in this release.

- Python
Published by DiamondLightSource-build-server almost 4 years ago

dials - DIALS 3.8.4 LTS

2022-04-01: - dials.scale: Fix crash when a dataset is filtered out during the scaling process (issue #2045). (#2045) - dxtbx: FormatNXmxI19_2: Allow data from beamline I19-2 at Diamond Light Source to be processed with optional masking of the beamline's standard diamond anvil pressure cell with a 76° aperture. (cctbx/dxtbx#481) - cctbx: Allow usage of GUI interfaces when configuring on MacOS.

For a more complete list of changes and fixed bugs check the dials and dxtbx changelogs.

There are no changes to xia2 in this release.

- Python
Published by DiamondLightSource-build-server almost 4 years ago

dials - DIALS 3.9.1

2022-03-31: - dials.scale: Fix crash when a dataset is filtered out during the scaling process (issue #2045). (#2045) - dxtbx: Windows support for the CMake build. (cctbx/dxtbx#507) - cctbx: Allow usage of GUI interfaces when configuring on MacOS.

For a more complete list of changes and fixed bugs check the dials and dxtbx changelogs.

There are no changes to xia2 in this release.

- Python
Published by DiamondLightSource-build-server almost 4 years ago

dials - DIALS 3.9.0

2022-03-14:

Features

  • dials.background now writes to a log file. (#1948)
  • dials.export: Add SHELX .hkl file output. (#1925)
  • dials.cluster_unit_cell: Add option output.clusters=True/False to generate output for each clustersplit at a given threshold. (#1950)
  • dials.reindex: Allow reindexing using multi-crystal reference data files. (#1977)
  • xia2.delta_cc_half: Add overall CC½, plus a completeness column to the table. (xia2/xia2#645)
  • Add experimental dev.dials.ssx_integrate script for profile modelling and integration of SSX data, including ellipsoid profile modelling. (#1974)
  • For data reduction programs, allow exclude_images= to take a single multi-sweep command. (#1996)
  • Add flex.reflection_table.match_by_hkle method, to match reflections between tables that have the same miller index and entering flags. (#1951)
  • Add flex.reflection_table.concat method, to concatenate reflection tables and handle experiment id remapping (#1994)
  • dxtbx: Beam flux is now written to, and read from, CBF files. (cctbx/dxtbx#493)
  • Use the perceptually uniform colour map Viridis in plotly plots. Thanks to Ammaar Saeed (ammsa23) for this change. (#2026)

And several features for electron diffraction data processing:

  • dials.export: Add PETS 2 exporting, for processing electron diffraction data. (#2014)
  • dials.find_spots: Added new spotfinder.threshold=radial_profile threshold algorithm. This calculates an average background in 2θ shells, and identifies peak pixels above the background. Particularly appropriate for cases such as electron diffraction images. (#2009)
  • New tool - dials.powder_calibrate to help calibrate the geometry of an electron powder pattern. (#2016)

Bugfixes

  • dials.scale: Fixes to properly handle partiality of ssx data (#1965)
  • Avoid using the uuid module, to avoid mpi errors on Python 3.8. (#2000)
  • dials.refine: Avoid spike in memory usage while saving reflections. (#2024)
  • dxtbx: Reduce, in some cases drastically, memory usage of ImageSet objects. (cctbx/dxtbx#438)
  • dxtbx: FormatNXmxI19_2: Allow data from beamline I19-2 at Diamond Light Source to be processed with masking of the beamline's diamond anvil pressure cell. (cctbx/dxtbx#481)
  • dxtbx: The Beam object constructor no longer discards "transmission" and "flux". (cctbx/dxtbx#488)
  • dxtbx: Fix wavelength bug in FormatXTC for older datasets (cctbx/dxtbx#490)
  • xia2.multiplex: Allow processing imported mtz when imageset is absent. (xia2/xia2#641)
  • xia2: Avoid hanging on a call to pointless to get version information. (xia2/xia2#651)

For a more complete list of changes and fixed bugs check the dials, dxtbx and xia2 changelogs.

- Python
Published by ndevenish almost 4 years ago

dials - DIALS 3.8.3 LTS

2022-02-22: - dials.cosym: Fix crash for edge case of a full dataset being excluded by the resolution filter (#1993) - dials.two_theta_refine: Fix crash if running on scaled data with exclude_datasets=. (#2006) - Fix downloads failing on MacOS with "426 Upgrade Required" (#2012) - dxtbx: FormatNXmx: Open nexus files in SWMR mode. (cctbx/dxtbx#478)

For a more complete list of changes and fixed bugs check the dials and dxtbx changelogs.

There are no changes to cctbx or xia2 in this release.

- Python
Published by DiamondLightSource-build-server about 4 years ago

dials - DIALS 3.8.2 LTS

2022-02-07: - dxtbx.dlsnxs2cbf: Provide more general support for correctly formatted NXmx-flavoured NeXus data. Previously, only a very limited subset of experiment geometries and data formats were supported. (cctbx/dxtbx#453) - dxtbx: More robustly handle different ways of recording single-value NXmx detector metadata. (cctbx/dxtbx#460) - dxtbx: Fix dxtbx.plot_detector_models running on newer matplotlib versions. (cctbx/dxtbx#475)

For a more complete list of changes and fixed bugs check the dxtbx changelog.

There are no changes to cctbx, dials or xia2 in this release.

- Python
Published by DiamondLightSource-build-server about 4 years ago

dials - DIALS 3.8.1 LTS

2022-01-25: - It is now possible to explicitly bootstrap DIALS 3.8 with all supported python versions. (#1988) - dials.refine: Fix crash from recording of parameter correlations in history.json. (#1923) - Correct reporting of phi angle in scan-varying model plots. (#1929) - dials.sequence_to_stills: correct error in the crystal model for scans that do not start from image 1. (#1933) - dials.show: only show format class if meaningful (i.e. not Format or FormatMultiImage). (#1981) - Update some Cosym and resolution-related PHIL descriptions. (#1969) - xia2.multiplex: Add, and update, PHIL parameter descriptions. (xia2/xia2#644) - dxtbx: Updated bad pixel mask for DLS I23 PILATUS 12M for 2022 run 1. (cctbx/dxtbx#469)

For a more complete list of changes and fixed bugs check the dials, dxtbx and xia2 changelogs.

There are no changes to cctbx in this release.

- Python
Published by DiamondLightSource-build-server about 4 years ago

dials - DIALS 3.8.0 LTS

2022-01-11:

This is an LTS release and support will continue until the end of the year. This is also the last release to support Python 3.7.

Features

  • dials.indexed_as_integrated: New tool to make an indexed reflection file look as if it were summation integrated. Allows symmetry and scaling analysis on indexed data, for very rapid feedback data processing. (#1912)
  • All command line programs now allow passing -h argument multiple times to increase verbosity. (#1920)
  • Add experimental dev.dials.ssx_index script to index a block of ssx data. (#1955)
  • Add aliases dials.rlv for dials.reciprocal_lattice_viewer, and dials.rbs for dials.refine_bravais_settings. (#1959)
  • xia2.multiplex: Extend available deltacchalf filtering options to match those in dials.scale. (xia2/xia2#631)
  • xia2.compare_merging_stats called with latex=True now includes cc-anom. (xia2/xia2#633)

Bugfixes

  • dials.import: Support arbitrary P1 known unit cells settings. (#1880)
  • Better handle cases of missing partiality data in reflection files. (#1911)
  • dials.scale: Add missing "expidsandimage_ranges" information to the json output. This is required for some of the plots in dials.report output. (#1913)
  • dials.check_indexing_symmetry: correctly handle d_max= parameter if left at default value when d_min= set. (#1957)
  • dials.image_viewer: Fix plotting of max and min absorption due to Kapton tape corrections. (#1962)
  • dxtbx: Fix an arithmetic mistake in dxtbx.model.Goniometer.rotate_around_origin, which was mangling the addition of a new rotation to the goniostat rotation operator :math:\mathbf{R}. (cctbx/dxtbx#451)
  • dxtbx: Correct pedestal handling for simulated images from simtbx. (cctbx/dxtbx#456)
  • dxtbx: Ensure FormatTIFF only understands images with the expected basic TIFF header. (cctbx/dxtbx#457)
  • xia2.compute_merging_stats: Avoid warning in output. (xia2/xia2#636)

For a more complete list of changes and fixed bugs check the dials, dxtbx and xia2 changelogs.

- Python
Published by ndevenish about 4 years ago

dials - DIALS 3.7.1

2021-11-17: - Fix frozen bootstrap package list to account for backported change in conda-forge dependencies (https://github.com/dials/dials/commit/ef0d20de45b7569a8d75a01045b870178e5b7121) - dials.export: No longer allow (erroneous) MTZ export for multiple experiments with multiple space groups. (#1915) - dials.export: No longer fails for XDS_ASCII and SADABS export with intensity=auto. (#1926) - dials.report: Fix broken json output option. Include more graphs in json output. (#1932) - xia2.multiplex: Include additional graphs in json output (xia2/xia2#637)

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

There are no changes to cctbx or dxtbx in this release.

- Python
Published by DiamondLightSource-build-server over 4 years ago

dials - DIALS 3.7.0

2021-11-01:

A short summary of features and fixes in this release:

Features

  • Bootstrap support for MacOS M1 platforms. (#1841)
  • New dials.find_rotation_axis program optimises the rotation axis from strong spot positions prior to indexing. (#1884)
  • dials.image_viewer:
    • Draw resolution rings for curved detectors. (#1899)
    • Add the option to display the rotation axis (#1856)
    • Resolution Coordinates are now given in fast, slow order. (#1849)
  • dials.import: Unhandled files (e.g. *.log files) are now by default ignored. (#1881)
  • dials.import: New fast_slow_beam_centre= parameter for detector models. (cctbx/dxtbx#421)
  • dials.scale: Allow fixing of a particular physical correction. (#1883)
  • dials.stills_process: Performance improvements for highly mosaic crystals and Kapton absorption correction. (#1846)
  • dxtbx: Support NeXus data from the Tristan event-mode detector on beamline I19 at Diamond Light Source. (cctbx/dxtbx#428)
  • dxtbx: Better support for detector SMV ADSC SN442. (cctbx/dxtbx#445)
  • xia2: New option general.check_for_saturated_pixels=True, to warn about saturated pixels found whilst performing spot finding. (xia2/xia2#624)

Bugfixes

  • dials.compute_delta_cchalf: Fix crash when only using passing dataset/group. (#1892)
  • dials.image_viewer: Crystal basis vectors are now shown in the same colour as their predictions. (#1855)
  • dials.import: Allow importing templates with no template characters. (#1840)
  • dxtbx: Allow importing experiment lists from single-file templates. (cctbx/dxtbx#425)
  • xia2.compare_merging_statistics: If no input files provided, print help, and not empty plots. (xia2/xia2#629)

For a more complete list of changes please check the DIALS, dxtbx and xia2 changelogs.

- Python
Published by ndevenish over 4 years ago

dials - DIALS 3.6.2

2021-09-21: - dials.reciprocal_lattice_viewer: In cases with multiple lattices, "Crystal Frame" now aligns all crystal frames, rather than just the first. Unindexed reflections are no longer shown in this mode. (#1868) - dxtbx: Fix broken dxtbx.install_format command. (cctbx/dxtbx#434)

For a more complete list of changes and fixed bugs check the dials and dxtbx changelogs.

There are no changes to cctbx or xia2 in this release.

- Python
Published by DiamondLightSource-build-server over 4 years ago

dials - DIALS 3.6.1

2021-09-06: - xia2: Allow xia2 installation while offline (xia2/xia2#619)

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

There are no changes to cctbx, dials or dxtbx in this release.

- Python
Published by DiamondLightSource-build-server over 4 years ago

dials - DIALS 3.6

2021-08-16:

A short summary of features and fixes in this release:

Features

  • This is the last release to support Python 3.6. Future releases will require a minimum of Python 3.7.
  • New program: dials.reference_profile_viewer for viewing reference profiles dumped by dials.integrate (#1759)
  • dials.combine_experiments: Unindexed reflections are now included in the combined output (#1760)
  • dials.image_viewer: Improvements to overlays, basis vector control and automatic colour choices (#1750, #1780, #1781)
  • dials.reciprocal_lattice_viewer: The resolution of the "nearest point" will be shown, and default marker size scales based on intensity (#1770, #1773)
  • dials.scale: Always enables absorption correction if the absorption_level= parameter is set (#1793)
  • dials.scale: Allow a shared absorption correction between sweeps if using the physical model, with the option share.absorption=True (#1811)
  • dxtbx: Added dxtbx.flumpy module for zero-copy conversions between numpy and scitbx.array_family.flex arrays (cctbx/dxtbx#377)

Bugfixes

  • dials.integrate: Change default configuration so that unintegrated reflections are not retained. This helps reduce memory usage of downstream tools. (#1753)
  • dials.combine_experiments: Correctly preserve mapping to images. This affects dials.image_viewer and dial.reciprocal_lattice_viewer. (#1093)
  • dials.reciprocal_lattice_viewer: More robust beam centre control that works for multiple panel detectors (#1842)
  • dials.refine_bravais_settings: correctly report mI Bravais settings (#1825)
  • dxtbx: Fix support of older FormatSMVADSCSN442 images (cctbx/dxtbx#369)
  • dxtbx: Fix error reading BioMAX data with H5py 3.3 (cctbx/dxtbx#389)
  • dxtbx: Check for empty beams in XTC streams (cctbx/dxtbx#419)
  • xia2: Fix crash with xia2.compare_merging_stats when setting anomalous=True (xia2/xia2#613)

For a more complete list of changes please check the DIALS, dxtbx and xia2 changelogs.

- Python
Published by ndevenish over 4 years ago

dials - DIALS 3.5.4

2021-07-27: - dials.stills_process: Fix case where imagesets and experiment filenames could potentially disagree (#1814) - dials.scale: Fix incorrect output files, for targeted scaling with more than one target dataset. (#1815) - dials.image_viewer: Fix opening datasets with load_models=False (#1818) - dxtbx: Allow reading of new SACLA hdf5 data (cctbx/dxtbx#408)

For a more complete list of changes and fixed bugs check the dials and dxtbx changelogs.

There are no changes to cctbx or xia2 in this release.

- Python
Published by DiamondLightSource-build-server over 4 years ago

dials - DIALS 3.5.3

2021-07-12: - dials.image_viewer: Fix the basis_vector_scale= parameter. (#1769)

For a more complete list of changes and fixed bugs check the dials changelog.

There are no changes to cctbx, dxtbx or xia2 in this release.

- Python
Published by DiamondLightSource-build-server over 4 years ago

dials - DIALS 3.5.2

2021-06-28: - dials.image_viewer: Fix display of spotfinding intermediates (threshold, dispersion, etc) when viewing multiple still experiments (#1734) - dials.image_viewer: Stacking images no longer gives incorrect results for multi-sweep data beyond the first sweep (#1758) - dxtbx: End the DLS I03 "bad mask" duration, since it is now masked at the file level. (cctbx/dxtbx#385) - dxtbx.dlsnxs2cbf: Handle missing chi/phi axis entries. (cctbx/dxtbx#387)

For a more complete list of changes and fixed bugs check the dials and dxtbx changelogs.

There are no changes to cctbx or xia2 in this release.

- Python
Published by DiamondLightSource-build-server over 4 years ago

dials - DIALS 3.5.1

2021-06-14: - dxtbx: Extend duration of bad module mask for Diamond I03 EIGER 2XE 16M detector indefinitely. This will be updated in a future release. (cctbx/dxtbx#370) - dxtbx: Handle scan data which wraps through 0° instead of >=360° (cctbx/dxtbx#379)

For a more complete list of changes and fixed bugs check the dxtbx changelog.

There are no changes to cctbx, dials or xia2 in this release.

- Python
Published by DiamondLightSource-build-server over 4 years ago

dials - DIALS 3.5.0

2021-05-27:

A short summary of features and fixes in this release:

  • New bootstrap options: --mamba to install with micromamba, and --clean to remove installation caches immediately after completion. (#1676)
  • New command: dials.find_bad_pixels to identify pixels which are identified as signal in >= 50% of images (#1710)
  • dials.integrate: Allow processing of data too large to fit in memory (#1392)
  • dials.scale: Add option error_model.grouping= to control refinement of error models during scaling (#1684)
  • dials.scale: Added physical.absorption_level=[low|medium|high] for bulk control of absorption correction (#1688)
  • dials.cosym: Significantly faster calculation of Rij matrix of pairwise correlation coefficients (#1693)
  • dials.image_viewer: Add selector to choose between a new default \"image\" and traditional \"lab\" coordinate frames (#1716)
  • dials.export_bitmaps: Gained this same projection= option. (#1716)
  • dials.find_spots and dials.integrate: nproc= now works with N > 1 on Windows. (#1724)
  • dials.report: Add units of pixels / images to centroid difference histograms (#1677)
  • dials.integrate: Improved background model variance calculation for integrating detectors. (#1692)
  • xia2: Separate anomalous pairs when scaling with dials.scale if anomalous=True (xia2/xia2#539)
  • xia2: Added absorption_level=[low|medium|high] to control of the absorption correction in dials.scale. (xia2/xia2#592)
  • dxtbx: Add FormatMRC.py for electron diffraction images and image stacks recorded on Thermo Fisher microscopes (dxtbx/dxtbx#335)
  • dxtbx: Add support for Python 3.9. (dxtbx/dxtbx#365)

For a more complete list of changes please check the DIALS, dxtbx and xia2 changelogs.

- Python
Published by ndevenish over 4 years ago

dials - DIALS 3.4.3

2021-04-20: - dials.scale: Fix crash when full-matrix minimisation is unsuccessful due to indeterminate normal equations. (#1653) - dials.scale: Fix crash when no reflections remain after initial filtering. (#1654) - dials.export: Fix error observed with format=mmcif for narrow sweeps with low symmetry (#1656) - Fix image numbering inconsistency in ascii histogram of per-image spot counts (#1660) - dials.find_spots_server: Significant performance improvement for HDF5 grid scans. (#1665)

For a more complete list of changes and fixed bugs check the dials changelog.

There are no changes to cctbx, dxtbx or xia2 in this release.

- Python
Published by DiamondLightSource-build-server almost 5 years ago

dials - DIALS 3.4.2

2021-04-12: - Log messages from spot finding and integration no longer ignore logging level when using nproc > 1. This mainly affects usage of dials from outside contexts. (#1645) - xia2: Fix reading of split HKL files output from XSCALE (xia2/xia2#579)

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

There are no changes to cctbx or dxtbx in this release.

- Python
Published by DiamondLightSource-build-server almost 5 years ago

dials - DIALS 3.4.1

2021-04-01: - dials.cosym: Significantly faster via improved computation of functional, gradients and curvatures (#1639) - dials.integrate: Added parameter valid_foreground_threshold=, to require a minimum fraction of valid pixels before profile fitting is attempted (#1640) - dials.cosym: Cache cases where Rij is undefined, rather than recalculating each time. This can have significant performance benefits when handling large numbers of sparse data sets. (#1634) - dials.cosym: Fix factor of 2 error when calculating target weights (#1635) - dials.cosym: Fix broken engine=scipy option (#1636) - dials.integrate: Reject reflections with a high number of invalid pixels, which were being integrated since 3.4.0. This restores better merging statistics, and prevents many reflections being incorrect profiled as zero-intensity. (#1640) - Fix rare crash in symmetry calculations when no resolution limit could be calculated (#1641) - xia2.multiplex: Use resolution cutoff determined during scaling for cluster analysis (xia2/xia2#576) - xia2.multiplex: Fix cos-angle clustering varying between runs (xia2/xia2#576) - dxtbx: Nexus: Diamond Light Source beamlines are now properly identified (cctbx/dxtbx#339)

For a more complete list of changes and fixed bugs check the dials, dxtbx and xia2 changelogs.

There are no changes to cctbx in this release.

- Python
Published by DiamondLightSource-build-server almost 5 years ago

dials - DIALS 3.4.0

2021-03-15:

Major Features

  • dials.integrate: In some cases, many more reflections now qualify for profile fitting, by allowing reflections with masked pixels or are near the edge of the panel. This can drastically increase the number of profile-integrated reflections on multi-panel detectors. (#1297)
  • dials.scale:
    • An additional outlier rejection based on normalised intensities has been added (#1627)
    • Fix issue of error model not always being carried through after the profile/summation intensity combination step. (#1566)
  • dials.image_viewer:
    • New parameter basis_vector_scale= to adjust the length of the basis vector overlay (#1598)
    • Fix various display issues relating to viewing still images (#1463)
  • dials.reciprocal_lattice_viewer: Added an option to label the reciprocal lattice point nearest the centre (#1614)
  • dials.background:
    • Add option output.plot= to save an image to disk instead of showing interactively. Image files can now also be used directly. (#1537)
    • dials.background: Fix crash when writing output plot with bad display configuration (#1550)
  • dials.estimate_resolution: Reject Wilson outliers to minimise effect of spurious observations, like ice rings, on the resulting resolution estimates (#1580)
  • dials.import: Individual components of a reference model can be selected with use_beam_reference=, use_gonio_reference= and use_detector_reference=. (#1371)
  • dials.merge: add option to set wavelength_tolerance for MAD datasets (#1609)
  • dxtbx: Improved support for Timepix 2M (cctbx/dxtbx#298), SwissFEL Jungfrau 16M (cctbx/dxtbx#303) and Eiger 16M XE at Diamond (cctbx/dxtbx#323) detectors.

Removals/Deprecations

  • The previously deprecated masking parameter use_trusted_range= has been removed (#1156)
  • dials.background: The plot= parameter to interactively display the background plot has been removed. Use output.plot= to save to file instead. (#1554)
  • dials.util.masking.MaskGenerator is deprecated in favour of dials.util.masking.generate_mask (#1569)
  • dxtbx: DataBlock is now deprecated. Please use ExperimentList instead. (cctbx/dxtbx#288)
  • dxtbx: ExperimentListTemplateImporter is now deprecated. Please use ExperimentList.from_templates. (cctbx/dxtbx#333)

For a more complete list of changes please see the DIALS, dxtbx and xia2 changelogs.

- Python
Published by ndevenish almost 5 years ago

dials - DIALS 3.3.4

2021-03-05: - dials.import: Selecting a subset of images with image_range= now works on stills (#1592) - dials.search_beam_centre: Dramatically improved execution time for large data sets (#1612) - dials.reindex: Write .refl files in a better format for compatibility with downstream programs (#1616) - dials.scale: Fix rare memory crash from infinite loop, that could occur with very bad quality datasets (#1622) - dials.refine: More informative error message when reflections have weights of zero (#1584) - xia2: Fix type object has no attribute 'ignore' error (xia2/xia2#570) - dxtbx: Fix error sometimes corrupting data when writing CBF files with dxtbx.dlsnxs2cbf and dials.merge_cbf (cctbx/dxtbx#314)

For a complete list of changes check the DIALS, dxtbx, and xia2 changelogs.

- Python
Published by ndevenish almost 5 years ago

dials - DIALS 3.3.3

2020-02-15: - Fix for missing SENSOR_THICKNESS= in XDS.INP generated for EIGER datasets introduced in 3.3.1 (xia2/xia2#564, cctbx/dxtbx#296)

For a complete list of changes check the DIALS, dxtbx, and xia2 changelogs.

- Python
Published by ndevenish about 5 years ago

dials - DIALS 3.3.2

2021-02-01:

  • dials.export: Allow data with either summation or profile fitted intensities to be exported. Previously, both were (erroneously) required to be present (dials/dials#1556).
  • dials.scale: Fix crash if only summation intensities present and intensity_choice=combine (dials/dials#1557).
  • Fix unicode logging errors on Windows (dials/dials#1565).
  • Improve performance with internal mask generation. This speeds up spotfinding (dials/dials#1449).
  • dxtbx: Don't interpret windows paths as URIs, causing failure to import images (cctbx/dxtbx#284).
  • dxtbx: Fix miscounting of images in VDS nexus files (cctbx/dxtbx#285).
  • dxtbx: Fix cacheing bug with live per-image analysis of HDF5/SWMR files that prevented seeing new images after opening a file once (cctbx/dxtbx#289).
  • dxtbx: Don't write DETECTOR=PILATUS for Eiger detectors generating XDS.INP (cctbx/dxtbx#292).
  • xia2: Fix unicode logging errors on Windows (xia2/xia2#558).
  • cctbx: Update as_cif_block() method to match updated definitions of the pdbx mmcif v5 dictionary (cctbx/cctbx_project#582).

For a complete list of changes and fixed bugs check the DIALS, dxtbx, and xia changelogs.

- Python
Published by ndevenish about 5 years ago

dials - DIALS 3.3.1

2021-01-18: - dials.index: More verbose debug logs when rejecting crystal models (#1538) - dials.stills_process: Fix spotfinding error "Failed to remap experiment IDs" (#1180) - Improved spot-finding performance for HDF5 when using a single processor (#1539) - dxtbx: NeXus files are now opened in SWMR mode (cctbx/dxtbx#270)

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

There are no changes to cctbx or xia2 in this release.

- Python
Published by ndevenish about 5 years ago

dials - DIALS 3.3.0

DIALS 3.3.0 (2021-01-04):

  • dials.estimate_resolution: Use only cc_half for the default resolution analysis. (#1492)
  • dials.export: Allow on-the-fly bzip2 or gzip compression for mmCIF output, because unmerged mmCIF reflection files are large. (#1480)
  • dials.find_spots and dials.integrate both now have nproc=Auto by default, which uses the number of allowed/available cores detected. (#1441)
  • dials.merge: Report <dF/s(dF)>, if anomalous=True. An html report is also generated to plot this statistic. (#1483)
  • dials.scale: Apply a more realistic initial error model, or load the existing error model, if rescaling. (#1526)
  • dials.stills_process: Allow using different saturation cutoffs for indexing and integration. (#1473)
  • dxtbx: Read detector distance from the XTC streams for LCLS Jungfrau data (cctbx/dxtbx#246)
  • dxtbx: Set the per-shot gain for the ePix and Jungfrau detectors at LCLS. (cctbx/dxtbx#250)
  • dxtbx: Format classes can now be marked as @abstract. (cctbx/dxtbx#255)
  • Various deprecated interfaces have been removed across dials and dxtbx
  • for a more complete list of changes and fixed bugs check the DIALS and dxtbx changelogs

xia2 3.3.0: - Updates to xia2.mmcif output to conform to the latest pdb dictionaries (v5) (xia2/xia2#537) - xia2.html: Add <dF/s(dF)>-by-resolution plot if running xia with anomalous=True (xia2/xia2#551) - xia2.multiplex: fix occasional error generating stereographic projections. (xia2/xia2#546) - for a more complete list of changes check the xia2 changelog

- Python
Published by ndevenish about 5 years ago

dials - DIALS 3.2.3

2020-12-07:

  • dials.slice_sequence: Fix crash using block_size= option (#1502)
  • dials.scale: Fix broken exclude_images= option (#1509)

For a complete list of changes and fixed bugs check the DIALS changelog.

There are no changes to cctbx, dxtbx or xia2 in this release.

- Python
Published by ndevenish about 5 years ago

dials - DIALS 3.2.2

2020-11-23: - Fix case where dials.stills_process could swallow error messages - dials.cosym: Fix non-determinism. Repeat runs will now give identical results. (#1490) - Developers: Fix precommit installation failure on MacOS (#1489)

For a complete list of changes and fixed bugs check the DIALS changelog.

There are no changes to cctbx, dxtbx or xia2 in this release.

- Python
Published by ndevenish over 5 years ago

dials - DIALS 3.2.1

  • 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.

- Python
Published by ndevenish over 5 years ago

dials - DIALS 3.2.0

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

- Python
Published by ndevenish over 5 years ago

dials - DIALS 3.1

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 dosedecay 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.comparemerging_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=3dthreaded (#1404) - dials.integrate: Minor performance improvements (#1399) - ``dials.stillsprocess: Add parametermaximages=to limit the number of processed images -dials.stillsprocess: 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=3dthreaded 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 `autoreduction.action=removeoption (#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

- Python
Published by ndevenish over 5 years ago

dials - DIALS 3.0

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 showhkl option to filter displayed powder rings (#1192) - `dials.imageviewer: 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.imageviewer: faster navigation between different image types. (#1213) -dials.integrate`: Background box size multiplier can now be tuned with a parameter (sigmabmultiplier) - 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 recalculatedunitcell 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 `bestmonoclinicbetaparameter fordials.refinebravaissettingsanddials.symmetryto ensure that C2 is selected in preference to I2, where I2 would lead to a less oblique cell (#1226) - New scaling model,model=dosedecay`, 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 multisweeprefinement 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 projectname in export and scaling - `dials.reciprocallatticeviewer`: fix multiple experiment view for integrated data (#1284) - cctbxproject: 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 dmin 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.refinebravaissettings: 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 minimumpixelsperspot 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 imagerange, missing images outside this range will not cause a failure (#1333) - dials.scale: Allow usage of `mode=imagegroupwithfiltering.method=deltacchalfwhen only providing a single data set (#1334) -dials.stillsprocess: Show better error message in specific spotfinding failure case (#1180) - xia2: Fix error reading PHIL files inispybxml(#484) - xia2: Ignore missing images out-of-range when usingreadimageheaders=False(#491) - xia2: Using reference instrument models when usingreference_geometry=` is more robust (#485) - for more detail on the list of fixed bugs check the DIALS, dxtbx and xia2 changelogs

- Python
Published by ndevenish over 5 years ago

dials - DIALS 2.2

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

- Python
Published by Anthchirp almost 6 years ago

dials - DIALS 2.1

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 'showsharedmodels=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 multisweepindexing (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

- Python
Published by Anthchirp about 6 years ago

dials - DIALS 2.0

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, https://github.com/cctbx/dxtbx/issues/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)

- Python
Published by Anthchirp about 6 years ago

dials - DIALS 1.14

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.splitexperiments: add "chunksizes" 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: * xia2: fix xia2 pipeline=3d indexer=dials (xia2/xia2#305) * xia2: validate project/crystal name (xia2/xia2#307)

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: * xia2: support newer versions of XDS (xia2/xia2#354)

- Python
Published by Anthchirp almost 7 years ago

dials - DIALS 1.12

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: * EIGER/EIGER2 support updates for SPring8 (cctbx/cctbxproject#282) and Diamond Light Source VMXi and I04 (cctbx/cctbxproject#283) * dials.image_viewer: Allow stacking of images (#660) * dials.image_viewer: Fix for mask tool

DIALS 1.12.6 (2019-02-19) includes xia2 0.5.771: * improved electron diffraction data support (ADSC-electron-57)

- Python
Published by Anthchirp over 7 years ago

dials - DIALS 1.11

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)

- Python
Published by Anthchirp over 7 years ago

dials - DIALS 1.10

Release notes

DIALS 1.10.0 (2018-05-21): * Faster refinement for hierarchical multiple panel detectors by moving calculations to C++ * Scan-varying refinement of the goniometer setting matrix is now possible * dials.plotscanvaryingcrystal changed to dials.plotscanvaryingmodel. Now plots beam centre drift and error bars on scan-varying unit cell, if these have been recorded (#414) * Improvements to profile fitting in the presence of negative-valued pixels (#537) * 'DQE' renamed to 'QE' in across function names and in output data (#544) * Improved support for Bruker Photon II detectors * New program dials.cosym: implementation of algorithms described in Gildea, R.J. & Winter, G. (2018). Acta Cryst. D74, https://doi.org/10.1107/S2059798318002978 * dials.reindex: bug fix when dealing with multi-sweep datasets (https://github.com/dials/dials/commit/40272998f75f2f283d6ccb690d0842e8ea545ebf) * dials.refine_bravais_settings: bug fix for multi-sweep datasets if experimental models differ between experiments (#554)

xia2 0.5.577: * pipeline=2d has been marked as deprecated and will be removed at some point in the future

DIALS 1.10.1 (2018-06-16) includes xia2 0.5.580: * Format fixes for Bruker Photon II images * dials.show compatibility fixes * xia2: gracefully handle invalid ranges with image=image_0001.cbf:start:end syntax * xia2: disable currently unreliable check_indexing_symmetry feature

DIALS 1.10.2 (2018-06-26) includes xia2 0.5.580: * dials.export_bitmaps: Fix for still images, add output_file parameter * Remove problematic format class from dxtbx * Fix installation on newer Ubuntu versions

DIALS 1.10.3 (2018-07-10) includes xia2 0.5.580: * xia2: fix missing CIF information

DIALS 1.10.4 (2018-07-24) includes xia2 0.5.582: * dials.report: Fix incorrect y-axis labels in plots * xia2: Allow image= without range on Windows

- Python
Published by Anthchirp almost 8 years ago

dials - DIALS 1.9

Release notes

DIALS 1.9.0 (2018-03-10): * support for scan-varying beam models * dials.discover_better_experimental_model has been renamed to dials.search_beam_position (#418) * fixed crash on Ubuntu 14.04 (#513) * dials.image_viewer will now work with large Nexus files * errors when reading files should be more informative

xia2 0.5.540: * make some processing error messages more informative

DIALS 1.9.1 (2018-04-03) includes xia2 0.5.542: * Correctly identify Timepix detector images * dials.image_viewer: Fix issues with mask display, #520 * xia2: use correctly capitalized H5ToXds executable instead of H5ToXDS

DIALS 1.9.2 (2018-04-10) includes xia2 0.5.542: * fix build issues on Mac, cctbx/cctbx_project#160 * bug fix for h5 files: write template expected by xds

DIALS 1.9.3 (2018-05-08) includes xia2 0.5.546: * Nexus format files: correctly determine number of images in dataset * Force scan_varying=False during indexing as indexing only uses static models * dials.spotcountsperimage: generate joint .json result file unless told not to. * xia2: fix HDF5 template issue (xia2/xia2#219) * xia2: fix processing of .nxs files if a ```master.h5``` file is present for the same dataset * xia2: save integrated reflections to DataFiles directory

- Python
Published by Anthchirp almost 8 years ago

dials - DIALS 1.8

Release notes

DIALS 1.8.0 (2017-11-02): * Added option dials.show showflags=true, for more information about how reflections were classified * dials.refine: new diagnostic for problematic refinement cases, using the condition number of the Jacobian * dials.refine: increase default maxiterations for problematic refinement cases * dials.refine: bug fix for setting smoother parameters for scan-varying refinement * dials: spotcountsper_image fixes

xia2 0.5.469: * respect the number of allocated CPUs on SGE clusters. * sensible trusted range for Rayonix CCD images with XDS processing * basic support for Eiger data sets from BioMAX, requires correct goniometer axis to be specified on command line * can now "see" data with template prefix.nnnn.bz2 etc. * xia2 / dials / cctbx: correct interpretation of geometry for Rigaku lab source CCD detectors * xia2 / DIALS: support for Eiger data sets with >1000 sub-files via ulimit * xia2 / XDS: support for use of "neggia" plugin if in XDS binary directory & processing HDF5 / Eiger data

DIALS 1.8.1 includes xia2 0.5.474 (2017-11-16): * dials: fix build issue on macOS 10.13 (High Sierra), #77 * dials: fix run issues on macOS <10.12 * dials: fix DLS I23 image interpretation * xia2: Fix ImportError bug on Windows (xia2/xia2#194) * xia2 / XDS: Fix 'pixel value' issue with recent XDS versions (xia2/xia2#193) * xia2 / XDS: Refine detector position in second integration round (xia2/xia2#181)

DIALS 1.8.2 includes xia2 0.5.476 (2017-12-05): * dials: Fix indexing for small molecule data with unit cell <100A^3. * dials: Improve Eiger file support * dials: Smargon support for data from DLS I03 * xia2: Fix indexing method fallback

DIALS 1.8.3 includes xia2 0.5.482 (2018-01-16): * dials.imageviewer: fix crash on Windows * dials.imageviewer: fix crash when using masks (cctbx/cctbxproject#107) * dials.stillsprocess: fix out of memory error when processing large files * xia2: pipeline=2d support for Rigaku RAXIS detectors (xia2/xia2#200)

DIALS 1.8.4 includes xia2 0.5.487 (2018-01-30): * dials.imageviewer: Fix crash with "dxtbx Internal Error" (#493) * dials.stillsprocess: Validate mask file exists at the start of the program * xia2: immediately stop when Aimless failed to process data * xia2: Warn when using XDS with HDF5 files and necessary libraries are missing (xia2/xia2#197) * Fixed support for DLS I03 full CBF images

DIALS 1.8.5 includes xia2 0.5.492 (2018-02-20): * allow splitting output of dials.spotcountsper_image per metric * xia2: fix crash with .xinfo non-native file line endings * xia2: add full DIALS paper reference

- Python
Published by Anthchirp over 8 years ago

dials - DIALS 1.7

Release notes

DIALS 1.7.0 (2017-08-18): * dials.refine: performance improvements for scan-varying refinement * dials.refine: bug fix for I23's P12M detector * Better default gain for ADSC CCD detectors * dials.import: dynamic_shadowing now turned on by default where a goniometer shadow model is available

xia2 0.5.428: * xia2: dynamic_shadowing now turned on by default where a goniometer shadow model is available * xia2.html: ensure merging statistics consistent with those reported in text output

DIALS 1.7.1 includes xia2 0.5.432 (2017-09-04): * dials.show improvements and shoebox stats * Allow disabling of ice ring filtering in spot finding server * xia2: Fix dynamic shadowing for pipeline=3d * xia2.strategy: improve BEST integration

DIALS 1.7.2 includes xia2 0.5.436 (2017-09-19): * bug fix for DLS I23 images where MultiAxisGoniometer does not exist * fix map coordinates in dials.imageviewer_ (#442) * fix maxcell determination in indexing (#386) * fix for setting interval widths in scan-varying refinement * _xia2.report: fix multiplicity p

DIALS 1.7.3 includes xia2 0.5.438 (2017-10-03): * dev.dials.csv: clean up command line help * xia2 ISPyB interface: use files in DataFiles directory in preference to other locations. * pytest 3 compatibility fix

DIALS 1.7.4 includes xia2 0.5.442 (2017-10-24): * fix HDF5 library download location * support for Smargon goniometer on Soleil PROXIMA-1 * xia2: fix issue with XDS trusted ranges (xia2/xia2#182) * xia2: allow processing of images with .gz extension (xia2/xia2#184)

- Python
Published by Anthchirp over 8 years ago

dials - DIALS 1.6

Release notes

DIALS 1.6.0 (2017-06-02): * dials/xia2: dynamic masking of diamond anvil cells for DLS I19-2 high pressure experiments * JMP improvements to mosaic spread estimate (#342, #119)

xia2 0.5.319: * xia2: new xia2.html * xia2 fixed for I23 data with distance != 0; xia2/xia2#124 & friends

DIALS 1.6.1 includes xia2 0.5.325 (2017-06-14): * dials.imageviewer: respect kernelsize parameter (#354) * Rayonix TIFF format fixes (#370) * xia2: XDS compatibility fixes (xia2/xia2#131) * xia2: Trap non-fatal fatal error (xia2/xia2#115) * xia2: respect batch_range parameter in resolution determination * xia2: silence xtriage output

DIALS 1.6.2 includes xia2 0.5.328 (2017-06-20): * cctbx algorithmic stability fixes (cctbx/cctbxproject#43) * dials.exportmtz: improved error messages (#357) * xia2: Generate .p4p files in small molecule mode (xia2/xia2#134)

DIALS 1.6.3 includes xia2 0.5.337 (2017-07-03): * Many dials.export fixes, including exports from single images (#388) * xia2: Make d_min= command line parameter work again (xia2/xia2#136) * xia2: Avoid crash when running xtriage on centric data (xia2/xia2#139) * xia2: Move extra multiplicity files away from main directory (xia2/xia2#140) * xia2: Remove '.bat' from output file names when run on Windows * xia2: Improvements in HTML report (xia2/xia2#133, xia2/xia2#141) * xia2: xia2.strategy fixes

DIALS 1.6.4 includes xia2 0.5.340 (2017-07-17): * dials.reciprocallatticeviewer: correctly handle multiple sweeps in single file (#407) * xia2: image= parameter did not work as expected when including multiple slices from the same dataset (xia2/xia2#138) * Recognize and drop NaN values in iotbx data plotting (xia2/xia2#142)

- Python
Published by Anthchirp over 8 years ago

dials - DIALS 1.5

Release notes

DIALS 1.5.0 (2017-04-07): * dxtbx: Converted models into C++. Bug fixes for HDF5/Eiger files to correct a previously inverted axis. * dials.aligncrystal: numerous bug fixes and simplified output * _dials.findspots: Correctly smooth histogram, #317 * _dials.geometryviewer: display of crystal basis vectors, and added fast, slow, normal vectors to panels in display * _dials.imageviewer: new mask generation tool; performance improvements * _dials.import: full specification of meta data from phil parameters; can now import data with different detector etc into same file * dials.index: improvements to nearest neighbour analysis used in maxcell estimation (optionally choose between linear and logarithmic histogram binning) * _dials.reciprocallatticeviewer: reciprocal unit cell display * dials.refine: equal shift constraints * dials.rlpng_: fix crash * All dials programs: no longer attempt to read from STDIN when run on a terminal (#326), generic performance improvements (#292)

xia2 0.5.270:

  • xia2.report:
    • use merged intensities for calculating second moment statistics
    • include xtriage report;
    • include analysis of distribution of multiplicity in reciprocal space
    • add plots of completeness and multiplicity vs resolution
    • optionally choose cchalfmethod=sigmatau_
  • xia2.multicrystalanalysis: add stereographic projection plots for crystal orientation analysis
  • xia2.ispybxml_: fix for HDF5 files

DIALS 1.5.1 includes xia2 0.5.277 (2017-04-24):

  • dxtbx: fixes for DLS I04 full CBF images
  • dials.findspots: add hotmask_prefix option
  • dials.generatemask_: add optional output.datablock parameter
  • dials.import: fix geometry scan image_range override (#337)
  • xia2: run dials.generate_mask in DIALS pipeline
  • xia2: avoid occasional pointless crash in small molecule mode (xia2/xia2#115)

- Python
Published by Anthchirp almost 9 years ago

dials - DIALS 1.4

Release notes

DIALS 1.4.0 (2016-11-29): - dials.refine now determines outlier rejection block width automatically (#158) - Correctly take into account the goniometer setting rotation - New commands dials.goniometercalibration, _dials.aligncrystal, _dials.geometryviewer_ and dials.shadowplot_ - Support for dynamic goniometer shadow masking, requires beamline-specific modifications to detector Format class (dynamicshadowing=True) - _dials.imageviewer: new parameter _showmask=True_ (displays the pixels that are masked out on each image) - dials.imageviewer_ now stays on image when window loses focus (#220) - dials.imageviewer: improvements for multi-panel detectors (see also #55) - _dials.index maxcell_ estimation improvements - dials.refinebravaissettings: recommend suitable settings

xia2 0.5.152: - xia2 -quick is now faster & deprecated (use fastmode=true) - _xia2.cif and .mmcif now land in DataFiles directory and contain more entries (xia2/xia2#66, xia2/xia2#67, xia2/xia2#69) including those from the new dxtbx detector database (xia2/xia2#78) - When run in small molecule mode (xia2.smallmolecule_ or smallmolecule=True) SHELXT input files are generated in _DataFiles (xia2/xia2#62) - absorption surface map and merging statistics table are generated in the LogFiles directory (xia2/xia2#63, xia2/xia2#74) - New parameter xds.correct.air to override the AIR= parameter in XDS correct step - New parameter xds.defpix.valuerangefortrusteddetectorpixels_ - pipeline=dials: now runs scan-static refinement before scan-varying refinement - pipeline=dials: support index.method=auto - pipeline=dials: optional scaling with XSCALE (scaler=xdsa) - Add ability to override experimental geometry on the command line (xia2/xia2#87) - Support for dynamic goniometer shadow masking in DIALS and XDS pipelines (dynamicshadowing=True) - _xia2.report now plots cc1/2 and ccanom_ critical values

DIALS 1.4.1 (2016-12-14): - Various small bug fixes (https://github.com/dials/dials/pull/268) - New command dials.twothetaoffset tells the offset of the two theta axis given two experiment .jsons

xia2 0.5.161: - Resolution cut-off was too conservative (https://github.com/xia2/xia2/pull/89/commits/45df7e4d37d96b6a2cb5af12fe2ecd10d8174799) - Updated cctbx loggraph parser to run with new versions of AIMLESS (https://github.com/dials/cctbx/pull/1/commits/7bf85403e0119e7469ea223fbfd5f70b6f934186) - Various smaller bug fixes (https://github.com/xia2/xia2/pull/89)

DIALS 1.4.2 (2017-01-16): - Fix "Mark centers of mass" in dials.imageviewer_ (#278)

xia2 0.5.170: - Fix xia2 html report for sweeps containing a number of images that is not a multiple of 60 - Fix to correctly apply reindexing operations - Observe dmin_ and dmax_ parameters when running in small molecule mode

DIALS 1.4.3 (2017-01-31): - dials.aligncrystal_ and dials.stereographicprojection_ now write json files - dials.imageviewer_ fixes (#262, #284) - dials.export bugfix for BEST output with rhombohedral space groups - improved nearest-neighbour indexing logic

xia2 0.5.175: - Fix image epoch crashes (xia2/xia2#90) - Make HTML reports more responsive (xia2/xia2#98)

DIALS 1.4.4 (2017-02-09): - dials.export format=json - fix labels and ranges in dials.report plots

xia2 0.5.179: - fix incorrect anomalous completeness statistics - bug fix for pipeline=dials scaler=xdsa combination - putative bug fix for resetting refiners when combined with multi-sweep indexing - fix for integratep1=True reintegratecorrectlattice=False_ when lattices are eliminated

DIALS 1.4.5 (2017-03-02): - fix dials.reciprocallatticeviewer crash (#313)

- Python
Published by Anthchirp about 9 years ago

dials - DIALS 1.3

Release notes

DIALS 1.3.0 (2016-07-29): - Improved support for processing compressed images (#79) - More efficient parallel processing in dials.findspots_ (#150) - dials.imageviewer_ is now more responsive to parameter changes (#166), and can display resolution ellipses when detector is at 2theta angle > 0 (#66). Image annotations work for summed images (#107). - The distl spotfinding webserver has been updated to the most recent versions of apache and modpython, and expanded to support the dials spotfinder, including native support for Eiger HDF5 data from Dectris. Some documentation is available. - _dials.twothetarefine provides a refinement of the unit cell parameters against the 2theta angles of indexed reflections.

xia2 0.5.45: - xia2 version 0.5 includes a major overhaul of the available command line parameters (xia2/xia2#42). xia2 is moving away from switch-like command line parameters (eg. -3dii) to PHIL format parameters (eg. pipeline=3dii) - the same command line parameter format used in DIALS. Deprecation warnings are given for the most used commands, including all pipeline commands. Run xia2 without any parameters to get a very brief overview of available parameters. - Unit cell sizes are obtained via 2theta refinement, and reported with estimated standard deviations when possible (xia2/xia2#28). The command xia2.getunitcellerrors_ will be removed in the future. - Bruker CCD images (.sfrm) are now supported. It may be necessary to set a suitable gain value as command line parameter (eg. gain=10) - xia2 generates a crystallographic information file (xia2.cif) by default (xia2/xia2#27) - Small molecule processing now uses multi sweep indexer by default when possible (xia2/xia2#37). High resolution data are no longer cut off when running small molecule processing. To return to previous behaviour, use keepallreflections=false (xia2/xia2#30). xia2.smallmolecule_ is a new shortcut for xia2 smallmolecule=true_. - Spotfinding results are displayed for XDS pipeline processing (xia2/xia2#20)

DIALS 1.3.1 (2016-08-01): - Fix dials.findspots shoebox=false_ (#186)

DIALS 1.3.2 includes xia2 0.5.48 (2016-08-10) : - Fix Rigaku Saturn SN457 image header parsing - xia2 supports -atom and -failover command line options with deprecation warnings

DIALS 1.3.3 includes xia2 0.5.50 (2016-08-23): - xia2 supports -ispybxmlout command line option with deprecation warning

DIALS 1.3.4 includes xia2 0.5.53 (2016-09-15): - xia2 fixes to take space group reindexing operation into account when refining unit cells

DIALS 1.3.5 includes xia2 0.5.57 (2016-09-22): - fix image overlays when summing multiple images - xia2 fix crash with xinfo files when only high resolution limit is defined - xia2 fix command line in ISPyB xml output and set default xml filename

Installation

Installers for Linux, MacOS X and MacOS X 10.6 as well as a source file distribution are available below.

Alternatively you can compile DIALS 1.3 from scratch by running

$ wget https://raw.githubusercontent.com/dials/cctbx/dials-1.3/libtbx/auto_build/bootstrap.py $ python bootstrap.py --builder=dials hot update base build

- Python
Published by Anthchirp over 9 years ago

dials - DIALS 1.2

Release notes

DIALS 1.2.0 (2016-05-05): - Support for EIGER data - Outlier rejection for centroid refinement now in blocks - dials.discoverbetterexperimentalmodel_ now uses random subset of reflections from entire scan

xia2 0.4.0.335: - Support for EIGER data in -dials and -3d pipelines (latter requires H5ToXDS) - xia2.html report automatically generated after successful completion of xia2 - DIALS pipeline now includes DIALS beam centre search - xia2.toshelx_ can use output of xia2.getunitcellerrors_ and generate cif file - Improved processing of chemical crystallography data

DIALS 1.2.1 (2016-05-06): - Fix bitshuffle plugin (#133)

DIALS 1.2.2 includes xia2 0.4.0.338 (2016-05-09): - bug fixes if passing spacegroup but not unitcell to xia2 -dials - correct theta angles in .cif file generated by xia2.toshelx_ - fix issues when building with older versions of Python <2.6

DIALS 1.2.3 includes xia2 0.4.0.340 (2016-05-16): - Accept relative paths for HDF5 files in xia2

DIALS 1.2.4 includes xia2 0.4.0.342 (2016-05-23): - Fix indexing/refinement crash - Fix typo in xia2 xml output

DIALS 1.2.5 includes xia2 0.4.0.345 (2016-06-09): - improve display for dials.imageviewer_ with sumimages_ (#107) - add cursor control, improved display for dials.reciprocallatticeviewer (#142, #145) - reduce dials.refine log verbosity - xia2 warns on missing wavelength in xinfo file - xia2.getunitcellerrors_ erroneous constraint for unit cell error estimates relaxed

DIALS 1.2.6 includes xia2 0.4.0.345 (2016-07-05): - fix ice ring filtering for blank images

Installation

Installers for Linux, MacOS X and MacOS X 10.6 as well as a source file distribution are available below.

Alternatively you can compile DIALS 1.2 from scratch by running

$ wget https://raw.githubusercontent.com/dials/cctbx/dials-1.2/libtbx/auto_build/bootstrap.py $ python bootstrap.py --builder=dials hot update base build

- Python
Published by Anthchirp almost 10 years ago

dials - DIALS 1.1

Release notes

Amongst many other improvements - unit cell restraints are now available in dials.refine. These are particularly intended for use for multi-crystal joint refinement tasks. Cells may either be restrained to a known target, or groups of cells to their mean or median values. - reciprocal lattice viewer runs much more smoothly - xia2 now offers improved small molecule support, including a multi sweep indexer (use multiplesweepindexing=True), and the option to estimate unit cell uncertainties with xia2.getunitcellerrors_

DIALS 1.1.1: Let xia2 calculate merging statistics using cctbx. Increase speed of sorting flex tables.

DIALS 1.1.2: Updates in cctbx and xia2 for improved EIGER support.

DIALS 1.1.3: Fix compilation issues with recent MacOS X update. Fixed xia2.html. Fix colour issues in dials.reciprocallatticeviewer on Windows machines.

DIALS 1.1.4: Fix incorrect DQE calculations. Improvements on xia2.html.

Installation

Installers for Linux, MacOS X and MacOS X 10.6 as well as a source file distribution are available below.

Alternatively you can compile DIALS 1.1 from scratch by running

$ wget https://raw.githubusercontent.com/xia2/cctbx/dials-1.1/libtbx/auto_build/bootstrap.py $ python bootstrap.py --builder=dials hot update base build

- Python
Published by Anthchirp almost 10 years ago